This library provides abstractions that help you write event-driven Arduino and mbed applications. It contains a simple task management facility, device pin abstraction where IO expanders can be treated like pins, interrupt management, button de-bouncing and rotary encoder support. There are many examples packaged with the library that cover most use cases.

Need help with a commercial design, or want a customised version for your hardware? Get consultancy from the library writers.

Known working devices and IDEs:

  • Most AVR Arduino boards such as Uno, MEGA 2560 and Mighty core
  • Most SAMD Arduino boards such as MKR, Nano IoT and Zero
  • nrf52840 Arduino Nano 33 BLE devices
  • ESP8266 devices such as NodeMCU / Huzzah
  • ESP32 devices
  • Devices running mbed RTOS V6 - fully tesed on STM32F439.

For development, you can use any Arduino or mbed IDE. However, our recommendation is platformIO with Clion or VS Code. We test the library with Arduino and PlatformIO.

Reference guide and code repo

Task Management

For task management, see the Task management guide

Arduino digital and analog IO abstractions

Switches, keyboards and rotary encoders

EEPROM abstractions

LiquidCrystalIO examples

Unit testing support

We use cookies to analyse traffic and to personalise content. We also embed Twitter, Youtube and Disqus content on some pages, these companies have their own privacy policies.

Please see our privacy policy should you need more information or wish to adjust your settings.

Send a message

This message will be securely transmitted to Nutricherry LTD servers.