Skip to content
Giampiero Baggiani edited this page Apr 2, 2023 · 37 revisions

Iono Uno / Iono MKR / Iono RP - Arduino IDE libraries and examples

This repository includes a set of Arduino libraries and examples to be used with Iono Uno, Iono MKR and Iono RP.

For more details about Iono visit:
https://www.sferalabs.cc/product/iono-uno/
https://www.sferalabs.cc/product/iono-mkr/
https://www.sferalabs.cc/product/iono-rp/

Installation

  • Download this repo
  • Open the Arduino IDE
  • Go to the menu Sketch > Include Library > Add .ZIP Library...
  • Select the downloaded zip file

Install its dependencies:

Iono RP notes

To use these libraries with Iono RP install the Raspberry Pi RP2040 Arduino core available here:
https://github.com/earlephilhower/arduino-pico

Once installed, go to the menu Tools > Board > Raspberry Pi RP2040 Boards and select "Generic RP2040" (end of the list).
You will see additional menu entries under the Tools menu, set:

  • Flash size to 16MB (with or without FS);
  • Boot Stage 2 to "W25Q128JV QSPI /4";
  • leave the other entries unchanged.

The first time you upload a sketch, you will need to hold the BOOTSEL button down while plugging the USB cable connected to your computer, then release the BOOTSEL button.
Select "UF2 Board" as upload Port then hit the Arduino IDE's upload button, the sketch will be transferred and start to run.

After the first upload, the board will appear under the standard Serial ports list and will automatically reset and switch to bootloader mode when hitting the IDE's upload button as with any other Arduino boards.

Usage

Examples and applications

After installation you will find the below listed examples and ready-to-use applications under Arduino IDE's menu File > Examples > Iono Uno/MKR/RP.

  • IonoIO: example showing how to configure and use Iono's I/O
  • RS485Echo: example showing how to read and write data on the RS-485 interface
  • OneWireTempSens: example showing how to read data from Dallas 1-Wire temperature sensors connected to Iono's TTL lines
  • ModbusRtuSlaveSimple: example showing the simplest usage of the IonoModbusRtu library
  • ModbusRtuApp: ready-to-use application, based on the IonoModbusRtu library, to use Iono as a standard, configurable Modbus RTU slave device with gateway functionalities for 1-Wire sensors and Wiegand devices (Documentation here)
  • ModbusTcpServer: ready-to-use standard, configurable Modbus TCP server for Iono Uno with Arduino Ethernet or Arduino WiFi rev2 and Iono MKR with Arduino MKR WiFi (Documentation here)
  • ModbusTcpServerYun: ready-to-use standard, configurable Modbus TCP server for Iono Uno with Arduino Yun (Documentation here)
  • IonoMkrMQTT: ready-to-use application for Iono MKR with Arduino MKR WiFi to be used as a standard, configurable MQTT client (Documentation here)
  • IonoMkrLoRaWAN: ready-to-use application for Iono MKR with Arduino MKR WAN to be used as a standard, configurable LoRaWAN device (Documentation here)
  • WebAPI: simple example showing how to setup the Web API of the IonoWeb library on Iono Uno with Arduino Ethernet
  • WebSubscribe: simple example showing the usage of the subscribe functionality of the IonoWeb library to receive HTTP calls upon I/O's changes on Iono Uno with Arduino Ethernet
  • WebApp: complete Web application, hosted ono Iono itself, to control, monitor and configure Iono Uno with Arduino Ethernet (Documentation here)
  • UDPSimple: simple example showing how to setup the UDP-based protocol of the IonoUDP library on Iono Uno with Arduino Ethernet

Documentation

Refer to the below pages for details on each library:

Other resources