-
portable-atomic
Portable atomic types including support for 128-bit atomics, atomic float, etc
-
rhai
Embedded scripting for Rust
-
embedded-hal
A Hardware Abstraction Layer (HAL) for embedded systems
-
fixed
Fixed-point numbers
-
embedded-graphics
Embedded graphics library for small hardware displays
-
embedded-hal-mock
A collection of mocked devices that implement the embedded-hal traits
-
elf
A pure-rust library for parsing ELF files
-
embassy-sync
no-std, no-alloc synchronization primitives with async support
-
tock-registers
Memory-Mapped I/O and register interface developed for Tock
-
probe-rs
A collection of on chip debugging tools to communicate with microchips
-
micromath
Embedded-friendly math library featuring fast floating point approximations (with small code size) for common arithmetic operations, trigonometry, 2D/3D vector types, statistical analysis…
-
aarch64-cpu
Low level access to processors using the AArch64 execution state
-
socketcan
Linux SocketCAN library. Send and receive CAN frames via CANbus on Linux.
-
embassy-executor
async/await executor designed for embedded usage
-
riscv
Low level access to RISC-V processors
-
smoltcp
A TCP/IP stack designed for bare-metal, real-time systems without a heap
-
gdbstub
GDB Remote Serial Protocol in Rust
-
esp-hal
Bare-metal HAL for Espressif devices
-
espflash
A command-line tool for interacting with Espressif devices
-
aligned
A newtype with alignment of at least
Abytes -
rppal
Interface for the Raspberry Pi's GPIO, I2C, PWM, SPI and UART peripherals
-
hyperlight-host
A lightweight Virtual Machine Manager that can be hosted in an application to safely run untrusted or code within a VM partition with very low latency and overhead
-
bbqueue
A SPSC, lockless, no_std, thread safe, queue, based on BipBuffers
-
uefi
makes it easy to develop Rust software that leverages safe, convenient, and performant abstractions for UEFI functionality
-
defmt
A highly efficient logging framework that targets resource-constrained devices, like microcontrollers
-
minicov
Code coverage and profile-guided optimization support for no_std and embedded programs
-
embedded-storage
A Storage Abstraction Layer for Embedded Systems
-
semihosting
AArch64, Arm, RISC-V, LoongArch, MIPS32, MIPS64, and Xtensa
-
critical-section
Cross-platform critical section
-
embedded-graphics-simulator
Embedded graphics simulator
-
arbitrary-int
Modern and lightweight implementation of u2, u3, u4, ..., u127
-
stm32-hal2
Hardware abstraction layer for the STM32 MCUs
-
sntpc
making SNTP requests
-
statig
Hierarchical state machines for designing event-driven systems
-
fdt
A pure-Rust
#![no_std]crate for parsing Flattened Devicetrees -
fugit
Time library for embedded targets with ease-of-use and performance first
-
scm-record
UI component to interactively select changes to include in a commit
-
rp235x-hal
Embedded-HAL impl for the RP235x microcontroller family
-
embedded-sdmmc
A basic SD/MMC driver for Embedded Rust
-
flip-link
Flips the memory layout of embedded programs to protect against stack overflows
-
eeprom24x
Platform-agnostic Rust driver for the 24x series serial EEPROMs
-
rlsf
Real-time dynamic memory allocator based on the TLSF algorithm
-
buddy_system_allocator
A bare metal allocator that uses buddy system
-
embedded-text
TextBox for embedded-graphics
-
imxrt-iomuxc
Pad configuration interface for NXP i.MX RT processors. Part of the imxrt-rs project
-
arm-gic
A driver for the Arm Generic Interrupt Controller version 2, 3 or 4
-
embassy-futures
no-std, no-alloc utilities for working with futures
-
safe-mmio
Types for safe MMIO device access, especially in systems with an MMU
-
device-driver
A toolkit to write better device drivers, faster
-
rtthost
RTT (Real-Time Transfer) client
-
sequential-storage
storing data in flash with minimal erase cycles
-
managed
An interface for logically owning objects, whether or not heap allocation is available
-
embedded-test
A test harness and runner for embedded devices
-
mavlink
Implements the MAVLink data interchange format for UAVs
-
fdt-parser
parsing FDT
-
delog
Deferred logging, an implementation and extension of Rust's standard logging facade
-
nrf-hal-common
details of the nRF HAL crates. Don’t use this directly, use one of the specific HAL crates instead (
nrfXYZ-hal). -
uguid
GUID (Globally Unique Identifier) no_std library
-
littlefs2
Idiomatic Rust API for littlefs
-
speakersafetyd
Speaker protection daemon for embedded Linux systems
-
industrial-io
Linux Industrial I/O (IIO) Support
-
interpn
N-dimensional interpolation/extrapolation methods, no-std and no-alloc compatible
-
coap-lite
A lightweight CoAP message manipulation crate, ideal for embedded environments
-
edge-nal
Hosts a bunch of traits which are not yet available in the embedded-nal-async crate
-
rtic
Real-Time Interrupt-driven Concurrency (RTIC): a concurrency framework for building real-time systems
-
stm32h7xx-hal
Hardware Abstraction Layer implementation for STM32H7 series microcontrollers
-
meshtastic
communicating with and configuring Meshtastic devices
-
dma-api
Trait for DMA alloc and some collections
-
smart-leds-trait
A trait for implementing effects, modifiers and drivers for programmable leds
-
mousefood
embedded-graphics backend for Ratatui
-
halo2-base
Embedded domain specific language (eDSL) for writing circuits with the
halo2API. It simplifies circuit programming to declaring constraints… -
pawc
🐾 PawScript interpreter
-
risc0-zkvm-platform
RISC Zero zero-knowledge VM
-
stm32h7
Device support crates for STM32H7 devices
-
st-map
Runtime for a stack-alocated map
-
bluerobotics-ping
serves as the entry point for embedding applications using Rust on Blue Robotics's Ping devices family
-
updatehub-package-schema
UpdateHub Packages metadata schemas
-
json-escape
A no_std, zero-copy, allocation-free library for streaming JSON string escaping and unescaping. Ergonomic, fast, RFC 8259 compliant, with layered APIs for iterators, I/O streaming, and low-level tokens.
-
ftdi-embedded-hal
embedded-hal implementation for FTDI USB devices
-
hyperlight-guest-tracing
tracing functionality for the hyperlight guest
-
tg-rcore-tutorial-ch1
Chapter 1 of rCore Tutorial: A minimal bare-metal application running in RISC-V S-mode
-
blots
A small, simple, expression-oriented programming language
-
trapframe
Handle Trap Frame across kernel and user space on multiple ISAs
-
uwheel
Embeddable Aggregate Management System for Streams and Queries
-
microfft
Embedded-friendly Fast Fourier Transforms
-
statime
Precision Time Protocol implementation library for embedded and desktops
-
hdds-micro
Embedded DDS for microcontrollers (ESP32, RP2040, STM32)
-
postcard-rpc
A no_std + serde compatible RPC library for Rust
-
andes-riscv
Low level access to Andes' AndeStar V5 RISC-V processors
-
automotive_diag
Unified Diagnostic Services/UDS (ISO-14229-1), KWP2000 (ISO-142330), OBD-II (ISO-9141), and DoIP (ISO-13400) definitions to communicate with the road vehicle ECUs in Rust
-
heatshrink-bin
A minimal library implementing the heatshrink compression algorithm for no_std environments
-
ravedude
easily flash code onto an AVR microcontroller with avrdude
-
oid
Rust-native library for building, parsing, and formating Object Identifiers (OIDs)
-
sbat
UEFI Secure Boot Advanced Targeting (SBAT) no_std library
-
esp-idf-hal
A Hardware abstraction layer for Espressif's ESP family of microcontrollers based on the ESP-IDF framework
-
elf_loader
A high-performance, no_std compliant ELF loader and JIT linker for Rust
-
stm32-eth
Embedded Rust Ethernet driver for the STM32 MCU series
-
hyperlight-guest
only the essential building blocks for interacting with the host environment, including the VM exit mechanism, abstractions for calling host functions and receiving return values, and…
-
sbi-spec
Definitions and constants in the RISC-V Supervisor Binary Interface (RISC-V SBI)
-
smmu
ARM SMMU v3 (System Memory Management Unit) implementation - Production-grade translation engine
-
embedded-devices
Device driver implementations for many embedded sensors and devices
-
wyp-tg-rcore-tutorial-ch1-multicore
Chapter 1 Multicore Extension: RISC-V multi-core startup demonstration with HART identification and WFI parking mechanism
-
comchan
A Blazingly Fast and Minimal Serial Monitor for Embedded Applications
-
imxrt-ral
Register access layer for all NXP i.MX RT microcontrollers
-
starry-smoltcp
A TCP/IP stack designed for bare-metal, real-time systems without a heap
-
atat
AT Parser for serial based device crates
-
buoyant
SwiftUI-like UIs in Rust for embedded devices
-
esp32c3
Peripheral access crate for the ESP32-C3
-
smlang
A no-std state machine language DSL
-
stm32f4xx-hal
Peripheral access API for STM32F4 series microcontrollers
-
moondancer
firmware for the Great Scott Gadgets Cynthion USB Test Instrument
-
embive
interpreter/virtual-machine that leverages RISC-V bytecode, enabling sandboxed code execution on tiny devices (e.g. microcontrollers).
-
rpi-pal
Interface for the Raspberry Pi's GPIO, I2C, PWM, SPI and UART peripherals
-
gcode
parser for no-std applications
-
adafruit-seesaw
Platform-agnostic implementation for communicating with devices that run the Seesaw firmware
-
port-expander
Abstraction for I2C port-expanders
-
m-bus-parser
parsing M-Bus frames
-
atsame54_xpro
Board Support crate for the SAM E54 Xplained Pro Evaluation Kit
-
gd32f1x0-hal
HAL for the GD32F1x0 family of microcontrollers
-
rk3588-clk
Clock and Reset Unit (CRU) driver for RK3588 SoC
-
freertos-in-rust
FreeRTOS kernel ported to Rust - no_std, no C FFI
-
stm32-fmc
Hardware Abstraction Layer for STM32 Memory Controllers (FMC/FSMC)
-
embedded-nano-mesh
Lightweight mesh communication protocol for embedded devices
-
freertos-rust
Create to use FreeRTOS in rust projects. The freertos-cargo-build crate can be used to build and link FreeRTOS from source inside build.rs
-
iso7816
Types for ISO 7816
-
alec
Adaptive Lazy Evolving Compression - Smart codec for IoT sensor data with 90% compression ratio
-
os-terminal
Beautiful terminal emulator on no-std environment
-
disarm64
decoding ARM64 instructions (at least 250 MiB/sec of the decoding speed is delivered on a laptop that is used for development). Here you will also find a utility for generating disassembler/instruction…
-
scapegoat
Safe, fallible, embedded-friendly ordered set/map via a scapegoat tree. Validated against BTreeSet/BTreeMap.
-
lbl-tg-rcore-tutorial-ch1-clock
Chapter 1 of rCore Tutorial: A minimal bare-metal application running in RISC-V S-mode
-
ws2812-spi
SPI-based driver for ws2812 leds
-
bitpiece
bitfields for rust
-
osal-rs
Operating System Abstraction Layer for Rust with support for FreeRTOS and POSIX
-
nickel-lang-parser
The Nickel parser
-
corncobs
COBS encode/decode for Rust no_std targets
-
stm32g4xx-hal
Peripheral access API for STM32G4 series microcontrollers
-
hx711
A platform agnostic driver to interface with the HX711 (load cell amplifier and ADC)
-
a653rs
Arinc653 abstraction library for hypervisor independent partition programming
-
rdrive
A dyn driver manager
-
bitfields
Macro for generating flexible bitfields. Useful for low-level code (embedded or emulators).
-
prometric
Metric types to use with the prometric-derive crate
-
rainhuang0220-ai4ose-lab1-2026s-ch1-block-device
AI4OSE Lab1 Ch1: RISC-V S-mode bare-metal Hello World + VirtIO block sector write/read on QEMU virt (preview)
-
redox-scheme
writing Redox scheme daemons
-
hpm-riscv-rt
Runtime support for HPMicro RISC-V MCUs
-
armybox
A memory-safe #[no_std] BusyBox/Toybox clone in Rust - 299 Unix utilities in ~500KB
-
defmt-rtt
Transmit defmt log messages over the RTT (Real-Time Transfer) protocol
-
astarte-device-sdk
that provides communication and pairing primitives to an Astarte Cluster
-
avr-tester
Framework for testing AVR binaries
-
option-block
A minimal utility Rust crate for small, fixed-size blocks of optional types
-
uf-ahrs
attitude and heading estimation using gyroscope, accelerometer and magnetometer
-
u8g2-fonts
A text renderer for embedded-graphics, based on U8g2
-
picojson
A resource-constrained JSON parser for embedded systems
-
static-alloc
A bump allocator on static memory for the alloc-traits crate
-
surrealdb-protocol
The official SurrealDB Rust Client Protocol used by the SurrealDB Rust SDK
-
zdtwalk
A terminal UI for exploring and editing Zephyr device trees
-
wasefire-scheduler
Wasefire scheduler
-
arm-gic-driver
A driver for the Arm Generic Interrupt Controller
-
py32f0xx-hal
Peripheral access API for py32F0 series microcontrollers
-
blinksy
no-std, no-alloc LED control library designed for 1D, 2D, and 3D layouts
-
windows_i686_gnu
Import lib for Windows
-
generic-arraydeque
A fixed-capacity, stack-allocated double-ended queue (deque) backed by generic-array
-
signalo
A DSP toolbox with focus on embedded environments
-
embedded-alloc
A heap allocator for embedded systems
-
pepita
Tiny First-Principles Rust Kernel for Sovereign AI - io_uring/ublk/blk-mq interfaces
-
rp-binary-info
Code and types for creating Picotool compatible Binary Info metadata
-
defmt-or-log
Logging macros that forward to either defmt or log
-
esp32-nimble
A wrapper for the ESP32 NimBLE Bluetooth stack
-
riscv-decode
decoding RISC-V instructions
-
battery-estimator
A lightweight no_std library for estimating battery SOC from voltage with temperature and aging compensation
-
hub75-framebuffer
DMA-friendly Framebuffer implementation for HUB75 LED matrix displays
-
bitbybit
Efficient implementation of bit-fields where several numbers are packed within a larger number and bit-enums. Useful for drivers, so it works in no_std environments
-
fusion-ahrs
port of the C library by xioTechnologies, providing memory safety and zero-cost abstractions while maintaining the same performance characteristics
-
igw
Industrial Gateway - Universal SCADA Protocol Library for Rust
-
nut-shell
A lightweight command-line interface library for embedded systems
-
cluConstData
Compile-time macros for building persistent data structures in no_std and const environments. Supports buffer composition, and numeric formatting.
-
ltc681x
Client LTC681X battery monitoring family
-
jelly-mem_access
Memory Mapped I/O access library
-
riot-wrappers
Rust API wrappers for the RIOT operating system
-
async-io-mini
Async I/O fork for embedded systems
-
ihex
parsing and generating Intel HEX (or IHEX) objects. This format is commonly used for representing compiled program code and data to be loaded into a microcontroller, flash memory or ROM.
-
uf-crsf
A
no_stdRust library for parsing the TBS Crossfire protocol, designed for embedded environments -
bencode_lib
Bencode library implementation
-
canadensis
A Cyphal implementation: Node types and re-exports from some other canadensis crates
-
morse-codec
live decoding and encoding of morse code messages. Supports multiple embedded devices and operating systems by being no_std.
-
py32-metapac
Peripheral Access Crate (PAC) for all PY32 chips, including metadata
-
atebitemu
A MOS 6502 emulator
-
phyloEvolve
variant analyzer for human genomics
-
arm-pl011-uart
Arm PrimeCell UART (PL011) driver
-
minidump-parser
A CLI tool for parsing Qualcomm minidump/rawdump files
-
rtos-trace
RTOS tracing trait
-
regenerator2000-tui
Terminal User Interface (TUI) for Regenerator 2000 using ratatui
-
rhai-dylib
Dylib support for Rhai
-
st7735-rs
A no_std Rust driver library for the ST7735 TFT LCD display controller
-
eerie
Rustic binding to the IREE Compiler/Runtime
-
daisy-embassy
async audio development with daisy seed and embassy
-
intuicio-core
Core module for Intuicio scripting platform
-
lilygo-epd47
driver for the LilyGo T5 4.7 inch E-Ink Display (HW-Version V2.3 / ESP32S3)
-
mpu6050-dmp
Platform-independent I2C driver for MPU6050. Supports DMP usage. Fork of drogue-mpu-6050 which uses only embedded-hal traits (no dependency on embedded-time or drogue-embedded-timer).
-
tg-rcore-tutorial-ch1-t2l3
Chapter 1 T2L3: minimal no_std RISC-V S-mode demo with legacy VirtIO block read/write verification
-
png2lvgl
Convert PNG images to LVGL C arrays
-
jerryinsz-tg-rcore-tutorial-ch1-uart
Chapter 1 minimal kernel variant that prints via S-mode UART driver
-
ws2812-esp32-rmt-driver
WS2812 driver using ESP32 RMT
-
ph-qmi8658
Async no_std driver for the QMI8658C 6-axis IMU (accelerometer + gyroscope) built on embedded-hal-async
-
citra-solve
Efficient lost-in-space astrometric plate solver for embedded systems
-
ux
Implement the following non standard integers: u2, u3, u4, u5, u6, u7, u9, u10, u11, u12, u13, u14, u15, u17, u18, u19, u20, u21, u22, u23, u24, u25, u26, u27, u28, u29, u30, u31, u33…
-
bitcraft
A zero-cost, hardware-aligned bitfield and enumeration generator
-
loft
embedded scripting language
-
epub-stream
Memory-efficient EPUB parser for embedded systems
-
j1939
SAE J1939 is a set of standards that define how ECUs communicate via the CAN bus in heavy-duty vehicles
-
exfat-slim
An exFAT file system library written in safe Rust for embedded environments
-
atsamd51j
Peripheral access API for ATSAMD51J microcontrollers (generated using svd2rust)
-
authenticode
working with Authenticode (no-std)
-
easycom
implementing the Easycom antenna rotator control protocol (GS-232A/B, Easycomm II, and Easycomm III)
-
rwbt
RivieraWaves Bluetooth IP core: RFC command sequencer, register definitions, and calibration table packing
-
aarch64-rt
Startup code and exception vector for aarch64 Cortex-A processors
-
avr-context
Static checking of execution context - IRQ vs. main()
-
r2u2_core
R2U2: A stream-based runtime monitor in no_std
-
va108xx
PAC for the Vorago VA108xx family of microcontrollers
-
rustkey
— rust library for tillitis TKey application development
-
axvisor_api
Basic API for components of the Hypervisor on ArceOS
-
stm32f1
Device support crates for STM32F1 devices
-
embedded-layout
Extend embedded-graphics with simple layout functions
-
tuple_list_ex
Useful Haskel-like extensions for the tuple_list crate
-
uni-core
Core interpreter library for the Uni programming language
-
zencan-node
implementing an OPENCan node, primarily on an MCU
-
atsamx7x-hal
HAL and peripheral access API for ATSAME70, ATSAMS70, ATSAMV70, and ATSAMV71 microcontrollers
-
ufix
Flexible and usable generic fixed-point numeric type
-
libscd
Rust drivers for various SCD devices such as scd30 and scd4x CO2 sensors
-
flipperzero-test
Rust test harness for Flipper Zero
-
lsm6dsv320x-rs
Driver for the LSM6DSV320X IMU, featuring a low-g (±16g) and high-g (±320g) accelerometer, gyroscope, and integrated FSM/MLC modules for AI and IoT applications
-
ruvix-nucleus
Integration crate for RuVix Cognition Kernel - syscall dispatch, deterministic replay, and full acceptance tests (ADR-087)
-
phytium-mci
A no_std Rust driver for SD/MMC cards on Phytium E2000 series SoCs
-
a121-rs
Rust driver for the Acconeer A121 radar sensor
-
autosar-e2e
AUTOSAR E2E (End-to-End) Protection Library implementation in Rust
-
embassy-time
Instant and Duration for embedded no-std systems, with async timer support
-
uferris-bsp
A Board Support Package for the uFerris Learner Board
-
nmea0183
NMEA 0183 parser targetting mostly embedded devices but not limited to
-
ieee1275
Safe and easy-to-use wrapper for building OpenFirmware/IEEE1275 apps
-
clasp-embedded
CLASP embedded/no_std implementation - uses standard v3 protocol
-
embedded-nal-coap
A CoAP server and client implementation built on embedded-nal-async
-
clonic
Wire protocol types and codec for the Zone Coordination Protocol (ZCP)
-
nanofish
🐟 A lightweight,
no_stdHTTP client and server for embedded systems built on top of Embassy networking -
omwei-atom
Core implementation of the OMWEI 32B Semantic Atom (32BSA) standard. The universal grammar for Agentic AI and Industrial IoT Integrity.
-
is31fl3741
Driver for Lumissil Microsystem's IS31FL3741 IC
-
safe-libc
Safe wrappers around the
libccrate -
mks-servo42-rs
A generic,
no_stdRust driver for MKS SERVO42 closed-loop stepper motors -
fixed32
Fixed Point types
-
knx-pico
KNXnet/IP protocol implementation for embedded systems
-
wasefire-store
Key-value store for SLC flash storage
-
ohrs
a cli tool for ohos-rs
-
witchcraft-server-config
Configuration types for witchcraft-server
-
device-envoy-esp
Build ESP32 applications with composable device abstractions
-
crit
Rust cross-compiler
-
esp32s2
Peripheral access crate for the ESP32-S2
-
iqs7211e
Async I2C driver for the Azoteq IQS7211E capacitive touch and gesture controller
-
lbfgs
L-BFGS algorithm
-
autocore-std
Standard library for AutoCore control programs - shared memory, IPC, and logging utilities
-
va416xx
PAC for the Vorago VA416xx family of MCUs
-
cortex-m
Low level access to Cortex-M processors
-
xmrs
edit SoundTracker data with pleasure
-
cmsis-pack
managing CMSIS Packs
-
nsw-types
Implement the following non standard integers: u2, u3, u4, u5, u6, u7, u9, u10, u11, u12, u13, u14, u15, u17, u18, u19, u20, u21, u22, u23, u24, u25, u26, u27, u28, u29, u30, u31, u33…
-
embassy-nrf
Embassy Hardware Abstraction Layer (HAL) for nRF series microcontrollers
-
drmemd
Main process of the DrMem control system
-
imxrt-hal
Hardware abstraction layer for NXP i.MX RT microcontrollers
-
brightsky
Type-safe query builders and response types for the Bright Sky weather API
-
embedded-canvas
Draw anything with ease on the Canvas before drawing it to your small hardware display
-
msp430
Low level access to MSP430 microcontrollers
-
cjson-bindings
Safe Rust bindings for the cJSON library - a lightweight JSON parser in C with support for JSON Pointer (RFC6901), JSON Patch (RFC6902), and JSON Merge Patch (RFC7386)
-
motor-driver-hal
motor-driver using embedded-hal for linux
-
yaml_lib
YAML library implementation
-
sts3215-controller
controlling ST3215 servos
-
ad7124-rs
A platform-independent driver for the AD7124 family (AD7124-4/AD7124-8) 24-bit ADC with embedded-hal support
-
dtmf_table
A zero-heap, no_std, const-first DTMF keypad frequency table with runtime tolerance helpers. Also available in Python
-
ph-esp32-mac
no_std, no_alloc Rust implementation of the ESP32 Ethernet MAC (EMAC) driver
-
embedded-3dgfx
3D graphics rendering for embedded systems (fork of embedded-gfx by Kezii)
-
retroshield-z80-workbench
Z80 code generation framework for RetroShield projects
-
renode-run
Run embedded programs in the renode emulator
-
imxrt-rt
Startup and runtime support for i.MX RT processors
-
c2a-core
Core of Command Centric Architecture
-
usbd-human-interface-device
Batteries included embedded USB HID library for usb-device. Includes concrete Keyboard (boot and NKRO), Mouse, Joystick and Consumer Control implementations as well as support for building your own HID classes.
-
mplusfonts
Parametrized bitmap font family for embedded-graphics
-
rtt-target
Target side implementation of the RTT (Real-Time Transfer) I/O protocol
-
ruuvi-decoders
Ruuvi BLE advertisement decoders for Data Formats v5, v6, and E1
-
svd2rust
Generate Rust register maps (
structs) from SVD files -
dcf77_utils
DCF77 receiver for embedded platforms
-
bhc-core
Core IR - typed, explicit intermediate representation for BHC
-
bma400
A platform-agnostic Rust driver for the BMA400 12-bit ultra-low-power 3-axis accelerometer
-
ruwren
bindings to Wren programming language
-
rhodium-cache
High-performance cache and service runtime with QUIC transport, tiered blob storage, and embedded artifact acceleration
-
lsmtk
log-structured-merge-graph
-
datafrog
Lightweight Datalog engine intended to be embedded in other Rust programs
-
rw007
SPI WiFi module driver for embedded Rust
-
buffered-io
Bufferering types for embedded-io
-
aranet-types
Platform-agnostic types for Aranet environmental sensors
-
lv_bevy_ecs
Safe Rust bindings to the LVGL graphics library using Bevy's ECS framework
-
patina_stacktrace
Stack Tracing library
-
fixed_star_frame
Patched version of the fixed crate pending https://gitlab.com/tspiteri/fixed/-/merge_requests/14
-
kofft
High-performance, no_std, MCU-friendly FFT, DCT, DST, Hartley, Wavelet, STFT, and more. Stack-only, SIMD, and batch transforms for embedded and scientific Rust.
-
sbi-rt
Runtime library for supervisors to call RISC-V Supervisor Binary Interface (RISC-V SBI)
-
rust_sfq
DSL for designing SFQ circuits in Rust
-
mavlink-bindgen
used by rust-mavlink
-
axp2101-embedded
Embedded Rust driver for the AXP2101 Power Management IC using embedded-hal
-
ehatrom
EEPROM HAT library for Raspberry Pi HATs (serialization, I2C, CRC32, custom atoms)
-
embassy-ha
MQTT Home Assistant integration library for Embassy async runtime
-
vfat-rs
A no_std-compatible FAT32/VFAT filesystem implementation in Rust for custom kernels
-
daisy
A board support package for the Electro-Smith Daisy Seed and Patch SM
-
normfs-wal
Write-ahead log implementation for NormFS with crash recovery
-
bitinfo
A commandline tool to make working with registers easier
-
peat-lite
Lightweight CRDT primitives for resource-constrained Peat nodes
-
cat25040
A
no_std, async Rust driver for the ON Semiconductor CAT25040 (4-Kbit SPI EEPROM), built onembedded-hal-asynctraits -
ssd1681-display
no_std async driver for SSD1681-based e-ink displays (GDEY0154D67 and compatible 200x200 panels)
-
libosdp
IEC 60839-11-5 OSDP (Open Supervised Device Protocol)
-
tmc2209-uart
A no_std Rust driver for the TMC2209 stepper motor driver via UART
-
ccf-core
Contextual Coherence Fields — earned relational trust for autonomous systems. Patent pending US 63/988,438.
-
libc_alloc
global allocator which hooks into libc's malloc/free
-
cargo-dfu
cargo extension for flashing embedded rust programs via dfu
-
ti154
creating and parsing TI 15.4 UART packets
-
firmware-controller
Controller to decouple interactions between components in a no_std environment
-
eadkp
developing applications for NumWorks calculators running Epsilon OS. Provides low-level hardware interaction and high-level abstractions for display, input, battery, storage, and more.
-
sky-ili9341
A high-performance, async-ready ILI9341 TFT display driver for embedded Rust
-
max11300
A rust-embedded driver for the MAX11300 ADC/DAC
-
export-cef-dir
Export pre-built CEF (Chromium Embedded Framework) archives
-
jh71xx-hal
Hardware abstraction library for the JH71xx SoCs
-
common_hal_interface
A common interface between Rust HALs, for use in the Iron Coder IDE
-
matter_setup_code
Parse and generate Matter onboarding payloads, including QR codes and manual setup codes
-
a3s-box-sdk
Embedded MicroVM sandbox SDK — create, exec, stop sandboxes from your code
-
sg200x-bsp
Board Support Package (BSP) for SG2002/SG200x series chips, providing hardware abstraction layer drivers for pinmux, GPIO, SD/MMC, and TPU
-
bufio
std::io::Write for your potentially uninitialized slice of memory
-
chenhe-tg-rcore-tutorial-ch8
Chapter 8 of rCore Tutorial: Concurrency with threads, mutex, semaphore and condvar
-
riscv-types
Low level access to RISC-V processors
-
tg-rcore-tutorial-syscall
System call definitions and interfaces for rCore tutorial OS
-
ug_max
Down-top left-right defined font. Seemly design for 5x5 display.
-
fixed-slice-vec
FixedSliceVecis a dynamic length Vec with runtime-determined maximum capacity backed by a slice -
wasefire-protocol
Wasefire protocol between platform and host
-
serialport_srwp
serial port protocol (SRWP) for read/write operations with the Blaustahl Storage Device. Enables memory access via basic commands for data transmission and device control.
-
ruduino
Reusable components for AVR microcontrollers
-
tinympc-rs
Linear model predictive control for resources constrained devices
-
stackdump-cli
capturing stack dumps
-
tcs3472
Platform-agnostic Rust driver for the TCS3472 RGB color light to digital converter with IR filter
-
os_foundry_suite
2024 suite crate that unifies and orchestrates multiple OS-building crates
-
embedded-graphics-framebuf
Frame buffer helper for embedded-graphics
-
uartcat
chained uart memory bus protocol strongly inspired from EtherCAT and simplified
-
someboot
Sparreal OS kernel
-
at-parser-rs
A flexible AT command parser for embedded systems and communication devices with no_std support
-
someip-wire
A no_std SOME/IP wire protocol parser and serializer with zero-allocation design
-
ina219
current/power monitor driver
-
dlopen-rs
A dynamic linker fully implemented in Rust
-
openseal_sdk
Official SDK for creating native bare-metal modules for the OpenSeal Runtime
-
bmp388-embedded
no_std embedded-hal driver for the BMP388 barometric pressure and temperature sensor (with optional async support)
-
musb
musb(Mentor USB) regs and
embassy-usb-driver,usb-deviceimpl -
stateset-embedded-php
PHP bindings for StateSet Embedded Commerce
-
sx1262
A embedded-hal driver for the Semtech SX1261/2 sub-GHz radio transceiver
-
button-driver
Advanced button handling crate
-
esp-bootloader-esp-idf
Functionality related to the esp-idf bootloader
-
stepper-motion
Configuration-driven stepper motor motion control with embedded-hal 1.0 support
-
dbc-data
Derive macro for CAN DBC code generation
-
display-types
Shared display capability types for display connection negotiation
-
spwm
Software PWM for microcontrollers
-
ap33772s-rs
Driver for the AP33772S USB C Power Delivery and Extended Power Supply IC. Allowing for both embedded-hal and embedded-hal-async I2C
-
stm32f1-staging
Device support crates for STM32F1 devices
-
ciborium-io
Simplified Read/Write traits for no_std usage
-
rktop
High-performance system monitor for Rockchip SoCs (RK3588, RK3399) with real-time CPU, GPU, NPU, RGA, memory, and process monitoring
-
esp-idf-ableton-link
Safe Rust wrapper for Ableton Link on ESP32 via ESP-IDF
-
embassy-usb-dfu
USB DFU 1.1 protocol, using embassy-boot
-
nrf52820-pac
Peripheral Access Crate for Nordic's nrf52820 microcontroller
-
psx
developing homebrew for the Sony PlayStation 1
-
ens160-aq
ScioSense ENS160 driver
-
aht20-driver
Rust embedded-hal driver for the AHT20 temperature and humidity sensor
-
async-embedded-sdmmc
Embedded sdmmc driver with async support
-
tg-rcore-tutorial-signal
Signal handling for rCore tutorial OS
-
flash-algorithm
write CMSIS-DAP flash algorithms for flashing embedded targets
-
cross-stream
An event stream store for personal, local-first use, specializing in event sourcing
-
mips-rt
Minimal runtime for MIPS MCU cores
-
tg-syscall
System call definitions and interfaces for rCore tutorial OS
-
unoq-starter-mpu
Hello world for QRB2210 MPU (Arm Cortex-A53, Debian Linux)
-
drone-cortexm
ARM® Cortex®-M platform crate for Drone, an Embedded Operating System
-
osdemo
An example of combining various libraries for aarch64 OS development
-
agentic-robotics-mcp
High-performance agentic robotics framework with ROS2 compatibility
-
scd30pi
Interfaces the SCD30 i2c CO2, temperature and humidity sensor from Sensirion for Raspberry Pi
-
uart
A clean implementation of the UART_16550 device functionality
-
flipperzero-sys
Flipper Zero
-
slint-backend-linuxfb
A Slint platform backend for Linux Framebuffer (linuxfb) and evdev
-
stm32g4-staging
Device support crates for STM32G4 devices
-
no_std_time
Time measurments that work in no_std environments
-
ina226-tp
Rust Driver for device INA226 High-Side or Low-Side Measurement, Bi-Direcional Current and Power Monitor
-
bme280
device driver for the Bosch BME280 temperature, humidity, and atmospheric pressure sensor and the Bosch BMP280 temperature, and atmospheric pressure sensor
-
ra4m1-fsp-pac
Peripheral access API for RA4M1 microcontrollers (generated using svd2rust)
-
noshell
no_std argument parser and a shell for constrained systems
-
onerom-config
ROM and PCB configurations for One ROM - the flexible retro ROM replacement
-
lis2dw12-pid-rs
Pure Rust driver for the LIS2DW12 accelerometer
-
embedded-sensors-hal-async
A HAL for various peripheral sensors (async)
-
epd-waveshare-async
Async drivers for Waveshare's e-paper displays
-
sdio-host
SD host protocol library
-
mcx-pac
Peripheral Access Crate for NXP MCX Series MCUs
-
mc-sst25
Microship SST25* flash memory series
-
at32f4xx-pac
Device support crates for AT32F4 devices
-
stm32-bindings
Peripheral Access Crate (PAC) for all STM32 chips, including metadata
-
va416xx-hal
HAL for the Vorago VA416xx family of MCUs
-
lpc55-hal
Hardware Abstraction Layer (HAL) for the NXP LPC55S6x ARM Cortex-33 microcontrollers
-
w5500
IoT Controller implementation
-
biquad
digital second order IIR filters, also known as biquads
-
smartaudio
A
no_stdRust library for parsing the TBS smartaudio protocol -
dfplayer-async
embedded-hal-async driver for the DFPlayer mini MP3 module
-
picoboot
Communicating with Raspberry Pico/RP2040/RP2350 in BOOTSEL mode over USB
-
pir-motion-sensor
PIR motion sensors
-
ism330is-rs
Platform-agnostic driver for the ISM330IS 6-axis IMU with integrated ISPU for edge AI, sensor hub support, programmable interrupts, and ultra-low-power operation
-
aligned-cmov
Fast constant-time conditional moves of aligned bytes
-
rt
A real-time operating system capable of full preemption
-
tg-rcore-tutorial-console
print!,println!andlog::Logwith customizable implementations for rCore tutorial -
rtic-time
Basic definitions and utilities that can be used to keep track of time
-
nrf52805-hal
HAL for nRF52805 microcontrollers
-
sht31
temperature and humidity sensor
-
northstar-nstar
Northstar is an container runtime for Linux targetting embedded systems
-
dht-sensor
Driver for the DHT11/DHT22 sensor based on embedded-hal
-
aw9523-embedded
A platform-agnostic embedded-hal driver for the AW9523 16-channel GPIO expander and LED driver
-
any-uart
Init early console from device tree, mostly for Arm
-
rtic-common
lib TODO
-
ruvix-shell
In-kernel debug shell for the RuVix Cognition Kernel (ADR-087)
-
fdt-edit
A high-level library for creating, editing, and encoding Flattened Device Tree (FDT) structures
-
pot-head
A no_std Rust library for processing raw potmeter inputs in embedded systems
-
mpr121-hal
MPR121 proximity capacitive touch sensor controller hal driver implementation
-
mcuvisa
lib used by self
-
lsm6dso16is-rs
Platform-agnostic driver for the LSM6DSO16IS 6-axis IMU with integrated ISPU for edge AI, sensor hub support, programmable interrupts, and ultra-low-power operation
-
adf435x
Type-safe Rust driver for ADF435x wideband RF PLL synthesizers using device-driver crate
-
hx711_spi
A platform agnostic driver to interface with the HX711 using SPI
-
ina228
Platform-agnostic Rust driver for the TI INA228 power/energy/charge monitor
-
panic-probe
Panic handler that exits
probe-runwith an error code -
axaddrspace
ArceOS-Hypervisor guest address space management module
-
si7021-t-rh
Si7021 driver (7013, 7020 and 7021)
-
dtmf_tones
A zero-heap, no_std, const-first DTMF keypad frequency table with runtime tolerance helpers
-
rpsp
small, but extensible platform support package for RP2040 devices
-
u8pool
Stack for u8 slices in a client-provided buffers
-
esp-ota
Easy OTA updates for ESP32 chips using only safe Rust. Transport agnostic.
-
elf2flash
help flash elf2 files to microcontroller
-
libafl_frida
Frida backend library for LibAFL
-
esp-hal-servo
controlling servo motors using ESP32 LEDC peripheral
-
pc-keyboard
PS/2 keyboard interface library
-
libiio-sys
Native, unsafe, bindings to the Linux libiio library. Used by industrial-io.
-
mountain-mqtt
A no_std compatible, async MQTT v5 client for tokio and embedded use
-
sams-logic-gate
SAMS Logic Gate - Hardware-level validation and filtering with zero-latency trust checking for OMWEI 32BSA ecosystem
-
onerom-gen
ROM metadata and ROM image generator for One ROM - the flexible retro ROM replacement
-
ask433
A no_std, embedded-hal ASK/OOK modem driver for 433 MHz RF modules (e.g., FS1000A). Supports RX/TX, 4b6b encoding, and software PLL demodulation.
-
grideye
Rust driver for Grid-EYE / Panasonic AMG88(33)
-
multi-mono-font
Multi mono font mixed typesetting for embedded-graphics
-
arduino_mkrzero
Board Support crate for the Arduino MKRZERO
-
r3
R3-OS: Experimental static component-oriented RTOS for deeply embedded systems
-
ph-curves
no-std, no-alloc curve lookup tables and tickless scheduling for embedded Rust
-
edge-nal-std
A STD implementation of edge-nal based on
async-io -
mcp2003a
LIN transceiver driver with embedded-hal traits for no-std environments
-
ra4m1-ctpac
Peripheral Access Crate (PAC) for the Renesas RA4M1
-
esp-wifi
A WiFi, Bluetooth and ESP-NOW driver for use with Espressif chips and bare-metal Rust
-
postcard-dyn
Dynamic ser/de for postcard
-
defmt-decoder
Decodes defmt log frames
-
rkg-utils
allowing the parsing and modification of Mario Kart Wii ghost files
-
tmp108
Platform-agnostic Rust driver for the TMP108 temperature sensor
-
nrf-usbd
USB driver for nRF microcontrollers
-
tg-rcore-tutorial-uart1
NS16550A UART driver for S-Mode in rCore tutorial
-
soul-gpio
GPIO tools for soul-core — digital I/O, PWM, ADC, I2C, SPI. WASM-first, cross-platform.
-
ruvllm-esp32
Tiny LLM inference for ESP32 microcontrollers with INT8/INT4 quantization, multi-chip federation, RuVector semantic memory, and SNN-gated energy optimization
-
assign-resources
Macro to split up fields of a Peripherals struct into new structs
-
tg-rcore-tutorial-kernel-vm
Kernel virtual memory management for rCore tutorial OS
-
tg-rcore-tutorial-user
User-space apps for rCore Tutorial chapters (subset for ch2)
-
modulino
A hardware-agnostic, no_std Rust driver for Arduino Modulino breakout boards
-
conda-express
A lightweight, single-binary conda bootstrapper — powered by rattler
-
edge-net
no_std and no-alloc async implementations of various network protocols
-
cortex-r-rt
Run-time support for Arm Cortex-R
-
shmem_providers
Platform independent shared memory providers for Windows, Linux, Android, iOS,
-
gdep073e01
Embedded-graphics driver for the GDEP073E01 7-color e-paper display
-
inky-frame
Driver and protocol library for InkyFrame devices with peripheral support
-
defmt-test
A test harness for embedded devices
-
display-driver
Async display driver for embedded systems, supporting various display panels and buses
-
wasefire-applet-api-desc
Description of the Wasefire applet API
-
uefi-async
A lightweight asynchronous executor for UEFI environments
-
riscv_vcpu
ArceOS-Hypervisor riscv vcpu module
-
syact
that defines actuators and their interaction with each other
-
scd4x
Rust driver for the Sensirion SCD4x series. Carbon Dioxide / Temperature / Humidity sensors.
-
gpiocdev-embedded-hal
embedded-hal wrappers around gpiocdev Requests
-
shtcx
Platform agnostic Rust driver for the Sensirion SHTCx series temperature/humidity sensors
-
lps22df-rs
Platform-agnostic driver for the LPS22DF ultracompact digital barometer and absolute pressure sensor with I2C, SPI interfaces
-
st-mems-reg-config-conv
A no_std-compatible library to convert MEMS Configuration Shared Types v2.0 into Rust code at build time
-
tg-rcore-tutorial-ch4-Charlie-exercise
Chapter 4 of rCore Tutorial: Address space management with SV39 virtual memory
-
sen5x-rs
embedded-hal driver for the sen5x environmental sensor node for HVAC and air quality applications
-
i2cdev
API for safe access to Linux i2c device interface
-
device_tree_parser
High-performance Device Tree Blob (DTB) parser with zero-copy parsing and ergonomic APIs for embedded systems
-
device-envoy-rp
Build Pico applications with LED panels, easy Wi-Fi, and composable device abstractions
-
glancelog
Rapid Log Analysis
-
mspm0l222x-pac
A Peripheral Access Crate for the Texas Instruments MSPM0L222X microcontroller family
-
kcheck
working with kernel configuration information
-
northstar-runtime
Northstar is an container runtime for Linux targetting embedded systems
-
stateset-dotnet
C#/.NET bindings for StateSet Embedded Commerce
-
crispy-upload
Firmware upload tool for crispy-bootloader via USB CDC
-
poet-rhai
Embedded scripting for Rust
-
littlefs-rust
Safe Rust API for the LittleFS embedded filesystem
-
embedded-storage-async
A Storage Abstraction Layer for Embedded Systems
-
aligned-array
A newtype with alignment of at least
Abytes -
tg-signal-defs
Signal definitions for rCore tutorial OS
-
sht4x-rjw
no-std driver for the Sensirion SHT4x series of temperature and humidity sensors
-
fh101rf
Driver crate for the FH101RF Wake-Up Radio
-
grounded
A toolkit for managing unsafe statics
-
tg-ch1
Chapter 1 of rCore Tutorial: A minimal bare-metal application running in RISC-V S-mode
-
bmp390-rs
Async driver for the BMP390 pressure sensor that supports both I2C and SPI
-
embassy_buddy
A board support crate for the Prusa Buddy Board
-
stm32h5-staging
Device support crates for STM32H5 devices
-
arduino_mkrvidor4000
Board Support crate for the Arduino MKR VIDOR 4000
-
arm-ffa
Arm Firmware Framework for Arm A-profile support library
-
stackdump-trace
tracing stack dumps
-
embedded-graphics-gop
embedded-graphics driver for the UEFI Graphics Object Protocol
-
rkllm-sys-rs
Raw FFI bindings for librkllmrt
-
flat_rbtree
A flat, index-based Red-Black Tree with no heap allocations. Ideal for performance-critical or memory-constrained environments.
-
v4_cli
CLI tool for V4 VM bytecode deployment
-
tg-rcore-tutorial-ch1-uart3
Chapter 1: Application and Basic Execution Environment (UART driver version) for rCore tutorial
-
tg-rcore-tutorial-games-syscall
System call definitions and interfaces for tg-rcore tutorial games
-
bmp38x-ya
BMP38x driver (384, 388, 390)
-
ssd1677
Driver for the SSD1677 e-Paper display controller, for use with embedded-hal v1.0
-
figments
A high performance graphics API for microcontrollers
-
signalo_traits
A collection of traits used in 'signalo' umbrella crate
-
grixy
Zero-cost 2D grids for embedded systems and graphics
-
zstd-nostd
Pure Rust no_std Zstandard (zstd) compression and decompression
-
device-driver-cli
The command line tool for the device-driver toolkit
-
planck-noalloc
Stack-allocated, no-std collections (ArrayVec, RingBuf)
-
oxygenlance
run BF Joust matches in Rust
-
ltr-329
I2C-based driver for an LTR329 Ambient Light Sensor (ALS)
-
driver-interface
Sparreal OS kernel
-
nickel-lang-vector
Persistent vectors for Nickel
-
bounded-str
Parse, don't validate! No-std bounded string with compile-time length limits and policies
-
lilos
A tiny embedded OS based around Futures and async
-
lr2021
Driver for Semtech LR2021
-
interrupt
-
wasefire-cli
Wasefire CLI to manage applets and platforms
-
tinyboot
Core bootloader library for tinyboot
-
tg-arceos-tutorial
Meta crate bundle for ArceOS tutorial apps, with offline archive and extract scripts
-
bootmgr-rs-core
A framework for easily creating boot managers in Rust
-
embedded-dht-rs
A driver for interfacing with DHT11, DHT20 (AHT20), DHT22 (AM2302) temperature and humidity sensors, designed for embedded systems
-
picobroker
Pure no_std core library for PicoBroker MQTT 3.1.1 broker
-
embedded_cotoutf8
COTO is a library that translates numerical primitives into readable ASCII UTF-8 arrays
-
svd-vector-gen
process Microcontroller SVD files(e.g. STM32) and generate vector tables and linker scripts.
-
tg-rcore-tutorial-games-ch3-snake-kernel
Kernel support for game of ch3 of tg-rcore tutorial
-
hayasen
A multi sensor library for Embedded Rust supporting multiple sensors
-
vesc
A no-std/no-alloc implementation of the VESC® firmware communication protocol
-
conduyt
protocol SDK for Rust — host-side hardware control
-
probe-rs-tools
A collection of on chip debugging tools to communicate with microchips
-
embedded-runner
Cargo runner for embedded projects using OpenOCD
-
mcp4728-driver
A platform-agnostic driver for the MCP4728 12-bit Quad DAC with EEPROM
-
core_affinity2
Core Affinity crate to bind to cores, cross platform
-
lm75
Platform-agnostic Rust driver for the LM75 temperature sensor and thermal watchdog
-
ydlidar-rust-driver
ydlidar rust package
-
pasts
Minimal and simpler alternative to the futures crate
-
fixed32-math
Geometric types
-
esp-nvs
ESP-IDF compatible, bare metal, non-volatile storage (NVS) library
-
mcp230xx
MCP23008/MCP23017 8/16-Bit I2C I/O Expander with I2C Interface
-
mecha10-runtime
Runtime supervisor for Mecha10 nodes - launching, monitoring, and lifecycle management
-
interchange
Request/response mechanism for embedded development, using atomics
-
usbpd
USB-PD library for
[no_std] -
irmf-slicer
A slicer for IRMF (Infinite Resolution Materials Format) files
-
catswords-jsrt
Safe-ish ergonomic Rust wrapper for ChakraCore JsRT
-
aingle_minimal
Ultra-light AIngle node for IoT devices (<1MB RAM)
-
mcan
Unofficial MCAN Hardware Abstraction Layer
-
oxidate-fsm
FSM framework with GUI visualization - Mermaid-like DSL to Rust code generator
-
bmi160
Platform-agnostic Rust driver for the BMI160 inertial measurement unit (IMU)
-
type_slicer
型付きメモリスライサー
-
rustedbytes-nmea
Rust no_std library for parsing NMEA messages from a GNSS receiver
-
bxcan
STM32 bxCAN peripheral driver
-
lps22hh-rs
Platform agnostic driver for the ST LPS22HH pressure and temperature sensor
-
lvgl
LVGL bindings for Rust. A powerful and easy-to-use embedded GUI with many widgets, advanced visual effects (opacity, antialiasing, animations) and low memory requirements (16K RAM, 64K Flash).
-
grove-lcd-rgb
Platform-agnostic driver for Grove LCD RGB Backlight using embedded-hal, with full support for v4 and v5 hardware
-
embedded-savegame
Savegame library for embedded with power-fail safety and wear leveling
-
t4
Local embedded high-performance object store
-
gc9a01-rs
SPI 4-wire driver for GC9A01 display controller
-
oxirs-canbus
CANbus/J1939 protocol support for OxiRS semantic web platform
-
phidget
Phidget library for Rust
-
embassy-stm32-fsmc-display-interface
DisplayInterface implementation for STM32 FSMC peripheral using Embassy HAL
-
xmc4-hal
Peripheral access API for XMC4 series microcontrollers
-
is31fl3743a
Driver for Lumissil Microsystem's IS31FL3743A IC
-
std-embedded-nal
embedded-naltraits for large devices that support the standard library -
itm
A decoding library for the ARM Cortex-M ITM/DWT packet protocol
-
stcc4
no-std driver for the Sensirion STCC4 CO2 sensor
-
hisiflash
flashing HiSilicon chips
-
ap33772s-driver
A platform-agnostic driver for the AP33772S USB-PD Sink Controller
-
wio_terminal
Board support crate for the Seeed Studio Wio Terminal
-
unikit
A universal bare-metal toolkit
-
ft6x36
Rust driver for Ft6x36 touch screen
-
max30101-rs
Pure Rust driver for the MAX30101 PPG sensor
-
sh8601-rs
driver for the SH8601 display controller
-
smallnum
Compile-time size optimization for numeric primitives
-
dacx578
Texas Instruments DACx578 Driver for Rust Embedded HAL
-
ral-registers
MMIO registers abstraction with a macro API
-
rtic-sync
Synchronization primitives for asynchronous contexts
-
dcmimu
no_std DCM IMU implementation
-
zynq7000-rt
Run-time support for the Zynq7000 family of SoCs for running bare-metal applications
-
embedded-registers
Procedural macro for effortless definitions of registers in embedded device drivers
-
pololu_tic
A driver to control the Tic series of stepper motor controllers created by Pololu, including the T500, T834, T825, T249, and 36v4
-
rp-runner-switcher
Dynamic runner switcher for rp pico
-
rdrive-macro-utils
A dyn driver manager
-
oxide-mvu
A standalone MVU runtime for Rust with no_std support for embedded systems
-
avr-int24
24 bit integer arithmetic for AVR
-
orion-sdr
DSP/SDR block library targeting HF-to-UHF, satellites, and Python bindings. Roadmap inside.
-
tg-console
print!,println!andlog::Logwith customizable implementations for rCore tutorial -
mini-oled
I2C driver for the SH1106 OLED display controller (SPI planned)
-
rhai-process
Expose safe process-execution helpers to Rhai scripts
-
p256-cm4
P256-Cortex-M4 re-written in rust
-
ra-fsp-rs
Rust HAL for Renesas RA microcontrollers using FSP (Flexible Software Package)
-
rp2040-hal
Embedded-HAL impl for the rp2040 microcontroller
-
bq25773
Platform-agnostic Rust driver for the Texas Instruments BQ25773 battery charge controller
-
device-driver-generation
Code generation for the
device-drivercrate -
glyphr
A no_std, lightweight and simple font rasterizing library
-
micropb
Rust Protobuf library targetting embedded systems and no_std environments
-
dmx-rdm
communicating DMX512 (ANSI E1.11) and DMX-RDM (ANSI E1.20) over a RS485 bus by using interchangeable drivers
-
veecle-freertos-integration
Rust wrapper for FreeRTOS
-
esp-idf-part
parsing and generating ESP-IDF partition tables
-
tg-kernel-vm
Kernel virtual memory management for rCore tutorial OS
-
acs37800
Driver for ACS37800 energy metering IC
-
embassy-dshot
Async DShot ESC protocol driver for embassy-rp (RP2040/RP2350)
-
esp-bsp
Rust Bare Metal Board Support Packages for ESP32 related boards with focus on Embassy Async
-
sdp8xx
Platform agnostic Rust driver for the Sensirion SDP8xx differential pressure sensor
-
serde-csv-core
CSV serialization for no_std crates
-
mii
A rust-embedded implementation of the monome ii protocol
-
lwprintf-rs
Rust bindings for the lightweight printf library lwprintf
-
trmnl
BYOS (Bring Your Own Server) framework for TRMNL e-ink displays
-
hexa-tune-proto
AT-over-SysEx-over-USB-MIDI protocol core — no_std, zero dependency
-
embedded-ttf
Font rendering (ttf and otf) with embedded-graphics
-
rust-forth-tokenizer
A Forth tokenizer written in Rust
-
ufmt
A (6-40x) smaller, (2-9x) faster and panic-free alternative to
core::fmt -
myrtio-mqtt
MQTT client library for embedded systems
-
tg-signal
Signal handling for rCore tutorial OS
-
max7219-display
A no_std driver for the MAX7219 LED display controller
-
os-trait
Traits used to adapter different embedded RTOS
-
mem-barrier
Cross-architecture, no-std memory barriers
-
ssd1315
OLED driver
-
linux-embedded-hal
embedded-haltraits for Linux devices -
esp-synopsys-usb-otg
'usb-device' implementation for Synopsys USB OTG IP cores
-
hd44780-embedded-hal
Driver for HD44780-LCD ontop of embedded-hal(-async). (I2C and GPIO interface)
-
bbq2
A SPSC, lockless, no_std, thread safe, queue, based on BipBuffers
-
gemma_m0
Board Support crate for the Adafruit Gemma M0
-
stackstring
A fixed-size string
-
tg-rcore-tutorial-easy-fs
filesystem implementation for rCore tutorial OS
-
astarte-fdo-protocol
FIDO Device Onboarding message parsing library
-
nvme-driver
nvme driver
-
rpi-st7789v2-driver
Raspberry-Pi driver for the ST7789V2 TFT display controller (WaveShare 1.69" 240x280 LCD)
-
msp430-rt
Minimal runtime / startup for MSP430 microcontrollers
-
max3010x
Platform-agnostic Rust driver for the MAX3010x high-sensitivity pulse oximeter and heart-rate sensor for wearable health
-
panic-persist
Persist panic messages in the targets' RAM
-
mfrc522
A platform agnostic driver to interface the MFRC522 (RFID reader/writer)
-
rave_engine
A secure and efficient JSON Schema validation and Rhai script execution engine
-
nrf-softdevice-s140
Low-level bindings for the Nordic nRF SoftDevice S140
-
shared-mem-queue
Single-writer single-reader queues which can be used for inter-processor-communication in a shared memory region
-
xca9548a
Platform-agnostic Rust driver for the TCA954xA and PCA954xA I2C switches/multiplexers
-
jtag-taps
interacting with individual TAPs on a JTAG scan chain
-
samd11_bare
Support crate for the ATSAMD11C
-
wincwifi
WINC1500 Wifi chip embedded driver
-
git-tags-semver
extract SemVer Version Information from annotated git tags
-
ownedref
pass around references that will be owned types on deserialization
-
it8951
E-Paper driver
-
myrtio-light-composer
1D LED rendering library
-
esp-radio
A WiFi, Bluetooth and ESP-NOW driver for use with Espressif chips and bare-metal Rust
-
j1939-core
Core crate for j1939-rs
-
avr-progmem
Progmem utilities for the AVR architectures
-
nxp-pcf8523
A no-std driver for the NXP PCF8523 RTC and calendar module
-
eva-robots
Commons for EVA ICS v4
-
lpc55-pac
Peripheral access API for NXP LPC55 microcontrollers
-
sh1106
I2C/SPI driver for the SH1106 OLED display controller
-
mov_ave
A no_std compatible library for calculating moving averages with compile-time fixed window sizes
-
stm32g0
Device support crates for STM32G0 devices
-
bosch-bme680
A pure rust implementation for the BME680 environmental sensor
-
wobblechar
Parse ASCII/UTF-8 waveform diagrams into a stream of decoded samples
-
agentic-robotics-node
High-performance agentic robotics framework with ROS2 compatibility
-
smolusb
An experimental lightweight library for implementing USB on embedded systems
-
modio-logger
Dbus service
-
acir
IR that the VM processes, it is analogous to LLVM IR
-
rustzx-z80
Z80 CPU emulator library
-
dht20-rs
A
no_stdRust driver for the DHT20 temperature and humidity sensor -
embedded-cli
CLI with autocompletion, help and history for embedded systems (like Arduino or STM32)
-
can-bittiming-rs
Computes the value of BTR (register bit timing register) of a can device
-
lh-adxl345
ADXL345 Accelerometer Driver
-
embassy-embedded-hal
Collection of utilities to use
embedded-halandembedded-storagetraits with Embassy -
esp-rom-sys
ROM code support
-
liboscore
Rust wrapper around the libOSCORE implementation of OSCORE (RFC8613), a security layer for CoAP
-
microamp
Asymmetric Multi-Processing on microcontrollers
-
x-smoltcp
A TCP/IP stack designed for bare-metal, real-time systems without a heap
-
websocketz
A zerocopy websockets implementation for no_std environments
-
os_metal_primitives
Dependency-free bare-metal primitives for Rust OS development: typed MMIO, registers, bitfields, port I/O, IRQ tables, and driver state patterns
-
bmi323-rs
Async, no_std driver for the Bosch BMI323 6-axis IMU sensor
-
mcp4725
Microchip MCP4725 DAC Driver for Rust Embedded HAL
-
ra0e1-pac
Peripheral Access Crate (PAC) for R7FAA0E1
-
nourl
Url primitive for no_std environments
-
can-viewer-rs
A terminal-based CAN bus viewer for Linux SocketCAN written in Rust
-
minitel
interaction library
-
normfs-store
Compressed and encrypted persistent storage for NormFS
-
stm32f0xx-hal
Peripheral access API for STM32F0 series microcontrollers
-
display-driver-co5300
Display Driver for CO5300
-
exp-rs
no_std expression parser, compiler, and evaluation engine for math expressions designed for embedded, with qemu examples
-
gdeh0154d67
Driver for the GDEH0154D67 E-Paper display
-
pmsa003i
Plantower PMSA003I Driver for Embedded HAL
-
tg-rcore-tutorial-games-ch4-tetris-user
User-space game for tg-rcore-tutorial ch4
-
mquickjs-rs
Safe, idiomatic Rust wrapper for the MicroQuickJS engine
-
segmented_vector
a mutable vector type built from array segments, similar to clojure's persistent vector
-
rusty_list
A no_std compatible, intrusive doubly linked list implementation
-
tg-easy-fs
filesystem implementation for rCore tutorial OS
-
sen6x
no-std driver for the SEN6X sensor modules
-
ili9341
A platform agnostic driver to interface with the ILI9341 (ald ILI9340C) TFT LCD display
-
defmt-ringbuf
defmt persistent ring buffer logger
-
stateset-embedded-ruby
Ruby bindings for StateSet Embedded Commerce
-
rvf-kernel
Real Linux microkernel builder for RVF cognitive containers
-
rust-forth-compiler
A Forth compiler written in Rust
-
mwdg
Micro-watchdog library for embedded RTOS systems with C FFI
-
atoxide-stdlib
Embedded standard library files for the Ato hardware description language
-
os_slab_vault
Dependency-free, no_std generational slab/object-pool for Rust OS kernels
-
ra2e2-pac
Peripheral Access Crate (PAC) for R7FAA2E2
-
gd32f4pac
Device support crate for GD32F4 devices
-
qmc5883p
A platform-agnostic driver for the QMC5883P magnetic sensor
-
jpf4826_driver
Rust driver for JPF4826 4-channel PWM fan controller via Modbus-RTU
-
cargo-embassy
Get up and running with Embassy in seconds
-
avr-device
Register access crate for AVR microcontrollers
-
embedded-sensors-hal
A HAL for various peripheral sensors
-
embedded-hal-compat
Compatibility layer for interoperability between different embedded-hal versions
-
dummy-pin
Dummy implementations of the input/output pin embedded-hal traits
-
pcf8563
Platform-agnostic Rust driver for the NXP PCF8563 real-time clock
-
py32-hal
HAL and Embassy support for the Py32 family of microcontrollers
-
minimq
A minimal MQTT5 client designed for no_std platforms
-
somehal
A kernel
-
esp-metadata
Metadata for Espressif devices
-
vorago-reb1
Board Support Crate for the Vorago REB1 development board
-
mcxa-pac
Peripheral Access Crate for MCXA256 devices
-
dumo
An embedded-graphics backend for Ratatui with an adjustable font size
-
northstar-sextant
Northstar is an container runtime for Linux targetting embedded systems
-
tg-rcore-tutorial-user-T3L2
User-space apps for ch2-T3L2: dynamic step-by-step tangram OS rendering
-
axplat-aarch64-qemu-virt
axplathardware abstraction layer for QEMU ARM64 virtual machine -
max30102
Blocking and async driver for the MAX30102 pulse oximeter and heart rate sensor
-
qstr
Cache-efficient, stack-allocated string types
-
lis2de12
Blocking and async driver for the LIS2DE12 accelerometer with I2C and SPI support
-
minicoap
A tiny, zero-copy Rust library for parsing and building CoAP (Constrained Application Protocol) messages
-
sim7020
driver for sim7020E NB IoT modem
-
oxigdal-mobile-enhanced
Mobile platform performance optimizations for iOS and Android - battery efficiency, network optimization, and mobile-specific features
-
dbc-codegen
CAN DBC code-gen for embedded Rust
-
oxigdal-embedded
Embedded systems support for OxiGDAL - no_std compatible geospatial processing for ARM, RISC-V, and ESP32
-
embedded-iconoir
1300+ icons for embedded-graphics, ported from the Iconoir icon pack
-
canadensis_can
A Cyphal implementation: Cyphal/CAN (CAN and CAN FD) transport layer
-
ds1307-rtc
A no_std driver for the DS1307 Real Time Clock (RTC) module
-
avr-stack
Stack analysis for AVR
-
muses72323
driver library for the MUSES72323 electronic volume controller IC
-
microbit-bsp
An embassy-based boards support package (BSP) for BBC Micro:bit v2
-
embedded-graphics-unicodefonts
Monospaced embedded-graphics fonts with more glyphs
-
sgp30
Platform agnostic Rust driver for the Sensirion SGP30 gas sensor
-
axplat-loongarch64-qemu-virt
axplathardware abstraction layer for QEMU LoongArch virtual machine -
clipline
Line segment rasterization with pixel-perfect clipping
-
iis2mdc-rs
Platform-agnostic driver for the IIS2MDC ultra-low-power, high-accuracy 3-axis digital magnetic sensor with I2C and SPI interfaces
-
defmt-print
that decodes defmt logs and prints them to the console
-
bootmgr
A framework for easily creating boot managers in Rust
-
hive-lite
Lightweight CRDT primitives for resource-constrained HIVE nodes
-
usb251xb
no_std embedded-hal driver for Microchip USB251xB/xBi USB 2.0 hub controllers
-
axplat-riscv64-qemu-virt
axplathardware abstraction layer for QEMU RISC-V virt board -
atomic-pool
Statically allocated pool providing a std-like Box
-
cty
Type aliases to C types like c_int for use with bindgen
-
chenhe-tg-rcore-tutorial-sbi
SBI (Supervisor Binary Interface) call wrappers for rCore tutorial OS
-
mec1521-pac
Peripheral Access Crate for MEC1521H (chiptool)
-
mielin-kernel
Core unikernel implementation providing the foundation for agent execution across heterogeneous hardware platforms
-
registers
working with registers in Rust
-
ato
A very minimal no-std async runtime
-
tmp117
Driver for the tmp117 using the embedded-hal
-
rtc-hal
Platform-agnostic hardware abstraction for Real Time Clock peripherals
-
itm-parser
A command-line tool to parse and format ITM (Instrumentation Trace Macrocell) output for embedded systems development using probe-rs
-
uhf-rfid
Driver for M5Stack UHF RFID reader with support for multiple transport backends
-
tg-rcore-tutorial-ch1-clock
Chapter 1 of rCore Tutorial: A minimal bare-metal application running in RISC-V S-mode
-
xlnpwmon
Rust bindings for Xilinx Power Monitor
-
sodaq_sara_aff
Board Support crate for the Sodaq SARA AFF
-
ili9163_driver
implements low level control over LCD graphical display equipped with ILI9163 driver
-
airfrog-bin
Airfrog binary API support
-
embedded-websocket
A lightweight websocket library for embedded systems (no_std)
-
os_state_maestro
Deterministic, no_std finite-state machinery and event orchestration for OS development, with zero dependencies
-
stts22h-rs
Platform-agnostic driver for the STTS22H high-accuracy digital temperature sensor with I2C/SMBus interface, low power modes, and programmable interrupt
-
sds011-nostd-rs
An nostd async library to interact with the SDS011 sensor using UART protocol
-
not-webusb
Communicate between a webpage and a usb device without webusb
-
ppproto
Point-to-Point Protocol (PPP) for embedded systems.
no-stdcompatible, no alloc (heap) required. -
facet-postcard-legacy
Legacy Postcard binary serialization for Facet types - use facet-postcard instead
-
lr1120
Driver for Semtech LR1120
-
cargo-customs
Enforces regulations in large cargo workspaces
-
intx
Defines new integer types with non-standard but fixed sizes
-
fast-trap
Provide a framework for bare-metal trap handling, aiming at ensuring performance while reusing code
-
symcc_runtime
Build Concolic Tracing tools based on SymCC in Rust
-
rotary-encoder-embedded
A rotary-encoder library built with embedded-hal
-
adafruit-bluefruit-protocol
A
no_stdparser for the Adafruit Bluefruit LE Connect controller protocol -
tg-rcore-tutorial-games-ch1-tangram-user
User-space game for tg-rcore-tutorial ch1
-
hexa-tune-proto-embedded
hexaTune embedded adapter — typed commands, dispatch helpers, heapless wrappers
-
sths34pf80
ST STHS34PF80 driver
-
synopsys-usb-otg
'usb-device' implementation for Synopsys USB OTG IP cores
-
include_data
Include typed data directly in your executable
-
fdt-raw
A low-level, no-std compatible library for parsing Flattened Device Tree (FDT) binary files
-
bq34z100
embedded_hal driver for the fuel gauge series bq34z100
-
mmreg
Safe, concurrent 32-bit memory-mapped IO register access for Rust. Library and CLI for embedded and PC (linux) platforms.
-
profirust
PROFIBUS-DP compatible communication stack in pure Rust
-
esp32-simple
ESP32 embedded library with reusable modules for BLE, Wi-Fi, HTTP, GPS, LED control, and more
-
lis2mdl-rs
Platform-agnostic driver for the LIS2MDL ultra-low-power, high-performance 3-axis digital magnetic sensor with I2C and SPI interfaces
-
async-opcua-core-namespace
OPC UA generated code for the core namespace
-
chenhe-tg-rcore-tutorial-kernel-context
Kernel context management for rCore tutorial OS, including task context switching
-
kz80_ws
WordStar clone for Z80 - Retro word processor on the RetroShield
-
peakrdl-rust
Generate Rust register definitions from SystemRDL sources
-
unitscale
Facade crate for statically-scaled unit macros and traits
-
stackdump-core
stack dump definitions
-
teensycore
A kernel for the teensy4.0 microcontroller
-
bq27441
Blocking and async driver for the BQ27441 battery fuel gauge with I2C support
-
ds3231-rtc
A no_std driver for the DS3231 Real Time Clock (RTC) module
-
zynq7000-embassy
Embassy-rs support for the Zynq7000 family of SoCs
-
os_dev_toolkit
Dependency-free developer tooling primitives for Rust OS development (logging, diagnostics, fixed buffers, status codes)
-
embassy-executor-timer-queue
Timer queue item and interface between embassy-executor and timer queues
-
st7565
Driver for ST7565 based displays
-
exceptional
Everything for your exception and signal handling needs
-
ruspiro-lock
Providing Spinlock, Semaphore and mutual exclusive data access for cross core usage on Raspberry Pi
-
mcp794xx
Platform-agnostic Rust driver for the MCP794xx real-time clock / calendar (RTC) family. Compatible with MCP7940N, MCP7940M, MCP79400, MCP79401, MCP79402, MCP79410, MCP79411 and MCP79412.
-
stateset-swift
Swift C FFI bindings for StateSet Embedded Commerce
-
max170xx
Platform-agnostic Rust driver for the MAX170xx 1-cell/2-cell fuel-gauge systems with ModelGauge for lithium-ion (Li+) batteries. Compatible with MAX17043, MAX17044, MAX17048 MAX17049, MAX17058 and MAX17059
-
embassy-net
Async TCP/IP network stack for embedded systems
-
os_service_fabric
Dependency-free lifecycle, dependency graph, and health management framework for Rust-based operating system services
-
crossbus
A Platform-Less Runtime-Less Actor Computing Model
-
ssd1677-driver
A
no_stddriver for an SSD1677 based display compatible with Embedded Graphics -
pt100
temperature sensor calculations
-
blinksy-esp
no-std, no-alloc LED control library for 1D, 2D, and 3D layouts
-
lpc176x5x-pac
A Peripheral Access Crate for the NXP LPC176x5x series microcontrollers
-
hs3003
Platform-agnostic Rust driver for the Renesas HS3003 temperature and humidity sensor
-
ch1115
A no_std driver for the CH1115 monochrome display
-
zynq7000-hal
Hardware Abstraction Layer (HAL) for the Zynq7000 family of SoCs
-
cargo-build
Wrapper around cargo instructions accesible in
build.rswith better type safety and support for modern features. Includes functions by default. Macros are optional, but do provide… -
dht11-driver
A platform-agnostic no-std driver for the DHT11 sensor using typestates for safety
-
avr-simulator
Oxidized interface for simavr
-
rt-thread
realtime
-
a608_embedded
A no_std Rust library for interfacing with fingerprint sensors (R503, R307, AS608, ZFM-20) on embedded systems via UART
-
iso9660-no-std
No-std implementation of ISO9660 filesystem
-
ra2a1-pac
Peripheral Access Crate (PAC) for R7FAA2A1
-
download-cef
Download and extract pre-built CEF (Chromium Embedded Framework) archives
-
embedded-bitmap-fonts
A comprehensive collection of bitmap fonts no_std environments, with pixel-doubling support
-
ra4m2-pac
Peripheral Access Crate (PAC) for R7FAA4M2
-
allocvec
A vector type that preserves the index of every inserted element
-
stm32wlxx-hal
Hardware abstraction layer for the STM32WL series microcontrollers
-
w25q-async
embedded-hal-async driver for W25Q serial NOR flash
-
stm32l4xx-hal
Hardware abstraction layer for the stm32l4xx chips
-
ra2a2-pac
Peripheral Access Crate (PAC) for R7FAA2A2
-
ra4m1-pac
Peripheral Access Crate (PAC) for R7FAA4M1
-
ra2e3-pac
Peripheral Access Crate (PAC) for R7FAA2E3
-
ra4w1-pac
Peripheral Access Crate (PAC) for R7FAA4W1
-
waiter-trait
Traits used to wait and timeout
-
j1939-rs
working with SAE J1939 protocol messages in embedded and automotive systems
-
ra2e1-pac
Peripheral Access Crate (PAC) for R7FAA2E1
-
bern-arch
Bern RTOS hardware specific implementation
-
ra4t1-pac
Peripheral Access Crate (PAC) for R7FAA4T1
-
ra6t3-pac
Peripheral Access Crate (PAC) for R7FAA6T3
-
imxrt-enet
ENET driver for NXP's i.MX RT MCUs
-
ra2l1-pac
Peripheral Access Crate (PAC) for R7FAA2L1
-
ra6e2-pac
Peripheral Access Crate (PAC) for R7FAA6E2
-
st7305
A no_std driver for the ST7305 monochrome reflective LCD controller
-
ra4l1-pac
Peripheral Access Crate (PAC) for R7FAA4L1
-
ra4e2-pac
Peripheral Access Crate (PAC) for R7FAA4E2
-
ra4m3-pac
Peripheral Access Crate (PAC) for R7FAA4M3
-
ra6m4-pac
Peripheral Access Crate (PAC) for R7FAA6M4
-
ra6e1-pac
Peripheral Access Crate (PAC) for R7FAA6E1
-
ra8e1-pac
Peripheral Access Crate (PAC) for R7FAA8E1
-
async-modbus
A lightweight asynchronous Modbus protocol implementation for embedded environments
-
ra6m1-pac
Peripheral Access Crate (PAC) for R7FAA6M1
-
ra6t2-pac
Peripheral Access Crate (PAC) for R7FAA6T2
-
ra6m2-pac
Peripheral Access Crate (PAC) for R7FAA6M2
-
ra8e2-pac
Peripheral Access Crate (PAC) for R7FAA8E2
-
ra6m5-pac
Peripheral Access Crate (PAC) for R7FAA6M5
-
ra4e1-pac
Peripheral Access Crate (PAC) for R7FAA4E1
-
w5500-hl
Driver for the Wiznet W5500 internet offload chip
-
ra8d1-pac
Peripheral Access Crate (PAC) for R7FAA8D1
-
ra8m1-pac
Peripheral Access Crate (PAC) for R7FAA8M1
-
fans
structures common to controlling fans
-
tg-user
User-space apps for rCore Tutorial chapters (subset for ch2)
-
embedded-stepper
Hardware agnostic, no_std stepper motor driver based on Arduino stepper using embedded-hal
-
embedded-interfaces
Traits for common embedded interfaces and procedural macros for effortless definition of registers and commands for embedded device drivers
-
samd21_mini
Board Support crate for the Sparkfun SAMD21 Mini Breakout
-
wasefire
High-level Wasefire applet API
-
chenhe-tg-rcore-tutorial-task-manage
Task and process management for rCore tutorial OS, including scheduling and relationships
-
fluvio-package-index
Fluvio Package Index
-
fring
Lightweight, no_std, and *fast* ring buffer
-
swamp-yini
Swamp project and workspace initialization reader
-
rvideo
Real-time video server for embedded apps
-
nrf52833-hal
HAL for nRF52833 microcontrollers
-
atsam4n8a-pac
Peripheral access crate for the ATSAM4N8A microcontroller
-
esp-drv8833
that provides control over the DRV8833 Dual H-Bridge Motor Driver
-
scheme-rs
Embedded scheme for the Rust ecosystem
-
embedded-c-sdk-bind-hal
Embedded C SDK bind HAL
-
nickel-lang
Stable library interface to the Nickel language
-
irq-loongarch
LoongArch IRQ controller drivers (EIOINTC/PCH-PIC/LIOINTC)
-
heatshrink-lib
A minimal library implementing the heatshrink compression algorithm for no_std environments
-
chenhe-tg-rcore-tutorial-signal-defs
Signal definitions for rCore tutorial OS
-
rgb-sequencer
A no_std-compatible Rust library for controlling RGB LEDs through timed color sequences on embedded systems
-
oxigdal-edge
Edge computing platform for OxiGDAL with offline-first architecture and minimal footprint
-
rockchip-soc
A rockchip soc driver, contains cru, power manager, pinctrl
-
riscv_plic
RISC-V platform-level interrupt controller (PLIC) register definitions and basic operations
-
mec17xx-pac
Peripheral Access Crate for the Microchip MEC17xx family of MCUs
-
rustmeter
CLI application to interact with RustMeter beacons and export Perfetto traces
-
nrf-dfu-target
Nordic nRF DFU protocol for devices
-
typst-embedded-package
Support to embed typst package to the binary
-
sx127x
A no-std driver for Semtech Sx127x chips
-
rosist-sallina-tg-rcore-tutorial-user-t1l5
Student AI4OSE lab user-space apps crate for Chapter 8 of rCore Tutorial
-
espup
installing and maintaining Espressif Rust ecosystem
-
st7306
TFT LCD driver with embedded-graphics support
-
hpm-metapac
Peripheral Access Crate (PAC) for all HPM's MCU chips, including metadata
-
rosist-sallina-tg-rcore-tutorial-syscall-t1l5
Student AI4OSE lab syscall crate for Chapter 8 of rCore Tutorial
-
nander-rs
Modern SPI NAND/NOR Flash programmer for CH341A with cross-platform GUI and comprehensive diagnostics
-
chenhe-tg-rcore-tutorial-linker
Linker script generation utilities for rCore tutorial OS kernel
-
typed-fsm
Event-driven FSM with ISR-safe dispatch for embedded systems. Zero-cost, no_std, type-safe state machines with interrupt and concurrency support.
-
bme280-rs
query BME280 sensors over I²C
-
smoltcp-slip
SLIP network interface on top of smoltcp
-
freertos-next
Create to use FreeRTOS in rust projects. The freertos-build crate can be used to build and link FreeRTOS from source inside build.rs
-
sjlj2
Safer, cheaper and more ergonomic setjmp/longjmp in Rust
-
esp-max31865
An ergonomic wrapper for interfacing with Max31865 SPI RTD devices using an ESP32
-
ch57x-hal-raynhardt
HAL for the CH57x RISC-V BLE microcontrollers from WCH
-
pcf857x
Platform-agnostic Rust driver for the PCF8574, PCF8574A and PCF8575 I/O expanders
-
fallible_vec
Fallible allocation functions for the Rust standard library’s
Vectype -
flipperzero-rt
Flipper Zero
-
wasefire-board-api
Wasefire board API
-
lpc82x-pac
Low-level register mappings for the NXP LPC82x series of ARM Cortex-M0+ microcontrollers
-
hcsr04_async
A no-std driver for the HC-SR04 ultrasonic sensor using async
-
mutex-traits
An abstraction over closure-based mutexes
-
stm32f1-hal
HAL for the STM32F1 family
-
max485-async
Async driver for the MAX 485 RS-485 transceiver, using embedded-hal-async
-
qingke-rt
Minimal runtime / startup for WCH's RISC-V MCUs, managed by the ch32-rs team
-
box_closure
closure wrappers with no dependencies
-
pcal6416a
Platform-agnostic Rust driver for the NXP PCAL6416A I/O expander
-
rust-sfsm
A full static Rust finite state machine macro library
-
wiringx
safe and Rusty bindings to the wiringX library
-
i2c-character-display
Driver for HD44780-based character displays connected via a I2C adapter
-
sensirion-i2c
Common functionality for I2C based sensors from Sensirion
-
lpc8xx-hal
Hardware Abstraction Layer (HAL) for the NXP LPC800 series of ARM Cortex-M0+ microcontrollers
-
rosist-sallina-tg-rcore-tutorial-syscall-t3l3
Student AI4OSE extension lab syscall crate for Chapter 3 framebuffer snake support
-
locate-rs
no_stdRust library for 3D localization using TDOA and Trilateration. It provides fast iterative solvers (Levenberg-Marquardt) and a slower closed-form, eigenvector-based solution (trilateration only)… -
akafugu_twidisplay-async
A platform agnostic async Rust driver for the Akafugu TWIDisplay
-
world_magnetic_model
NOAA World Magnetic Model (WMM)
-
ra6m3-pac
Peripheral Access Crate (PAC) for R7FAA6M3
-
embedded-semver
Compact representation of semantic versions as an i32, u32 i64 or u64
-
liquid_crystal
a customizable library to work with alphanumeric lcd display compatible with the HD44780 controller
-
xmc4100
Cortex-M peripheral access library
-
goolog
no_std-compatible goolog logger and some macros to simplify printing logs
-
rtic-monotonic
Core abstractions of the Real-Time Interrupt-driven Concurrency Monotonic timers
-
nickel-lang-package
Nickel Package Manager
-
gd32f1
Device support crate for GD32F1 devices
-
ruvix-types
No-std kernel interface types for the RuVix Cognition Kernel (ADR-087)
-
uefi-input2
wrapper for EFI SIMPLE TEXT INPUT EXTEND PROTOCOL, support shift&toggle state and advanced key events
-
simple-duration
dependency-minimal Duration type for second-precision time handling
-
sts3215
A no_std compatible library for controlling STS3215 serial servo motors with embedded-io support
-
espforge
A scaffolding++ project generator for ESP32 projects
-
is31fl3743b-driver
Platform-agnostic Rust driver for the Lumissil IS31F13743B LED matrix controller
-
msf60_utils
MSF receiver for embedded platforms
-
tg-rcore-tutorial-easy-fs-T1L4
ch6 T1L4. A simple filesystem implementation for rCore tutorial OS.
-
northstar-client
Northstar is an container runtime for Linux targetting embedded systems
-
unikernel
μnikernel, a unikernel for microcontrollers
-
disarm64_defn
structures and enums for describing AArch64 (ARMv8) instructions
-
rtt-log
Log facade implementation for the Segger RTT protocol
-
opentalk-nextcloud-client
NextCloud client library embedded in OpenTalk
-
regenerator-tui
Terminal User Interface (TUI) for Regenerator 2000 using ratatui
-
fitimage
creating U-Boot compatible FIT images
-
crosstrait
Cast from
dyn Anyto other trait objects, with no_std, no alloc support -
mklinker
为对应架构生成链接脚本
-
psf2-font
PSF2 (PC Screen Font v2) parser with embedded Terminus Unicode font for no_std environments
-
jerryinsz-tg-rcore-tutorial-uart
Minimal UART16550 driver for rCore tutorial kernels in RISC-V S-mode
-
embedded-msgpack
MessagePack serialization implementation for Rust optimized for embedded/no_std environments
-
quadrature-encoder
Hardware-level implementations of drivers for incremental encoders with support for full-, half- an quad-stepping
-
profont
monospace font for use with the embedded-graphics crate
-
labrador-ldpc
Encoders and decoders for CCSDS LDPC error correcting codes
-
cc1101-embassy
Async Embassy driver for the CC1101 sub-1GHz RF transceiver
-
xmc4200
Peripheral access library for XCM4200 ARM Cortex-M
-
xous-api-log
Log server API
-
tb6612fng
A
no_stddriver for the TB6612FNG motor driver -
embedded-charts
A rich graph framework for embedded systems using embedded-graphics with std/no_std support
-
sgp40
Rust driver for the Sensirion SGP40 gas sensor
-
mcp4x
Platform-agnostic Rust driver for the MCP4x digital potentiometers
-
ham-cats
Reference implementations for CATS, the ham radio protocol
-
tmc5072
A TCM5072 driver compatible with
embedded-hal -
bux
Embedded micro-VM sandbox for running AI agents
-
stm32l0xx-hal
Peripheral access API for STM32L0 series microcontrollers
-
xmc4700
XMC peripheral library for XMC4700 generated from SVD
-
lpc845-pac
Low-level register mappings for the NXP LPC845 series of ARM Cortex-M0+ microcontrollers
-
pfza_proto1
Board Support crate for the PathfinderZA Proto1
-
fs-embed
Embed files in release, read from disk in debug — with a unified API
-
ra8p1-pac
Peripheral Access Crate (PAC) for R7FAA8P1
-
wasefire-interpreter
Wasefire WebAssembly interpreter
-
max6675-hal
An embedded-hal driver for the MAX6675 digital thermocouple converter
-
voladdress
easy volatile memory abstraction
-
tg-rcore-tutorial-2026-T3L3-ch1-virtioblk-wzy
VirtIO Block driver support for ch1 of tg-rcore tutorial
-
systemview-target
RTOS tracing trait implementation for SEGGER SystemView
-
wasefire-applet-api
Low-level Wasefire applet API
-
tm1637-gpio-driver
Generic GPIO driver for the TM1637 micro controller, primarily for educational purpose. Doesn't need std-lib and you can choose any GPIO interface/library you want.
-
embedded-nal-minimal-coapserver
A minimal CoAP server implementation built on embedded-nal
-
lorawan-device
LoRaWAN device stack implementation
-
bitmap-font
Bitmap fonts for the embedded-graphics crate that don't require generics
-
atsam4lc2a-pac
Peripheral access crate for the ATSAM4LC2A microcontroller
-
atsam4ls8b-pac
Peripheral access crate for the ATSAM4LS8B microcontroller
-
atsam4ls2a-pac
Peripheral access crate for the ATSAM4LS2A microcontroller
-
atsam4lc8b-pac
Peripheral access crate for the ATSAM4LC8B microcontroller
-
atsam4lc8c-pac
Peripheral access crate for the ATSAM4LC8C microcontroller
-
atsam4ls2b-pac
Peripheral access crate for the ATSAM4LS2B microcontroller
-
atsam4lc8a-pac
Peripheral access crate for the ATSAM4LC8A microcontroller
-
atsam4ls4c-pac
Peripheral access crate for the ATSAM4LS4C microcontroller
-
atsam4ls8c-pac
Peripheral access crate for the ATSAM4LS8C microcontroller
-
atsam4ls4a-pac
Peripheral access crate for the ATSAM4LS4A microcontroller
-
atsam4lc2c-pac
Peripheral access crate for the ATSAM4LC2C microcontroller
-
atsam4ls2c-pac
Peripheral access crate for the ATSAM4LS2C microcontroller
-
atsam4lc2b-pac
Peripheral access crate for the ATSAM4LC2B microcontroller
-
atsam4lc4b-pac
Peripheral access crate for the ATSAM4LC4B microcontroller
-
atsam4lc4a-pac
Peripheral access crate for the ATSAM4LC4A microcontroller
-
atsam4ls4b-pac
Peripheral access crate for the ATSAM4LS4B microcontroller
-
tmp006
Platform-agnostic Rust driver for the TMP006/TMP006B non-contact infrared (IR) thermopile temperature sensor
-
canadensis_bxcan
Bridge between Canadensis and the BXCAN peripherals found in some microcontrollers
-
sdmmc
A no_std SD/MMC/eMMC driver library for ARM64 platforms
-
awaiter-trait
Traits for blocking on futures
-
tg-rcore-tutorial-games-ch3-snake-user
User-space game for tg-rcore-tutorial ch3
-
airfrog-core
Rust native ARM debug support
-
atsam4s16c-pac
Peripheral access crate for the ATSAM4S16C microcontroller
-
atsam4s16b-pac
Peripheral access crate for the ATSAM4S16B microcontroller
-
ph-eventing
Stack-allocated ring buffers for no-std embedded targets
-
canadensis_dsdl_parser
Parser for the Cyphal Data Structure Description Language
-
ecos-ssc1
Rust SDK for ECOS StarrySky C1
-
crdtosphere
Universal embedded CRDTs for distributed coordination across automotive, robotics, IoT, and industrial applications
-
littlefs2-pack
building a file system into a LittleFS binary file to be flashed to an embedded device
-
treadmill-rs
Common type- and API-definitions for the Treadmill distributed hardware testbed
-
ssd1351
Driver crate for the SSD1351 16bit colour OLED display driver
-
heap1
The simplest possible heap
-
sodaq_one
Board Support crate for the SODAQ ONE
-
w5500-dns
DNS client for the Wiznet W5500 internet offload chip
-
lis2dh12
Platform-agnostic Rust driver for the LIS2DH12 accelerometer
-
ncp5623
driver for the ON Semiconductor NCP5623 I2C RGB LED driver
-
embassy-net-enc28j60
embassy-net driver for the ENC28J60 ethernet chip
-
tm4c123x
Peripheral access API for TI TM4C123x microcontrollers
-
atsam4sp32a-pac
Peripheral access crate for the ATSAM4SP32A microcontroller
-
esp32c6-lp
Peripheral access crate for the ESP32-C6's LP coprocessor
-
scd4x-rs
query SCD4x sensors over I²C
-
atsam4n16b-pac
Peripheral access crate for the ATSAM4N16B microcontroller
-
atsam4n8b-pac
Peripheral access crate for the ATSAM4N8B microcontroller
-
atsam4n8c-pac
Peripheral access crate for the ATSAM4N8C microcontroller
-
accelerometer
Generic, embedded-friendly accelerometer support, including traits and types for taking readings from 2 or 3-axis accelerometers and tracking device orientations
-
st7789-lcd
ST7789 TFT LCD driver with embedded-graphics support
-
quectel-bg77
Driver for Quectel's BG77 and BG770 eMTC and NB-IoT Modems
-
shared-bus
Abstraction for sharing a bus between multiple devices
-
chenhe-tg-rcore-tutorial-signal
Signal handling for rCore tutorial OS
-
tg-rcore-tutorial-games-kernel-vm
Kernel virtual memory management for games of tg-rcore tutorial OS
-
fieldset
Struct to enum derivation
-
ht32f1yyy
Device support crates for HT32F1YYY devices
-
ms4525do
Platform-agnostic Rust driver for the MS4525DO airspeed sensor with blocking and async APIs
-
ruspiro-arch-aarch64
access to Aarch64 system registers as well as specific usefull aarch64 assembly instructions
-
usbd-midi
USB MIDI device class implementation for use with usb-device
-
mlx9061x
Platform-agnostic Rust driver for the MLX90614 and MLX90615 non-contact infrared thermometers
-
riscv-target-parser
Parser for RISC-V target specifications
-
sermonizer
clean serial monitor with a clean terminal UI for embedded development
-
bitfielder
bitfield library
-
zigbee
protocol stack in
no-stdbased on the ZigBee specification 22 1.0 -
mil_std_1553b
MIL STD 1553B message parsing and types
-
msp430-atomic
Atomic operations for MSP430 microcontrollers
-
canadensis_linux
Linux SocketCAN compatibility for canadensis (Cyphal)
-
esp32s3-ulp
Peripheral access crate for the ESP32-S3's RISC-V ULP coprocessor
-
nrf-softdevice-s122
Low-level bindings for the Nordic nRF SoftDevice S122
-
nrf-softdevice-s113
Low-level bindings for the Nordic nRF SoftDevice S113
-
rp-usb-console
Zero-heap USB CDC logging and command channel for RP2040 with Embassy async framework
-
nrf-softdevice-s112
Low-level bindings for the Nordic nRF SoftDevice S112
-
w5500-ll
Low level driver for the Wiznet W5500 internet offload chip
-
nrf-softdevice-s132
Low-level bindings for the Nordic nRF SoftDevice S132
-
lis3dh-async
An embedded-hal-async driver for the LIS3DH accelerometer
-
fringe
safe, lightweight userland context switches
-
imxrt-usbd
USB driver for NXP iMX RT processors
-
lm3s6965
Interrupt bindings for the LM3S6965 microcontroller
-
zynq7000-mmu
Zynq7000 MMU structures
-
tg-rcore-clock
一个可独立运行的 RISC-V S 模式裸机时钟中断示例与辅助库
-
framez
A zerocopy codec for encoding and decoding data in no_std environments
-
mx25v
Platform-agnostic Rust driver for the macronix MX25V NOR flash
-
thread-delay
Implementors of DelayNs from embedded_hal, for Linux systems
-
nucleo-f446re
Board Support Package crate for the Nucleo-F446RE board
-
chenhe-tg-rcore-tutorial-user
User-space apps for rCore Tutorial chapters (subset for ch2)
-
korri-n2k
no_std NMEA2000 protocol implementation for embedded systems
-
xmc4800
XMC peripheral library for XMC4800 generated from SVD
-
ld2410
Rust interface for LD2410 presence detection
-
w5500-mqtt
MQTT client for the Wiznet W5500 internet offload chip
-
agent-embedded
An embedded agent for IoT devices
-
nrf9120-pac
Peripheral Access Crate for Nordic's nrf9120 microcontroller
-
uefi-raw
Raw UEFI types and bindings for protocols, boot, and runtime services. This can serve as base for an UEFI firmware implementation or a high-level wrapper to access UEFI functionality from an UEFI image.
-
air001xx-pac
Generated PAC for Air001 microcontroller
-
a121-sys
Raw bindings to the A121 radar sensor C SDK
-
nostd-interactive-terminal
An interactive terminal library for no_std embedded systems with line editing, history, and command parsing
-
icmsg
IPC backend
-
mielin-rt
Lightweight embedded runtime for Cortex-M and resource-constrained IoT devices
-
ssd1675
Driver for the SSD1675 e-Paper display (EPD) controller, for use with embedded-hal
-
embassy-net-nrf91
embassy-net driver for Nordic nRF91-series cellular modems
-
cortex-memory-client
Rust client for the Cortex graph memory engine
-
can-iso-tp
Generic implementation of the CAN ISO-TP protocol
-
atsame54p
Peripheral access API for ATSAME54P microcontrollers (generated using svd2rust)
-
tinyase
A no-std and mostly zerocopy Aseprite (.ase/.aseprite) file parser for embedded devices
-
aarch64_define
aarch64 架构以及一些配置定义
-
esp-radio-rtos-driver
Task scheduler interface for esp-radio
-
dbc-codegen2
DBC code generator for CAN bus messages
-
untyped-box
A heap allocation utility when the datatype is unknown
-
wlink
WCH-Link flash tool for WCH's RISC-V MCUs(CH32V, CH56X, CH57X, CH58X, CH59X, CH32L103, CH32X035, CH641, CH643)
-
st7735-lcd
ST7735 TFT LCD driver with embedded-graphics support
-
femtopb
A no-std, no-alloc set of tools for protobuf encoding and decoding
-
grift_std
Standard library I/O and runtime features for the Grift Scheme language (requires std)
-
trallocator
A no_std lbrary for wrapping an existing allocator and tracking the heap usage
-
embedded-test-std-runner
A libtest compatible test runner for embedded-test on std
-
libyaff
Font Format (YAFF) - A compact bitmap font format with kerning support
-
cnt
RAM counters macro for microcontrollers, when logging is not an option
-
naked-function
Proc macro implementation of #[naked]
-
drmem-drv-tplink
DrMem driver for TP-Link devices
-
mask-tracked-array
A no-std no-alloc bitmask based data structure for embedded usecases
-
stm32h7-staging
Device support crates for STM32H7 devices
-
esp-at-nal
Network layer client for ESP-AT modems
-
nvme-mi-dev
A device-side implementation of NVMe-MI
-
quadrature-decoder
Pure logic-level implementations of quadrature decoders with support for full-, half- an quad-stepping
-
ssd1619a
Driver for the SSD1619A e-Paper display controller, for use with embedded-graphics
-
stm32g0-staging
Device support crates for STM32G0 devices
-
atdf2svd
convert Atmel's ATDF files to SVD
-
bern-kernel
Preemptive real-time kernel for microcontrollers
-
stm32n6
Device support crates for STM32N6 devices
-
vga-framebuffer
A text console output over a VGA compatible signal
-
defmt-embassy-usbserial
Transmit defmt log messages over USB serial
-
dvcdbg
Lightweight diagnostics toolkit for embedded (no_std, I2C scan, quick tests)
-
u-os-hub-client
u-OS Data Hub Client
-
aimdb-data-contracts
Trait definitions for AimDB data contracts: SchemaType, Streamable, Observable, Linkable, Simulatable, Migratable
-
rhai-rand
Random number package for Rhai
-
lysogeny-broth
Substrate for cellular automata in Rust
-
ms56xx
no_std driver for MS56xx barometric pressure sensors (MS5607, MS5611, MS5637)
-
mcp4728
Platform agnostic rust driver for the MCP4728 4-channel, 12-bit I2C DAC
-
wchisp
A command-line implementation of WCHISPTool, for flashing ch32 MCUs
-
atapi
Low-level ATAPI driver in no_std environments
-
longan-nano
Board support package for the Longan Nano board
-
sfsm
Static state machine generator for no_std and embedded environments
-
vk16k33
I2C-based driver for a sparkfun VK16K33 14-segment display
-
micropb-gen
Generate Rust module from Protobuf files
-
sdrr-fw-parser
One ROM firmware parser
-
mathx
A mathematics library designed to work with no_std
-
postcard-bytes
A no_std + serde compatible message library for Rust (+ faster byte array (de-)serialization)
-
mics-6814
Platform-agnostic driver for the MiCS-6814 triple gas sensor (CO, NO2, NH3)
-
embedded-huffman
A paginated, streaming library for Huffman coding on embedded
-
ws2812-async
Async SPI driver for ws2812 leds
-
pca9535
PCA 9535 IO-Expander driver using embedded-hal
-
ds3231
A platform-agnostic driver for the DS3231 precision real-time clock
-
stm32u0
Device support crates for STM32U0 devices
-
circuitpython-deploy
Fast, reliable CircuitPython project deployment tool
-
wishbone-tool
command line program to control a Wishbone bus of an embedded device
-
serpente
Board Support crate for the Serpente board
-
as3935-generic
embedded driver
-
max7219
A platform agnostic driver to interface the MAX7219 (LED driver)
-
uf_ulog
Allocator-free no_std ULog serializer for embedded systems
-
embedded-timers
Softwaretimers and -delays (ms/us) based on a Clock implementation
-
vmix-core
Core data structures and XML parsing for vMix API (no_std compatible)
-
pk-command
A communication protocol designed for embedded devices
-
seeed-erpc
Driver crate for interacting with seeed-studio eRPC Wifi devices
-
zargo
The sysroot manager that lets you build and customize
std -
ws2812-uart
UART-based driver for WS2812 and similar smart LEDs
-
naive-timer
A minimal naive timer for embedded (no_std) platforms
-
libertyos_kernel
The kernel for LibertyOS
-
mcp25xx
MCP2510, MCP2515 and MCP25625 CAN controller library
-
stm32f3-staging
Device support crates for STM32F3 devices
-
stackdump-capture
capturing stack dumps
-
flipperzero-alloc
Flipper Zero
-
cargo-esp-new
A cargo-new extension for esp8266 chips
-
atsam4e8c-pac
Peripheral access crate for ATSAM4E8C microcontrollers
-
tinyboot-protocol
Protocol implementation for tinyboot bootloader
-
da728x
An async and no_std rust library for the wide-bandwidth haptic driver IC DA7280/DA7281/DA72782 from Renesas
-
embassy-stm32-plus
embassy-stm32 plus
-
easy_store
flash storage format for embedded systems
-
nrf24-rs
Platform agnostic Rust driver for the nRF24L01 2.4 GHz transciever for wireless communication between embedded devices
-
tg-rcore-tutorial-ch5-T1L3
Chapter 5 T1L3 of rCore Tutorial: Process management with fork, exec and wait syscalls
-
embedded-can-interface
Small interface traits for CAN drivers and protocol layers
-
ssd1315-driver
SSD1315 OLED driver
-
dps310-async
Universal embedded async driver for Infineon DPS310
-
crispy-common
Shared protocol and flash utilities for the Crispy RP2040 A/B bootloader
-
sparreal-kernel
Sparreal OS kernel
-
embedded-aht20
Platform-agnostic Rust driver for the AHT20 temperature & humidity sensor
-
fuchsia-zircon-sys
Types for low-level Rust bindings for the Zircon kernel
-
ft3x68-rs
driver for the FT3x68 touch controllers
-
atsam4e16e-pac
Peripheral access crate for ATSAM4E16E microcontrollers
-
tinybz2
Minimal-memory bz2 compressor/decompressor for embedded targets
-
esp-hosted
Support for the ESP-Hosted firmware, with an STM32 host
-
windows_i686_gnullvm
Import lib for Windows
-
ad7190
An embedded-hal-async driver for the AD7190 sigma-delta ADC
-
hcsr04
A platform-agnostic,
no_stddriver for the HC-SR04 ultrasonic distance sensor -
ism6hg256x-rs
Driver for the ISM6HG256X IMU, featuring low-g (±16g) and high-g (±256g) accelerometers, a gyroscope, and quad-channel architecture for advanced acceleration and angular rate processing…
-
edge-nal-embassy
edge-nal based on
embassy-net -
cmsis-cli
command line interface for CMSIS Pack management
-
axplat-riscv64-visionfive2
axplathardware abstraction layer for RISC-V VisionFive2 board -
hdds-micro-c
C FFI bindings for HDDS Micro - Embedded DDS for microcontrollers
-
esp32c5
Peripheral access crate for the ESP32-C5
-
task-watchdog
A robust, flexible watchdog management library for embedded systems that multiplexes multiple task watchdogs into a single hardware watchdog timer, preventing system lockups when tasks fail to respond
-
qtest
Connector for working with the QTest socket
-
w5500-regsim
Register simulation for the Wiznet W5500 internet offload chip
-
jiaxin2006-tg-rcore-tutorial-t1l2
Student AI4OSE lab crate for Chapter 4 of rCore Tutorial: address space management with SV39 virtual memory
-
axplat-aarch64-raspi
axplathardware abstraction layer for Raspberry Pi 4B board -
uefi-graphics2
An embedded-graphics display driver for UEFI environments
-
agentic-robotics-embedded
High-performance agentic robotics framework with ROS2 compatibility
-
nospin
containing an embedded version of a Mutex which can be used in
no_stdprojects which are single-threaded -
setrPlanif
project for planning and scheduling tasks like we would do for FREERTOS
-
esp32-ws2812-dma
Figments esp32 display driver for the ws2812 chips using DMA
-
axplat-aarch64-phytium-pi
axplathardware abstraction layer for Phytium Pi board -
embedded-bacnet
A bacnet library for embedded systems (no_std)
-
sam3x8e-pac
Peripheral Access Crate (PAC) for the Atmel SAM3X8E
-
avr-def
Low-level register definitions for AVR microcontrollers Memory-mapped pointers and bit constants
-
lpc81x-pac
Device support crates for LPC81X-PAC devices
-
iris-ui
UI toolkit for no_std embedded Rust
-
qemu-run
Runs qemu-system-arm but decodes defmt data sent to semihosting
-
sensehat-screen
using the 8x8-LED matrix, with RGB565 coloring, on the Raspberry Pi Sense HAT device
-
avr-boot
Self Programming functions for AVR MCUs
-
hyperlight-common
Hyperlight's components common to host and guest
-
embedded-xml
A no_std XML reader using embedded-io for memory constrainted environment
-
tca8418
Platform-agnostic Rust driver for the TCA8418 I²C keypad scan IC
-
esp32
Peripheral access crate for the ESP32
-
chenhe-tg-rcore-tutorial-syscall
System call definitions and interfaces for rCore tutorial OS
-
esp32s2-ulp
Peripheral access crate for the ESP32-S2's RISC-V ULP coprocessor
-
sizef
#[no_std] crate to format file sizes
-
mayio
A minimal no-std GPIO HAL for embedded systems
-
embedded-mqttc
MQTT client designed for use with embassy
-
xiao_m0
Board support crate for the Seeed Studio Seeeduino XIAO
-
armagnac
ARM emulation library for simulating embedded systems
-
chopalloc
A minimal, no_std buddy allocator for embedded systems and bare-metal environments with optional O(1) bitmap optimization
-
tower-embed
Tower service to serve embedded assets
-
zedboard-bsp
Board Support Package (BSP) for the Zedboard
-
gpio-cdev
Linux GPIO Character Device Support (/dev/gpiochipN)
-
can-uds
UDS (Unified Diagnostic Services) CAN identifier schemes
-
zngur-autozng
Generating Zngur zng files automatically for a Rust crate
-
w5500-tls
TLS client for the Wiznet W5500 internet offload chip
-
probe-rs-target
Target description schema for probe-rs
-
rknn-rs
rknn rust binding
-
sgp4x
Rust driver for the Sensirion SGP41 gas sensor with VOC and NOx measurement capabilities
-
libertas-matter
A stripped-down lite version of official rs-matter
-
alarmo
convenient API to bootstrap firmware and access peripherals on the Nintendo Alarmo
-
datex-crypto-esp32
Embedded ESP32 target implementation of the DATEX Crypto facade
-
mma8x5x
Platform-agnostic Rust driver for the MMA8451, MMA8452, MMA8453, MMA8652 and MMA8653 tri-axis accelerators
-
xargo
The sysroot manager that lets you build and customize
std -
tca9554
Driver for the TCA9554(A) I/O expander
-
esp-phy
PHY initialization
-
blackboxer
capturing, logging, and replaying MAVLink messages
-
rkaiq
Rockchip RKAIQ bindings for Rust
-
regio
High level abstractions for register access of all sorts
-
grift_eval
Lisp evaluator for the Grift Scheme language
-
tps55288
Rust driver skeleton for TI TPS55288 buck-boost converter (I2C)
-
jiaxin2006-tg-rcore-tutorial-easy-fs-t1l4
filesystem implementation for rCore tutorial OS
-
lis2dh
Driver crate for the ST LIS2DH12 accelerometer
-
pcm4104
Driver for the Texas Instruments PCM4104 audio DAC
-
stm32f1xx-hal
HAL for the STM32F1xx family of microcontrollers
-
osal-rs-build
Build utilities for osal-rs
-
gd32e2
Device support crate for GD32E2 devices
-
pi_mqtt
-
ruvix-rpi-boot
Raspberry Pi boot support for RuVix Cognition Kernel (Phase D)
-
nrf9160-hal
HAL for nRF9160 system-in-package
-
embedded-tfluna
Platform-agnostic Rust driver for the TF-Luna LiDAR distance sensor
-
esp-partition-table
Read/write ESP flash partition table
-
vorago-peb1
Board Support Crate for the Vorago PEB1 development board
-
stm32f469i-disc
Board support crate for the STM32F469 DISCOVERY kit
-
tg-rcore-tutorial-games-ch5-pingpong-kernel
Kernel support for game of ch5 of tg-rcore tutorial
-
rosist-sallina-tg-rcore-tutorial-T1L2
Student AI4OSE lab crate for Chapter 4 of rCore Tutorial: Address space management with SV39 virtual memory
-
bmi088
6DOF IMU driver for embedded hal
-
tps546
Async, no_std driver for the TPS546D24A stackable PMBus buck converter
-
embedded-can-mock
Mock CAN library implementing
embedded-can-interfacetraits -
st7789
TFT LCD driver with embedded-graphics support
-
explicit-endian
Transparent traits to explicitely declare in-memory endianness for a virable or struct record
-
rotary-encoder-hal
platform agnostic rotary encoder library using embedded_hal
-
zynq7000
Peripheral Access Crate (PAC) for the Zynq7000 family of SoCs
-
little_weirdo
#no-std optimized wave table synthesizer for embedded devices
-
xmc4300
XMC peripheral library for XMC4300 generated from SVD
-
const-init
trait for things that are const initializable
-
pmbus-adapter
Async, no_std PMBus 1.4 protocol adapter built on embedded-hal-async I2C
-
flat_device_tree
A pure-Rust
#![no_std]crate for parsing Flattened Devicetrees -
st7567_rs
ST7567 LCD driver with embedded-graphics support
-
ld2450
Rust interface for LD2450 presence detection
-
mqtt-async-embedded
An async, no_std-compatible MQTT client for embedded systems using Embassy
-
lcd-redpill-unifei
Driver para display LCD HD44780 em modo 4 bits para ARM Cortex-M
-
dot15d4
IEEE 802.15.4 implementation in Rust
-
gd32f2
Device support crate for GD32F2 devices
-
ads112c04
A no_std embedded-hal 1.0 driver for the TI ADS112C04 16-bit I2C Delta-Sigma ADC
-
json-lines
A no_std + serde compatible message library implementing JSON Lines
-
avx-error
AVL Platform error handling - replacement for anyhow/thiserror
-
chenhe-tg-rcore-tutorial-console
print!,println!andlog::Logwith customizable implementations for rCore tutorial -
askalono-cli
detect the contents of license files
-
pic32-config-sector
Calculate constant values for PIC32 configuration words
-
mbedtls-build-helper
Shared build-time helper for auto-detecting musl cross-compilation toolchain when building mbedtls crates for bare metal targets on macOS/Linux
-
atsam4e16c-pac
Peripheral access crate for ATSAM4E16C microcontrollers
-
gd32e5
Device support crate for GD32E5 devices
-
atsam4e8e-pac
Peripheral access crate for ATSAM4E8E microcontrollers
-
lp50xx-async
Async Rust driver for the lp50xx family of Texas Instruments I2C RGB LED drivers
-
sbus-rs
A no_std compatible SBUS protocol parser for embedded systems
-
atsame70j19b
Peripheral access API for the ATSAME70J19B MCU from Microchip (generated using svd2rust 0.33.5)
-
tg-rcore-tutorial-ch6-charlie-exercise-easy-fs
filesystem implementation for rCore tutorial OS
-
wasefire-error
Wasefire API errors
-
pac25
Device support crates for PAC25 devices
-
vl53l0x
A platform agnostic driver to interface with the vl53l0x (time-to-flight sensor)
-
xmc4500
XMC peripheral library for XMC4500 generated from SVD
-
cortex-m-stack
Stack usage tools for Cortex-M processors
-
gpt-parser
GUID Partition Table (GPT) read-only parser. Endian aware and usable against no_std+alloc.
-
xtensa-lx
Low-level access to Xtensa LX processors and peripherals
-
timeout-trait
Traits used to wait and timeout
-
xmc4400
XMC peripheral library for XMC4400 generated from SVD
-
esp-idf-dht
Read values from DHT11/DHT22 temperature and humidity sensors using esp-idf
-
bq32002
A no_std driver for the BQ32002 Real-Time Clock (RTC)
-
atsams70q21b
Peripheral access API for the ATSAMS70Q21B MCU from Microchip (generated using svd2rust 0.33.5)
-
super_simple_st7789driver
an async Rust driver library for controlling the ST7789 display
-
atsame70j21b
Peripheral access API for the ATSAME70J21B MCU from Microchip (generated using svd2rust 0.33.5)
-
atsams70j21b
Peripheral access API for the ATSAMS70J21B MCU from Microchip (generated using svd2rust 0.33.5)
-
st25r95
Driver for ST25R95 integrated transceiver for contactless applications (NFC)
-
atsame70n20b
Peripheral access API for the ATSAME70N20B MCU from Microchip (generated using svd2rust 0.33.5)
-
atsams70j19b
Peripheral access API for the ATSAMS70J19B MCU from Microchip (generated using svd2rust 0.33.5)
-
atsams70n21b
Peripheral access API for the ATSAMS70N21B MCU from Microchip (generated using svd2rust 0.33.5)
-
atsams70n19b
Peripheral access API for the ATSAMS70N19B MCU from Microchip (generated using svd2rust 0.33.5)
-
atsame70q19b
Peripheral access API for the ATSAME70Q19B MCU from Microchip (generated using svd2rust 0.33.5)
-
atsams70q20b
Peripheral access API for the ATSAMS70Q20B MCU from Microchip (generated using svd2rust 0.33.5)
-
atsame70n21b
Peripheral access API for the ATSAME70N21B MCU from Microchip (generated using svd2rust 0.33.5)
-
atsam4sd32c-pac
Peripheral access crate for ATSAM4SD32C microcontrollers
-
pca9539
Abstraciton for PCA9539 I/O expander
-
atsame70q20b
Peripheral access API for the ATSAME70Q20B MCU from Microchip (generated using svd2rust 0.33.5)
-
atsame70j20b
Peripheral access API for the ATSAME70J20B MCU from Microchip (generated using svd2rust 0.33.5)
-
sfo-js
A wrapper to simplify the use of boa-engine
-
atsams70q19b
Peripheral access API for the ATSAMS70Q19B MCU from Microchip (generated using svd2rust 0.33.5)
-
atsame70q21b
Peripheral access API for the ATSAME70Q21B MCU from Microchip (generated using svd2rust 0.33.5)
-
spo-rhai
Embedded scripting for Rust
-
mos-hardware
Hardware register tables and support functions for 8-bit retro computers like the Commodore 64, MEGA65 and others
-
atsame70n19b
Peripheral access API for the ATSAME70N19B MCU from Microchip (generated using svd2rust 0.33.5)
-
ndef
#[no_std]library to implement a NFC Data Exchange Format structures -
ssd1331
I2C/SPI driver for the SSD1331 OLED display controller
-
atsams70j20b
Peripheral access API for the ATSAMS70J20B MCU from Microchip (generated using svd2rust 0.33.5)
-
sc16is752
A no_std crate for interfacing with the SC16IS752 I2C/SPI port expander. This lib provides access to both UARTs and 8x GPIO lines
-
avr-atomic
Fast atomic load/store without IRQ-disable for AVR
-
atsams70n20b
Peripheral access API for the ATSAMS70N20B MCU from Microchip (generated using svd2rust 0.33.5)
-
dw1000
Driver for the Decawave DW1000 UWB wireless transceiver chip, providing radio communication based on IEEE 802.15.4 and distance measurement
-
tm4c129x
Peripheral access API for TI TM4C129x microcontrollers
-
a653rs-xng
a653rs partition library for xng hypervisor
-
stabilizer
Firmware for the Sinara Stabilizer board (STM32H743, Ethernet, PoE, 2 ADCs, 2 DACs)
-
rppal_w_frontend
Interface for the Raspberry Pi's GPIO, I2C, PWM, SPI and UART peripherals
-
ldproxy
A linker proxy tool
-
tpic6b595
Embedded driver for TPIC6B595 Power Logic Shift Register IC
-
libsbf
A no_std rust crate to parse Septentrio SBF Messages
-
cobs-rs
A minimal no-std library for doing Consistent Overhead Byte Stuffing
-
hayro-interpret
interpreting PDF files
-
briny
Low-level enforcement of memory layout integrity
-
ssd1306-i2c
SSD1306 I2C driver
-
iso9660_core
Read-only ISO9660 crate for no_std environments (WIP)
-
seminix-std
seminix 用户标准库
-
async-opcua-nodes
OPC UA node representation and import framework
-
mcp9808
Platform agnostic Rust driver for the Microchip MCP9808 temperature sensor
-
virtual-fan
Virtual fan driver for simulation and testing
-
waterman
A CLI tool to easily flash code onto AVR microcontrollers using avrdude, enhancing the development workflow for embedded Rust projects
-
bq40z50-rx
Platform-agnostic Rust driver for the Texas Instruments BQ40Z50 battery fuel (gas) gauge
-
tm4c-hal
Common bits of HAL for the TM4C123x/TM4C129x family of microcontrollers
-
rs_ws281x
Wrapper for ws281x library using bindgen to track upstream
-
atsam4sd32b-pac
Peripheral access crate for ATSAM4SD32B microcontrollers
-
atsam4sd16b-pac
Peripheral access crate for ATSAM4SD16B microcontrollers
-
atsam4sa16b-pac
Peripheral access crate for ATSAM4SA16B microcontrollers
-
atsam4sd16c-pac
Peripheral access crate for ATSAM4SD16C microcontrollers
-
atsam4sa16c-pac
Peripheral access crate for ATSAM4SA16C microcontrollers
-
atsam4s8c-pac
Peripheral access crate for ATSAM4S8C microcontrollers
-
atsam4s4a-pac
Peripheral access crate for ATSAM4S4A microcontrollers
-
atsam4s2c-pac
Peripheral access crate for ATSAM4S2C microcontrollers
-
atsam4s4c-pac
Peripheral access crate for ATSAM4S4C microcontrollers
-
atsam4s2b-pac
Peripheral access crate for ATSAM4S2B microcontrollers
-
atsam4s2a-pac
Peripheral access crate for ATSAM4S2A microcontrollers
-
atsam4s4b-pac
Peripheral access crate for ATSAM4S4B microcontrollers
-
atsam4s8b-pac
Peripheral access crate for ATSAM4S8B microcontrollers
-
adafruit-nrf52-bootloader-ctrl
Adafruit nrf52 bootloader control library
-
axplat-aarch64-bsta1000b
axplathardware abstraction layer for Black Sesame Technology A1000b SoC -
bmp390
Asynchronous driver for the BMP390 pressure sensor
-
cobsin
COBS encoding/decoding, in-place.
no_std, zero allocations. -
gd32e1
Device support crate for GD32E1 devices
-
atsamv70n19b
Peripheral access API for the ATSAMV70N19B MCU from Microchip (generated using svd2rust 0.33.5)
-
atsamv71n19b
Peripheral access API for the ATSAMV71N19B MCU from Microchip (generated using svd2rust 0.33.5)
-
atsamv71j21b
Peripheral access API for the ATSAMV71J21B MCU from Microchip (generated using svd2rust 0.33.5)
-
atsamv70q19b
Peripheral access API for the ATSAMV70Q19B MCU from Microchip (generated using svd2rust 0.33.5)
-
bh1750-embedded
no_std embedded-hal driver for the BH1750/BH1750FVI ambient light sensor (with optional async support)
-
ldc3114
Driver crate for the TI LDC3114 inductance-to-digital converter
-
esp-wifi-provisioning
Captive-portal WiFi provisioning for ESP32 targets via esp-idf-svc
-
esp32c6
Peripheral access crate for the ESP32-C6
-
nmos6502
A no_std compliant NMOS6502 emulator suitable for embedded environments
-
infrared
remote control library
-
postcard2-heapless
postcard2 extension crate
-
microstrain-inertial
communicating with Microstrain inertial measurement units via MIP protocol
-
w25q256jv
An embedded-hal driver for the W25Q256JV with async and blocking APIs
-
esp-sync
Synchronization primitives for Espressif devices
-
dwt-systick-monotonic
RTIC Monotonic implemenation based on Systick and DWT
-
jiaxin2006-tg-rcore-tutorial-t1l4
Student AI4OSE lab crate for Chapter 6 of rCore Tutorial: multiprogramming and time-sharing multitasking
-
hcms-29xx
Platform agnostic driver for HCMS-29XX and HCMS-39XX display ICs
-
buf-fs
A buffer based, in-memory filesystem
-
timeslice
periodic time slice scheduler
-
device-envoy
Top-level landing crate for device-envoy platform crates
-
mcp2515
#![no_std]library for interacting with MCP2515 CAN controller chips -
jiaxin2006-tg-rcore-tutorial-t1l5
Student AI4OSE lab crate for Chapter 8 of rCore Tutorial: multiprogramming and time-sharing multitasking
-
n32g4xx-hal
Peripheral access API for N32G4xx series microcontrollers
-
drmem-api
Traits and types used internally by the DrMem control system
-
bt-hci-linux
Linux integration with bt-hci
-
sansavision-pulse-sdk-embedded
Pulse Embedded SDK — no_std compatible for IoT and automotive
-
rvideo-view
A lightweight video viewer for rvideo
-
cirque-pinnacle
driver for working with Cirque Pinnacle Glidepoint touchpads on embedded systems
-
pico-xs
Embedded-SDK for bare-metal development on the RP2040 Raspberry Pi Pico microcontroller
-
mini-backtrace
Backtrace support for no_std and embedded programs
-
fdt-rs
A flattened device tree parser for embedded no-std environments
-
rt-xenomai
xenomai
-
fdcan
STM32 FDCAN peripheral driver
-
stm32_i2s_v12x
Driver for I2S communication (using SPI peripherals) for some STM32 microcontrollers
-
cockpitctl-types
Stable cockpitctl DTOs, enums, and embedded JSON schemas
-
dns-protocol
A DNS protocol implementation in Rust
-
charlcd
charlcd.c Linux driver (HD44780 et al.)
-
bare-test-macros
macros for bare-test
-
espforge_codegen
code generation for espforge
-
tcn75a
Embedded HAL driver for accessing TCN75A temperature sensors
-
static_memory_rs
A fixed-capacity, no_std-friendly memory region with typed read/write access, runtime bounds checks, and alignment verification — ideal for embedded and systems programming
-
e310x
With svd2rust generated peripherals for Freedom E310 MCU's
-
scd41-embedded
A platform-agnostic embedded-hal driver for the Sensirion SCD41 CO2/temperature/humidity sensor (with optional async support)
-
enc424j600
Embbeded Rust Ethernet driver for ENC424J600 Ethernet controller with SPI interface
-
ds4432
Platform-agnostic Rust driver for the Maxim DS4432 Dual-Channel, I2C, 7-Bit Sink/Source Current Digital To Analog (DAC) converter
-
ili9488-rs
A platform agnostic driver to interface with the ILI9488 TFT LCD display
-
efm32gg12b-pac
Peripheral access API for EFM32GG12B MCU (generated using svd2rust)
-
drmem-drv-weather-wu
DrMem driver which gets Weather Underground data
-
pinentry-zellij-plugin
Zellij plugin for pinentry-zellij
-
fullbleed_audit_contract
Embedded audit/compliance contract payloads and fingerprints for FullBleed verifier/PMR
-
drone-stm32-map
STM32 peripheral mappings for Drone, an Embedded Operating System
-
flashdb-rs
A safe, high-performance Rust binding for FlashDB, an ultra-lightweight database for embedded products. Provides KVDB and TSDB features with a flexible storage backend.
-
compressed_log
Log compression on the fly
-
hd44780-driver
HD44780 compliant displays with embedded-hal
-
mcp49xx
Platform-agnostic Rust driver for the MCP49xx and MCP48xx digital-to-analog converters (DAC)
-
embedded-heatshrink
port of the heatshrink library for data compression in embedded systems
-
wasefire-logger
Wasefire platform logging
-
hk32f005-pac
HK32F005 PAC, Generate by Chiptool
-
embedded-onewire
A no-std trait definition for interacting with 1-Wire devices
-
ankha
scripting toolset
-
sht4x
Sensirion SHT4x Driver for Embedded HAL
-
ushell
Embedded shell over serial connection
-
crc_all
A Pure Rust Implementation of Generic CRC Algorithm
-
pico-de-gallo-hal
embedded-hal and embedded-hal-async implementation for Pico de Gallo
-
cst816s
touchscreen driver for embedded hal / no_std
-
picomenu
No-std + async library to build very simple menus
-
embedded-display-controller
Traits for display controllers
-
pico-de-gallo-ffi
C-FFI for Pico de Gallo device
-
switch-hal
HAL and basic implementations for input and output switches (buttons, switches, leds, transistors)
-
sim_fft
sim-fft is an easy to use Fast Fourier Transform library primarily meant for embedded systems and no_std environments
-
axi-uart16550
AXI UART16550 IP core driver
-
pico-de-gallo-internal
Internal library for Pico de Gallo. Do not use!
-
m24512
A no_std driver for the M24512 EEPROM
-
usbd-dfu-rt
USB DFU run-time class
-
ellie_core
Core modules for ellie
-
nt35510
Trait-based NT35510 DSI LCD controller driver
-
emc230x
An async driver for the EMC230x family of fan controllers
-
sonant
port of the Sonant 4K synth with streaming support
-
liboscore-cryptobackend
libOSCORE's cryptographic primitives backend based on Rust implementations
-
cordic
Special functions for fixed-point numbers using the CORDIC method
-
avr-port
no_std GPIO port abstraction for AVR (ATmega328P): Port B, C, D with DDR/PORT/PIN register access
-
liboscore-msgbackend
libOSCORE's CoAP messages based on the coap-message crate
-
hopter
A Rust-based embedded operating system designed to enable memory safe, memory efficient, reliable, and responsive applications
-
rp2040-dshot
DShot protocol implementation for RP2040 using PIO
-
neobridge-rust
Lets you control neopixels from your PC using a board
-
lpc178x7x-pac
Peripheral Access Crate for the NXP LPC17xx series microcontrollers
-
bux-ext
Extension traits and utilities for the bux micro-VM sandbox
-
va416xx-embassy
Embassy-rs support for the Vorago VA416xx family of microcontrollers
-
ruspiro-register
definitions to conviniently work with register field values that are typically presented by a set of bit fields
-
bsec
Rust API to the Bosch BSEC library
-
os_linker_sculptor
Dependency-free, no_std helpers for shaping kernel images: linker sections, build info record, boot args parsing
-
espforge_common
Configuration model for espforge
-
mcp2517
CAN controller
-
safeio
Deterministic async runtime for safety-critical systems
-
inverted-pin
Embedded-hal input/output pin trait implementations with inverted level logic
-
embfft
Non-blocking FFT for embedded systems
-
efm32gg11b-pac
Peripheral access API for EFM32GG11B MCU (generated using svd2rust)
-
libmapper-rs
Rust bindings for libmapper
-
cc1101
A platform agnostic driver to interface with the CC1101 (Sub-1GHz RF Transceiver)
-
canadensis_encoding
A Cyphal implementation: Transfer encoding and decoding
-
da14681-pac
Peripheral Access Crate (PAC) for DA14681
-
serde_anymap
A map that can retrieve values by type - and is SerDe serializable
-
tiny-varint
A no_std compatible VarInt encoding/decoding Rust library
-
emcyphal-data-types
STM32 FDCAN driver for Emcyphal network stack
-
max32660
Register mappings for the Analog Devices MAX32660 Cortex-M4 microcontroller
-
efm32wg-pac
Peripheral access API for EFM32WG MCU (generated using svd2rust)
-
airfrog-rpc
RPC support for co-processing using debug protocols
-
env_inspector
Detect if running in container, VM, or bare metal
-
embedded-lora-rfm95
A
no-std-compatible, opinionated driver for the RFM95 LoRa modem -
mmc56x3
Driver for the MMC56x3
-
da14583-pac
Peripheral Access Crate (PAC) for DA14583
-
da14580-pac
Peripheral Access Crate (PAC) for DA14580
-
tenkan
Convert .env files to c headers
-
mavrouter
MAVLink router
-
postcard-schema-ng
Reflection-like schemas for postcard types
-
esp_ws2812_b
that provides control over the WS2812B LED
-
mcp2221-hal
Driver for the MCP2221 USB to UART, I2C and GPIO converter
-
ch58x
Device support crates for CH58X devices
-
honeywell_mpr
A no-std driver for the Honeywell MPR sensor
-
rflow
Text protocol for embedded apps
-
uefi-reset
UEFI modules that reset the system when loaded
-
ch32v0
Device support crates for CH32V0 devices
-
rgb-led-pwm-dma-maker
Used for creating a PWM waveform using the DMA to control RGB LEDs such as WS2812, WS2812B, SK6812, SK6812-RGBW
-
svd-generator
Converts device information from flattened device tree into an SVD description
-
alt-stm32f30x-hal
Alternative HAL impl for the STM32F30x family of microcontrollers
-
eg-seven-segment
Seven-segment displays for embedded-graphics
-
cardkb-driver
CardKB I2C driver (no_std) - embedded-hal async I2C
-
da14586-pac
Peripheral Access Crate (PAC) for DA14586
-
normfs-types
Core type definitions and serialization for NormFS
-
dfu-rs
Device Firmware Update crate for hosts, using rusb and exposing a simple API
-
da1470x-pac
Peripheral Access Crate (PAC) for DA1470X
-
ruspiro-timer
This crates provides simple timing functions to pause the current processing for a specific amount of time. The core pausing is called on will block.
-
da14531-pac
Peripheral Access Crate (PAC) for DA14531
-
da14695-pac
Peripheral Access Crate (PAC) for DA14695
-
signalo_sinks
A collection of signal sinks used in 'signalo' umbrella crate
-
ft5336
A platform agnostic driver for the FT5336 touch screen driver used on the STM32F746 Discovery board, built using the embedded-hal
-
rhai-fs
Filesystem package for Rhai
-
rf24-rs
A pure-rust driver for the nRF24L01 wireless transceiver
-
trap
Bare metal trapping
-
trussed
Modern Cryptographic Firmware
-
rk3568_clk
Clock and Reset Unit (CRU) driver for RK3568 SoC
-
machine-check-avr
System crate for machine-check for verification of AVR microcontrollers
-
memory-spec
A single source of truth for all your memory.x files
-
keypad
Platform-agnostic driver for keypad matrix circuits
-
sram
STENM Firmware Workspace (no_std isolation)
-
lp50xx
platform agnostic library for the Texas Instruments LP50XX led driver
-
abp
ABP Package Manager - a minimal, secure package manager for armybox systems
-
riscv-stack
Stack usage tools for RISCV processors
-
tg-rcore-tutorial-games-ch2-moving-tangram-kernel
Kernel support for game of ch2 of tg-rcore tutorial
-
e2e-protection
End-to-End protection core with pluggable profiles. AUTOSAR profile family is optional via feature
-
airfrog-swd
Rust native ARM SWD support
-
esp8266
Peripheral access crate for the ESP8266
-
driver-5011as
driver for the 5011as 7-segment display using
embedded-hal -
onerom-fw
Firmware generator for One ROM - the flexible retro ROM replacement
-
stateset-java
Java JNI bindings for StateSet Embedded Commerce
-
da14691-pac
Peripheral Access Crate (PAC) for DA14691
-
emcyphal
Async Cyphal/CAN network stack for no_std environments
-
wasefire-protocol-usb
Wasefire USB protocol between platform and host
-
espforge_configuration
Used by espforge project
-
format_no_std
Bare metal formatting
-
kaori-hsm
A performant hierarchical state machine library
-
lego-powered-up
Control Lego PoweredUp hubs and devices
-
automation-hat
Pimoroni Automation HAT
-
tg-rcore-tutorial-games-ch1-tangram-kernel
Kernel support for game of ch1 of tg-rcore tutorial
-
efm32tg11b-pac
Peripheral access API for EFM32TG11B MCU (generated using svd2rust)
-
NUCLEO-G474RE-blink-for-embedded-rust
Example project for blinking an LED on the NUCLEO-G474RE board using embedded Rust
-
rucos-cortex-m
A port of the RuCOS kernel to ARM Cortex-M
-
epd-datafuri
Driver for Adafruit e-Paper display (EPD) controllers (SSD1680, IL0373), for use with embedded-hal
-
bitregions
Generate a unit structure to represent a set of bit-regions
-
scpi
SCPI/IEEE488.2 parser library
-
synctools
Synchronization tools for no_std
-
talrost
A mathematics library for embedded scientific computation
-
embedded-crc-macros
Macros implementing portable CRC calculation algorithms for use in no_std
-
pico-de-gallo-lib
High-level library to communicate with Pico de Gallo device
-
rerec
Readings and records from sensory instruments as used by Herodot and Percepter
-
himpp
Hi3XXX MPP API for Rust bindings
-
elytra-bytepack
macros/helpers for building const sized byte arrays
-
ht32f523x2
Peripheral access API for HT32F523x2 microcontrollers
-
piddiy
DIY custom PID controller toolkit
-
esp-hal-embassy
Embassy support for esp-hal
-
erpc_rust
eRPC (Embedded RPC) protocol
-
ti-lp55231
Linux I2C driver for Texas Instruments LP55231 LED controller
-
drmem-drv-ntp
DrMem driver which monitors ntpd daemons
-
swamp-refs
symbol references
-
memac
A custom memory allocator using slab and buddy allocators
-
atsam4ls8a-pac
Peripheral access crate for the ATSAM4LS8A microcontroller
-
atsam4lc4c-pac
Peripheral access crate for the ATSAM4LC4C microcontroller
-
atsam4n16c-pac
Peripheral access crate for the ATSAM4N16C microcontroller
-
cortex-m-log
Logging facilities for Cortex-M processors
-
simple-max31865
driver for the MAX31865 RTD to Digital converter (Raspberry Pi focus)
-
embedded-shadow
Zero-alloc shadow register table with dirty tracking for embedded systems
-
avrd
Device-specific constants and information for all AVR microcontrollers
-
ruspiro-mailbox
Raspberry Pi mailbox property tag interface API
-
es-fluent-manager-embedded
es-fluent manager for rust_embed
-
peakrdl-rust-build
Build script helper that runs PeakRDL-rust to generate Rust register access code from SystemRDL files
-
genio
type safe, low level replacement for
std::io. Supportsno_stdfor embedded development, just disable cargo featurestd. Because of limitations ofstd::io::Errortype,genioprovidesReadand… -
grift_arena
A minimal no_std, no_alloc arena allocator with garbage collection for the Grift Scheme interpreter
-
bobbin-bits
Small bit fields and ranged integers
-
dguscard
DWIN T5L DGUS request builder & response parser
-
postcard2-eio
postcard2 extensions crate
-
rust_transiter_types
Some generated rust types for the transiter API https://github.com/jamespfennell/transiter. Meant for no std enviromnets that have an alloc.
-
adxl345_driver2
Driver for Analog Device ADXL345/ADXL346 3-Axis Digital Accelerometer
-
efm32g-pac
Peripheral access API for EFM32G MCU (generated using svd2rust)
-
ergot
Eloquence in messaging
-
wasefire-common
Wasefire common items
-
ducc
Rust bindings for Duktape, the embedded JavaScript engine
-
da14581-pac
Peripheral Access Crate (PAC) for DA14581
-
rtools
Set of tools for my needs
-
espforge_devices_builder
Component registration for espforge
-
hid-io-protocol
HID-IO protocol implementation for both servers and devices. Devices are optimized for Cortex-M devices, but may work for other platforms
-
jaylink
communicate with J-Link USB devices
-
libafl_qemu_sys
C to Rust bindings for the LibAFL QEMU bridge
-
canadensis_data_types
Automatically generated types for all Cyphal public regulated data types
-
memfault-ssf
Supporting crate for the Memfault memfaultd embedded Linux agent
-
eth-intel
Intel e1000 ethernet driver
-
simple-fatfs
A simple-to-use FAT filesystem library for Rust (mainly targeted at embedded systems)
-
canadensis_crc
access to Cyphal software image CRCs
-
eva-lsl
EVA ICS v4 local service launcher
-
st-fifo-tool
A set of utilities useful to interface with the ST MEMS TAG-based IMUs sensor FIFO
-
sds011-rs
A driver for the SDS011 particle sensor based on embedded-io
-
mp2722
Driver for the MP2722 battery charging ic
-
edge-executor
Async executor suitable for embedded environments
-
msp430-periph
Peripheral definition for all MSP430s
-
ssd1683
Driver for the SSD1683 e-Paper display (EPD) controller, for use with embedded-hal
-
epd-waveshare
An embedded-hal based driver for ePaper displays from Waveshare formerly published as eink-waveshare-rs
-
sensirion-rht
Driver for several temperature and humidity sensors from Sensirion
-
da14697-pac
Peripheral Access Crate (PAC) for DA14697
-
da14699-pac
Peripheral Access Crate (PAC) for DA14699
-
usbd-ethernet
Communication Device Class Network Control Model (CDC-NCM) class for usb-device
-
lcd
Hitachi HD44780-compatible LCD screen support for embedded development
-
mctp
Management Component Transport Protocol (MCTP) base types and traits
-
device-register
A
no_stdlibrary to describe the registers permissions of a device to ease driver development -
gd32c1x3-hal
HAL for the GD32C1x3 family of microcontrollers
-
wasefire-wire
Wasefire wire format
-
is31fl3728-rs
Rust embedded driver for is31fl3728 - led-matrix controller
-
foc-simple
easy to use implementation of the Field Oriented Control (foc) for brushless motors
-
steamid_core
working with Steam IDs in no-std environments
-
ds1307
Platform-agnostic Rust driver for the DS1307 real-time clock
-
wii-accessories
Driver for Wii extension controllers (Nunchuck, Classic Controller)
-
elytra-conf
Embedded configuration library to enable standardized setup using WebUSB or serial
-
efm32hg-pac
Peripheral access API for EFM32HG MCU (generated using svd2rust)
-
spi-memory-async
A generic driver for different SPI Flash and EEPROM chips
-
koto_json
A Koto library for working with JSON data
-
flanterm_bindings
flanterm bindings
-
da14682-pac
Peripheral Access Crate (PAC) for DA14682
-
radio-sx128x
Driver for the Semtec sx1280 2.4GHz RF IC
-
noshell-parser
noshell, a no_std argument parser and a shell for constrained systems
-
da14582-pac
Peripheral Access Crate (PAC) for DA14582
-
tg-rcore-tutorial-games-ch2-moving-tangram-user
User-space game for tg-rcore-tutorial ch2
-
memacc
Memory access functions
-
jb-solar-power-embassy
Sɔgɔma Jigi ☀️ — battery/power state models for off-grid embedded nodes, no_std friendly
-
axplat-aarch64-peripherals
ARM64 common peripheral drivers with
axplatcompatibility -
axplat
unified abstraction layer for diverse hardware platforms
-
polished_memory
Memory management for the Polished OS project
-
wasefire-cli-tools
Command-line utilities for Wasefire
-
gt911
An embedded touchscreen driver for GT911
-
sx126x
A driver for the SX126X Family of LoRa modems
-
jetpwmon
Rust bindings for Jetson Power Monitor
-
sen66-interface
An I2C driver for the SEN66 sensor in Rust
-
dma_x86_64
Low-level DMA driver for x86_64 systems in no_std environments
-
da14585-pac
Peripheral Access Crate (PAC) for DA14585
-
espforge_devices
Devices for espforge
-
robust-pid
Production-grade PID controller for safety-critical systems
-
espforge_components_builder
Component registration for espforge
-
espforge_components
Components for espforge
-
w5500-dhcp
DHCP client for the Wiznet W5500 internet offload chip
-
stm32g0xx-hal
Peripheral access API for STM32G0 series microcontrollers
-
arch-token-metadata
On-chain program for Arch Token Metadata
-
esp-lp-hal
HAL for low-power RISC-V coprocessors found in ESP32 devices
-
mcp23017-tp
Rust Driver for device MCP23017 16-Bit I2C I/O Expander with Serial Interface
-
gdb-server
A gdb stub implementation for on chip debugging and flashing of ARM chips
-
rustmeter-beacon
Lightweight tracing library for embedded Rust applications
-
pie-boot-loader-aarch64
Boot kernel code with mmu
-
mbus-core
Complete Modbus Master and Slave embedded first implementation in Rust, Compliant with modbus application protocol specification V1.1b3
-
ch32v1
Device support crates for CH32V1 devices
-
esp-riscv-rt
Minimal runtime / startup for RISC-V CPUs from Espressif
-
curl_smile
A simplified rust API for Keepsmile lights
-
ruspiro-mmio-register
macros to conviniently define memory mapped I/O (MMIO) registers
-
sntpc-net-embassy
Embassy socket wrapper for sntpc library
-
freertos-sys2
Low-level bindings to FreeRTOS. User's responsibility to provide the FreeRTOS
-
postcard-dyn-ng
Dynamic ser/de for postcard
-
bq25887
Device driver for the Texas Instruments BQ25887 linear battery chargers
-
sf32lb52-pac
Peripheral Access Crate for SF32LB52 microcontrollers
-
efm32pg1b-pac
Peripheral access API for Silicon Labs EFM32PG1B microcontrollers
-
embedded-runtime
A tiny async runtime for embedded devices
-
gfx-xtra
embedded-graphics xtras
-
da14680-pac
Peripheral Access Crate (PAC) for DA14680
-
lcd1602-driver
A LCD1602 driver
-
canadensis_serial
A Cyphal implementation: Cyphal/Serial transport
-
tockloader-proto
A #[no_std] implementation of the protocol used by tockloader and the TockOS bootloader
-
wrenlet
Safe bindings to the
Wrenscripting language -
gc9a01a_driver
Display Driver to Support for GC9A01A LCD 1.28 inch with embedded-graphics support
-
pico-engine-hardware
Hardware abstraction traits for Pico Engine
-
grift_parser
Lisp parser for the Grift Scheme language
-
lightvgl-sys
Raw bindings to the LVGL C library
-
is31fl32xx
A rust-embedded driver for the Lumissil Microsystems IS31FL3205 LED driver
-
nostd-musl
containing which XXXX-unknown-linux-gnu toolchains expect to find in
libc, so that they can be linked without dependency onlibcusing-nodefaultlibs,-nostartfilesand-nostdlib -
mlx90640-capture
Image capture utility for MLX90640 cameras
-
pldm-fw
Platform Level Data Model (PLDM) for Firmware Update library
-
rmodem
XMODEM (and variants) implementation in no-std Rust
-
da14683-pac
Peripheral Access Crate (PAC) for DA14683
-
ssd1306
I2C/SPI driver for the SSD1306 OLED display controller
-
dac8564
platform agnostic library for the Texas Instruments DAC8564
-
tfmt
A tiny, fast and panic-free alternative to
core::fmt -
lis2dtw12
no_std library for the LIS2DTW12 dual motion and temperature sensor using embedded-hal traits
-
ism330dhcx
driver for ST ism330dhcx sensor
-
ch32x0
Device support crates for CH32X0 devices
-
drone-core
The core crate for Drone, an Embedded Operating System
-
rustsbi
Minimal RISC-V's SBI implementation library in Rust
-
bitwrap
pack/unpack data into byte array
-
embedded-resources
Define peripheral usage in a single place for use everywhere
-
efm32zg-pac
Peripheral access API for EFM32ZG MCU (generated using svd2rust)
-
nrf-softdevice-mbr
Low-level bindings for the MBR included in all Nordic nRF SoftDevices
-
embedded-io
Embedded IO traits
-
fracpack
Convert to and from the fracpack format
-
bbqueue-ng
A SPSC, lockless, no_std, thread safe, queue, based on BipBuffers
-
itron
Interface to operating systems based on μITRON and its derivatives
-
esp32-dht11-rs
that reads temperature and humidity data from the DHT11 sensors for esp32 series
-
disarmv7
Decodes armv7 instructions in to a rust enum
-
tock/riscv-csr
RISC-V CSR interface developed for Tock
-
hers
HTML Embedded Rust - Runtime types and utilities
-
spyglys
programming language for text manipulation
-
tdc1000
no_std driver for the TDC1000 Ultrasonic Sensing Analog Front End
-
efm32pg-pac
Peripheral access API for EFM32PG MCU (generated using svd2rust)
-
cortex-m-types
Low level access to Cortex-M processors
-
flem
Flexible, Light-weight, Embedded Messaging Protocol
-
wake-rs
Wake protocol library written in Rust
-
oled_async
Driver for various OLED display controllers. e.g. SH110x SSD130X works with embedded-graphics
-
canadensis_filter_config
Automatic receive filter configuration for Cyphal
-
urap
Specification and library for the URAP protocol
-
nrf51-hal
HAL for nRF51 microcontrollers
-
lcd-ili9341-spi
Embedded_hal driver for ILI9341 SPI LCD, compatible with Waveshare 2,4 inch board
-
zigzag-rs
A dependency-free ZigZag encoding/decoding library
-
systick-monotonic
RTIC Monotonic implementation based on SysTick
-
nrf-hal
Hardware abstraction layer for Nordic nRF5x chips
-
cairn-knowledge-graph
An embedded and in-memory knowledge graph for static specification analysis
-
umm-malloc
A global allocator implementation for embedded systems using the umm_malloc library
-
std-embedded-nal-async
embedded-nal-asynctraits for large devices that support the standard library -
sen0177
Read air quality data from the SEN0177 and PMSA003I sensors
-
teensy4-bsp
Rust-based BSP for the Teensy 4. Part of the teensy4-rs project
-
ws2812-flexio
A neopixel driver based on NXP i.MX RT's FlexIO bus
-
mwatch_kernel
A embedded 'Smart' watch
-
sdmmc-core
SD/MMC core data structures and algorithms
-
spl_tool
Port of StarFive's C spl_tool with default support for VisionFive2
-
moto-runtime
Motor OS Runtime
-
bl602-sdk
Rust Wrapper for BL602 IoT SDK
-
drone-stm32-map-svd
STM32 SVD to bindings for Drone, an Embedded Operating System
-
efm32jg1b-pac
Peripheral access API for EFM32JG1B MCU (generated using svd2rust)
-
sideshow
Picture display library for the InkyFrame series of Raspberry PiPico(W) combo boards
-
butt-head
A no_std button input processing library for embedded systems
-
as7265x
Driver for the AS7265x
-
espforge_examples
Embedded examples for espforge
-
ruspiro-uart
convinient access API to the Raspberry Pi 3 UART0 (PL011) and UART1 (miniUART) peripherals
-
defmt-persist
Persistent defmt logger that survives resets
-
embers
A collection of helpful drivers for use in embedded Rust
-
at24cx
A rust-embedded async driver for the Atmel AT24Cx eeprom storage family
-
iis2mdc
driver for ST iis2mdc sensor
-
dwm1001
Board Support Crate for the Decawave DWM1001 module and development board
-
esp32p4
Peripheral access crate for the ESP32-P4
-
bare-sync
no-std, no-alloc synchronization primitives
-
bittersweet
Add more intentional predicates to bitwise calcs
-
tinydyn
A lightweight dynamic dispatch library
-
crab-usb
A usb host for embedded systems, written in Rust
-
swamp-attributes
small crate that handles attributes for the Swamp Language
-
smart-leds
device drivers
-
typus_fugit
typenumpowered time library for the embedded ecosystem -
ruspiro-console
Lightweight console abstraction for bare metal implementations to print strings to an output channel that could be easely configured/attached
-
efm32jg12b-pac
Peripheral access API for EFM32JG12B MCU (generated using svd2rust)
-
ruspiro-gpio
This crates provides a GPIO peripheral abstraction of the Raspberry Pi
-
radroots-sql-core
sql execution and migration primitives for radroots data layers
-
smccc
Functions and constants for the Arm SMC Calling Convention (SMCCC) 1.4 and Arm Power State Coordination Interface (PSCI) 1.1 on aarch32 and aarch64
-
disasm6502
6502 disassembler, complete with a working example
-
memfaultc-sys
Supporting crate for the Memfault memfaultd embedded Linux agent
-
imxrt-boot-gen
Generate data structures for booting iMXRT processors
-
caprand
RP2040 secure random number generator by timing capacitor pullup
-
mk20d7
Peripheral access API for MK20D7 microcontrollers
-
binwalk
Analyzes data for embedded file types
-
ice40
An embedded-hal driver for configuration of ice40 FPGA devices
-
bitwrap_extra
pack/unpack data into byte array
-
ch32v2
Device support crates for CH32V2 devices
-
bitbang-hal
Implements embedded-hal traits by bitbanging
-
playdate-rs
Safe Rust bindings for the Playdate SDK C-CPI
-
cortex-m-rtic
Real-Time Interrupt-driven Concurrency (RTIC): a concurrency framework for building real-time systems
-
imxrt-dcd
Device Configuration Data (DCD) generator for i.MX RT1060 series firmware images
-
gledopto
no-std, no-alloc LED control library for 1D, 2D, and 3D layouts
-
esp-mcp42u83
An ergonomic wrapper for interfacing with ESP42U83 digital potentiometers using an ESP32
-
drmem-drv-sump
DrMem driver which monitors a sump pump
-
xdevs-no-std
no-std implementation of xDEVS for real-time simulation on embedded systems
-
lt7683
display driver
-
lc3-codec
LC3 audio codec for embedded systems (no_std)
-
gd32vf103-hal
Hardware abstract layer (HAL) for RISC-V microcontroller GD32VF103
-
kdef-pgtable
Boot kernel code with mmu
-
ssd1322_rs
A no-std async Rust driver for the SSD1322 OLED screen
-
stm32f411ve-disco
Board support package for STM32F411E-DISCO (Discovery) development board with Embassy async framework
-
ieee802_3_miim
abstractions for the IEEE 802.3 Media Indepedent Interface, providing access to registers defined in the standard, and with optional implementations of this abstraction for commonly used PHYs
-
efm32pg23-pac
Peripheral access API for EFM32PG23 MCU (generated using svd2rust)
-
max78000-pac
A Peripheral Access Crate for the MAX78000 microcontroller
-
mayheap
An abtraction over alloc & heapless
-
crc8-rs
A heapless no-std library for doing 8-bit cyclic redundancy checks
-
pico-animation
An Animation module for the pico engine ecs system
-
bma423
Rust driver for Bma423 accelerometer
-
ledcat
Control lots of LED's over lots of protocols
-
adi-adxl355
An embedded-hal driver for the ADXL355 accelerometer
-
dac8568
platform agnostic library for the Texas Instruments DAC8568, DAC8168 and DAC7568
-
espforge_platform
Platform abstractions for espforge projects
-
ls013b7dh03
Sharp LCD driver for embedded-hal
-
jep106
A pollable collection of all JEP106 manufacturer codes
-
libvarlink-sys
FFI bindings to libvarlink
-
p1am_100
Board Support crate for the Facts Engineering P1AM-100
-
w5500-sntp
SNTP client for the Wiznet W5500 internet offload chip
-
malakoi
Procedural macro for mathematical operations on structs
-
il0373
Driver for the IL0373 e-Paper display (EPD) controller, for use with embedded-graphics
-
detcore
Minimal no_std deterministic state machine engine. Single dependency.
-
rlvgl
A modular, idiomatic Rust reimplementation of the LVGL graphics library for embedded and simulator use
-
clock_helper
facilitate clock management on STM32 microcontrollers
-
neon-rtos
A real-time operating system for ARM Cortex-M or RISC-V microcontrollers
-
va108xx-hal
HAL for the Vorago VA108xx family of microcontrollers
-
ruspiro-singleton
easy to use singleton pattern
-
tg-rcore-tutorial-games-ch6-breakout-user
User-space game for tg-rcore-tutorial ch6
-
imxrt-dma
DMA driver for i.MX RT processors
-
gopro-controller
Open source Rust Library for interacting with GoPro Cameras over BLE and WiFi
-
tinyboot-cli
CLI firmware flasher for tinyboot bootloader
-
smart_leds_animations
building animations with smart LEDs
-
rt-rtai
rtai
-
uboot-shell
communicating with u-boot
-
ufmt-stdio
C stdio writer for ufmt
-
ym2149-core
Generic driver for YM2149 sound chips
-
embedded-menu
interactive menu for embedded devices
-
d1-pac
Peripheral access API for Allwinner D1 SoC generated from unofficial SVD file
-
kywy
building games on the Kywy Device
-
ejcli
Command-line interface for the EJ framework. Mainly used to setup and interface with EJD
-
arinc429
A full-featured ARINC 429 encoder/decoder with BNR/BCD interpretation and SSM support
-
stepgen
Stepper motor speed ramp generator
-
avr-mcu
Pragmatic structures for all AVR microcontrollers
-
ble-peripheral-rust
A cross-platform Rust crate for building Bluetooth Low Energy peripherals
-
enum-bitmasks
A no_std compatible bitmask macro that can be implemented on enums
-
mutex-trait
Foundational mutex trait and helpers
-
max44009
Platform-agnostic Rust driver for the MAX44009 ambient light sensor
-
dht-embedded
reading temperature and humidity from the DHT11 and DHT22 sensors
-
simplefb
Framebuffer Console Library for Embedded Systems
-
panic-rtt-target
Logs panic messages over RTT using rtt-target
-
ads8681
A rust library for the ads8681
-
unflappable
A batteries-included embedded-hal InputPin debouncer
-
taskette
Multitasking library for embedded Rust (architecture-independent part)
-
rfm69
A generic rust driver to support RFM69 family wireless chips
-
tm4c123x-hal
HAL for the TM4C123x family of microcontrollers
-
nickel-lang-git
Git utility functions for internal use in the Nickel configuration language
-
bluetooth-hci
Bluetooth HCI
-
esp-ieee802154
Low-level IEEE 802.15.4 driver for the ESP32-C6 and ESP32-H2
-
drone-stm32-map-periph-tim
STM32 peripheral mappings for Drone, an Embedded Operating System
-
embedded-rgba
RGBA support for embedded-graphics with fast framebuffers
-
bme280-multibus
BME280 driver with support for SPI and I2C
-
sysfs_gpio
access to GPIOs using the Linux sysfs interface
-
cortex-m-interrupt
Function-like, trait-based interrupt handler registration
-
stm32f3-discovery
Board support package for the STM32F3DISCOVERY board
-
tinyboot-ch32-app
App-side library for tinyboot on CH32 microcontrollers
-
embedded-ads111x
ADS111x 16bit ADCs I2C rust driver no_std
-
edge-mqtt
Implements the embedded-svc MQTT traits on top of the rumqttc crate
-
defmt-brtt
Defmt logs over RTT as well as through a BBQueue
-
tudelft-quadrupel
Hardware support library for the quadrupel drone project (embedded systems lab)
-
hc12-rs
A strongly typed, and rusty builder for programming HC-12 radios
-
ch32v3
Device support crates for CH32V3 devices
-
cst816s-async
CST816S touch controller driver for embedded hal async / no_std
-
pico-rendering
Rendering module for Pico Engine
-
teensy4-fcb
FlexSPI Configuration Block (FCB) for the Teensy 4. Part of the teensy4-rs project
-
aya-ebpf-cty
Type aliases to C types like c_int for use with bindgen
-
edma
Embedded Database Management for All
-
ruvector-dag-wasm
Minimal WASM DAG library for browser and embedded systems
-
lcd-rus
using UTF-8 strings/literals with LCDs with Russian support
-
dmrc-rs
Delhi Metro route planner with precomputed journeys embedded at build time
-
drone-nrf91-dso
Nordic Semi nRF91 DSO implementation for Drone, an Embedded Operating System
-
rv8803
RTC clock driver for the rv8803 chip via I2C
-
embedded-graphics-coordinate-transform
Wrappers for rotating, mirroring, and transposing embedded graphics displays
-
loreyawen
An encrypted connection for low-datarate networks by piggybacking on LoRaWANs link encryption
-
driver-pal
Rust embedded driver helper package
-
xtensa-lx-rt
Minimal startup/runtime for Xtensa LX CPUs
-
vl53l4cd-ulp
no_std ultra-low-powerdriver for the VL53L4CD
-
tightbeam-os
A Baremetal Operating System for tightbeam
-
prusst
A convenient interface to the UIO kernel module for TI Programmable Real-time Units
-
canadensis_pnp_client
Client library for Cyphal plug-and-play node ID allocation
-
threepm
Rust bindings and high-level interface abstraction for ThreePM - a fixed-point MP3 decoding library written in C
-
gd32c1
Device support crate for GD32C1 devices
-
tinyboot-ch32-boot
Bootloader library for tinyboot on CH32 microcontrollers
-
bern-conf-type
Bern RTOS configuration type
-
flipperzero-tools
Flipper Zero (tools)
-
huawei-cloud-api-definitions-BMS
Huawei Cloud API definitions, generated from OpenAPI spec
-
rv3028c7-rtc
RV-3028-C7 and similar Real Time Clock (RTC) no_std driver
-
drone-stm32-map-periph-gpio
STM32 peripheral mappings for Drone, an Embedded Operating System
-
memory-lcd-spi
A driver for Sharp's Memory LCD or JDI's Memory In Pixel display, LPM013M126A, LPM009M360A, LS027B7DH01, etc
-
free-flight-stabilization
PID flight stabilization functions. no_std, no-alloc.
-
buddyalloc
Safe and simple drop-in allocator for Rust running on embedded or bare metal systems (no_std)
-
pulau-rs
allocation-free union-find library for bare metal environments
-
st7920
SPI driver for the ST7920 LCD display controller
-
obniz-rust
client library for Obniz IoT platform
-
embedded-vintage-fonts
Vintage fonts from embedded-graphics 0.6 back release 0.7
-
ruspiro-interrupt
Providing a simple and convenient way to implement interrupt handler for Raspberry Pi interrupts
-
max32660-pac
Peripheral access API for MAX 32660 microcontroller
-
embedded-debugger-mcp
A Model Context Protocol server for embedded debugging with probe-rs - supports ARM Cortex-M, RISC-V debugging via J-Link, ST-Link, and more
-
tca9534-driver-rs
A platform-independent driver for the TCA9534 I2C IO expander
-
efm32pg22-pac
Peripheral access API for EFM32PG22 MCU (generated using svd2rust)
-
veml6075
Platform-agnostic Rust driver for the VEML6075 UVA and UVB light sensor
-
mcp2221-cli
CLI for the MCP2221 USB to I2C and GPIO converter
-
typed_ecs
A no_std, no_alloc ECS with compile-time guarantees, and BLAZING PERFORMANCE!
-
mqttrust
MQTT Client
-
pico-ecs
A lightweight ECS for embedded systems
-
atsamv70j20b
Peripheral access API for the ATSAMV70J20B MCU from Microchip (generated using svd2rust 0.33.5)
-
atsamv70j19b
Peripheral access API for the ATSAMV70J19B MCU from Microchip (generated using svd2rust 0.33.5)
-
atsamv70n20b
Peripheral access API for the ATSAMV70N20B MCU from Microchip (generated using svd2rust 0.33.5)
-
atsamv70q20b
Peripheral access API for the ATSAMV70Q20B MCU from Microchip (generated using svd2rust 0.33.5)
-
ch57x
Device support crates for CH57X devices
-
variegated-nau7802
Async driver for the Nuvoton NAU7802 24-bit precision ADC for load cells
-
atsamv71j20b
Peripheral access API for the ATSAMV71J20B MCU from Microchip (generated using svd2rust 0.33.5)
-
atsamv71j19b
Peripheral access API for the ATSAMV71J19B MCU from Microchip (generated using svd2rust 0.33.5)
-
tagged-box
Box that uses tagged pointers
-
concoct
Cross-platform UI framework
-
orion_cfmt
Format output without Rust code segment in binary to reduce the ultimate binary size
-
lcd-async
Async fork of mipidsi crate
-
atsamv71n20b
Peripheral access API for the ATSAMV71N20B MCU from Microchip (generated using svd2rust 0.33.5)
-
firmata-rs
A Firmata protocol client library
-
atsamv71n21b
Peripheral access API for the ATSAMV71N21B MCU from Microchip (generated using svd2rust 0.33.5)
-
atsamv71q20b
Peripheral access API for the ATSAMV71Q20B MCU from Microchip (generated using svd2rust 0.33.5)
-
atsamv71q21b
Peripheral access API for the ATSAMV71Q21B MCU from Microchip (generated using svd2rust 0.33.5)
-
atsamv71q19b
Peripheral access API for the ATSAMV71Q19B MCU from Microchip (generated using svd2rust 0.33.5)
-
uln2003
28BYJ-48 stepper motor with and ULN2003 Driver on any hardware implementing embedded_hal
-
yahv
hex viewer
-
drone-cortex-m
ARM® Cortex®-M platform crate for Drone, an Embedded Operating System
-
defmt-itm
Transmit defmt log messages over the ITM (Instrumentation Trace Macrocell) stimulus port
-
stackdump-capture-probe
capturing stack dumps of embedded devices with a debugging probe
-
grift_arena_embedded
Embedded-specific features for the Grift Scheme interpreter, including hardware register and memory access
-
aws-greengrass-nucleus
aws greengrass nucleus in Rust (unofficial)
-
disarm64-cli
disarm64 provides a tool and a library for decoding ARM64 instructions (at least 250 MiB/sec of the decoding speed is delivered on a laptop that is used for development). Here you will…
-
drone-stm32-map-periph-dma
STM32 peripheral mappings for Drone, an Embedded Operating System
-
eeprom
emulation on top of FLASH for STM32
-
loadcell
A no-std embedded-hal package for the hx711 load cell, based on the embedded hal. Has optional support for interrupts on the esp32.
-
bbqueue-sync
A SPSC, lockless, no_std, thread safe, queue, based on BipBuffers
-
ms5611-rs
no_std driver for the MS5611 barometric pressure sensor
-
ms5803-14ba
embedded-hal async and async driver for the MS5803-14BA pressure sensor
-
ms5607-rs
no_std driver for the MS5607 barometric pressure sensor
-
tinyboot-ch32-hal
Hardware abstraction layer for tinyboot on CH32 microcontrollers
-
tixml2svd
that converts Texas-Instruments device descriptions to standard SVD files
-
scl3300
Driver for the SCL3300 inclinometer
-
zigbee2mqtt_types_base_types
Common definitions for zigbee2mqtt vendors
-
embedded-graphics-core
Core traits and functionality for embedded-graphics
-
axum-embeddy
Serve embedded files with axum
-
zssh
Minimal SSH server for embedded applications
-
serial-mcp-server
A comprehensive MCP server for serial port communication
-
emtrace
Minimal overhead tracing/logging library for embedded, and resource constrained projects
-
gd32vf103xx-hal
HAL for GD32VF103 microcontrollers
-
display-driver-st7789
Display Driver for ST7789
-
embedded-sdmmc-dev
A basic SD/MMC driver for Embedded Rust
-
drone-nrf-map
Nordic Semi nRFx peripheral mappings for Drone, an Embedded Operating System
-
mcutie
A no-std, no-alloc, opinionated MQTT client for IoT devices
-
trouble-host
An async Rust BLE host
-
Rusty_CryptoAuthLib
A platform agnostic I2C driver for Microchip’s Crypto Authentication HW (i.e. secure element
ATECC608A), written in pure Rust. -
wave
A no-std no-alloc gesture recognition library for low resolution TOF-Sensors
-
esp-idf-svc
embedded-svc traits for ESP-IDF (Espressif's IoT Development Framework)
-
tock/tock-cells
A secure embedded operating system for microcontrollers
-
embedded-can-socketcan
Linux SocketCAN adapters implementing embedded-can-interface traits
-
agentic-robotics-core
High-performance agentic robotics framework with ROS2 compatibility
-
seminix
内核标准库
-
mt6816
Driver for MT6816 SPI Magnetic Encoder / Angle sensor
-
booster
Firmware for the Sinara Booster device (STM32F4, Ethernet, RF power amplifiers)
-
defmt-bbq
A generic bbqueue based transport for defmt log messages
-
zlang
embeddable language implemented for rust, it is called zlang because it is the last embedded language a sane developer would reach for
-
nucleo-h743zi
Example programs for nucleo-H743zi and nucleo-H743zi2 boards
-
microdot
sending data to and from microcontrollers
-
mips-mcu-alloc
A heap allocator for MIPS based microcontrollers
-
figments-render
A high performance graphics hardware control layer for microcontrollers using the Figments rendering API
-
motion
A bare metal physics engine
-
as5048a-async
Async driver for AS5048A 14-bit magnetic rotary position sensor with SPI interface
-
merkle-cbt-lean
Special implementation of Complete Merkle Binary Tree for minimal memory footprint
-
ch59x
Device support crates for CH59X devices
-
ak09915_rs
interacting with the AK09915 magnetometer
-
postform_decoder
Decoder for the Postform logging framework, an efficient logging framework for mcu's
-
cichlid
A color math library for programming addressable LEDs
-
py32f030_hal
Peripheral Hal Crate for Puya's PY32F030 microcontroller
-
jiminy-finance
DeFi math primitives for Jiminy: AMM math, slippage/economic bounds, balance-delta guards. Zero-copy, no_std, no_alloc, BPF-safe.
-
mcp3425
Platform agnostic Rust driver for the Microchip MCP3425/6/7/8 ADC
-
embedded-multi-page-hmi
Multi page HMI targetting embedded devices with a few of buttons input and a constrainted display
-
ez_pci
OSDev library for using PCI in your own OS
-
springql
Open-source stream processor for IoT devices and in-vehicle computers
-
defmt-semihosting
Transmit defmt log messages over the Cortex-M Semihosting protocol
-
imxrt1180evk-fcb
FlexSPI configuration block for NXP's IMXRT1180EVK
-
lpc546xx-pac
Device support crates for LPC546XX-PAC devices
-
esp32-wroom-rp
Rust-based Espressif ESP32-WROOM WiFi driver crate for RP2040 series microcontroller boards
-
ssd1681
Driver for the SSD1681 e-Paper display (EPD) controller, for use with embedded-hal
-
embedded-error
Universal error kinds for embedded systems
-
rttmon
RTT monitor for OpenOCD
-
esp32c3-hal
HAL for ESP32-C3 microcontrollers
-
ds1302
A platform agnostic driver to interface with the DS1302 real time clock-calendar
-
stm32l4
Device support crates for STM32L4 devices
-
dtb_parser
no std but alloc depended device tree blob parsing lib
-
r3_port_arm_m
Cortex-M port for the R3-OS original kernel
-
opcua-crypto
Encryption / decryption used by OPC UA client and server
-
resurgence
A VM backend designed to be embedded in an application
-
kcheck-cli
working with kernel configuration information
-
AS5600-Driver
A platform-agnostic driver for the AS5600 magnetic rotary encoder using embedded-hal
-
lpc13xx-pac
Device support crates for LPC13XX-PAC devices
-
name-forge
Deterministic crate name forge with availability checks
-
tcs3400
Platform-agnostic Rust driver for the TCS3400 RGB color light to digital converter with IR filter
-
trenchcoat
JavaScript-ish virtual machine for embedded, LEDs, hot code reload, etc
-
anyleaf
Driver for AnyLeaf sensors
-
aym
AY/YM sound chip emulation library
-
avr
AVR emulator
-
async-ltc681x
no_std Async Device Driver for the Ltc681x BMS Chips
-
scalpel-bin
binary modification tool, cut, stitch, replace, sign
-
ssd1322_di
display-interfacecompatible driver for the SSD1322 OLED display controller -
websocket-std
Websocket implementation using std support, focus on microcontrollers and interoperability with other languages like C through the ffi
-
ch32-metapac
Peripheral Access Crate (PAC) for all WCH's MCU chips, including metadata
-
kll-core
KLL state-machine implementation focused on no_std embedded/bare-metal targets
-
stm32f1xx-hal-bxcan
HAL for the STM32F1xx family of microcontrollers
-
aem10900
Driver crate for the AEM10900 Energy Harvester
-
cand
Beautiful embedded-first Rust logging library for ESP32 to servers with colorful output and zero-panic design
-
opcua-client
OPC UA client API
-
name-dictionary
Word and name lists for crate name generation
-
svdtools
modifying bugs in CMSIS SVD
-
zerocrush
Low-overhead compression for sparse files
-
atsam3x
Device support crates for ATSAM3X devices
-
metrics-exporter-scope
Metrics scope exporter
-
veml6040
Platform-agnostic Rust driver for the VEML6040 RGBW color light sensor
-
quad-compat-rhai
Embedded scripting for Rust
-
ms5637-rs
no_std driver for the MS5637 barometric pressure sensor
-
l3gd20
A platform agnostic driver to interface the L3GD20 (gyroscope)
-
rhai-url
Url package for Rhai
-
mik32-rt
Minimal runtime / startup for MIK32 MCUs, managed by the mik32-rs team
-
rpk-common
RPK common fields between config tool and firmware builder
-
probe-rs-cli-util
Helper library for CLI applications based on probe-rs
-
z80_forth
A Forth compiler for z80 processors, particularly aimed towards the TI-8x series of graphing calculators
-
jiminy-staking
Staking reward accumulators for Jiminy: MasterChef-style reward-per-token, emission rates, reward debt tracking. Zero-copy, no_std, no_alloc, BPF-safe.
-
mr-mime
A no_std MIME type library for Rust
-
embedded-profiling
Profiling for
no-stdembedded targets -
lcd_display
controlling character LCD displays (HD44780 compatible) via GPIO pins on Linux systems
-
ohms
Electrical units library for embedded targets
-
nrf24radio
Asynchronous embedded driver for NRF24L01(+) devices
-
axum-embed
Serve embedded files with axum
-
nucleo-l031k6-bsp
Board support crate for the ST L031K6-NUCLEO
-
why2025-badge-sys
Bindings to the built-in functions of the WHY2025 badge
-
rrt0
cross-platform runtime / startup (like crt0)
-
atsamv71q21rt
Peripheral access API for the ATSAMV71Q21RT MCU from Microchip (generated using svd2rust 0.33.5)
-
vl53l1x-uld
source port of the ULD driver for the VL53L1X
-
daisy_bsp
A board support package for the Electro-Smith Daisy Seed
-
aw2013
Driver for the AW2013 3-Channel LED Controller
-
hk32-partial-hal
HK32 partial HAL
-
persistent-buff
A buffer that stays persistent in ram between boots
-
rustot
AWS IoT
-
postform_rtt
Decodes Rtt logs for Postform, an efficient logging framework for mcu's
-
smart-leds-matrix
DrawTarget implementation for smart led based matrixes. It allows the usage of the embedded-graphics Drawables.
-
libvharness_sys
libvharness Rust bindings
-
uwheel-stats
profiling utility for uwheel
-
stm32l0x1-hal
Peripheral access API for STM32L0x1 microcontrollers
-
pie-boot-if
Boot kernel code with mmu
-
windows-elf-loader
Be capable of loading the elf dynamic library on Windows
-
lfsr
Galois linear feedback shift registers
-
rtforth
Forth implemented in Rust for realtime application
-
ds323x
Platform-agnostic Rust driver for the DS3231, DS3232 and DS3234 extremely accurate real-time clocks (RTC)
-
microscpi
creating SCPI interfaces
-
ector
open source async, no-alloc actor framework for embedded devices
-
mh-z19c
Pure rust implementation to read out the Winsen MH-Z19C CO2 sensor
-
weact-studio-epd
Unofficial driver for WeAct Studio E-paper modules
-
docopticon
An argument-parser based on the obligatory help-text
-
ibm437
font for uses with the embedded-graphics crate
-
oxy-bridge
Rust-to-CEF CXX bridge for OxyBlink — safe FFI layer between Rust and Chromium Embedded Framework
-
drone-stm32-map-periph-exti
STM32 peripheral mappings for Drone, an Embedded Operating System
-
imxrt1010evk-fcb
FlexSPI configuration block for NXP's IMXRT1010EVK
-
kxcj9
Platform-agnostic Rust driver for the KXCJ9 ultra-low-power tri-axis accelerometer
-
einvoice
E-Invoice library with language bindings
-
eth-igb
Intel IGB Ethernet driver
-
nucleo-h7xx
Board support crate for the STMicroelectronics STM32H7 Nucleo-144 boards
-
imxrt1170evk-fcb
FlexSPI configuration block for NXP's IMXRT1170EVK
-
bmp280-ehal
A platform agnostic driver to interface with the BMP280 pressure sensor
-
display-driver-gc9a01
Display Driver for GC9A01
-
px4flow_bsp
A board support package for the PX4FLOW optical flow sensor board
-
embedded-nal-minimal-coaptcpserver
A minimal CoAP-over-TCP server implementation built on embedded-nal
-
r528-pac
Peripheral access API for Allwinner R528 SoC generated from unofficial SVD file
-
gbl
GBL firmware file handling library
-
i2c-multiplexer
An I2C Multiplexer library that supports the PCA9546 and TCA9546A chips
-
pico-engine-core
Core game engine for Raspberry Pi Pico
-
drone-stm32-map-periph-uart
STM32 peripheral mappings for Drone, an Embedded Operating System
-
mcp3424
Async Rust driver for the MCP3422/3/4 ADC
-
ublox-cellular-rs
Driver crate for u-blox cellular devices, implementation follows 'UBX-13002752 - R65'
-
jiminy-multisig
M-of-N multi-signer threshold checks for Jiminy. Zero-copy, no_std, no_alloc, BPF-safe.
-
kiibohd-usb
Kiibohd USB HID Interface
-
drone-stm32-map-periph-adc
STM32 peripheral mappings for Drone, an Embedded Operating System
-
lpc550x
Register mappings for the NXP LPC550x/LPC55S0x family of Cortex-M33 microcontrollers
-
rustmeter-beacon-target
Target side library for rustmeter-beacon
-
embedded-websocket-embedded-io
A fork of the embedded-websockets crate that uses embedded-io-async for async IO
-
hooker
a helper for hooking functions in x64
-
robokit
Build custom firmware for simple robotic automation
-
pio-parser
Raspberry Silicon PIO asm parser
-
dbc-codegen-cli
CLI for CAN DBC codegen
-
variegated-ads124s08
Async driver for the Texas Instruments ADS124S08 24-bit precision ADC
-
jiminy-lending
Lending protocol primitives for Jiminy: collateralization ratios, health checks, liquidation math, interest calculations. Zero-copy, no_std, no_alloc, BPF-safe.
-
edc2svd
Convert register description from the EDC format to the SVD format
-
embedded-nal-tcpextensions
Extensions to embedded-nal's TCP parts around the more precise use of the stack's buffers
-
drone-stm32-map-periph-i2c
STM32 peripheral mappings for Drone, an Embedded Operating System
-
r3_port_riscv
RISC-V port for the R3-OS original kernel
-
ublox-short-range-rs
Driver crate for u-blox short range devices, implementation follows 'UBX-14044127 - R40'
-
kll-compiler
KLL (Keyboard Layout Language) Compiler - Rust Edition
-
jiminy-distribute
Dust-safe proportional distribution helpers for Jiminy: N-way splits and fee extraction. Zero-copy, no_std, no_alloc, BPF-safe.
-
jiminy-vesting
Vesting schedule helpers for Jiminy: linear+cliff, stepped, periodic unlock, claimable calculations. Zero-copy, no_std, no_alloc, BPF-safe.
-
nstr
A no_std, no_alloc, embedded-friendly string library
-
bossa
Rust cxx wrapper around BOSSA SAM-BA library
-
drogue-tls
TLS 1.3 client with no_std support and no allocator
-
microflow
A robust and efficient TinyML inference engine
-
heapless_matrix
efficient implementation of a matrix data structure in Rust. It offers functionality for creating, manipulating, and performing operations on matrices, such as transposition, summation, and multiplication.
-
teensy4-panic
Panic handler for the Teensy 4. Part of the teensy4-rs project
-
trace-recorder-parser
parse Percepio's TraceRecorder data
-
usbpd-traits
USB-PD library traits
-
imxrt1060evk-fcb
FlexSPI configuration block for NXP's IMXRT1060EVK
-
rkrga
Rockchip RGA bindings for Rust
-
opcua-types
OPC UA types and constants
-
tfmicro
Rust bindings of TensorFlow Lite for Microcontrollers
-
mcumgr-smp
smp protocol for microcontrollers in pure rust
-
e310x-hal
HAL for the E310x family of microcontrollers
-
libosdp-sys
Sys crate for https://github.com/goToMain/libosdp
-
embedded-nrf24l01
A driver for NRF24L01(+) transceivers on embedded-hal platforms
-
ag-lcd
port of the LiquidCrystal arduino library
-
uf-sbus
A
no_stdRust library for parsing the SBUS protocol, designed for embedded environments -
ruspiro-i2c
Raspberry Pi - I²C bus interface implementation
-
mcp23017
driver for the MCP23017 (16-Bit I2C I/O Expander with Serial Interface)
-
mtb_pac_psoc6_04
Peripheral Access Crate for Infineon CY8C6xx4 PSOC™ 6 microcontrollers
-
ublox-sockets
Common sockets layer for host-based ublox devices
-
libgreat
Pure rust implementation of Great Scott Gadgets' libgreat communications protocol
-
epd
Drivers for EPD(E-Paper Displays), WIP
-
srad-app
Sparkplug Application SDK
-
espforge_esp32metadata
Embedded examples for espforge
-
hyperlit-model
A software documentation tool documentation embedded in source files - model crate
-
r3_port_arm
Armv7-A port for the R3-OS original kernel
-
embassy-dht
interface for interacting with DHT1X and DHT2X temperature and humidity sensors using the Embassy framework
-
mtb_pac_psoc6_02
Peripheral Access Crate for Infineon CY8C6xx8 and CY8C6xxA PSOC™ 6 microcontrollers
-
esp32s3-hal
HAL for ESP32-S3 microcontrollers
-
lps22hb
A platform agnostic driver to interface with LPS22HB pressure sensor module
-
avra-rs
Assembler for Microchip AVR Microcontroller family (similar to Atmel)
-
aps490_pfpu2_mini
Control software for PFPU2 automated brain detection system
-
ra6t1-pac
Peripheral Access Crate (PAC) for R7FAA6T1
-
esp32s2-hal
HAL for ESP32-S2 microcontrollers
-
klaptik
Experimental UI rendering framework for LCD/OLED displays
-
pldm
Platform Level Data Model (PLDM) base types and functions
-
embedded_commands_rs
Lightweight, embeddable command interpreter for Rust
-
gmqtt
A no_std, no_alloc MQTTv5 packet parsing library for embedded devices
-
usbd-ctaphid
usb-device driver for CTAPHID
-
embedded-sgp30
Platform-agnostic Rust driver for the SGP30 gas sensor for indoor air quality applications
-
ch56x
Device support crates for CH56X devices
-
apa102-spi
Driver for writing to APA102 (DotStar) and SK9822 LEDs over SPI
-
st7789-driver
ST7789 TFT LCD driver with embedded-graphics support
-
SKEAZN642
Device support crate for KEAZN64 devices
-
hdc302x-async
An embedded-hal-async driver for the HDC302x(-Q1) low-power humidity and temperature digital sensor
-
figments-sample-shaders
Sample graphics shaders for usage with Figments
-
nimbi-protocol
defining the nimbi-protocol used to communicate with microcontrollers
-
rlvgl-widgets
A modular, idiomatic Rust reimplementation of the LVGL graphics library for embedded and simulator use
-
rlvgl-bsps-stm
BSP files for STM32 Demo, Nucleo, and Discovery boards per vendor .ioc files
-
display-driver-mipidcs
MIPI DCS consts and functions for display-drivers
-
embedded-platform
Holistic embedded device support in a batteries-included manner
-
ruvix-boot
RVF boot loading for RuVix Cognition Kernel (ADR-087)
-
littlefs2-sys
Low-level bindings to littlefs
-
riscv-rt
Minimal runtime / startup for RISC-V CPU's
-
si4703
Platform-agnostic Rust driver for the Si4703 and Si4702 FM radio turners (receivers)
-
embedded-can-embassy-stm32
embassy-stm32 CAN adapters implementing embedded-can-interface traits
-
brotli-decompressor
brotli decompressor that with an interface avoiding the rust stdlib. This makes it suitable for embedded devices and kernels. It is designed with a pluggable allocator so that the standard…
-
oreboot/oreboot-cpu
oreboot is a fork of coreboot, with C removed, written in Rust
-
vmu-rt1170-fcb
FlexSPI configuration block for NXP's VMU RT1170 Drone Control Board
-
rainmaker
ESP RainMaker Agent
-
endbyte
A no_std compatible rust library for handling byte order conversions between different endianness formats
-
microscpi-common
Shared data types for the microscpi crates
-
lsm303c
A platform agnostic driver to interface with the LSM303C (accelerometer + compass)
-
embedded-drivers
Platform-agnostic Rust drivers for BME280/BMP280/BMP180, LM75, PMSx003
-
async-debounce
Debounce using embedded-hal and embedded-hal-async traits and embassy-time
-
rn4870
A platform agnostic driver for the RN4870 BLE module
-
kiibohd-hall-effect
Analysis crate for intepreting hall-effect keyboard switches (e.g. Silo Switches)
-
usbd-ccid
usb-device driver for CCID
-
stm32f429
Peripheral access API for STM32F429 microcontrollers
-
esp-embassy-wifihelper
helper library to make it easier to connect to wifi with esp-embassy
-
nrf52832-hal
HAL for nRF52832 microcontrollers
-
avr-vm
VM with JIT-compiler for ATMega32
-
hybrid_phi
High-accuracy φ-based hybrid approximation method
-
embedded-term
Terminal emulator on embedded-graphics
-
lps25hb
A platform agnostic driver to interface with LPS25HB pressure sensor module
-
axs5106l
A no_std Rust driver for the AXS5106L capacitive touch controller
-
embedded-plots
Heapless plotting library for embedded targets based on embedded-graphics crate
-
cargo-n64
Cargo subcommand to build Nintendo 64 ROMs
-
no_std_tetris
A flexible Tetris implementation for no_std and standard environments
-
plic
Provide structs and methods to operate riscv plic device
-
modio-logger-db
modio-logger Dbus service
-
channel-bridge
Blocking and async Sender and Receiver traits and implementations
-
probe-rs-mi
The probe-rs machine interface for computers interfacing probe-rs
-
va108xx-embassy
Embassy-rs support for the Vorago VA108xx family of microcontrollers
-
bgt60trxx
An async and no_std library for the XENSIV™ BGT60TRxx 60 GHz FMCW radar sensors from Infineon
-
rv64emu
A riscv64 emulator written in rust,it can run on Linux, Windows and MacOS. Even on the embedded device, such as
ESP32andSTM32which support Embeded RUST -
ember_os
OS kernel implemented in rust, which has referenced https://os.phil-opp.com/
-
rn2xx3
Rust driver for Microchip RN2483 and RN2903 LoRaWAN modules. [WIP]
-
kpal
An extensible and RESTful control system for physical computing
-
helgoboss-midi
Interfaces, data structures and utilities for dealing with MIDI messages according to the MIDI 1.0 specification
-
breakwater-parser
Parses Pixelflut commands as fast as possible
-
ch32l1
Device support crates for CH32L1 devices
-
embedded-midi
embedded hal uart to send and receive midi
-
fake-log
A fake logging implementation with the same interface as log crate but with no-op implementation for embedded scenarios
-
ch643
Device support crates for CH643 devices
-
usbd-hid-descriptors
Low-level, wire-format enums/bitfields used in HID descriptors
-
mb2-wukong-expansion
Board crate for Elecfreaks Wukong Extension for the BBC micro:bit v2
-
stm32f4
Device support crates for STM32F4 devices
-
himpi-sys
Hi35XX MPI API for Rust unsafe bindings
-
cpclib-basm
z80 assembler relying on cpclib-asm
-
async-button
Async button handling crate for no_std environments
-
wasm-embedded-rt
Runtime for embedded-wasm applications
-
pmw3901-ehal
PMW3901 optical flow driver for embedded-hal no_std applications
-
ns16550a
UART driver
-
zerocopy
makes zero-cost memory manipulation effortless. We write "unsafe" so you don't have to.
-
lm4f120
A set of drivers for writing bare-metal code for the Texas Instruments LM4F120
-
lpc11xx-async-hal
Asynchronous HAL for the NXP LPC111x/LPC11Cxx/LPC11xxL/LPC11xxXL family of Cortex-M0 microcontrollers
-
serial-sensors-proto
wire format for transmitting MEMS sensor data and friends
-
mtb_pac_psoc_c3
Peripheral Access Crate for Infineon PSOC™ Control C3 microcontrollers
-
embedded-executor
Embedded systems-friendly
Futuresexecutor -
cat24c32-rs
Platform-agnostic Rust driver for CAT24C32 EEPROM Serial 32Kb I2C devices
-
cc2650
Device support for TI CC2650 microcontrollers
-
libmctp
MCTP (Management Component Transport Protocol) implementation for Rust
-
queue-queue
A priority queue implementation based on Rust's BinaryHeap
-
sram23x
Platform-agnostic Rust driver for the 23xx series serial SPI SRAMs
-
blue_hal
Embedded Hardware Abstraction Layer
-
lp5018
no_std driver for the lp5018 i2c LED driver
-
loadstone
Portable secure bootloader for Cortex-M MCUs
-
st7567s
Driver for the ST7567S LCD controller
-
rtt-print
Mini footprint RTT print lib, only up channel
-
qtest-stm32f4nucleo
QTest abstractions for STM32F4 Nucleo boards
-
embassy-hal-internal
Internal implementation details for Embassy HALs. DO NOT USE DIRECTLY.
-
oggopus-embedded
Parsing of oggopus files on embedded device flash
-
ds3502
Driver for the Analog Devices Inc./Maxim Integrated DS3502 digital potentiometer
-
freertos_rs
Rust interface for the FreeRTOS embedded operating system
-
stm32wb-hal
Hardware abstraction layer for the STM32WB55 chips
-
drogue-esp8266
Networking stack for ESP8266 Wifi offload board
-
spicat
Full-duplex SPI transactions from the command line
-
axp173
Device-agnostic X-Powers AXP173 power management IC driver
-
defmt-parser
Parsing library for defmt format strings
-
drone-stm32
Drone for STM32
-
s32k144
Peripheral access API for NXP S32K144 microcontrollers (generated using svd2rust)
-
scpi-contrib
SCPI/IEEE488.2 contrib library
-
lpc55s6x-hal
Hardware Abstraction Layer (HAL) for the NXP LPC55S6x ARM Cortex-33 microcontrollers
-
rp2040-monotonic
RTIC Monotonic implementation based on RP2040's Timer peripheral
-
tmp451
Platform-agnostic Rust driver for the TMP451 remote and local temperature sensor
-
postform_persist
Decodes persistent logs for Postform, an efficient logging framework for mcu's
-
drone-stm32-map-pieces-9
STM32 peripheral mappings for Drone, an Embedded Operating System
-
canopeners
CANOpen client library
-
keystone-standalone
Standalone high-level bindings for Keystone assembler with embedded Keystone
-
drone-svd
CMSIS-SVD parser for Drone, an Embedded Operating System
-
wave_forms
no std wave forms
-
sk6812_rpi
SK6812RGBW library for RaspberryPi
-
gametank
Hardware abstraction layer for the GameTank console
-
r7fa4m1ab-pac
A PAC generated by SVD2Rust for the Renesas R7FA4M1AB in the Renesas RA4M1 family of Microcontrollers
-
ruspiro-allocator
lightweight heap memory allocator for Raspberry Pi baremetal environments
-
drs-0x01
Easily communicate with Dongbu Robot servomotors Herkulex DRS 0101 and DRS 0201
-
imxrt-log
Logging extensions for i.MX RT processors
-
udatatable
creating data tables in an embedded no_std environment without an allocator
-
stm32f3xx-hal-v2
Peripheral access API for STM32F3 series microcontrollers
-
tinywake
A minimal, no_std-compatible waker implementation for Cortex-M async executors
-
a7105
Rust embedded-hal driver for the A7105 2.4GHz FSK/GFSK Transceiver
-
lr11xx
LR1110/LR1120/LR1121 driver
-
max3263x
svd2rust generated peripheral crate for the max3263x
-
kiibohd-keyscanning
Kiibohd gpio keyscanning module for momentary push button switches (keyboards)
-
minimult_cortex-m
A minimal multitask library, or RTOS, for Cortex-M microcontrollers
-
mtb_pac_psoc6_01
Peripheral Access Crate for Infineon CY8C6xx6 and CY8C6xx7 PSOC™ 6 microcontrollers
-
fast_rands
Non-cryptographically, but quite fast, RNG implementations
-
m95320
Driver for STMicroelectronics M95320 32-Kbit serial SPI bus EEPROM
-
rp2040-rom
Access to Raspberry Pi RP2040 ROM functions from Rust
-
freemdu
Communicate with Miele appliances via their proprietary diagnostic interface
-
afe4404
driver for Rust embedded-hal
-
ufmt-write
μfmt’suWritetrait -
bitutils
Bitfield macro and utilities
-
ape-fatfs
versitile FAT library for embedded systems
-
qingke
Low level access to WCH's QingKe RISC-V processors
-
utrace
Instrumentation-based profiling library for embedded targets with async support
-
hd44780-ntb
A non-text buffer embedded hal driver for hd44780 like LCD display controllers
-
hyperlit-base
A software documentation tool documentation embedded in source files - base crate
-
phidget-sys
Low-level, unsafe, Rust wrapper for the phidget22 library
-
embedded-png
PNG rendering with embedded-graphics
-
light-control
mqtt light control
-
ellie_parser
Parser for ellie language
-
core-json-embedded-io
embedded-iosupport forcore-json -
bindeps-simple
Boot kernel code with mmu
-
sn3218-hal
Embedded Rust driver for SN3218 18-channel LED controller with gamma correction
-
juggle
Async task switching for cooperative multitasking in single thread environments with no_std support
-
probe-rs-t2rust
A collection of ARM chips for the
probe-rscrate -
as1115
Rust driver for ams AS1115 LED Driver IC
-
veml7700
Platform-agnostic Rust driver for the VEML7700 High Accuracy Ambient Light Sensor
-
stm32f3-copterust
Device support crates for STM32F3 devices
-
libpower
containing algorithms commonly used in power electronics systems, targeted for use in embedded systems
-
tm4c129x-hal
HAL for the TM4C129x family of microcontrollers
-
lpc11uxx
Register mappings for the NXP LPC11Uxx family of ARM Cortex-M0+ microcontrollers
-
cd74hc4067
A platform agnostic driver to interface with CD74HC4067
-
ds2484
A no-std driver implementation of the OneWire traits from embedded-onewire for the Analog Devices DS2484 I2C to 1-Wire bridge
-
tiny-led-matrix
direct control of a small monochrome LED display
-
bh1730fvc
no-std driver for the BH1730FVC ambient light sensor
-
libgtr
receiving data from the PhotonFirst GTR-1001 fiber interrogator
-
sn3193
Driver for SN3193 3-Channel Fun LED Driver
-
lp586x
matrix LED driver (supports LP5860, LP5861, LP5862, LP5864, LP5868)
-
f3
Board Support Crate for the STM32F3DISCOVERY
-
nuttx-embedded-hal
Rust Embedded HAL for Apache NuttX RTOS
-
r3_portkit
writing a port of R3
-
adacore-zynqmp
Support for the AMD Zynq UltraScale+ MPSoC
-
ufmt-utils
μfmtutilities -
hk32f0301mxxc-pac
HK32F0301MxxC PAC, Generate by Chiptool
-
lsm6dso
A platform-agnostic driver for the LSM6DSO 6-DoF Accel + Gyro IMU
-
esp-hub75
driver for HUB75 LED matrix displays on ESP32 microcontrollers
-
coap-zero
CoAP protocol implementation for no_std without alloc
-
stmpe1600
Platform-agnostic Rust driver for the STMPE1600 I/O expander
-
rbd_dimmer
Rewrite RBDDimmer for Rust. Work only on ESP32
-
ltr-559
LITEON LTR-559 ligth and proximity sensor
-
mpfs-pac
Peripheral Access Crate for PolarFire SoC
-
drone-stm32-map-pieces
STM32 peripheral mappings for Drone, an Embedded Operating System
-
mtb_pac_psoc6_03
Peripheral Access Crate for Infineon CY8C6xx5 PSOC™ 6 microcontrollers
-
activity
Discord activities in Rust
-
mp2667
Platform agnostic Rust driver for the MP2667, highly integrated, single-cell, Li-ion/Li-polymer battery charger IC
-
nrf24l01-commands
Register bitfields and commands for the nRF24L01+
-
nmea2000
An NMEA 2000 library
-
ws2811-spi
SPI-based driver for ws2811 chips
-
rpk-config
RPK configuration tool
-
bmx160
driver for the Bosch BMX160 IMU sensor
-
async-safe-defer
Minimal async- and sync-capable
defercrate -
arm-dcc
Debug Communication Channel (DCC) API
-
lsm303dlhc-registers
A typed map of the STMicroelectronics LSM303DLHC E-Compass registers
-
thermostat-eem
Firmware for the Sinara Thermostat-EEM temperature controller
-
panic-msp430
Halting panic implementation for MSP430 microcontrollers
-
r3_kernel
The R3-OS original kernel
-
uart_xilinx
provide a struct with many methods to operate uarts in Xilinx's FPGA: XPS UART Lite, AXI UART Lite
-
postform_serial
Decodes persistent logs for Postform, an efficient logging framework for mcu's
-
lilos-handoff
Synchronous rendezvous structure for lilos
-
nostd-printf
containing an embedded version of printf which can be used in
no_stdprojects which aren’t linked tolibc -
pilkki
Flasher tool for Kampela project
-
groundhog
A rolling timer abstraction
-
uart8250
provide a struct with many methods to operate uart 8250
-
p256-cortex-m4
Idiomatic, misuse-resistent bindings to P256-Cortex-M4
-
embassy-rp
Embassy Hardware Abstraction Layer (HAL) for the Raspberry Pi RP2040 or RP235x microcontroller
-
drone
CLI utility for Drone, an Embedded Operating System
-
dps310
A platform agnostic driver to interface with the DPS310 barometric pressure & temp sensor through I2C
-
edge-frame
Yew & Wasm-based user interface for microcontrollers
-
embedded-spi
Rust embedded driver helper package (new releases at spi-hal)
-
adafruit-lcd-backpack
Unofficial driver for the Adafruit I2C LCD backpack
-
drone-stm32-map-pieces-5
STM32 peripheral mappings for Drone, an Embedded Operating System
-
drone-stm32-map-pieces-6
STM32 peripheral mappings for Drone, an Embedded Operating System
-
drone-stm32-map-pieces-12
STM32 peripheral mappings for Drone, an Embedded Operating System
-
esp32c2-hal
HAL for ESP32-C2 microcontrollers
-
analog-multiplexer
A platform agnostic driver for 4051 and 4067 series analog multiplexers targetting the Rust embedded-hal
-
emcyphal-encoding
Transfer encoding and decoding for Emcyphal network stack
-
noproto
no-std, no-alloc protocol buffers implementation for embedded systems
-
mk20d7-hal
HAL for the MK20D7 family of microcontrollers
-
rs-matter
Native Rust implementation of the Matter (Smart-Home) ecosystem
-
stemma_soil_moisture_sensor
A pure generic I2C crate for the Adafruit STEMMA soil moisture sensor
-
sx127x_lora
A platform-agnostic driver for Semtech SX1276/77/78/79 based boards
-
dw3xxx
An experimental driver crate for the DW3XXX series of UWB ranging modules
-
avr_delay
AVR providing software-based delay functions
-
embedded-sht3x
Platform-agnostic Rust driver for the SHT3x temperature and humidity sensors
-
embytes-buffer-async
A async concurrent buffer implementation fro no_std devices
-
esp-csi-rs
ESP CSI Driver for Rust
-
esp_idf_dev_sys
Bindings for esp-idf (Espressif's IoT Development Framework)
-
drone-ctypes
Platform-specific C types for Drone apps
-
embedded-fans
A HAL for various fans
-
display-driver-spi
SPI bus implementation for display-driver
-
esp32-hal
HAL for ESP32 microcontrollers
-
ovl-atsamx7x-hal
HAL and peripheral access API for ATSAME70 microcontrollers
-
hifive1
Board support crate for HiFive1 and LoFive boards
-
lpc55-rtic
Real-Time Interrupt-driven Concurrency (RTIC): a concurrency framework for building real-time systems
-
d1-mini
A Board Support Package (BSP) which provides a type-safe API for the WEMOS/LOLIN D1 mini
-
fp
Fast & safe fixed-point arithmetic via compile-time checks
-
lcd1604_gpio
Abstraction layer for interfacing between Raspberry Pi and 16x2 or 16x4 LCD display modules through GPIO
-
krab
minimalistic interpreted programming language written in Rust
-
lazy_mut
Alternative to LazyLock<Mutex<T>>
-
pinlist
a safe and easy version of intrusive linked lists
-
mips-mcu
Low level access to MIPS MCU cores
-
tg-rcore-tutorial-ch5-Charlie-exercise
Chapter 5 of rCore Tutorial: Process management with fork, exec and wait syscalls
-
st7735-lcd-doublebuffering
Double-Buffered ST7735 TFT LCD driver with embedded-graphics support
-
oorandom
A tiny, robust PRNG implementation
-
yaxpeax-avr
AVR instruction set decoder for yaxpeax
-
libbaremetal-unifont
accessing GNU Unifont glyphs in bare-metal environments
-
thumb2-stack-size
estimates stack space requirements of thumb2 programs
-
mpu6050-async
Platform agnostic async driver for MPU6050 6-axis IMU
-
drogue-bme680
interface with the BME680 environmental sensor
-
bluenrg
Interface to ST Micro BlueNRG Bluetooth radios
-
figments-esp32-idf-examples
Examples and demos of using Figments on the ESP32 with the IDF SDK
-
raw-slicee
Generic low-level raw slice types
-
ssd1309
display-interfacecompatible driver for the SSD1309 OLED display controller -
stm32l4-stm32hal
(Custom for stm32-hal) Device support crates for STM32L4 devices
-
blinq
An embedded-hal blinking queue
-
oxide-spark
enables sensor sampling & LED strips control over Wifi/MQTT on ESP Rust Board
-
lsm6dsox
Platform-agnostic embedded-hal driver for the ST LSM6DSOX iNEMO inertial module
-
embedded-graphics-sparklines
Sparklines for rust's embedded-graphics
-
kiibohd-hall-effect-keyscanning
Hall Effect keyscanning for strobed matrices
-
kiibohd-hid-io
HID-IO protocol implementation for the C kiibohd firmware
-
aarch64_sysreg
Address translation of system registers
-
tg-rcore-tutorial-ch1-T3L1
ch1-T3L1: Chapter 1 of rCore Tutorial: A minimal bare-metal application running in RISC-V S-mode
-
ina233-rs
Platform-agnostic Rust driver for the INA233 High-Side or Low-Side Measurement, Bidirectional Current and Power Monitor
-
panic-itm
Log panic messages using the ITM (Instrumentation Trace Macrocell)
-
sensor-temp-humidity-sht40
Driver for SHT40 temperature and humidity sensor
-
metrics-controller
Metrics Controller is a project to collect metrics for Mozilla IOT projects
-
exo_task
A lightweight async task executor for bare metal (or any) systems
-
mini-rxtx
serialization and communications for embedded
-
pcd8544
communicate and write to PCD8544 using embedded_hal as abstraction layer. WIP
-
vhost-device-gpio
vhost gpio backend device
-
keyberon
Parse command line argument by defining a struct
-
weather-utils
Set of common and useful weather-related computations
-
cst226-rs
driver for the CST226 touch controllers
-
nostd_async
An asyncronous runtime for a single-threaded no_std environment
-
ds18b20
temperature sensor driver for embedded-hal
-
embedded-aim-motor
Modbus RTU interface library for AIM series motors (e.g. 57AIM30) for embedded Rust.
-
nrf52840-dk-bsp
BSP for the nRF52840-DK
-
tinyrlibc
Tiny, incomplete C library for bare-metal targets, written in Stable (but Unsafe) Rust
-
rusty-os
kernel for embedded systems written in Rust
-
simink
是一个嵌入式全系统模拟器, 提供大量的板卡模拟. simink 支持 Windows, macOS and Linux
-
aemics-stm32g4xx-hal
Hardware abstraction layer (HAL) for STM32G473
-
digital_test_runner
Parse and run tests used in hnemann's Digital logic designer and circuit simulator
-
lora-e5-bsp
Board support package for the seeed LoRa-E5 development kit
-
gd32f3x0-pac
Peripheral access API for GD32F3x0 chips (generated using svd2rust)
-
embedded-io-cursor
A no_std-compatible Cursor implementation designed for use with embedded-io
-
tg-rcore-tutorial-ch4-T1L2
Chapter 4 T1L2 of rCore Tutorial: Address space management with SV39 virtual memory
-
kll-hid
USB HID enum mapping for kll-core
-
ironplc-plc2x
Compiler front-end for ironplc
-
tudelft-serial-upload
automatically upload to quadrupel drone boards
-
lsm6dsv80x-rs
Driver for the LSM6DSV80X IMU, featuring a low-g (±16g) and high-g (±80g) accelerometer, gyroscope, and integrated FSM/MLC modules for AI and IoT applications
-
i2c-write-iter
Exports iterator based parallels to embedded-hal & embedded-hal-async for Write & WriteRead
-
pl011-uart
A driver for the Arm PL011 UART
-
embedded-runtime-nrf52840
A tiny async runtime for embedded devices, with predefined runtime hooks for the nrf52840
-
usb-host
Traits for USB host driver development
-
mcumeter
Firmware for my MCU power meter based upon STM32F042 and INA260
-
embassy-socket
tcp client/server callback
-
musb-readconf
read hardware configuration of a Mentor Graphics MUSB IP core
-
emcyphal-driver
Driver interface for Emcyphal network stack
-
nrf24l01
A pure Rust user space driver for NRF24L01(+) transceivers on Linux
-
axvirtio-common
Common types, traits, and utilities for VirtIO device implementations
-
fancp
Types and methods for parsing/ creating Fan Control Protocol messages
-
esp-idf-unda
Embedded neural network forward feeding for precompiled models created by the unda crate
-
rpi_ws281x-sys
Bindings to rpi_ws281x C library
-
embassy-time-queue-driver
Timer queue driver trait for embassy-time
-
unsize
A stable alternative to CoerceUnsize
-
tmp1075
Platform-independent Rust driver for TMP1075 digital temperature sensor
-
drone-nrf-map-svd
Nordic Semi nRFx SVD to bindings for Drone, an Embedded Operating System
-
panic-serial
Print panics on serial port
-
esp32c6-hal
HAL for ESP32-C6 microcontrollers
-
libquickjs-dtp-sys
QuickJS Javascript Engine FFI bindings (with improved date parser)
-
axp20x
Rust driver for axp20x Power Management Unit
-
stm32wb-stm32hal
(Custom for stm32-hal) Device support crates for STM32WB devices
-
stm32wb-hci
Bluetooth HCI for the STM32WB family
-
ft6336u-dd
A driver for the FT6336U capacitive touch controller (uses device-driver crate)
-
lpc546xx-hal
Peripheral access API for LPC546xx series microcontrollers
-
ruspiro-boot
Bare metal boot strapper code for the Raspberry Pi 3 to conviniently start a custom kernel within the Rust environment without the need to deal with all the initial setup like stack pointers…
-
time-series-filter
Filters such as exponential weighted moving average (IIR LPF)
-
arm7tdmi_aeabi
proc-macro to put aeabi functions into your code
-
herkulex-drs-0x01-stm32f1xx
A driver for servomotors Herkulex DRS-0101 and DRS-0201 using USART on stm32f1xx
-
ssd1322
SPI driver for the SSD1322 OLED display controller
-
egls
Embedded-System Graphics Library for Rust bindings
-
iso7816_tx
ISO7816 Smart Card T=1 Transmission protocol
-
dot15d4-frame
Frame parsing and building for the dot15d4 crate
-
zencan-client
communicating with CANOpen devices on a CAN bus
-
saks
Swiss Army Knife Shield for Raspberry Pi
-
taskette-cortex-m
Multitasking library for embedded Rust (Cortex-M specific part)
-
levarint64
Little-Endian VARiable-length INTeger codec, compatible with no_std
-
rtt-logger
An rtt-target logger implementation for Cortex-M embedded platforms
-
esptools
(esptool, espsecure and espefuse) bundler
-
rm690b0-rs
driver for the RM690B0 display controller
-
timed-signal
Helper crate for generating time-dependent signals
-
aw-fel
dealing with Allwinner devices in FEL mode, in pure Rust
-
pldm-fw-cli
Platform Level Data Model (PLDM) for Firmware utilities
-
ht32-usbd
'usb-device' implementation for HT32 microcontrollers
-
max112x
Driver for the 24-bit MAX11214 and similar ADCs
-
nucleo-wl55jc-bsp
Board support package for the NUCLEO-WL55JC
-
embedded-fans-async
A HAL for various fans (async)
-
nisty
NIST P256 signatures for Cortex-M4 microcontrollers
-
hyperlit-backend
A software documentation tool documentation embedded in source files - backend crate
-
mlx9064x
interfacing with Melexis MLX9064* thermal cameras
-
embytes-buffer
embedded bytes buffer
-
pdf417
No-std PDF417 encoder
-
edge-captive
Async +
no_std+ no-alloc implementation of a Captive Portal DNS -
wyp-tg-rcore-tutorial-ch1-clock
Chapter 1 extended: A minimal kernel crate with clock interrupt support for learning RISC-V interrupt mechanism
-
embassy-net-driver-channel
High-level channel-based driver for the
embassy-netasync TCP/IP network stack -
n64-pac
low-level CPU and register abstractions for the Nintendo 64 console
-
emcell
Reserve flash memory regions to safely keep multiple binary and library binaries (cells) on a microcontroller. The cells can call functions from other cells.
-
rlvgl-platform
A modular, idiomatic Rust reimplementation of the LVGL graphics library for embedded and simulator use
-
utrace_parser
Instrumentation-based profiling library for embedded targets with async support
-
mci
MultiMedia Card Interface (SD, MMC, SDIO) implementation using MCI
-
teensy4-pins
Helpers for configuring and using a Teensy 4's pins. Part of the teensy4-rs project
-
mm32f5
Peripheral access API for MM32F5270 and MM32F5280 microcontrollers
-
lc709203
Platform-agnostic Rust driver for the LC709302 battery gauge sensor
-
zg-co2
ZyAura CO₂ sensor protocol implementation
-
gpio
Fast GPIO interfaces for Linux
-
opcua-console-logging
Logging to the console for OPC UA used by client and server
-
canadensis_core
A Cyphal implementation: Common definitions
-
ft6x06
A platform agnostic driver for the FT6x06 type touch panel controller used on STM32F4 series board
-
tg-rcore-tutorial-ch1-virtioblk
Chapter 1 of rCore Tutorial: A minimal bare-metal application running in RISC-V S-mode
-
imxrt1062-fcb-gen
Generate Firmware Configuration Block (FCB) for iMXRT1062 processors in Rust build scripts. This crate is unmaintained. Consider using imxrt-boot-gen…
-
simavr-section
Add simavr-compatible metadata to your binary
-
safe-ftdi
A safe wrapper around libftdi
-
max116xx-10bit
Driver crate for the MAX116xx 10-bit ADC devices
-
hf2-cli
CLI for Microsoft HID Flashing Library for UF2 Bootloaders
-
hk32c030xx-pac
HK32C030xx PAC, Generate by Chiptool
-
is25lp128f
Async no_std driver for ISSI IS25LP128F 128 Mbit SPI NOR flash
-
ellie_vm
Ellie VM for running Ellie ByteCode
-
copy-double-buffered
Concurrent copy for embedded-io-async
-
rustos
Writing an OS in Rust
-
aya-ufmt
A fork of
ufmttweaked to play nice with the eBPF kernel verifier -
arduino-run
A cargo runner for Arduino boards
-
rf24ble-rs
A fake BLE implementation for the nRF24L01
-
drone-config
Configuration for Drone, an Embedded Operating System
-
sh1108
display-interfacecompatible driver for the SH1108 OLED display controller -
ufmt_float
A rough implementation of a writer for f32 and f64 for ufmt
-
regmock-rs
Register mocking library to allow host unittests of embedded software, build on svd2pac
-
atsamd-usb-host
usb-host driver support for Atmel SAMD* microcontrollers
-
ruspiro-channel
Bare Metal Channel implementations for
no-stdenvironments, only requiring an allocator to be provided -
fel-cli
CLI tools for dealing with Allwinner devices in FEL mode, in pure Rust
-
rp-cvideo
Generate composite video on the Raspberry Pi microcontrollers
-
ssd1680
Driver for the SSD1680 e-Paper display (EPD) controller, for use with embedded-hal
-
max553x
Driver for the 12-bit MAX5532–MAX5535 DACs
-
fm24v10
f-ram embedded-hal-async driver
-
bmp085-180-rs
Driver for BMP085 & BMP180 sensors
-
pdm
Pulse Density Modulator
-
max31865
generic driver for the MAX31865 RTD to Digital converter
-
rpk-firmware
RPK Keyboard firmware
-
font_7seg
7セグメントLED風数字フォント
-
sorted-hlist
Type-level heterogeneous lists with compile-time intersection and sorting using typenum
-
cycle-menu
no-std compatible library to create a menu that can be cycled through and shown with custom input/output
-
ads129xx
Driver crate for the Texas Instruments ADS1292 24-bit 2-channel low-power analog front end for ECG applications
-
ch58x-hal
HAL for the CH583/CH582/CH581 RISC-V BLE microcotrollers from WCH
-
stockbook
1-bit image embedding at compile time
-
itla
ITLA (micro laser) non-blocking control library using embedded-hal
-
nstd_events
NSTD event handling crate
-
esp32h2-hal
HAL for ESP32-H2 microcontrollers
-
ostool
operating system development
-
ohos-raw-binding
OpenHarmony's raw binding for rust
-
scd30-interface
An I2C driver for the SCD30 sensor in Rust
-
system76_ecflash
Flashing and querying with System76 Embedded Controllers
-
pcf85063a
An embedded-hal driver for the pcf85063a RTC
-
arducam-mega
SPI driver for the Arducam Mega
-
percore
Safe per-CPU core mutable state on no_std platforms through exception masking
-
ruspiro-cache
Raspberry Pi cache maintenance operation API
-
senren
command-line LIDAR toolkit for robotics and prototyping, featuring fast monitoring, simulation, and real-time plotting. It supports both real and virtual LIDAR data, integrates seamlessly…
-
lufa-rs
Rust bindings and utility macros for the LUFA library
-
sm2335egh
Driver for the SM2335EGH LED controller found in the SwitchBot Color Bulb
-
testssl
Highlevel Bindings for TestSSL
-
spwm_generator
cli tool for genrate SPWM lookup tables
-
vl53l1x-simple
driver for the VL53l1X TOF ranging sensor
-
sht25
Rust driver for SHT25 temperature/humidity sensor
-
ht32f5xxxx
Device support crates for HT32F5XXXX devices
-
onerom-protocol
One ROM Protocol support
-
mos6502_assembler
DSL for MOS6502 assembly
-
openmv_h7_bsp
Board support crate for OpenMV H7 machine vision board
-
eeprom25aa02e48
Platform-agnostic Rust driver for the 25AA02E48 EEPROM
-
hts221
Interface to ST Micro HTS221 humidity and temperature sensor
-
kea-hal
HAL for NXP KEA devices
-
ralte32
Arithmetic Library Testing Environment for embedded RISC-V 32-bit
-
embedded-nal
A Network Abstraction Layer (NAL) for Embedded Systems
-
bhi160
driver for the Bosch Sensortec BHI160(B) smart sensors
-
rflow-chat
Text protocol for embedded apps
-
is31fl3743b
Bare-metal no_std driver for the Lumissil IS31FL3743B
-
tmledkey-hal-drv
HAL based driver for Titan Micro 7 segment LED controllers and key scanners
-
pac22
Device support crates for PAC22 devices
-
mecha-gpio-utils
Command-line utilities for interacting with GPIOs under Linux This wraps the
sysfs_gpiocrate in a form usable by both Rust applications or any other applications -
erdnuss-comms
A small RS-485 comms protocol
-
stk8ba58
Driver for the Sensortek STK8BA58 3-axis MEMS Accelerometer
-
is31fl3218
A rust-embedded driver for the Lumissil Microsystems IS31FL3218 LED driver
-
tmp1x2
Platform-agnostic Rust driver for the TMP102 and TMP112 digital temperature sensors
-
e-write-buffer
A no_std, const-generic,
core::fmt::Writeable buffer -
ksz8851snl
Low level register descriptions and driver for the KSZ8851SNL SPI Ethernet controller
-
ch572_pac
Peripheral access crate for the CH572 (WCH MCU)
-
mimxrt600-fcb
Flash Configuration Block for MIMXRT600 devices
-
lcd_i2c_rs
interfacing with I2C LCDs on the ESP32 using the ESP-IDF HAL
-
fomu-pac
svd2rust generated pac for the fomu
-
n32g4
Device support crate for N32G4 devices
-
pid-ctrl
A flexible PID controller
-
rsp-cli
CLI tool that converts escaped strings embedded in YAML ConfigMaps into properly formatted multi-line strings
-
cs43l22-embedded
A cs43l22 DAC driver using embedded-hal
-
cortex-m-asm
ASM intrinsics for Cortex-M CPUs
-
ergot-base
Eloquence in messaging
-
nrf52-hal-common
Common HAL for the nRF52 family of microcontrollers. More specific HAL crates also exist.
-
kobo
interacting with Kobo devices
-
fe_rtos
OS for Arm Cortex-M CPUs
-
simp_protocol
simplistic protocol to communicate over serial ports. It supports ack, automated escaping and unescaping of special bytes and checksum error detection.
-
ab1024-ega
An embedded-hal SPI driver for AB1024-EGA/AC057TC1 (as used in Inkplate 6 COLOR)
-
stm32f3xx-hal
Peripheral access API for STM32F3 series microcontrollers
-
pico-transform
ECS Transform module for the pico engine
-
embedded-nano-mesh-linux-examples
Lightweight mesh communication protocol for linux
-
privilege_level
Quick and simple access to the current privilege level of the CPU
-
pinetime-mynewt
Mynewt Bindings for PineTime Smart Watch
-
canadensis_write_crc
Calculates and writes Cyphal image CRC values
-
atsamrh707f18a
Peripheral access API for the ATSAMRH707F18A MCU from Microchip (generated using svd2rust 0.33.5)
-
vs1053
SPI driver for for the generic VS1053 Breakout by VLSI Solution
-
microbit
Board support crate for the BBC Micro:bit V1
-
heatshrink
A minimal implementation of the heatshrink compression algorithm for no_std environments
-
codde_protocol
Multi Communication protocol in heart of the C.O.D.D.E. Pi framework
-
esp32s3
Peripheral access crate for the ESP32-S3
-
drogue-http-client
An HTTP client for embedded devices, based on drogue-network
-
stm32f30x
Peripheral access API for STM32F30X microcontrollers
-
anachro-forth-core
A forth-inspired, bytecode-compiled scripting language for Anachro Powerbus
-
rp_sandbox_c
Testing project -- please ignore
-
ardaku
WASM Environment
-
embassy-task-watchdog
A robust, flexible watchdog management library for embedded systems that multiplexes multiple task watchdogs into a single hardware watchdog timer, preventing system lockups when tasks fail to respond
-
rp2040-multicore-per-cpu
Enable use of per-core static variables on rp2040
-
k1921vk035-pac
The peripheral access crate for k1921vk035
-
ra-fsp-sys
Rust raw bindings for Renesas RA Flexible Software Package (FSP)
-
pio-uart
A software UART implementation for the RP2040 using the PIO feature
-
cloudmqtt
A pure Rust MQTT client and server library
-
xmc1100-hal
Hardware Abstraction Layer (HAL) for the XMC1100 series of ARM Cortex-M+ microcontroller
-
txmodems
various MODEM file transfer protocols
-
oreboot/oreboot-soc
oreboot is a fork of coreboot, with C removed, written in Rust
-
ladybug
A small library for triggering a logic analyzer from program events
-
embedded-hal-sdmmc
A Hardware Abstraction Layer (HAL) for embedded SD/SDIO/eMMC peripherals
-
stm32f1xx-lal
LAL for the STM32F1xx family
-
imxrt-uart-panic
Panic handler for i.MX RT that reports to UART
-
framed
Send and receive data over lossy streams of bytes
-
bme68x-rust
interacting with Bosch BME68x chips over I2C and SPI
-
bmi160-esp32-minimal
Minimal BMI160 sensor driver for ESP32 using esp-hal
-
drone-nrf-map-periph-uarte
Nordic Semi nRFx peripheral mappings for Drone, an Embedded Operating System
-
l293x
Platform agnostic library for the L293 and L293D motor drivers using embedded-hal
-
rustsbi-jh7110
RustSBI implementation for the JH7110 SoC
-
ellie_fmt
Formatter for ellie
-
own_or_borrow
Unified references to owned or RefCell borrowed data
-
tlv320aic3204
Driver for the registers on a TLV320AIC3204 I²C Audio CODEC
-
perfect6502-sys
Bindings to perfect6502
-
as8510
An async no_std driver for the AS8510 SPI current and voltage sensor
-
kcheck-utils
Kernel configuration checking utility
-
adxl343
Platform-agnostic ADXL343 accelerometer driver which uses I2C via embedded-hal
-
pinetime-lvgl
LVGL Bindings for Mynewt on PineTime Smart Watch
-
pa-spl
A no-std embedded-hal I2C driver for the PCB Artists SPL module
-
c2a-bind-utils
C2Aのモジュールをbindgenするときのユーティリティ
-
gyuvl53l0x
driver for the VL53L0X (Time-of-Flight I2C laser-ranging module)
-
char_lcd_rgb_i2c
controlling RGB1602 LCD displays via MCP23017 I/O expanders
-
unifont-bitmap
Get bitmap data for GNU Unifont. Embedded in compressed form, light on memory.
-
adxl345_driver
Driver for Analog Device ADXL345/ADXL346 3-Axis Digital Accelerometer
-
mpfs-hal
Hardware Abstraction Layer for PolarFire SoC
-
taskette-utils
Multitasking library for embedded Rust (utility crate)
-
py32csdk-hal-sys
PY32 HAL bindings
-
scoped-mutex
An abstraction over closure-based mutexes
-
rudelblinken-filesystem
Minimalistic zero-copy flash filesystem optimized for embedded systemse
-
adafruit_nxp
Driver for Adafruit Precision NXP 9-DOF Breakout Board - FXOS8700 + FXAS21002 modules
-
adi-adxl355-async
An embedded-hal-async driver for the ADXL355 accelerometer
-
modbus_buffer
Circular buffer implementation tailored for Modbus communication in no_std environments
-
lks32mc03x_pac
Peripheral access crate for the LKS32MC03x MCU
-
littlefs-rust-core
Port of LittleFS to unsafe rust
-
mimxrt500-hal
HAL implementations for NXP i.MX RT500 series microcontrollers
-
axcpu
Privileged instruction and structure abstractions for various CPU architectures
-
tg-rcore-tutorial-driver
device drivers for tg-rcore-tutorial
-
why2025-badge-embedded-graphics
An embedded graphics driver for the WHY2025 badge
-
sam3-hal
HAL and PAC API for SAM3A, SAM3N, SAM3S, SAM3U, and SAM3X microcontrollers
-
cargo-minicov
Code coverage support for no_std and embedded programs
-
embedded-nal-async-xtra
Hosts a bunch of traits which are not yet available in the embedded-nal-async crate
-
embedded-trace
A Future tracing utility for embedded systems
-
hd44780-controller
HD44780 LCD controller with async/sync support for embedded-hal
-
simmer
A temperature unit library for Rust. It's intended to be minimal, embedded-aware, and easy to use!
-
teleprobe-meta
Embed teleprobe metadata into ELF binaries
-
air001-pac
Peripheral Access Crate for Air001 microcontroller
-
flex-dns
A no alloc no std DNS parser and serializer written in Rust
-
rust-mqtt
MQTT client for embedded and non-embedded environments
-
embedded-controls
Based on switch-hal library that allows to handle primitive controls(buttons, encoders and etc.)
-
stm32cubeprog-rs
Rust API for STM32CubeProgrammer
-
minitel-esp
Minitel integration for ESP32 board
-
mnemos-userspace
A tiny embedded operating system userspace library
-
ad7172
ADC driver
-
adp5360
An async embedded-hal driver for the ADP5360 Power Management IC
-
liboptic_edid
Parses EDIDs from raw bytes (in 100% Rust)
-
drogue-embedded-timer
Macro to shim heterogeneous HAL timers to embedded-time
-
da14531
Peripheral access crate for the DA14531 microcontroller
-
airfrog-util
General utilities and helpers for Airfrog
-
aclint
Provide structs and methods to operate riscv aclint device
-
oled-notifier
statistics for the ODROID-HC4 with OLED device
-
hardware-registers
Generic, embedded-friendly hardware registers support, including traits and types for understanding I2C registers
-
efm32hg309f64-pac
Peripheral Access Crate for EFM32HG309 series MCU from Silicon Labs
-
probe-rs-rtt
Host side implementation of the RTT (Real-Time Transfer) I/O protocol over probe-rs
-
sketchbook
Interactive visual applications in Rust
-
akafugu_twidisplay
A platform agnostic Rust driver for the Akafugu TWIDisplay
-
pavo-traits
Traits for the Pavo Framework
-
cw32f030-hal
使用svd2rust工具生成的项目,计划在此基础上编写可用的hal库(非官方)
-
rapidsync
Rapid & threadsafe embedded data stores
-
epd-spectra
Driver for Spectra EPDs from Pervasive Displays Inc
-
unmp-id
unmp
-
microasync
Very small async runner
-
embassy-drv2605l
Embassy-rs async driver for DRV2605L haptic driver
-
cmim
Move your data to interrupt context
-
light_bitmap
A minimal, fixed-size bitmap library written in pure Rust
-
core_ux
no_std implementation of the non-standard types u/i1..=63
-
microamp-tools
Build a μAMP application
-
cobs-acc
A COBS accumulator
-
gd32f4
Device support crates for GD32F4 devices
-
serial-settings
Embedded device settings management over serial terminal and flash
-
arrform
String formatting without memory allocator
-
edge-raw
Async +
no_std+ no-alloc implementation of IP and UDP packet creation and parsing -
tinylivecode
a tiny language for embedded live coding
-
potree-embed
Built
potreestatic files in arust-embedstruct so that they can be embedded into a Rust application -
mcxn947-pac
Peripherals Access Crate for NXP mcxn947
-
vl53l0x-simple
driver for the VL53l0X TOF ranging sensor
-
zinc64-sdl
Commodore 64 emulator app
-
bmm350
Platform agnostic Rust driver for the BMM350 Magnetometer
-
xtensa-lx-rt-proc-macros
Attributes re-exported in
xtensa-lx-rt -
array-utils
A no-std heapless set of array utils making use of const generics
-
minicbor-embedded-io
Async reader and writer types for minicbor
-
samd-timer
High-level API for the TC/TCC peripherals found on the Microchip SAM MCUs
-
hcs-12ss59t
Platform-agnostic embedded-hal driver for Samsung HCS-12SS59T VFD displays
-
embedded-storage-inmemory
An in-memory implementation of embedded-storage
-
senml-deser
serialization and deserialization using SenML specifications
-
negicon-protocol
Definitions and utility functions for the Negicon v3 communication protocol
-
w25
An embedded-hal driver for the W25 series
-
peripherals
Microcontroller peripherals definition and ergonomic access
-
noted
creating ELF notes
-
TBV-Rust-SDK
Rust SDK for the TBV application and CLI
-
max2034x
Driver crate for the MAX20343/MAX20344 family of buck/boost converters
-
anpp
Advanced Navigation Packet Protocol
-
debouncing
Debounce keys in an embedded context
-
embassy-agb
Embassy async support for Game Boy Advance development with agb
-
rumio
Control your MMIO and CPU registers without pain
-
defrag
safe and low overhead defragmenting memory manager for microcontrollers
-
arm_vcpu
Aarch64 VCPU implementation for Arceos Hypervisor
-
derive-mmio
A mechanism for making it easier to access MMIO peripherals
-
pac55xx-pac
Peripheral Access Crate (PAC) for PAC55XX
-
mh-z19
serial protocol for Winsen MH-Z19 / MH-Z19B / MH-Z14 CO2 sensors
-
tg-rcore-tutorial-games-ch4-tetris-kernel
Kernel support for game of ch4 of tg-rcore tutorial
-
bl702-hal
HAL for the Bouffalo Lab BL702 microcontroller family
-
st7735-async-low
Low-level async library for 4-wire serial ST7735
-
scoped-mutex-traits
An abstraction over closure-based mutexes
-
drive_74hc595
Drive for IC 74HC595 Shift Register
-
slh-dsa-rs
FIPS 205 (draft): Stateless Hash-Based Digital Signature Standard
-
dyn-smooth
Dynamic smoothing filter based on an algorithm by Andrew Simper
-
epicinium_keycode
A small utility crate for generating lossy unique ids encoded with base32
-
riscv-target
RISC-V target string manipulation utilities
-
ghostfat
Virtual FAT16 file system for embedded USB Mass Storage Device use
-
drone-nrf-map-pieces-8
Nordic Semi nRFx peripheral mappings for Drone, an Embedded Operating System
-
msp430g2230-pac
Peripheral Access Crate (PAC) for the msp430g2230, generated using msp430_svd and svd2rust
-
clint
CLosure INTerrupt handlers
-
stm32l4x6
Memory map for STM32L4x6 microcontrollers
-
st-mem-bank-macro
Simplifies memory state management for sensors with multiple memory banks by providing useful macros
-
push2_pong
Ableton Push2 Embedded-graphics display driver
-
seq
The module 'seq' provides the lightweight, generic sequence container 'Seq' for unmovable data and is embedded into the program during compile time
-
avr-std-stub
Contains simple implementations of required language items that
libstdnormally defines on other targets -
croftsoft
Re-export of com-croftsoft-* crates
-
starb
STAtic Ring Buffers
-
block_device
BlockDevice trait
-
sh1107-driver
I2C driver for the SH1107 display chip using embedded-hal
-
sfsm-base
Traits for the sfsm crate
-
embedded-qmp6988
Platform-agnostic Rust driver for the QMP6988 barometric pressure sensor
-
cntrlr
async embedded framework
-
jetgpio
Peripheral Abstraction Layer for Jetson Nano Devices
-
sb-rotary-encoder
Rotary encoder processor for embedded systems
-
doublebuf
Concurrent auto-swapping double buffer
-
baryuxn
Uxn stack machine as a no_std library
-
atomik
Generic Atomic type
-
gd32f3
Device support crates for GD32F3 devices
-
cstream
libc::FILEstreams ‘c streams’ -
cargo-dtc
Devicetree Compiler packaged for building with cargo
-
tlv320dac3100
A driver for Texas Instruments TLV320DAC3100 module
-
drone-riscv
RISC-V platform crate for Drone, an Embedded Operating System
-
external-memory-tools
HAL to keep data in memory that could not be directly mapped to RAM
-
mpu6000
Platform agnostic driver for MPU6000 6-axis IMU
-
lpc11xx
Register mappings for the NXP LPC111x/LPC11Cxx/LPC11xxL/LPC11xxXL family of Cortex-M0 microcontrollers
-
k64
Peripheral access API for Kinetis K64 microcontrollers
-
stm32f407g-disc
Board support crate for the STM32F407G DISCOVERY microcontroller board
-
tm040040
An embedded-hal driver for the TM040040 Cirque Circle touchpad (and Pinnacle touchpads in general)
-
mallocator
Use malloc() and free() for memory management in Rust
-
s2json-core
supports the S2JSON 1.0 Specification
-
plan9_asm
Plan9 Assembly wrapper
-
barebones-watchface
Barebones Watch Face for Mynewt on PineTime Smart Watch
-
epd-gde021a1
An embedded-hal based driver for ePaper displays with chip: GDE021A1 (172x72 B/W via SPI)
-
esb-ng
Nordic's Enhanced ShockBurst communication protocol
-
rzcobs
Reverse-Zerocompressing-COBS encoding
-
tsl2591-eh-driver
Rust embedded-hal driver for the TSL2591 Light Sensor
-
asm6502
A basic 6502 assembler
-
odrive_can
A no_std driver for ODrive compatible motor controllers over CAN
-
rhai-env
Environment package for Rhai
-
variegated-fdc1004
Async driver for the Texas Instruments FDC1004 Capacitance-to-Digital Converter
-
emstr
Helpers for working with string types for embedded devices
-
arduino
Reusable components for the Arduino Uno
-
lcd1602_gpio
Abstraction layer for interfacing between raspberry pi and the lcd1602 - 16x2 lcd display module through GPIO
-
mm-std-embedded-nal
embedded-naltraits for large devices that support the standard library -
yaxpeax-pic18
pic18 decoder for the yaxpeax project
-
iso-tp
Async ISO-TP (ISO 15765-2) implementation for embedded devices
-
kolben
A collection of COBS
-
ux_serde
Implement the following non standard integers: u2, u3, u4, u5, u6, u7, u9, u10, u11, u12, u13, u14, u15, u17, u18, u19, u20, u21, u22, u23, u24, u25, u26, u27, u28, u29, u30, u31, u33…
-
efm32gg-hal
HAL for the EFM32GG (EFM32 Giant Gecko) family of microcontrollers
-
funcan-rs
CANOpen implementation
-
aw9523b
A general driver for AW9523B which is 16 bit gpio explander & led driver
-
tca9539
(also PCA9539) 16-Bit I2C I/O Expander with I2C Interface
-
drone-stm32-map-periph-spi
STM32 peripheral mappings for Drone, an Embedded Operating System
-
byte-slab
A statically allocated slab of bytes
-
hifb-sys
Hi35XX FB API for Rust unsafe bindings
-
ad9912
1 GHz DDS SPI driver
-
sw3526
driver based on embedded-hal. Support
asyncandsyncfeatures. -
instruction_pointer_operations
that allows users to manipulate the value of the instruction pointer without needing to write inline assembly
-
pt-rtd
Calculation of resistance and temperature for platinum type RTDs, e.g. PT100.
-
w25q32jv
An embedded-hal driver for the W25Q32JV
-
tmag5170
A platform agnostic driver to interface with the TMAG5170-Q1 (3D hall sensor)
-
ruvix-bcm2711
BCM2711/BCM2712 SoC drivers for Raspberry Pi 4/5 (RuVix Phase D)
-
monarch2
A driver crate for the Sequans Monarch 2 Platform chips
-
pic8259_simple
Kernel-space interface to the 8259 and 8259A interrupt controllers
-
avr-config
An AVR foundational crate for retrieving details, such as the CPU clock frequency, at runtime
-
microbit-text
Scrolling text on a 5×5 (micro:bit) display
-
toroid
no_std ASCII renderer made to show donuts. This library animates 3D ASCII donuts, perfect for demos, embedded systems, or just for fun.
-
axp192
A driver for the AXP192 power management IC
-
jrsonnet-importers
More importers for jrsonnet
-
pac194x
Platform-agnostic Rust driver for the PAC194x 9V, 16-bit power monitor with alerts
-
kernaux
Safe binding to libkernaux - auxiliary library for kernel development
-
lcd_parallel_bus
A driver for various liquid crystal displays driven by HD44780 or equivalent, including double controller like 40x4 displays
-
semx_bitops
不使用复杂的派生继承, 提供简单纯粹的 bit 操作
-
ueight
Helpers for raw AVR programming
-
cpuio
Bare metal (no_std) inb, outb, inw, outw, inl, outw instructions with Rust-like API
-
radio-at86rf23x
Driver for the Microchip at86rf23x series of 2.4GHz RF ICs
-
wasm-embedded-spec
Embedded WASM WITX specification
-
hass-entity-state
home-assistant MQTT entity state types
-
opensensor
streaming and archiving measurements from sensors
-
embedded-io-convert
Convert embedded-io-async types back to futures ones (nightly only)
-
atsamd51n
Peripheral access API for ATSAMD51N microcontrollers (generated using svd2rust)
-
stalin-binary-search
alike binary search but any checking element which is not target one is eliminated
-
topq
A Timeout Priority Queue
-
ral
Base layer for generated libraries for specific MCUs
-
ruspiro-mmu
Functions to use and configure the MemoryManagementUnit (MMU) of the Raspberry Pi
-
cargo-esp-build
A cargo-build extension for esp8266 chips
-
std-embedded-time
embedded-time Clocks using std::time
-
nrf-smartled
A Smart LED (WS2812) driver using hardware acceleration
-
moving_median
A no-std moving median filter
-
embedded-mogeefont
Pixel font for embedded-graphics
-
bbqueue-heap
A SPSC, lockless, no_std, thread safe, queue, based on BipBuffers
-
cfg-noodle
A nonvolatile configuration storage service
-
efm32pg12b500-pac
Peripheral access API for EFM32PG12B500 MCU (generated using svd2rust)
-
efm32pg1b100-pac
Peripheral access API for EFM32PG1B100 MCU (generated using svd2rust)
-
efm32pg1b200-pac
Peripheral access API for EFM32PG1B200 MCU (generated using svd2rust)
-
sbus-parser
Futaba SBUS parser using loop and byte swap
-
s32k118-pac
Device Support Crate for NXP S32K118 Devices
-
tg-signal-impl
Signal implementation for rCore tutorial OS
-
himipi-sys
Hi35XX MIPI API for Rust unsafe bindings
-
drv8833-driver
A driver for DRV8833 motor driver
-
corstone300-pac
Peripheral Access Crate for the Arm(R) Corstone(TM)-300 Reference System
-
seeed-studio-relay-board
controlling the Seeed Raspberry Pi Relay Board
-
pot-conditioner
Signal conditioner for analog potentiometer readouts
-
perix
peripheral device drivers
-
harsark
Safe and lightweight real-time Kernel
-
ambiq-apollo4p-pac
Peripheral access API for Ambiq Apollo 4 Plus microcontrollers
-
pico_pll_config
PLL configuration macro for the Raspberry Pi Pico
-
defmt-logger
A
loglogger that can format defmt log frames -
dcc-rs
NMRA Digital Command Control for driving model trains
-
espsign
signing ESP32 firmware images for ESP RSA Secure Boot V2
-
embedded-picofont
The PICO-8 font to use with embedded-graphics
-
urpc
uRPC (pronounced micro RPC) is a simple and lightweight RPC framework designed with embedded systems in mind
-
f4-w25q
W25Q driver using stm32f4xx-hal QSPI implementation
-
endian-type-rs
Type safe wrappers for types with a defined byte order
-
ad5668
Rust Embedded HAL driver for Analog Devices AD5668 DAC
-
eds
Easy data separator
-
avrisp
AVR ISP library
-
apds9151
platform agnostic Rust driver for the APDS9151 Digital Proximity and RGB Color I2C Sensor
-
mquickjs-sys
Low-level FFI bindings to the MicroQuickJS engine
-
drone-nrf-map-pieces-2
Nordic Semi nRFx peripheral mappings for Drone, an Embedded Operating System
-
drone-nrf-map-pieces-12
Nordic Semi nRFx peripheral mappings for Drone, an Embedded Operating System
-
gt9x
A no_std driver for the GT9x series of capacitive touch screen controllers, supporting both async and blocking interfaces
-
drone-nrf-map-pieces-11
Nordic Semi nRFx peripheral mappings for Drone, an Embedded Operating System
-
drone-nrf-map-pieces-10
Nordic Semi nRFx peripheral mappings for Drone, an Embedded Operating System
-
drone-nrf-map-pieces-1
Nordic Semi nRFx peripheral mappings for Drone, an Embedded Operating System
-
drone-nrf-map-pieces-5
Nordic Semi nRFx peripheral mappings for Drone, an Embedded Operating System
-
drone-nrf-map-pieces-4
Nordic Semi nRFx peripheral mappings for Drone, an Embedded Operating System
-
drone-nrf-map-pieces-6
Nordic Semi nRFx peripheral mappings for Drone, an Embedded Operating System
-
drone-nrf-map-pieces-7
Nordic Semi nRFx peripheral mappings for Drone, an Embedded Operating System
-
drone-nrf-map-pieces-9
Nordic Semi nRFx peripheral mappings for Drone, an Embedded Operating System
-
hyperlit-runtime
A software documentation tool documentation embedded in source files - runtime crate
-
rpi-mh-z19c-exporter
Export CO2 concentration measured with a Winsen MH-Z19C sensor on a Raspberry Pi to Prometheus
-
mctp-linux
Management Component Transport Protocol (MCTP) Linux transport
-
winpipe2serial
link a windows named pipe to a serial COM port
-
device-register-async
A
no_stdlibrary to describe the registers permissions of a device to ease async driver development -
palloc
portable linked-list allocator for baremetal systems
-
cs47l63
driver for the CS47L63 DSP
-
atsaml21j18bu
Device crate for the Microchip ATSAML21J18BU, generated from its SVD file
-
atsaml21j17bu
Device crate for the Microchip ATSAML21J17BU, generated from its SVD file
-
atsaml21g17b
Device crate for the Microchip ATSAML21G17B, generated from its SVD file
-
atsaml21e17b
Device crate for the Microchip ATSAML21E17B, generated from its SVD file
-
atsaml21e15b
Device crate for the Microchip ATSAML21E15B, generated from its SVD file
-
atsaml21g16b
Device crate for the Microchip ATSAML21G16B, generated from its SVD file
-
atsaml21e18b
Device crate for the Microchip ATSAML21E18B, generated from its SVD file
-
atsaml21j18a
Device crate for the Microchip ATSAML21J18A, generated from its SVD file
-
atsaml21j16b
Device crate for the Microchip ATSAML21J16B, generated from its SVD file
-
atsaml21j17b
Device crate for the Microchip ATSAML21J17B, generated from its SVD file
-
atsaml21g18a
Device crate for the Microchip ATSAML21G18A, generated from its SVD file
-
shared-mime-embedded
Embedded copy of FreeDesktop Shared MIME data
-
atsaml21e16b
Device crate for the Microchip ATSAML21E16B, generated from its SVD file
-
atsaml21j18b
Device crate for the Microchip ATSAML21J18B, generated from its SVD file
-
atsaml21e18a
Device crate for the Microchip ATSAML21E18A, generated from its SVD file
-
atsaml21g18b
Device crate for the Microchip ATSAML21G18B, generated from its SVD file
-
reg-map
Derive volatile accesses to a register map and memory-mapped IO
-
embedded-error-chain
Easy error handling in no-alloc and no-std environments
-
jsmn
A minimalistic JSON parser
-
ws2812-timer-delay
Timer-based driver for ws2812 leds
-
drone-nrf-map-pieces
Nordic Semi nRFx peripheral mappings for Drone, an Embedded Operating System
-
enc28j60
A platform agnostic driver to interface the ENC28J60 (Ethernet controller)
-
chip-select
Chip select GPIO support traits
-
m24c64-driver
embedded-hal(-async) driver for the M24C64 I2C EEPROM
-
ws2812-nrf52833-pwm
nrf52833 PWM driver for ws2812 leds
-
mcp23017-driver
A comprehensive Rust driver for the Microchip MCP23017 IO expander
-
panic-custom
Small panicking rust crate that allows to easily set the behavior of panicking for embedded or regular no_std binaries
-
tg-rcore-tutorial-signal-impl
Signal implementation for rCore tutorial OS
-
rpi_ws281x-c
Wrapper for rpi_ws281x C library
-
do_syscall
raw syscall
-
gd32-synopsys-usb-otg
'usb-device' implementation for Synopsys USB OTG IP cores -- gd32 workaround
-
thingy-91-nrf9160-bsp
BSP for the Nordic Thingy:91 nRF9160
-
postcard2
A no_std + serde compatible message library for Rust
-
bmp180-driver
A driver for BMP180 Digital Pressure Sensor
-
embedded_mutex
A minimal, no_std, non-blocking mutex for embedded Rust
-
embedded-jsonrpc
A JSON-RPC 2.0 server implementation for embedded systems
-
microasync-rt
A runtime for the very small async runner
-
micro_framebuffer
A very simple framebuffer for embedded systems
-
s32k142w-pac
Device Support Crate for NXP S32K142W Devices
-
s32k144w-pac
Device Support Crate for NXP S32K144W Devices
-
s32k116-pac
Device Support Crate for NXP S32K116 Devices
-
s32k142-pac
Device Support Crate for NXP S32K142 Devices
-
s32k144-pac
Device Support Crate for NXP S32K144 Devices
-
bytex
8bit helper functions, mostly for AVR
-
esp-println
print!andprintln!implementations various Espressif devices -
some-serial
Unified serial driver collection for embedded and bare-metal environments
-
rosist-sallina-tg-rcore-tutorial-T3L3
Student AI4OSE extension lab crate for Chapter 3 of rCore Tutorial: framebuffer snake with polling and IRQ input
-
stm32g4
Device support crates for STM32G4 devices
-
atsame53n
Peripheral access API for ATSAME53N microcontrollers (generated using svd2rust)
-
agentic-robotics-rt
High-performance agentic robotics framework with ROS2 compatibility
-
embassy-usb
Async USB device stack for embedded devices in Rust
-
aarch32-cpu
CPU support for AArch32 Arm Processors
-
gpio-utils
Command-line utilities for interacting with GPIOs under Linux This wraps the
sysfs_gpiocrate in a form usable by both Rust applications or any other applications -
nrf52840-hal
HAL for nRF52840 microcontrollers
-
esp32c2
Peripheral access crate for the ESP32-C2
-
arm-pl061
Arm PrimeCell GPIO (PL061) driver
-
target-gen
A cli tool to create new target files for probe-rs ot of CMSIS-Packs
-
rdif-intc
Driver Interface of interrupt controller
-
embedded-hal-async
An asynchronous Hardware Abstraction Layer (HAL) for embedded systems
-
ra6m3-fsp-pac
Peripheral access API for RA6M3 microcontrollers (generated using svd2rust)
-
tg-rcore-tutorial-ch4
Chapter 4 of rCore Tutorial: Address space management with SV39 virtual memory
-
mimxrt685s-pac
Peripheral Access Crate for MIMXRT685s devices
-
rockchip-pm
Driver for Rockchip Power Management Unit (PMU) supporting RK3588 and similar SoCs
-
tg-ch5
Chapter 5 of rCore Tutorial: Process management with fork, exec and wait syscalls
-
embassy-stm32
Embassy Hardware Abstraction Layer (HAL) for ST STM32 series microcontrollers
-
tg-rcore-tutorial-ch3-Charlie-exercise
Chapter 3 of rCore Tutorial: Multiprogramming and time-sharing multitasking
-
atsame53j
Peripheral access API for ATSAME53J microcontrollers (generated using svd2rust)
-
ruvix-dma
DMA controller abstraction for RuVix Cognition Kernel (ADR-087)
-
jiaxin2006-tg-rcore-tutorial-t1l3
Student AI4OSE lab crate for Chapter 5 of rCore Tutorial: multiprogramming and time-sharing multitasking
-
atsamd-hal
HAL and Peripheral access API for ATSAMD11, ATSAMD21, ATSAMD51, ATSAME51, ATSAME53 and ATSAME54 microcontrollers
-
pwm-pca9685
Platform-agnostic Rust driver for the PCA9685 I2C 16-channel, 12-bit PWM/Servo/LED controller
-
ism330dhcx-rs
Platform-agnostic driver for the ISM330DHCX high-accuracy 3D accelerometer and gyroscope with ultra-low noise, smart FIFO, sensor hub, MLC, FSM, and advanced industrial features
-
tg-rcore-tutorial-ch3-T1L1
Chapter 3 T1L1 of rCore Tutorial: Multiprogramming and time-sharing multitasking
-
stm32-metapac
Peripheral Access Crate (PAC) for all STM32 chips, including metadata
-
bt-hci
Bluetooth HCI data types
-
onewire
using embedded_hal as abstraction layer, based on Arduino OneWire library
-
rdif-base
Driver Interface base definition
-
tg-rcore-tutorial-ch3-zgy
Chapter 3 of rCore Tutorial: Multiprogramming and time-sharing multitasking
-
embedded-svc
A set of traits for services higher level than embedded-hal and typically found in embedded microcontrollers with WiFi or BLE support
-
rosist-sallina-tg-rcore-tutorial-T1L3
Student AI4OSE lab crate for Chapter 5 of rCore Tutorial: Process management with fork, exec and wait syscalls
-
py32f0
Device support crates for PY32F0 devices
-
stm32f7xx-hal
HAL for the STM32F7xx family of microcontrollers
-
lis2duxs12-rs
Platform-agnostic driver for the LIS2DUXS12 ultra-low-power 3-axis accelerometer with FSM, MLC, adaptive self-configuration, analog hub/Qvar, FIFO, and advanced motion detection
-
tg-rcore-tutorial-ch5
Chapter 5 of rCore Tutorial: Process management with fork, exec and wait syscalls
-
ruvix-dtb
Device Tree Blob parser for RuVix Cognition Kernel (ADR-087)
-
ruvix-hal
Hardware Abstraction Layer for RuVix Cognition Kernel (ADR-087)
-
veml6030
Platform-agnostic Rust driver for the VEML6030 and VEML7700 high-accuracy ambient light sensors
-
tg-ch4
Chapter 4 of rCore Tutorial: Address space management with SV39 virtual memory