FlintOS
Rust · no_std · ESP32 + RP2040 · Apache-2.0 · v0.1
FlintOS is a real-time operating system for 32-bit microcontrollers, written in Rust without the standard library (no_std). It runs on Xtensa-based ESP32 boards and ARM-based RP2040 boards. Its scheduler can pause a running task when a higher-priority task needs to run.
The build does not use Kconfig, CMake, or a vendor SDK. After setup, make flash BOARD=<your board> loads a three-task example onto a supported board. Board settings live in a manifest file. You must choose a board explicitly to avoid using the wrong pin map by accident.
FlintOS is in pre-alpha. It runs on hardware, but most drivers have limited functionality and the API will change. It does not yet provide a filesystem or general-purpose userspace isolation, and it is not ready for production use.
Features
- 48 task priorities in three groups:
Critical,Normal, andBackground. Tasks at the same priority take turns, with a 1 ms scheduler tick - Mutexes with priority inheritance and typed, bounded queues that can accept messages from interrupt handlers
- Three driver layers, with automated checks to keep device drivers separate from register drivers
- Tested on ESP32-DevKitC, three M5Stack boards, Raspberry Pi Pico, and Wio RP2040 Mini
- ESP32 Wi-Fi support for joining WPA2-PSK networks, with DHCP, DNS, and outbound TCP through
smoltcp - Optional isolated compute tasks on RP2040, with guarded private stacks and restricted system calls, tested on both cores
- Logging, metrics, stack usage tracking, and crash capture can be disabled at compile time
- Host tests and hardware self-tests over serial on Xtensa and SWD on ARM
What we did
We built the kernel, both architecture ports, chip and board support, the driver stack, and the Rust code that handles Wi-Fi authentication. FlintOS is released under the Apache-2.0 license.
Related links and products
- flintos.dev ↗ — Quickstart, the layer model, supported boards and pinouts, and the generated API reference.
- GitHub ↗ — Source code, bug reports, and planned work.