GPIO, I2C sensors, OLED displays - every pin gets a NATS address. Read a temperature. Drive a display. Manage a fleet.
Flash it, name it, point it at a NATS server. Classic, C3, C6, S3 - all supported.
GPIO, ADC, PWM, I2C sensors, OLED displays, actuators. Request/reply over NATS.
BME280, BH1750, SSD1306/SH1106, NTC, relays, PWM - or add your own in minutes.
One command. Any sensor, any actuator, any node on the network.
$ ionode read ionode-01 bme_temp bme_temp 23.5 C $ ionode i2c ionode-01 scan 60 0x3C SSD1306 OLED 118 0x76 BME280 $ ionode write ionode-01 display "T:{bme_temp}C H:{bme_humi}%" ✓ display ← template set $ ionode discover ionode-01 ESP32-S3 192.168.178.43 5 sensors 2 actuators ionode-02 ESP32-C6 192.168.178.44 3 sensors 1 actuator
Under the hood it's pure NATS request/reply. Use the CLI, raw NATS, scripts, or any language with a NATS client.
Manage 1 node or 100. Everything built in.
28 commands. True color. Discover, read, write, configure.
Live heartbeats, actuator controls, event log.
Push notifications on sensor thresholds. No polling.
Tag nodes. Query groups. Fleet-wide operations.
Flash, connect WiFi, done. No drivers, no SDKs.
Periodic health reports. Dead node detection for free.
Every feature is a NATS subject. Script in any language.
Add sensors, set tags, configure events - all over NATS.