Embassy
Un framework Rust per sistemi embedded che sostituisce i thread dell'RTOS con async/await.
L'idea di partenza è che il firmware passa quasi tutto il tempo ad aspettare: un interrupt, un timer, un byte sulla UART. Un RTOS assegna a ogni task in attesa un proprio stack. In Embassy ogni task è un Future che il compilatore trasforma in una macchina a stati di dimensione esattamente nota, e un executor li interroga a turno. Quando nulla è pronto il core entra in WFI fino al prossimo interrupt, così il basso consumo deriva dalla struttura stessa anziché da logiche di sleep scritte a mano.
Avviato intorno al 2020 da Dario Nieuwenhuis, il progetto include HAL proprie per STM32, per i chip Nordic nRF e per il Raspberry Pi RP2040, oltre a stack di rete e USB. È distribuito con doppia licenza MIT/Apache, come d'uso nel mondo Rust.