This tool seeks to be a one-stop shop for building and working with rust- generated WebAssembly that you would like to interop with JavaScript, in the browser or with Node.js. wasm-pack helps you build rust-generated WebAssembly packages that you could publish to the npm registry, or otherwise use alongside any javascript packages in workflows that you already use, such as webpack or greenkeeper.
Welcome to The Embedded Rust Book: An introductory book about using the Rust Programming Language on "Bare Metal" embedded systems, such as Microcontrollers.
The embedonomicon walks you through the process of creating a #![no_std] application from scratch and through the iterative process of building architecture-specific functionality for Cortex-M microcontrollers.
This is a collection of things that are not yet awesome in Embedded Rust. We need your help to capture all of the things that are not yet awesome, and to start making them awesome!
A Hardware Abstraction Layer (HAL) for embedded systems
AVR Rust
AVR is a type of low-frequency (sub-20Hz in general) 8-bit microcontroller developed by Atmel and owned by Microchip.
The AVR-Rust project aims to add support to the Rust ecosystem so that executables can be generated for AVR, taking advantage of Rust's safety guarantees and ergonomics.
Tock is an embedded operating system designed for running multiple concurrent, mutually distrustful applications on Cortex-M and RISC-V based embedded platforms. Tock's design centers around protection, both from potentially malicious applications and from device drivers. Tock uses two mechanisms to protect different components of the operating system. First, the kernel and device drivers are written in Rust, a systems programming language that provides compile-time memory safety, type safety and strict aliasing. Tock uses Rust to protect the kernel (e.g. the scheduler and hardware abstraction layer) from platform specific device drivers as well as isolate device drivers from each other. Second, Tock uses memory protection units to isolate applications from each other and the kernel.
Rust
IDE's
Static Binaries
rustup target add x86_64-unknown-linux-musl
cargo build --target x86_64-unknown-linux-musl
Rust WebAssembly
rustup target add wasm32-unknown-unknown
cargo install wasm-bindgen-cli
Rust Embedded
AVR Rust
TockOS