January 8, 2026
Async or sink? Microcontroller drama
Embassy: Modern embedded framework, using Rust and async
Rust takes tiny chips by storm — fans swoon, skeptics fear a split
TLDR: Embassy brings Rust’s async to microcontrollers so gadgets can juggle tasks without a full operating system. Builders love the smooth, low-power toolkit, but a vocal crowd fears the tiny Rust hardware community is splitting around async and early API churn—making this choice matter for future devices.
Embassy is pitching a bold promise: write smarter gadget code in Rust and let async (a way to juggle tasks without an operating system) do the heavy lifting. The hype train is full steam ahead, with fans shouting “RTOS is canceled!” (RTOS = real‑time operating system) and dropping “async or sink” puns. The project packs serious “batteries included” vibes—networking, Bluetooth, LoRa radios, USB, a bootloader, and low‑power sleep that could stretch battery life for years.
Real users chimed in. One builder said their LoRa relay ran “very smooth,” adding the only crashes came from Nordic’s Bluetooth software, not Embassy. Another fan swooned that this is why async Rust shines: you can do multiple things at once on tiny chips, without the headache of a full operating system. But the top drama: a warning that the small Rust hardware community is splitting in two—Embassy or bust—making it hard if you don’t want async. And a guitarist‑coder trying a Bluetooth pedal controller hit early‑days turbulence: fast‑changing APIs and pinned commits.
Meanwhile, hype spills over to Ariel OS, built on Embassy, cranking the “future is async” chorus louder. Bottom line: builders are thrilled, purists are nervous, and the comments are a steel‑cage match over the soul of embedded Rust.
Key Points
- •Embassy is a Rust-based async framework for embedded systems, enabling cooperative multitasking without an RTOS.
- •The project provides safe Hardware Abstraction Layers (HALs) for multiple MCU families, including Nordic, Raspberry Pi, Texas Instruments, Espressif, WCH, Microchip, and Puya.
- •embassy_time offers globally available, non-overflowing time types, and multiple async executors allow priority-based preemption.
- •embassy-net supplies a network stack with Ethernet, IP, TCP, UDP, ICMP, and DHCP, leveraging async for concurrency and timeouts.
- •Peripheral stacks include BLE (via trouble, nrf-softdevice, embassy-stm32-wpan), LoRa (lora-rs), USB (embassy-usb), and firmware updates (embassy-boot).