ZeptoWatch
Integrated an STM32 smartwatch with FreeRTOS, LVGL, and an embedded Python runtime, supporting script installation over USB.
Running User-Written Apps on a Microcontroller
ZeptoWatch is an STM32F4 smartwatch prototype with a Python scripting runtime. I contributed to firmware architecture, peripheral drivers, Python apps, and system integration, connecting a touch interface, sensors, storage, and application execution on a small embedded device.
The firmware combines FreeRTOS, LVGL, FatFs, and PikaScript. Hardware bindings expose display and sensor functions to scripts; USB mass storage lets users copy applications onto the watch.
Bringing the Stack Together
The prototype ran apps including a calculator, spectrum analyzer, and accelerometer-driven gravity simulation. USB file transfer was verified on Windows and Ubuntu.
Integration required attention to shared resources: mutex-protected LVGL access addressed freezes caused by concurrent tasks, while storage and USB debugging made the script-installation workflow usable. The result connected board-level drivers to an interface that could run user-written applications.
