Embedded Rust

Embedded Rust is the domain of writing Rust for firmware and hardware-facing systems, especially no_std and bare-metal targets where ownership, volatile access, and interrupt-safe sharing must model the machine directly.

Concepts

Patterns

Antipatterns

Source Trail

Start with embedded-book, then read the notes in this order: Embedded Rust Basics, no_std, Bare-Metal Programming, O, Peripheral Access Crates, and Interrupts and Concurrency (Embedded). The patterns and antipattern explain the main design pressure: hardware is mutable global state, but Rust code should expose it through narrow, synchronized ownership.

See also

Ownership · Borrowing · Unsafe Rust · Panic Unwinding and Abort · Result · The Never Type · Atomics · Interior Mutability

Sources