Ariel OS – A Rust RTOS for IoT microcontrollers

3 min read Original article ↗

Ariel OS is a new RTOS for microcontrollers written in Rust with support for popular hardware architectures (Arm Cortex-M, ESP32, RISC-V) and boards from Espressif, Nordic Semi, Raspberry Pi, and STMicroelectronics.

Ariel OS is built on top of Embassy Rust framework and embedded-hal Hardware Abstraction Layer (HAL) for embedded systems, and adds several OS functionalities and a multi-core capable scheduler. It is mainly designed for secure, memory-safe, networked applications on microcontrollers.

Ariel OS

The developers further describe Ariel OS as follows on the project’s website:

Ariel OS follows an approach whereby it simultaneously integrates a curated ecosystem of libraries (available via crates.io), and adds missing operating system functionalities as depicted below. Such functionalities include a preemptive multicore scheduler, portable peripheral APIs, additional network security facilities, as well as a meta-build system to bind it all together.

As a result, a low-power IoT developer can focus on business logic sitting on top of APIs which remain close to the hardware but nevertheless stay the same across all supported hardware, inspired by what RIOT tends to in that regard. The intent is three-fold: reduce application development time, increase code portability, and minimize core system vulnerabilities.

In a nutshell: Ariel OS contributes to the global effort aiming to (re)write IoT system software foundations on more solid ground than what traditional building blocks written in C can provide.

Ariel OS architecture diagram
Ariel OS architecture diagram

You’ll find detailed documentation on the aforelinked project website, and the source code, released under a dual Apache 2.0 / MIT license, is available on GitHub. The project was brought to my attention when I created a virtual schedule for FOSDEM 2026, so another way to learn more is to attend the talk on Sunday, February 1, if you happen to attend the event, or if not, later once the presentation is up on YouTube. I’ve also noticed many other Embedded Rust talks during the event, so the language appears to be gaining traction even on resource-constrained systems.

There’s a list of boards supported by Ariel OS Rust RTOS, although some features may not be implemented. Boards that are fully supported include the BBC micro:bit V2, Nordic Semi nRF52840-DK, Raspberry Pi Pico and Pico W, STM32U083C-DK, and Adafruit Feather nRF52840 Express. ESP32-C3 and ESP32-C6 devkits are mostly supported, except for Bluetooth LE and persistent storage. The ESP32-S3 devkit needs some more work and testing, and the Raspberry Pi Pico 2 (W) is almost fully supported, except for UART. If the project gets more popular, we should expect better support over time for the most popular targets.

Ariel OS Hello World
Ariel OS Hello World

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress. We also use affiliate links in articles to earn commissions if you make a purchase after clicking on those links.