Other

AceRoutine

A low-memory, fast-switching, cooperative multitasking library using stackless coroutines on Arduino platforms.

Supported macros include COROUTINE(), COROUTINE_BEGIN(), COROUTINE_YIELD(), COROUTINE_DELAY(), COROUTINE_AWAIT(), COROUTINE_LOOP(), and COROUTINE_END(). Verified to work on AVR (Nano, Uno, etc), SAMD21, STM32, Teensy ARM, ESP8266 and ESP32.

Go to repository

This library is compatible with all architectures so you should be able to use it on all the Arduino boards.