This final article connects the embedded AI device to the real world. It describes how inference results leave the MCU, travel through MQTT and HTTP, land in a Rust backend.
The TinyML lifecycle on a microcontroller, from dataset preparation and model training to TensorFlow Lite Micro on bare metal, with the model bound into Rust firmware through a custom FFI wrapper.
This series covers the building of an ESP32-S3 device with ML built right into the firmware, along with the decisions, compromises, and challenges that came up along the way.
This project converts raster images into cross-stitch and needlepoint patterns. The output is a structured, printable and editable SVG pattern, with full control over the size and the color palette.
Software development runs in a cycle: write, run, check, fix. On a desktop, debugging is simplified by built-in logs, breakpoints and step-by-step code execution directly in the IDE.
In general, developing programs for an MCU is aimed at obtaining some information from the surrounding world, performing necessary calculations with this data and interacting back.