-
portable-atomic
Portable atomic types including support for 128-bit atomics, atomic float, etc
-
zerocopy
makes zero-cost memory manipulation effortless. We write "unsafe" so you don't have to.
-
embedded-hal
A Hardware Abstraction Layer (HAL) for embedded systems
-
elf
A pure-rust library for parsing ELF files
-
rhai
Embedded scripting for Rust
-
postcard
A no_std + serde compatible message library for Rust
-
fixed
Fixed-point numbers
-
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…
-
embedded-graphics
Embedded graphics library for small hardware displays
-
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…
-
smoltcp
A TCP/IP stack designed for bare-metal, real-time systems without a heap
-
critical-section
Cross-platform critical section
-
embedded-hal-mock
A collection of mocked devices that implement the embedded-hal traits
-
riscv
Low level access to RISC-V processors
-
embassy-sync
no-std, no-alloc synchronization primitives with async support
-
stm32f4xx-hal
Peripheral access API for STM32F4 series microcontrollers
-
espflash
A command-line tool for flashing Espressif devices
-
defmt
A highly efficient logging framework that targets resource-constrained devices, like microcontrollers
-
rp2040-hal
Embedded-HAL impl for the rp2040 microcontroller
-
embedded-graphics-simulator
Embedded graphics simulator
-
semihosting
AArch64, Arm, RISC-V, MIPS32, MIPS64, and Xtensa
-
fugit
Time library for embedded targets with ease-of-use and performance first
-
pc-keyboard
PS/2 keyboard interface library
-
ssd1306
I2C/SPI driver for the SSD1306 OLED display controller
-
rtt-target
Target side implementation of the RTT (Real-Time Transfer) I/O protocol
-
aarch64-cpu
Low level access to processors using the AArch64 execution state
-
stm32-hal2
Hardware abstraction layer for the STM32 MCUs
-
mbedtls
Idiomatic Rust wrapper for MbedTLS, allowing you to use MbedTLS with only safe code while being able to use such great Rust features like error handling and closures. Building on MbedTLS's focus on embedded use…
-
stm32h7xx-hal
Hardware Abstraction Layer implementation for STM32H7 series microcontrollers
-
flip-link
Flips the memory layout of embedded programs to protect against stack overflows
-
smlang
A no-std state machine language DSL
-
esp-backtrace
Bare-metal backtrace support for Espressif devices
-
nrf-hal-common
details of the nRF HAL crates. Don’t use this directly, use one of the specific HAL crates instead (
nrfXYZ-hal
). -
arbitrary-int
Modern and lightweight implementation of u2, u3, u4, ..., u127
-
imxrt-iomuxc
Pad configuration interface for NXP i.MX RT processors. Part of the imxrt-rs project
-
linux-embedded-hal
embedded-hal
traits for Linux devices -
tock-registers
Memory-Mapped I/O and register interface developed for Tock
-
embassy-futures
no-std, no-alloc utilities for working with futures
-
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…
-
managed
An interface for logically owning objects, whether or not heap allocation is available
-
rtic
Real-Time Interrupt-driven Concurrency (RTIC): a concurrency framework for building real-time systems
-
minicov
Code coverage and profile-guided optimization support for no_std and embedded programs
-
probe-rs
A collection of on chip debugging tools to communicate with microchips
-
embassy-time
Instant and Duration for embedded no-std systems, with async timer support
-
uefi
makes it easy to develop Rust software that leverages safe, convenient, and performant abstractions for UEFI functionality
-
microfft
Embedded-friendly Fast Fourier Transforms
-
atat
AT Parser for serial based device crates
-
embedded-text
TextBox for embedded-graphics
-
avr-device
Register access crate for AVR microcontrollers
-
ravedude
easily flash code onto an AVR microcontroller with avrdude
-
industrial-io
Linux Industrial I/O (IIO) Support
-
esp-idf-svc
embedded-svc traits for ESP-IDF (Espressif's IoT Development Framework)
-
embassy-executor
async/await executor designed for embedded usage
-
rppal
Interface for the Raspberry Pi's GPIO, I2C, PWM, SPI and UART peripherals
-
embedded-storage
A Storage Abstraction Layer for Embedded Systems
-
smart-leds
device drivers
-
stm32-eth
Embedded Rust Ethernet driver for the STM32 MCU series
-
ufmt
A (6-40x) smaller, (2-9x) faster and panic-free alternative to
core::fmt
-
wlink
WCH-Link flash tool for WCH's RISC-V MCUs(CH32V, CH56X, CH57X, CH58X, CH59X, CH32L103, CH32X035, CH641, CH643)
-
esp-idf-hal
A Hardware abstraction layer for Espressif's ESP family of microcontrollers based on the ESP-IDF framework
-
speakersafetyd
Speaker protection daemon for embedded Linux systems
-
delog
Deferred logging, an implementation and extension of Rust's standard logging facade
-
sbat
UEFI Secure Boot Advanced Targeting (SBAT) no_std library
-
embedded-nal
A Network Abstraction Layer (NAL) for Embedded Systems
-
jep106
A pollable collection of all JEP106 manufacturer codes
-
northstar
container runtime for Linux targetting embedded systems
-
nrf-modem
Async modem api for the nRF91xx
-
gd32f1x0-hal
HAL for the GD32F1x0 family of microcontrollers
-
esp-println
print!
andprintln!
implementations various Espressif devices -
esp32-nimble
A wrapper for the ESP32 NimBLE Bluetooth stack
-
ext4-view
No-std compatible Rust library for reading ext2/ext4 filesystems
-
epd-waveshare
An embedded-hal based driver for ePaper displays from Waveshare formerly published as eink-waveshare-rs
-
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.
-
coap-lite
A lightweight CoAP message manipulation crate, ideal for embedded environments
-
automotive_diag
Core definitions for various Automotive ECU Diagnostics such as UDS ISO-14229, KWP2000, OBD-II, etc
-
bme280
device driver for the Bosch BME280 temperature, humidity, and atmospheric pressure sensor and the Bosch BMP280 temperature, and atmospheric pressure sensor
-
embedded-sdmmc
A basic SD/MMC driver for Embedded Rust
-
uwheel
Embeddable Aggregate Management System for Streams and Queries
-
astarte-device-sdk
that provides communication and pairing primitives to an Astarte Cluster
-
ftdi-embedded-hal
embedded-hal implementation for FTDI USB devices
-
rustsbi
Minimal RISC-V's SBI implementation library in Rust
-
littlefs2
Idiomatic Rust API for littlefs
-
w5500
IoT Controller implementation
-
cortex-m-rtic
Real-Time Interrupt-driven Concurrency (RTIC): a concurrency framework for building real-time systems
-
cortex-m
Low level access to Cortex-M processors
-
lilos
A tiny embedded OS based around Futures and async
-
bluerobotics-ping
serves as the entry point for embedding applications using Rust on Blue Robotics's Ping devices family
-
rlsf
Real-time dynamic memory allocator based on the TLSF algorithm
-
wasefire
High-level Wasefire applet API
-
nickel-lang-vector
Persistent vectors for Nickel
-
azure_mgmt_baremetalinfrastructure
generated REST API bindings
-
os-terminal
Beautiful terminal emulator on no-std environment
-
aht20-driver
Rust embedded-hal driver for the AHT20 temperature and humidity sensor
-
port-expander
Abstraction for I2C port-expanders
-
avr-tester
Framework for testing AVR binaries
-
py32-hal
HAL and Embassy support for the Py32 family of microcontrollers
-
atsamd-hal
HAL and Peripheral access API for ATSAMD11, ATSAMD21, ATSAMD51, ATSAME51, ATSAME53 and ATSAME54 microcontrollers
-
a653rs
Arinc653 abstraction library for hypervisor independent partition programming
-
embedded-alloc
A heap allocator for embedded systems
-
ws2812-esp32-rmt-driver
WS2812 driver using ESP32 RMT
-
bno055
Bosch Sensortec BNO055 9-axis IMU driver
-
embedded-devices
Device driver implementations for many embedded sensors and devices
-
voladdress
easy volatile memory abstraction
-
rttmon
RTT monitor for OpenOCD
-
st7565
Driver for ST7565 based displays
-
drmemd
Main process of the DrMem control system
-
n32g4xx-hal
Peripheral access API for N32G4xx series microcontrollers
-
pwm-pca9685
Platform-agnostic Rust driver for the PCA9685 I2C 16-channel, 12-bit PWM/Servo/LED controller
-
ws2812-spi
SPI-based driver for ws2812 leds
-
sgp30
Platform agnostic Rust driver for the Sensirion SGP30 gas sensor
-
imxrt-ral
Register access layer for all NXP i.MX RT microcontrollers
-
svdtools
modifying bugs in CMSIS SVD
-
stm32f3xx-hal
Peripheral access API for STM32F3 series microcontrollers
-
wchisp
A command-line implementation of WCHISPTool, for flashing ch32 MCUs
-
lorawan
structures and tools for reading and writing LoRaWAN messages from and to a slice of bytes
-
dmx-rdm
communicating DMX512 (ANSI E1.11) and DMX-RDM (ANSI E1.20) over a RS485 bus by using interchangeable drivers
-
i2c-character-display
Driver for HD44780-based character displays connected via a I2C adapter
-
efm32pg1b-pac
Peripheral access API for Silicon Labs EFM32PG1B microcontrollers
-
rhai-dylib
Dylib support for Rhai
-
fdt
A pure-Rust
#![no_std]
crate for parsing Flattened Devicetrees -
esp32c3
Peripheral access crate for the ESP32-C3
-
j1939
SAE J1939 is a set of standards that define how ECUs communicate via the CAN bus in heavy-duty vehicles
-
mimxrt685s-pac
Peripheral Access Crate for MIMXRT685s devices
-
include_data
Include typed data directly in your executable
-
rhai-rand
Random number package for Rhai
-
xmc4200
Peripheral access library for XCM4200 ARM Cortex-M
-
embedded-websocket
A lightweight websocket library for embedded systems (no_std)
-
embedded-canvas
Draw anything with ease on the Canvas before drawing it to your small hardware display
-
embedded-cli
CLI with autocompletion, help and history for embedded systems (like Arduino or STM32)
-
shared-mem-queue
Single-writer single-reader queues which can be used for inter-processor-communication in a shared memory region
-
binwalk
Analyzes data for embedded file types
-
imxrt-rt
Startup and runtime support for i.MX RT processors
-
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…
-
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.
-
sensirion-i2c
Common functionality for I2C based sensors from Sensirion
-
embedded-huffman
A paginated, streaming library for Huffman coding on embedded
-
dht-pio
A DHT Implementation using PIO (Programmable Input/Output), tested on Rasberry Pi Pico
-
moondancer
firmware for the Great Scott Gadgets Cynthion USB Test Instrument
-
waterman
A CLI tool to easily flash code onto AVR microcontrollers using avrdude, enhancing the development workflow for embedded Rust projects
-
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
-
shtcx
Platform agnostic Rust driver for the Sensirion SHTCx series temperature/humidity sensors
-
vl53l0x
A platform agnostic driver to interface with the vl53l0x (time-to-flight sensor)
-
device-driver
A toolkit to write better device drivers, faster
-
ili9341
A platform agnostic driver to interface with the ILI9341 (ald ILI9340C) TFT LCD display
-
rs_ws281x
Wrapper for ws281x library using bindgen to track upstream
-
stabilizer
Firmware for the Sinara Stabilizer board (STM32H743, Ethernet, PoE, 2 ADCs, 2 DACs)
-
sx1262
A embedded-hal driver for the Semtech SX1261/2 sub-GHz radio transceiver
-
uguid
GUID (Globally Unique Identifier) no_std library
-
se05x
Driver for the NXP SE05X
-
rpk-firmware
RPK Keyboard firmware
-
mcp2515
#![no_std]
library for interacting with MCP2515 CAN controller chips -
flat_device_tree
A pure-Rust
#![no_std]
crate for parsing Flattened Devicetrees -
embedded-iconoir
1300+ icons for embedded-graphics, ported from the Iconoir icon pack
-
w5500-hl
Driver for the Wiznet W5500 internet offload chip
-
libcsp
Safe and ergonomic Rust API for libcsp on top on libcsp-sys
-
micropb
Rust Protobuf library targetting embedded systems and no_std environments
-
mcp2003a
LIN transceiver driver with embedded-hal traits for no-std environments
-
sml-rs
Smart Message Language (SML) parser written in Rust
-
witchcraft-server-config
Configuration types for witchcraft-server
-
ushell
Embedded shell over serial connection
-
postcard-rpc
A no_std + serde compatible RPC library for Rust
-
ciborium-io
Simplified Read/Write traits for no_std usage
-
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.
-
playdate-rs
Safe Rust bindings for the Playdate SDK C-CPI
-
mcp2517
CAN controller
-
stm32-fmc
Hardware Abstraction Layer for STM32 Memory Controllers (FMC/FSMC)
-
teensy4-bsp
Rust-based BSP for the Teensy 4. Part of the teensy4-rs project
-
py32f0xx-hal
Peripheral access API for py32F0 series microcontrollers
-
defmt-rtt
Transmit defmt log messages over the RTT (Real-Time Transfer) protocol
-
atsamd21g
Peripheral access API for ATSAMD21G microcontrollers (generated using svd2rust)
-
sbi-rt
Runtime library for supervisors to call RISC-V Supervisor Binary Interface (RISC-V SBI)
-
metrics-exporter-scope
Metrics scope exporter
-
lis2dh12
Platform-agnostic Rust driver for the LIS2DH12 accelerometer
-
format_no_std
Bare metal formatting
-
mc-sst25
Microship SST25* flash memory series
-
bbqueue
A SPSC, lockless, no_std, thread safe, queue, based on BipBuffers
-
gpt-parser
GUID Partition Table (GPT) read-only parser. Endian aware and usable against no_std+alloc.
-
embassy-stm32-plus
embassy-stm32 plus
-
accelerometer
Generic, embedded-friendly accelerometer support, including traits and types for taking readings from 2 or 3-axis accelerometers and tracking device orientations
-
nmea0183
NMEA 0183 parser targetting mostly embedded devices but not limited to
-
hopter
A Rust-based embedded operating system designed to enable memory safe, memory efficient, reliable, and responsive applications
-
stm32g4-staging
Device support crates for STM32G4 devices
-
rhai-fs
Filesystem package for Rhai
-
fh101rf
Driver crate for the FH101RF Wake-Up Radio
-
nrfxlib
Rust driver for the LTE stack on the Nordic nRF9160
-
embedded-nano-mesh
Lightweight mesh communication protocol for embedded devices
-
aps490_pfpu2_mini
Control software for PFPU2 automated brain detection system
-
microbit
Board support crate for the BBC Micro:bit V1
-
minimq
A minimal MQTT5 client designed for no_std platforms
-
memacc
Memory access functions
-
flipperzero-sys
Flipper Zero
-
embedded-nal-coap
A CoAP server and client implementation built on embedded-nal-async
-
machine-check
Formal verification tool for digital systems
-
rflow-chat
Text protocol for embedded apps
-
ruduino
Reusable components for AVR microcontrollers
-
zssh
Minimal SSH server for embedded applications
-
drone-cortexm
ARM® Cortex®-M platform crate for Drone, an Embedded Operating System
-
dcf77_utils
DCF77 receiver for embedded platforms
-
embive
A low-level sandboxing library for RISC-V bytecode
-
fdcan
STM32 FDCAN peripheral driver
-
embedded-jsonrpc
A JSON-RPC 2.0 server implementation for embedded systems
-
scpi
SCPI/IEEE488.2 parser library
-
aligned-cmov
Fast constant-time conditional moves of aligned bytes
-
rkaiq
Rockchip RKAIQ bindings for Rust
-
atsamx7x-hal
HAL and peripheral access API for ATSAME70, ATSAMS70, ATSAMV70, and ATSAMV71 microcontrollers
-
fixed-slice-vec
FixedSliceVec
is a dynamic length Vec with runtime-determined maximum capacity backed by a slice -
dac8568
platform agnostic library for the Texas Instruments DAC8568, DAC8168 and DAC7568
-
spicat
Full-duplex SPI transactions from the command line
-
quadrature-decoder
Pure logic-level implementations of quadrature decoders with support for full-, half- an quad-stepping
-
renode-run
Run embedded programs in the renode emulator
-
rainmaker
ESP RainMaker Agent
-
testssl
Highlevel Bindings for TestSSL
-
navigator-rs
serves as the entry point for embedding applications using Rust on Blue Robotics's Navigator
-
huawei-cloud-api-definitions-BMS
Huawei Cloud API definitions, generated from OpenAPI spec
-
max11300
A rust-embedded driver for the MAX11300 ADC/DAC
-
embedded-layout
Extend embedded-graphics with simple layout functions
-
rmodem
XMODEM (and variants) implementation in no-std Rust
-
charlcd
charlcd.c Linux driver (HD44780 et al.)
-
max32660
Register mappings for the Analog Devices MAX32660 Cortex-M4 microcontroller
-
nvme-driver
nvme driver
-
rtthost
RTT (Real-Time Transfer) client
-
enc424j600
Embbeded Rust Ethernet driver for ENC424J600 Ethernet controller with SPI interface
-
embassy-rp
Embassy Hardware Abstraction Layer (HAL) for the Raspberry Pi RP2040 microcontroller
-
u8g2-fonts
A text renderer for embedded-graphics, based on U8g2
-
nrf52833-hal
HAL for nRF52833 microcontrollers
-
eva-lsl
EVA ICS v4 local service launcher
-
dma-api
Trait for DMA alloc and some collections
-
form
A small script to move inline modules into the proper directory structure
-
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
-
canadensis
A Cyphal implementation: Node types and re-exports from some other canadensis crates
-
atsame54_xpro
Board Support crate for the SAM E54 Xplained Pro Evaluation Kit
-
esp-wifi
A WiFi, Bluetooth and ESP-NOW driver for use with Espressif chips and bare-metal Rust
-
libscd
Rust drivers for various SCD devices such as scd30 and scd4x CO2 sensors
-
ug_max
Down-top left-right defined font. Seemly design for 5x5 display.
-
mil_std_1553b
MIL STD 1553B message parsing and types
-
lsm303agr
Platform-agnostic Rust driver for the LSM303AGR ultra-compact high-performance eCompass module: ultra-low-power 3D accelerometer and 3D magnetometer
-
simink
是一个嵌入式全系统模拟器, 提供大量的板卡模拟. simink 支持 Windows, macOS and Linux
-
deploy-temp-fringe
safe, lightweight userland context switches
-
lysogeny-broth
Substrate for cellular automata in Rust
-
embedded-dht-rs
A platform agnostic driver to interface with the DHT11 / DHT20 (AHT20) / DHT22 (AM2302) temperature and humidity sensor
-
cmsis-pack
managing CMSIS Packs
-
cc1101
A platform agnostic driver to interface with the CC1101 (Sub-1GHz RF Transceiver)
-
serde-csv-core
CSV serialization for no_std crates
-
asm-delay
no_std implementation of embedded-hal DelayMs & DelayUs based on arm::delay
-
tcn75a
Embedded HAL driver for accessing TCN75A temperature sensors
-
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…
-
jrsonnet-importers
More importers for jrsonnet
-
embassy-net
Async TCP/IP network stack for embedded systems
-
neobridge-rust
Lets you control neopixels from your PC using a board
-
c2a-core
Core of Command Centric Architecture
-
authenticode
working with Authenticode (no-std)
-
fieldset
Struct to enum derivation
-
stm32g0xx-hal
Peripheral access API for STM32G0 series microcontrollers
-
morse-codec
live decoding and encoding of morse code messages. Supports multiple embedded devices and operating systems by being no_std.
-
svd-generator
Converts device information from flattened device tree into an SVD description
-
sbus-rs
A no_std compatible SBUS protocol parser for embedded systems
-
embedded-io
Embedded IO traits
-
fdt-parser
parsing FDT
-
tm1637-embedded-hal
A platform agnostic driver to interface with the TM1637 (7-segment LED display) using embedded-hal
-
sonant
port of the Sonant 4K synth with streaming support
-
w5500-tls
TLS client for the Wiznet W5500 internet offload chip
-
jelly-mem_access
Memory Mapped I/O access library
-
meshtastic
communicating with and configuring Meshtastic devices
-
mfrc522
A platform agnostic driver to interface the MFRC522 (RFID reader/writer)
-
profont
monospace font for use with the embedded-graphics crate
-
pilkki
Flasher tool for Kampela project
-
scd4x-rs
query SCD4x sensors over I²C
-
i2c-multiplexer
An I2C Multiplexer library that supports the PCA9546 and TCA9546A chips
-
aarch64-paging
manipulate AArch64 VMSA page tables
-
ht32f523x2
Peripheral access API for HT32F523x2 microcontrollers
-
teensycore
A kernel for the teensy4.0 microcontroller
-
stm32h7
Device support crates for STM32H7 devices
-
rhai-url
Url package for Rhai
-
aligned-array
A newtype with alignment of at least
A
bytes -
gt911
An embedded touchscreen driver for GT911
-
ruspiro-lock
Providing Spinlock, Semaphore and mutual exclusive data access for cross core usage on Raspberry Pi
-
mos-hardware
Hardware register tables and support functions for 8-bit retro computers like the Commodore 64, MEGA65 and others
-
va416xx
PAC for the Vorago VA416xx family of MCUs
-
lilygo-epd47
driver for the LilyGo T5 4.7 inch E-Ink Display (HW-Version V2.3 / ESP32S3)
-
mips-rt
Minimal runtime for MIPS MCU cores
-
embedded_cotoutf8
COTO is a library that translates numerical primitives into readable ASCII UTF-8 arrays
-
rp235x-hal
Embeded-HAL impl for the RP2350 microcontroller
-
modio-logger
Dbus service
-
button-driver
Advanced button handling crate
-
urap
Specification and library for the URAP protocol
-
a121-rs
Rust driver for the Acconeer A121 radar sensor
-
edge-nal
Hosts a bunch of traits which are not yet available in the embedded-nal-async crate
-
aem10900
Driver crate for the AEM10900 Energy Harvester
-
shared-bus
Abstraction for sharing a bus between multiple devices
-
liquid_crystal
a customizable library to work with alphanumeric lcd display compatible with the HD44780 controller
-
lcd-ili9341-spi
Embedded_hal driver for ILI9341 SPI LCD, compatible with Waveshare 2,4 inch board
-
synctools
Synchronization tools for no_std
-
trapframe
Handle Trap Frame across kernel and user space on multiple ISAs
-
fallible_vec
Fallible allocation functions for the Rust standard library’s
Vec
type -
ellie_core
Core modules for ellie
-
keypad
Platform-agnostic driver for keypad matrix circuits
-
ft6x36
Rust driver for Ft6x36 touch screen
-
mcumgr-smp
smp protocol for microcontrollers in pure rust
-
quectel-bg77
Driver for Quectel's BG77 and BG770 eMTC and NB-IoT Modems
-
quadrature-encoder
Hardware-level implementations of drivers for incremental encoders with support for full-, half- an quad-stepping
-
atsam4ls4a-pac
Peripheral access crate for the ATSAM4LS4A microcontroller
-
phidget
Phidget library for Rust
-
e-write-buffer
A no_std, const-generic,
core::fmt::Write
able buffer -
flaw
Control-law-inspired embedded signal filtering, no-std and no-alloc compatible
-
mcp25xx
MCP2510, MCP2515 and MCP25625 CAN controller library
-
r3
R3-OS: Experimental static component-oriented RTOS for deeply embedded systems
-
liboptic_edid
Parses EDIDs from raw bytes (in 100% Rust)
-
heapless-bytes
Newtype around heapless byte Vec with efficient serde
-
simp_protocol
simplistic protocol to communicate over serial ports. It supports ack, automated escaping and unescaping of special bytes and checksum error detection.
-
riscv-decode
decoding RISC-V instructions
-
ltc681x
Client LTC681X battery monitoring family
-
ieee1275
Safe and easy-to-use wrapper for building OpenFirmware/IEEE1275 apps
-
hifmt
Format output without Rust code segment in binary to reduce the ultimate binary size
-
avr-progmem
Progmem utilities for the AVR architectures
-
sx126x
A driver for the SX126X Family of LoRa modems
-
rtic-sync
Synchronization primitives for asynchronous contexts
-
esp32s2
Peripheral access crate for the ESP32-S2
-
max7219
A platform agnostic driver to interface the MAX7219 (LED driver)
-
atsaml22j
Peripheral access API for ATSAML22J microcontrollers (generated by svd2rust)
-
corncobs
COBS encode/decode for Rust no_std targets
-
stk8ba58
Driver for the Sensortek STK8BA58 3-axis MEMS Accelerometer
-
microflow
A robust and efficient TinyML inference engine
-
ws2812-flexio
A neopixel driver based on NXP i.MX RT's FlexIO bus
-
sim7020
driver for sim7020E NB IoT modem
-
gopro-controller
Open source Rust Library for interacting with GoPro Cameras over BLE and WiFi
-
infrared
remote control library
-
drmem-api
Traits and types used internally by the DrMem control system
-
hd44780-driver
HD44780 compliant displays with embedded-hal
-
gc9a01-rs
SPI 4-wire driver for GC9A01 display controller
-
stm32wb-hci
Bluetooth HCI for the STM32WB family
-
nostd_structs
Datastructures and algorithms for nostd environments
-
embedded-heatshrink
port of the heatshrink library for data compression in embedded systems
-
debouncing
Debounce keys in an embedded context
-
embedded-websocket-embedded-io
A fork of the embedded-websockets crate that uses embedded-io-async for async IO
-
svd2rust
Generate Rust register maps (
struct
s) from SVD files -
rp2040-multicore-per-cpu
Enable use of per-core static variables on rp2040
-
pac55xx-pac
Peripheral Access Crate (PAC) for PAC55XX
-
kaori-hsm
A performant hierarchical state machine library
-
libertyos_kernel
The kernel for LibertyOS
-
digital_test_runner
Parse and run tests used in hnemann's Digital logic designer and circuit simulator
-
cycle-menu
no-std compatible library to create a menu that can be cycled through and shown with custom input/output
-
hooker
a helper for hooking functions in x64
-
flight-tracker
ADSB flight tracker
-
ldproxy
A linker proxy tool
-
embedded-io-extras
Additional utilities for embedded-io, including a Cursor type for no_std environments
-
msp430g2553
Peripheral access API for MSP430G2553 microcontroller
-
stm32f7xx-hal
HAL for the STM32F7xx family of microcontrollers
-
xmc4400
XMC peripheral library for XMC4400 generated from SVD
-
bma423
Rust driver for Bma423 accelerometer
-
lfsr
Galois linear feedback shift registers
-
perfect6502-sys
Bindings to perfect6502
-
northstar-sextant
Northstar is an container runtime for Linux targetting embedded systems
-
mini-backtrace
Backtrace support for no_std and embedded programs
-
flipperzero-test
Rust test harness for Flipper Zero
-
sht31
temperature and humidity sensor
-
quectel-bg9x-eh-driver
Rust embedded-hal driver for the Quectel BG9X cellular modems
-
blinkt
Interface for the Pimoroni Blinkt!, and any similar APA102 or SK9822 LED strips or boards, on a Raspberry Pi
-
atdf2svd
convert Atmel's ATDF files to SVD
-
embedded-runner
Cargo runner for embedded projects using OpenOCD
-
uln2003
28BYJ-48 stepper motor with and ULN2003 Driver on any hardware implementing embedded_hal
-
sht4x-ng
Sensirion SHT4x Driver for Embedded HAL 1.0 with optional async support
-
postcard-schema
Reflection-like schemas for postcard types
-
k1921vk035-pac
The peripheral access crate for k1921vk035
-
musb
musb(Mentor USB) regs and
embassy-usb-driver
impl -
stm32f4-staging
Device support crates for STM32F4 devices
-
rt
A real-time operating system capable of full preemption
-
stackdump-cli
capturing stack dumps
-
st7920
SPI driver for the ST7920 LCD display controller
-
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.
-
it8951
E-Paper driver
-
bq34z100
embedded_hal driver for the fuel gauge series bq34z100
-
discrete_count
Encapsulate counting for clocks, ab-encoders, etc
-
cs4272
Rust I2S driver for the CS4272
-
hss-tty-flasher
TTY Flasher for PolarFire SoC with HSS bootloader
-
rfm69
A generic rust driver to support RFM69 family wireless chips
-
nostd_async
An asyncronous runtime for a single-threaded no_std environment
-
bxcan
STM32 bxCAN peripheral driver
-
spo-rhai
Embedded scripting for Rust
-
buffered-io
Bufferering types for embedded-io
-
care
configuration management, reconciling, and tracking over time
-
rudelblinken-filesystem
Minimalistic zero-copy flash filesystem optimized for embedded systemse
-
naked-function
Proc macro implementation of #[naked]
-
ssd1306-i2c
SSD1306 I2C driver
-
stemma_soil_moisture_sensor
A pure generic I2C crate for the Adafruit STEMMA soil moisture sensor
-
nrf52840-hal
HAL for nRF52840 microcontrollers
-
wasefire-cli
Wasefire CLI to manage applets and platforms
-
treadmill-rs
Common type- and API-definitions for the Treadmill distributed hardware testbed
-
goolog
no_std-compatible goolog logger and some macros to simplify printing logs
-
machine-check-avr
formal verification of AVR microcontrollers by machine-check
-
lp586x
matrix LED driver (supports LP5860, LP5861, LP5862, LP5864, LP5868)
-
efm32gg12b-pac
Peripheral access API for EFM32GG12B MCU (generated using svd2rust)
-
eeprom24x
Platform-agnostic Rust driver for the 24x series serial EEPROMs
-
motion
A bare metal physics engine
-
own_or_borrow
Unified references to owned or RefCell borrowed data
-
avra-rs
Assembler for Microchip AVR Microcontroller family (similar to Atmel)
-
ls013b7dh03
Sharp LCD driver for embedded-hal
-
printf-compat
printf reimplemented in Rust
-
bitregions
Generate a unit structure to represent a set of bit-regions
-
probe-rs-target
Target description schema for probe-rs
-
scl3300
Driver for the SCL3300 inclinometer
-
lora-modulation
A definition of LoRa modulation characteristics with minimal external dependencies
-
naive-timer
A minimal naive timer for embedded (no_std) platforms
-
weather-utils
Set of common and useful weather-related computations
-
wyrcan
The Container Bootloader
-
flipperzero-rt
Flipper Zero
-
efm32gg11b-pac
Peripheral access API for EFM32GG11B MCU (generated using svd2rust)
-
intx
Defines new integer types with non-standard but fixed sizes
-
panic-probe
Panic handler that exits
probe-run
with an error code -
msf60_utils
MSF receiver for embedded platforms
-
pio-uart
A software UART implementation for the RP2040 using the PIO feature
-
rotary-encoder-embedded
A rotary-encoder library built with embedded-hal
-
mp2667
Platform agnostic Rust driver for the MP2667, highly integrated, single-cell, Li-ion/Li-polymer battery charger IC
-
psx
developing homebrew for the Sony PlayStation 1
-
moving_median
A no-std moving median filter
-
sensehat-screen
using the 8x8-LED matrix, with RGB565 coloring, on the Raspberry Pi Sense HAT device
-
embedded-c-sdk-bind-hal
Embedded C SDK bind HAL
-
nrf24l01-commands
Register bitfields and commands for the nRF24L01
-
ubus
Work-in-progress: OpenWRT ubus client library in pure Rust
-
drone-stm32-map-svd
STM32 SVD to bindings for Drone, an Embedded Operating System
-
at32f4xx-pac
Device support crates for AT32F4 devices
-
dac_lib_mcp4725
A driver for the MCP4725 DAC module
-
usbd-midi
A USB MIDI implementation for usb-device
-
ice40
An embedded-hal driver for configuration of ice40 FPGA devices
-
ds4432
Platform-agnostic Rust driver for the Maxim DS4432 Dual-Channel, I2C, 7-Bit Sink/Source Current Digital To Analog (DAC) converter
-
sds011-rs
A driver for the SDS011 particle sensor based on embedded-io
-
fringe
safe, lightweight userland context switches
-
imxrt-hal
Hardware abstraction layer for NXP i.MX RT microcontrollers
-
sbi-spec
Definitions and constants in the RISC-V Supervisor Binary Interface (RISC-V SBI)
-
l293x
Platform agnostic library for the L293 and L293D motor drivers using embedded-hal
-
adi-adxl355
An embedded-hal driver for the ADXL355 accelerometer
-
bobbin-bits
Small bit fields and ranged integers
-
nucleo-h743zi
Example programs for nucleo-H743zi and nucleo-H743zi2 boards
-
ambiq-apollo4p-pac
Peripheral access API for Ambiq Apollo 4 Plus microcontrollers
-
sysfs_gpio
access to GPIOs using the Linux sysfs interface
-
cobs-rs
A minimal no-std library for doing Consistent Overhead Byte Stuffing
-
lcd_i2c_rs
interfacing with I2C LCDs on the ESP32 using the ESP-IDF HAL
-
aarch64_sysreg
Address translation of system registers
-
arduino-run
A cargo runner for Arduino boards
-
gd32c1x3-hal
HAL for the GD32C1x3 family of microcontrollers
-
critical-section-lock-mut
Provide locks for mutable data using
critical-section
crate -
w5500-mqtt
MQTT client for the Wiznet W5500 internet offload chip
-
unflappable
A batteries-included embedded-hal InputPin debouncer
-
ufix
Flexible and usable generic fixed-point numeric type
-
rtt-log
Log facade implementation for the Segger RTT protocol
-
xargo
The sysroot manager that lets you build and customize
std
-
dac8564
platform agnostic library for the Texas Instruments DAC8564
-
tagged-box
Box that uses tagged pointers
-
embed_rs
A template for embedded Rust projects
-
stm32f469i-disc
Board support crate for the STM32F469 DISCOVERY kit
-
tfmt
A tiny, fast and panic-free alternative to
core::fmt
-
efm32lg-pac
Peripheral access API for EFM32LG MCU (generated using svd2rust)
-
embassy-nrf
Embassy Hardware Abstraction Layer (HAL) for nRF series microcontrollers
-
booster
Firmware for the Sinara Booster device (STM32F4, Ethernet, RF power amplifiers)
-
ssd1322_rs
A no-std async Rust driver for the SSD1322 OLED screen
-
signalo
A DSP toolbox with focus on embedded environments
-
rv8803
RTC clock driver for the rv8803 chip via I2C
-
is31fl3741
Driver for Lumissil Microsystem's IS31FL3741 IC
-
stm32l0xx-hal
Peripheral access API for STM32L0 series microcontrollers
-
cody-c
zerocopy codec for encoding and decoding data in no_std environments
-
stm32f3-discovery
Board support package for the STM32F3DISCOVERY board
-
moon_script
Fast and simple scripting language based on Rust
-
async-io-mini
Async I/O fork for embedded systems
-
uwheel-stats
profiling utility for uwheel
-
hx711
A platform agnostic driver to interface with the HX711 (load cell amplifier and ADC)
-
ic-mu
Magnetic Off-Axis Absolute Position Encoder driver
-
rpk-common
RPK common fields between config tool and firmware builder
-
umm-malloc
A global allocator implementation for embedded systems using the umm_malloc library
-
task-stream
a global task executor, run in
no_std
-
ft6x06-rs
A pure Rust driver for the FT6x06 capacitive touch screen controller
-
mk20d7
Peripheral access API for MK20D7 microcontrollers
-
labrador-ldpc
Encoders and decoders for CCSDS LDPC error correcting codes
-
pmsa003i
Plantower PMSA003I Driver for Embedded HAL
-
tinydyn
A lightweight dynamic dispatch library
-
steami-rs
Board support crate for the STeaMi (steami.cc)
-
stm32f1xx-hal
HAL for the STM32F1xx family of microcontrollers
-
ina226-tp
Rust Driver for device INA226 High-Side or Low-Side Measurement, Bi-Direcional Current and Power Monitor
-
urukul
Sinara Urukul quad 1 GHz DDS driver
-
libiio-sys
Native, unsafe, bindings to the Linux libiio library. Used by industrial-io.
-
atsam4n8a-pac
Peripheral access crate for the ATSAM4N8A microcontroller
-
wake-rs
Wake protocol library written in Rust
-
stepgen
Stepper motor speed ramp generator
-
kyrax-stm32f401re
Peripherals package for stm32f401re
-
drmem-drv-sump
DrMem driver which monitors a sump pump
-
memac
A custom memory allocator using slab and buddy allocators
-
cargo-embassy
Get up and running with Embassy in seconds
-
max32660-pac
Peripheral access API for MAX 32660 microcontroller
-
raca_std
std for racaOS
-
mutex-traits
An abstraction over closure-based mutexes
-
crossbus
A Platform-Less Runtime-Less Actor Computing Model
-
memfault-ssf
Supporting crate for the Memfault memfaultd embedded Linux agent
-
embedded-time
Fully defined, inter-operable, ergonomic, and fast human-time units (both duration and rate types) with hardware timer abstraction and software timers
-
msp430
Low level access to MSP430 microcontrollers
-
stm32_i2s_v12x
Driver for I2S communication (using SPI peripherals) for some STM32 microcontrollers
-
tinylivecode
a tiny language for embedded live coding
-
prusst
A convenient interface to the UIO kernel module for TI Programmable Real-time Units
-
imxrt-boot-gen
Generate data structures for booting iMXRT processors
-
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).
-
ws2812-nrf52833-pwm
nrf52833 PWM driver for ws2812 leds
-
ssd1331-async
Async driver for SSD1331-based displays with SPI interface
-
pulau-rs
allocation-free union-find library for bare metal environments
-
afe4404
driver for Rust embedded-hal
-
trenchcoat
JavaScript-ish virtual machine for embedded, LEDs, hot code reload, etc
-
sparkfun-openlog
A platform-agnostic, embedded-hal driver for the Sparkfun OpenLogger
-
sac-base
Base crate of the sac-signal and sac-control crates
-
pcie
driver for enumerating devices
-
wiringx
safe and Rusty bindings to the wiringX library
-
lpc82x-pac
Low-level register mappings for the NXP LPC82x series of ARM Cortex-M0+ microcontrollers
-
rnacos-web-dist-wrap
rnacos server's console front-end dist embed wrap project
-
icewrap
Port of Heatshrink to Rust
-
serial-sensors-proto
wire format for transmitting MEMS sensor data and friends
-
bitpiece
bitfields for rust
-
target-gen
A cli tool to create new target files for probe-rs ot of CMSIS-Packs
-
entro-shift
Entro Shift is a 32-bit, pseudo-random number generator algorithm
-
lpc546xx-pac
Device support crates for LPC546XX-PAC devices
-
springql
Open-source stream processor for IoT devices and in-vehicle computers
-
overlay
trait for reinterpreting a slice of bytes as an arbitrary type
-
ohms
Electrical units library for embedded targets
-
ds1302
A platform agnostic driver to interface with the DS1302 real time clock-calendar
-
nstr
A no_std, no_alloc, embedded-friendly string library
-
buddyalloc
Safe and simple drop-in allocator for Rust running on embedded or bare metal systems (no_std)
-
care-script
Input script processing crate for the care tool
-
option-block
A minimal utility Rust crate for small, fixed-size blocks of optional types
-
esp32
Peripheral access crate for the ESP32
-
persistent-buff
A buffer that stays persistent in ram between boots
-
pca9535
PCA 9535 IO-Expander driver using embedded-hal
-
embassy-embedded-hal
Collection of utilities to use
embedded-hal
andembedded-storage
traits with Embassy -
qingke
Low level access to WCH's QingKe RISC-V processors
-
px4flow_bsp
A board support package for the PX4FLOW optical flow sensor board
-
nucleo-h7xx
Board support crate for the STMicroelectronics STM32H7 Nucleo-144 boards
-
scalpel-bin
binary modification tool, cut, stitch, replace, sign
-
avrd
Device-specific constants and information for all AVR microcontrollers
-
swm341-pac
Peripheral Access Crate for Synwit's swm341 microcontroller
-
modbus_buffer
Circular buffer implementation tailored for Modbus communication in no_std environments
-
himpp
Hi3XXX MPP API for Rust bindings
-
rgbled
driver for controlling RGB LEDs using PWM, with built-in gamma correction
-
simavr-ffi
Low-level bindings to simavr
-
gba_env
detecting the environment for GameBoy Advance ROMs (GBA/NDS/mGBA/VBA/gpSP/etc)
-
interchange
Request/response mechanism for embedded development, using atomics
-
iowarrior-embedded-hal
that provides access to the IOWarrior GPIO, I2C, PWM, SPI and ADC peripherals
-
websocket-std
Websocket implementation using std support, focus on microcontrollers and interoperability with other languages like C through the ffi
-
sh1108
display-interface
compatible driver for the SH1108 OLED display controller -
eva-sdk
EVA ICS v4 SDK
-
liboscore
Rust wrapper around the libOSCORE implementation of OSCORE (RFC8613), a security layer for CoAP
-
bern-kernel
Preemptive real-time kernel for microcontrollers
-
efm32wg-pac
Peripheral access API for EFM32WG MCU (generated using svd2rust)
-
radio-sx128x
Driver for the Semtec sx1280 2.4GHz RF IC
-
platform-millis
generic trait of milliseconds counter for embedded-nano-mesh crate
-
panic-rtt-target
Logs panic messages over RTT using rtt-target
-
aemics_stm32g4xx_drivers
Collection of drivers for STM32G4xx HAL
-
seminix
内核标准库
-
analog-multiplexer
A platform agnostic driver for 4051 and 4067 series analog multiplexers targetting the Rust embedded-hal
-
lpc55-hal
Hardware Abstraction Layer (HAL) for the NXP LPC55S6x ARM Cortex-33 microcontrollers
-
aarch64_define
aarch64 架构以及一些配置定义
-
uefi-graphics2
An embedded-graphics display driver for UEFI environments
-
bme280-rs
query BME280 sensors over I²C
-
lis2dtw12
no_std library for the LIS2DTW12 dual motion and temperature sensor using embedded-hal traits
-
defmt-or-log
Logging macros that forward to either defmt or log
-
ssd1680
Driver for the SSD1680 e-Paper display (EPD) controller, for use with embedded-hal
-
canadensis_can
A Cyphal implementation: Cyphal/CAN (CAN and CAN FD) transport layer
-
tf-asset-loader
loading assets from tf2 data files
-
ns16550a
UART driver
-
ens160
driver implementation
-
embedded-vintage-fonts
Vintage fonts from embedded-graphics 0.6 back release 0.7
-
orion_cfmt
Format output without Rust code segment in binary to reduce the ultimate binary size
-
aya-ebpf-cty
Type aliases to C types like c_int for use with bindgen
-
rainmaker-components
Component abstractions for rainmaker
-
mcutie
A no-std, no-alloc, opinionated MQTT client for IoT devices
-
mathx
A mathematics library designed to work with no_std
-
bt-hci
Bluetooth HCI data types
-
ina219
current/power monitor driver
-
pic32-config-sector
Calculate constant values for PIC32 configuration words
-
fdt-rs
A flattened device tree parser for embedded no-std environments
-
mcp23017-tp
Rust Driver for device MCP23017 16-Bit I2C I/O Expander with Serial Interface
-
hpm-riscv-rt
Low level access to HPMicro's RISC-V processors
-
a653rs-xng
a653rs partition library for xng hypervisor
-
sht25
Rust driver for SHT25 temperature/humidity sensor
-
embedded-graphics-core
Core traits and functionality for embedded-graphics
-
foc
various Field Oriented Control algorithms
-
rvideo
Real-time video server for embedded apps
-
ssd1675
Driver for the SSD1675 e-Paper display (EPD) controller, for use with embedded-hal
-
alt-stm32f30x-hal
Alternative HAL impl for the STM32F30x family of microcontrollers
-
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.
-
multi-mono-font
Multi mono font mixed typesetting for embedded-graphics
-
drs-0x01
Easily communicate with Dongbu Robot servomotors Herkulex DRS 0101 and DRS 0201
-
m95320
Driver for STMicroelectronics M95320 32-Kbit serial SPI bus EEPROM
-
panic-persist
Persist panic messages in the targets' RAM
-
e310x
With svd2rust generated peripherals for Freedom E310 MCU's
-
tinymqtt
A very tiny no-std MQTT client, mainly for embedded systems
-
wasefire-store
Key-value store for SLC flash storage
-
switch-hal
HAL and basic implementations for input and output switches (buttons, switches, leds, transistors)
-
embedded-simple-ui
UI elements (LED, hw switch, etc.) with implementations on top of embedded-hal and embedded-time crates
-
avr-boot
Self Programming functions for AVR MCUs
-
canopeners
CANOpen client library
-
a7105
Rust embedded-hal driver for the A7105 2.4GHz FSK/GFSK Transceiver
-
exe2swf
Extract Flash .swf files from Windows .exe files
-
biquad
digital second order IIR filtrers, also known as biquads
-
wm8960
Register map and embedded-hal based driver for Wolfson WM8960 Audio Codec
-
adafruit-seesaw
Platform-agnostic implementation for communicating with devices that run the Seesaw firmware
-
max7219-canvas
built for rust that makes setting and getting pixels from co-ordinates easy, aswell as handling displaying different layers on top of each other. Works with the max7219 crate on 8x8 matrix displays.
-
pimoroni_gfx_pack
Driver for LCD GFX PACK by Pimoroni
-
wasefire-wire
Wasefire wire format
-
txmodems
various MODEM file transfer protocols
-
aw2013
Driver for the AW2013 3-Channel LED Controller
-
bosch-bme680
A pure rust implementation for the BME680 environmental sensor
-
jt808-rs
JT808 protocol
-
pcf8563
Platform-agnostic Rust driver for the NXP PCF8563 real-time clock
-
cichlid
A color math library for programming addressable LEDs
-
cc2650
Device support for TI CC2650 microcontrollers
-
vgastream-rs
High level VGA(0xB8000) library in freestanding Rust
-
xmc4500
XMC peripheral library for XMC4500 generated from SVD
-
dtb_parser
no std but alloc depended device tree blob parsing lib
-
embedded-ads1220
Embedded Driver for the Texas Instruments ADS1220 ADC
-
va108xx
PAC for the Vorago VA108xx family of microcontrollers
-
bitwrap
pack/unpack data into byte array
-
aht10-embedded
A platform agnostic driver to interface with the AHT10 temperature/humidity sensor, tested on Rasberry Pi Pico
-
ble-peripheral-rust
A cross-platform Rust crate for building Bluetooth Low Energy peripherals
-
simple-fatfs
A simple-to-use FAT filesystem library for Rust (mainly targeted at embedded systems)
-
mcp3425
Platform agnostic Rust driver for the Microchip MCP3425/6/7/8 ADC
-
ufmt_float
A rough implementation of a writer for f32 and f64 for ufmt
-
drmem-drv-weather-wu
DrMem driver which gets Weather Underground data
-
lps28dfw
Platform-agnostic Rust driver for the LPS28DFW pressure sensor
-
cu40026
display driver for the CU40026 vacuum fluorescent display (VFD)
-
ltr303
Platform agnostic Rust driver for the LTR-303 Ambient Light Sensor
-
stm32l4
Device support crates for STM32L4 devices
-
embassy-usb-synopsys-otg
embassy-usb-driver
implementation for Synopsys OTG USB controllers -
dcmimu
no_std DCM IMU implementation
-
thumb2-stack-size
estimates stack space requirements of thumb2 programs
-
one-fpga
One FPGA general traits and types
-
ruspiro-arch-aarch64
access to Aarch64 system registers as well as specific usefull aarch64 assembly instructions
-
rda5807m
driver for Rust
-
atsamv71q21
Peripheral access API for ATSAMV71Q21 microcontrollers from Atmel/Microchip (generated using svd2rust)
-
esp-display-interface-spi-dma
Rust Bare Metal SPI Display Interface with DMA support for ESP32 chips
-
rtic-monotonics
that provides implementations of the Monotonic trait from rtic-time
-
stm32h5-staging
Device support crates for STM32H5 devices
-
atsamd51j
Peripheral access API for ATSAMD51J microcontrollers (generated using svd2rust)
-
cortex-m-interrupt
Function-like, trait-based interrupt handler registration
-
lm75
Platform-agnostic Rust driver for the LM75 temperature sensor and thermal watchdog
-
mlx9064x
interfacing with Melexis MLX9064* thermal cameras
-
mcp9808
Platform agnostic Rust driver for the Microchip MCP9808 temperature sensor
-
efm32gg-pac
Peripheral access API for EFM32GG MCU (generated using svd2rust)
-
rotary-encoder-hal
platform agnostic rotary encoder library using embedded_hal
-
sths34pf80
ST STHS34PF80 driver
-
tiny-led-matrix
direct control of a small monochrome LED display
-
hx711_spi
A platform agnostic driver to interface with the HX711 using SPI
-
thermostat-eem
Firmware for the Sinara Thermostat-EEM temperature controller
-
atsam3n4a
Peripheral access API for ATSAM3N4A microcontrollers (generated using svd2rust)
-
mcx-pac
Peripheral Access Crate for NXP MCX Series MCUs
-
robokit
Build custom firmware for simple robotic automation
-
herkulex-drs-0x01-stm32f1xx
A driver for servomotors Herkulex DRS-0101 and DRS-0201 using USART on stm32f1xx
-
cargo-dfu
cargo extension for flashing embedded rust programs via dfu
-
megadrive-sys
Bindings to the Sega Mega Drive (Genesis) hardware
-
lorawan-device
LoRaWAN device stack implementation
-
ellie_vm
Ellie VM for running Ellie ByteCode
-
rx8900
device driver for the Epson RX8900SA/CE I2C-Bus Interface Real Time Clock Module
-
hdc302x-async
An embedded-hal-async driver for the HDC302x(-Q1) low-power humidity and temperature digital sensor
-
oorandom
A tiny, robust PRNG implementation
-
allocvec
A vector type that preserves the index of every inserted element
-
rpi-st7789v2-driver
Raspberry-Pi driver for the ST7789V2 TFT display controller (WaveShare 1.69" 240x280 LCD)
-
genio
type safe, low level replacement for
std::io
. Supportsno_std
for embedded development, just disable cargo featurestd
. Because of limitations ofstd::io::Error
type,genio
providesRead
and… -
w5500-dns
DNS client for the Wiznet W5500 internet offload chip
-
embedded-registers
Procedural macro for effortless definitions of registers in embedded device drivers
-
itron
Interface to operating systems based on μITRON and its derivatives
-
oxide-spark
enables sensor sampling & LED strips control over Wifi/MQTT on ESP Rust Board
-
arm7tdmi_aeabi
proc-macro to put aeabi functions into your code
-
daisy
A board support package for the Electro-Smith Daisy Seed and Patch SM
-
itla
ITLA (micro laser) non-blocking control library using embedded-hal
-
aw-fel
dealing with Allwinner devices in FEL mode, in pure Rust
-
usbd-dfu-rt
USB DFU run-time class
-
sgpc3
Rust driver for the Sensirion SGPC3 gas sensor
-
m24c64-driver
embedded-hal(-async) driver for the M24C64 I2C EEPROM
-
nmos6502
A no_std compliant NMOS6502 emulator suitable for embedded environments
-
embedded-nrf24l01
A driver for NRF24L01(+) transceivers on embedded-hal platforms
-
wave
A no-std no-alloc gesture recognition library for low resolution TOF-Sensors
-
air-navigator-rs
serves as the entry point for embedding applications using Rust on Blue Robotics's Navigator
-
ssd1315
OLED driver
-
drive_74hc595
Drive for IC 74HC595 Shift Register
-
stockbook
1-bit image embedding at compile time
-
at24cx
A rust-embedded async driver for the Atmel AT24Cx eeprom storage family
-
embedded-svc
A set of traits for services higher level than embedded-hal and typically found in embedded microcontrollers with WiFi or BLE support
-
gd32f1
Device support crate for GD32F1 devices
-
riscv-rt
Minimal runtime / startup for RISC-V CPU's
-
driver-3461bs-rs
Driver for 3461BS LED driver
-
rak-rui3-eh-driver
Rust embedded-hal driver for the RAK LoRaWAN modules running RUI3 firmware in AT mode
-
embedded-midi
embedded hal uart to send and receive midi
-
stm32f1xx-lal
LAL for the STM32F1xx family
-
privilege_level
Quick and simple access to the current privilege level of the CPU
-
postform_decoder
Decoder for the Postform logging framework, an efficient logging framework for mcu's
-
iso7816_tx
ISO7816 Smart Card T=1 Transmission protocol
-
ppproto
Point-to-Point Protocol (PPP) for embedded systems.
no-std
compatible, no alloc (heap) required. -
purua
PU-RU-A is a PUre RUst luA implementation (to be)
-
escw-mcu
Embedded software C wrapper of MCU
-
sogi_pll
SOGI-PLL imlementation
-
fp
Fast & safe fixed-point arithmetic via compile-time checks
-
deforest
efficient
#![no_std]
parser for devicetree blobs -
da14531
Peripheral access crate for the DA14531 microcontroller
-
timed-signal
Helper crate for generating time-dependent signals
-
satrs-mib
Helper crate of the sat-rs framework to build a mission information base (MIB) from the On-Board Software (OBSW) code directly
-
srex
managing SRecord files
-
lpc550x
Register mappings for the NXP LPC550x/LPC55S0x family of Cortex-M33 microcontrollers
-
epd-spectra
Driver for Spectra EPDs from Pervasive Displays Inc
-
pico-tflmicro-sys
Rust bindings of TensorFlow Lite for Microcontrollers for Raspberry Pi Pico
-
esp-at-nal
Network layer client for ESP-AT modems
-
embedded-display-controller
Traits for display controllers
-
lpc55-pac
Peripheral access API for NXP LPC55 microcontrollers
-
femtopb-build
A code generator for
femtopb
-
ellie_fmt
Formatter for ellie
-
embedded-ads111x
ADS111x 16bit ADCs I2C rust driver no_std
-
pico-xs
Embedded-SDK for bare-metal development on the RP2040 Raspberry Pi Pico microcontroller
-
atsam4lc2b-pac
Peripheral access crate for the ATSAM4LC2B microcontroller
-
adxl345_driver2
Driver for Analog Device ADXL345/ADXL346 3-Axis Digital Accelerometer
-
cargo-n64
Cargo subcommand to build Nintendo 64 ROMs
-
rpk-config
RPK configuration tool
-
imxrt-dcd
Device Configuration Data (DCD) generator for i.MX RT1060 series firmware images
-
air001-pac
Peripheral Access Crate for Air001 microcontroller
-
ruperl
embedding perl in your rust project
-
esp32s3
Peripheral access crate for the ESP32-S3
-
relox
ELF32 relocation compression and decompression
-
picotoml
A
no_std
TOML deserializer build for embedded systems. Can be used without an allocator -
pac194x
Platform-agnostic Rust driver for the PAC194x 9V, 16-bit power monitor with alerts
-
care-ef-scp
SCP effector for the care tool
-
core_ux
no_std implementation of the non-standard types u/i1..=63
-
quad-compat-rhai
Embedded scripting for Rust
-
smolusb
An experimental lightweight library for implementing USB on embedded systems
-
ogc-rs
wrapper library for devkitPro's libogc
-
adafruit_nxp
Driver for Adafruit Precision NXP 9-DOF Breakout Board - FXOS8700 + FXAS21002 modules
-
defmt-test
A test harness for embedded devices
-
cortex-m-log
Logging facilities for Cortex-M processors
-
mavlink-bindgen
used by rust-mavlink
-
embedded-msgpack
MessagePack serialization implementation for Rust optimized for embedded/no_std environments
-
pdf417
No-std PDF417 encoder
-
qtest
Connector for working with the QTest socket
-
tdc1000
no_std driver for the TDC1000 Ultrasonic Sensing Analog Front End
-
esp32-wroom-rp
Rust-based Espressif ESP32-WROOM WiFi driver crate for RP2040 series microcontroller boards
-
axp192
A driver for the AXP192 power management IC
-
lc3-codec
LC3 audio codec for embedded systems (no_std)
-
stm32l0x1-hal
Peripheral access API for STM32L0x1 microcontrollers
-
sx1509-eh
An embedded-hal focused driver for the SX1509 GPIO expander
-
max7797x-driver
An embedded async driver for the MAX77975/MAX77976 battery charger
-
time-series-filter
Filters such as exponential weighted moving average (IIR LPF)
-
spwm_generator
cli tool for genrate SPWM lookup tables
-
heatshrink
A minimal implementation of the heatshrink compression algorithm for no_std environments
-
stm32ral
Register access layer for all STM32 microcontrollers
-
k64
Peripheral access API for Kinetis K64 microcontrollers
-
ape-fatfs
versitile FAT library for embedded systems
-
stm32f4
Device support crates for STM32F4 devices
-
dp32g030
Peripheral Access Crate for the DP32G030 microcontroller
-
rtforth
Forth implemented in Rust for realtime application
-
mcp23017
driver for the MCP23017 (16-Bit I2C I/O Expander with Serial Interface)
-
mini-rxtx
serialization and communications for embedded
-
asm6502
A basic 6502 assembler
-
noted
creating ELF notes
-
mimxrt600-fcb
Flash Configuration Block for MIMXRT600 devices
-
cortex-m-rt
Minimal runtime / startup for Cortex-M microcontrollers
-
cstream
libc::FILE
streams ‘c streams’ -
plan9_asm
Plan9 Assembly wrapper
-
xtensa-lx-rt
Minimal startup/runtime for Xtensa LX CPUs
-
overlay_macro
A proc-macro for implementing Overlay, to reinterpret a slice of bytes as a bit/byte packed struct
-
urpc
uRPC (pronounced micro RPC) is a simple and lightweight RPC framework designed with embedded systems in mind
-
crc8-rs
A heapless no-std library for doing 8-bit cyclic redundancy checks
-
w5500-ll
Low level driver for the Wiznet W5500 internet offload chip
-
ssd1351
Driver crate for the SSD1351 16bit colour OLED display driver
-
modio-logger-db
modio-logger Dbus service
-
font_7seg
7セグメントLED風数字フォント
-
moondancer-pac
A peripheral access crate for the Cynthion Moondancer SoC
-
aws-greengrass-nucleus
aws greengrass nucleus in Rust (unofficial)
-
bit_op
Bit manipulation
-
drone-nrf-map-svd
Nordic Semi nRFx SVD to bindings for Drone, an Embedded Operating System
-
pcf85063a
An embedded-hal driver for the pcf85063a RTC
-
fring
Lightweight, no_std, and *fast* ring buffer
-
aw9523b
A general driver for AW9523B which is 16 bit gpio explander & led driver
-
lpc81x-pac
Device support crates for LPC81X-PAC devices
-
ft6x06
A platform agnostic driver for the FT6x06 type touch panel controller used on STM32F4 series board
-
ad9850
Embedded driver for the AD9850 DDS synthesizer chip
-
krab
minimalistic interpreted programming language written in Rust
-
rustos
Writing an OS in Rust
-
sfsm-base
Traits for the sfsm crate
-
armv7
Low level routines for the armv7 instruction set with VMSA
-
hpm-metapac
Peripheral Access Crate (PAC) for all HPM's MCU chips, including metadata
-
ArmlabRadio
interfacing with CC1200 Radios
-
pt-rtd
Calculation of resistance and temperature for platinum type RTDs, e.g. PT100.
-
sx127x_lora
A platform-agnostic driver for Semtech SX1276/77/78/79 based boards
-
vorago-reb1
Board Support Crate for the Vorago REB1 development board
-
arducam-legacy
Driver for Arducam legacy cameras based on embedded-hal
-
avr
AVR emulator
-
menmos-antidns
Menmos Embedded DNS Server
-
do_syscall
raw syscall
-
axp2101
embedded-hal drivers
-
tmledkey-hal-drv
HAL based driver for Titan Micro 7 segment LED controllers and key scanners
-
embedded-nrf24l01-async
A driver for NRF24L01(+) transceivers on embedded-hal-async platforms(base on embedded-nrf24l01)
-
rt-xenomai
xenomai
-
northstar-client
Northstar is an container runtime for Linux targetting embedded systems
-
hcsr04_async
A no-std driver for the HC-SR04 ultrasonic sensor using async and Embassy
-
ufloat
Wrappers around floating point numbers with ufmt trait implementations
-
msp430-atomic
Atomic operations for MSP430 microcontrollers
-
starb
STAtic Ring Buffers
-
drogue-http-client
An HTTP client for embedded devices, based on drogue-network
-
pollster-lite
“we have
pollster
at#![no_std]
home” -
static-alloc
A bump allocator on static memory for the alloc-traits crate
-
bma400
A platform-agnostic Rust driver for the BMA400 12-bit ultra-low-power 3-axis accelerometer
-
embedded-list
A list component for embedded-graphics
-
cty
Type aliases to C types like c_int for use with bindgen
-
atsam3x4e
Peripheral access API for ATSAM3X4E microcontrollers (generated using svd2rust)
-
atsam3x8c
Peripheral access API for ATSAM3X8C microcontrollers (generated using svd2rust)
-
atsam3s1a
Peripheral access API for ATSAM3S1A microcontrollers (generated using svd2rust)
-
atsam3n1c
Peripheral access API for ATSAM3N1C microcontrollers (generated using svd2rust)
-
atsam3u1c
Peripheral access API for ATSAM3U1C microcontrollers (generated using svd2rust)
-
atsam3u2e
Peripheral access API for ATSAM3U2E microcontrollers (generated using svd2rust)
-
atsam3s8b
Peripheral access API for ATSAM3S8B microcontrollers (generated using svd2rust)
-
atsam3s8c
Peripheral access API for ATSAM3S8C microcontrollers (generated using svd2rust)
-
svisual
Base Rust structures and traits for SVisual client
-
mwatch-kernel-stm32l4
A embedded 'Smart' watch
-
atsame70n21b
Peripheral access API for the ATSAME70N21B MCU from Microchip (generated using svd2rust 0.28.0)
-
atsams70n20b
Peripheral access API for the ATSAMS70N20B MCU from Microchip (generated using svd2rust 0.28.0)
-
tinybmp
No-std, low memory footprint BMP image loader
-
unmp
-
sevensegment
A platform agnostic driver to interface with 7-segment LED displays
-
mju-bits
no_std typed bitfield access for u8, u16, u32 and u64
-
hf2-cli
CLI for Microsoft HID Flashing Library for UF2 Bootloaders
-
chademo-rs
An embedded-hal crate for bi-directional CHAdeMO EV charging based on IEEE Std 2030.1.1-2021
-
sega-controller
Embedded driver for reading Sega controller input
-
tmc5072
A TCM5072 driver compatible with
embedded-hal
-
avr-libcore
Minified version of libcore for AVR
-
tm16xx
Embedded drivers for TM16xx display controllers
-
fullhouse
statically-allocated deque
-
arm-gic-driver
A driver for the Arm Generic Interrupt Controller version 1-4
-
zg-co2
ZyAura CO₂ sensor protocol implementation
-
hub75-remastered
A completely rewritten driver for HUB75 displays
-
defmt-tcp
Prints defmt logs received from a TCP interface
-
as7331-rs
as7331 driver in Rust for embedded devices
-
one-wire-bus
1-Wire protocol for embedded-hal
-
ramlink
RAM-based, producer-consumer, one-way communication for microcontrollers, using a ring buffer
-
bounced
Debouncing and Testing for Signals and Buttons
-
si70xx
series relative humidity and temperature sensor driver
-
bmp280-driver
A platform agnostic driver to interface with the BMP280 pressure sensor
-
retro-display
Embedded display drivers for retro computers
-
afe4400
An
embedded-hal
compatible driver for the TI AFE4400 pulse oximetry analog front-end chip -
minimult_cortex-m
A minimal multitask library, or RTOS, for Cortex-M microcontrollers
-
apds9253
Driver for APDS9253 light sensor
-
interrupt
-
msp430fr247x
Peripheral access crate for TI MSP430FR247x microcontroller
-
AT42QT2120
Platform agnostic Rust driver for the AT42QT2120
-
lis3dh-spi
no_std driver for the ultra-low-power high-performance 3-axis "nano" accelerometer LIS3DH using SPI
-
on-off-sequence-output
Sends a sequence of on/off states to a GPIO Pin
-
canadensis_filter_config
Automatic receive filter configuration for Cyphal
-
yaxpeax-avr
AVR instruction set decoder for yaxpeax
-
ads129xx
Driver crate for the Texas Instruments ADS1292 24-bit 2-channel low-power analog front end for ECG applications
-
atsame70j21b
Peripheral access API for the ATSAME70J21B MCU from Microchip (generated using svd2rust 0.28.0)
-
atsame70q21b
Peripheral access API for the ATSAME70Q21B MCU from Microchip (generated using svd2rust 0.28.0)
-
atsame70j20b
Peripheral access API for the ATSAME70J20B MCU from Microchip (generated using svd2rust 0.28.0)
-
lora-phy
A LoRa physical layer implementation enabling utilization of a range of MCU/LoRa board combinations within embedded frameworks supporting embedded-hal-async
-
ruspiro-error
Definition of the Error trait and error handling related types to make error handling more convinient. This is some kind of the duplicate of the rust
std::error::*
stuff which does not work in ``#… -
ubench
stopgap rust benchmarking solution for microcontrollers
-
stm32f3xx-hal-v2
Peripheral access API for STM32F3 series microcontrollers
-
r3_port_riscv
RISC-V port for the R3-OS original kernel
-
esp32c2
Peripheral access crate for the ESP32-C2
-
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
-
crosstrait
Cast from
dyn Any
to other trait objects, with no_std, no alloc support -
p256-cortex-m4-sys
Low-level bindings to P256-Cortex-M4
-
mk20d7-hal
HAL for the MK20D7 family of microcontrollers
-
ma734
Platform agnostic Rust driver for the MA734, digital angle sensor that detects the absolute angular position of a permanent magnet
-
bmp280-ehal
A platform agnostic driver to interface with the BMP280 pressure sensor
-
atsamv71n20b
Peripheral access API for the ATSAMV71N20B MCU from Microchip (generated using svd2rust 0.28.0)
-
hmc5983
magnetometer driver for embedded hal
-
m24c64
A rust-embedded driver for the STMicroelectronics M24C64(-D) EEPROM
-
tca62724fmg
RGB LED driver for embedded hal
-
honeycomb
A portable parser combinator library that does not require a runtime
-
can-bit-timings
procedural macro to calculate CAN bus timings
-
arrform
String formatting without memory allocator
-
embedded-threadsafe
safe global or thread-local cells for embedded devices
-
bfcore
An interpreter for BrainF*ck without std or alloc
-
arm_gicv2
ARM Generic Interrupt Controller version 2 (GICv2) register definitions and basic operations
-
megatiny_hal
A hardware abstraction layer for attiny and atmega avr devices
-
is31fl3193
I2C driver for the IS31FL3193 RGB LED driver
-
a121-sys
Raw bindings to the A121 radar sensor C SDK
-
unmp-link-serial
serial link for unmp
-
dac5578
Texas Instruments DAC5578 Driver for Rust Embedded HAL
-
ham-cats
Reference implementations for CATS, the ham radio protocol
-
r3_port_arm
Armv7-A port for the R3-OS original kernel
-
bm1397-protocol
Rust protocol driver for the BM1397 Bitcoin Mining ASIC
-
apu_pcengines_hal
A safe wrapper around the direct memory interface of the APU2+ hardware
-
bmp280-core
Driver for BMP280
-
bitmap-font
Bitmap fonts for the embedded-graphics crate that don't require generics
-
w7500x-pac
Peripheral Access Crate for Wiznet's W7500x microcontrollers
-
memcom
Command-line tool to interact with shared-mem-queue queues
-
unid
Automate device security provisioning with edge intelligence
-
nucleo-l031k6-bsp
Board support crate for the ST L031K6-NUCLEO
-
embassy-net-driver-channel
High-level channel-based driver for the
embassy-net
async TCP/IP network stack -
stackdump-core
stack dump definitions
-
unmp-protocol-raw
raw protocol for unmp
-
klaptik
Experimental UI rendering framework for LCD/OLED displays
-
fs1027-dg-hal
FS1027-DG Gas Flow Sensor Module driver for no_std embedded-hal
-
ws2811-spi
SPI-based driver for ws2811 chips
-
defmt-listener
decode and print defmt-itm data received from tcp
-
embassy-net-tuntap
embassy-net driver for Linux TUN/TAP interfaces
-
microasync-util
very small async runner
-
nobcd
BCD number primitive for no_std environments
-
minicbor-embedded-io
Async reader and writer types for minicbor
-
drv2605-async
An async rust-embedded driver for the Texas Instruments DRV2605 haptic driver
-
atsamv71q20b
Peripheral access API for the ATSAMV71Q20B MCU from Microchip (generated using svd2rust 0.28.0)
-
atsamv70n19b
Peripheral access API for the ATSAMV70N19B MCU from Microchip (generated using svd2rust 0.28.0)
-
atsamv70q19b
Peripheral access API for the ATSAMV70Q19B MCU from Microchip (generated using svd2rust 0.28.0)
-
atsamv70n20b
Peripheral access API for the ATSAMV70N20B MCU from Microchip (generated using svd2rust 0.28.0)
-
trellis_m4
Board Support crate for the Adafruit NeoTrellis M4 Express
-
periphery
peripheral I/O (GPIO, PWM, SPI, I2C, MMIO) in Linux
-
trallocator
A no_std lbrary for wrapping an existing allocator and tracking the heap usage
-
defmt-ringbuf
defmt persistent ring buffer logger
-
kc11b04
Driver for the KC11B04 4-button analog keypad
-
wpilib-sys
FRC's WPILib system bindings for rust
-
arm-pl011-rs
PL011 UART driver
-
pimoroni-trackball-driver
embedded driver for the pimoroni trackball
-
p9813
RGB controller
-
jh71xx-pac
Peripheral access crate for the JH71xx SoCs
-
lsm6dsox
Platform-agnostic embedded-hal driver for the ST LSM6DSOX iNEMO inertial module
-
usbd-blaster
USB Blaster for Embedded Devices
-
tm1637
A platform agnostic driver to a LED-display powered by the TM1637 chip
-
dht11
Platform-agnostic Rust driver for the DHT11 temperature and humidity sensor
-
scd30pi
Interfaces the SCD30 i2c CO2, temperature and humidity sensor from Sensirion for Raspberry Pi
-
mt9v034-i2c
mt9v034 image sensor two-wire programming driver
-
pir-motion-sensor
PIR motion sensors
-
embassy-traits
-
ape-table-trig
implementations of sin, cos, and tan using precalculated tables
-
std-embedded-nal-async
embedded-nal-async
traits for large devices that support the standard library -
platform-switch
Namespace facades for switching between platforms
-
mks979b
no_std driver for the MKS 979B Atmosphere to Vacuum Transducer. Based on the embedded-hal traits.
-
bq27xxx
(bq27426, bq27427) platform-agnostic driver
-
avr-vm
VM with JIT-compiler for ATMega32
-
s32k118-pac
Device Support Crate for NXP S32K118 Devices
-
defmt-itm
Transmit defmt log messages over the ITM (Instrumentation Trace Macrocell) stimulus port
-
smbus-request-parser
Parse SMBus requests. Register functions to call for each type of write/read request. Agnostic regarding polling, irq, dma usage.
-
lcd
Hitachi HD44780-compatible LCD screen support for embedded development
-
teensy4-selfrebootor
A self-rebooting implementation of teensy's rebootor for teensy4
-
freertos-sys
Builds FreeRTOS from source for specific device families and provides easy linking
-
swap-n
an n argument extension to std::mem::swap
-
volatile-mem
managing volatile memory
-
drmem-drv-ntp
DrMem driver which monitors ntpd daemons
-
embedded-controls
Based on switch-hal library that allows to handle primitive controls(buttons, encoders and etc.)
-
stuw81300
An embedded-hal driver for the STuW81300
-
drv8833-driver
A driver for DRV8833 motor driver
-
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).
-
ltc690x
driver crate for LTC690x serial programmable oscillator
-
rust-forth-compiler
A Forth compiler written in Rust
-
sae-j1939
both embedded and non-embedded use cases
-
ogc-sys
Rust bindings for devkitPro's libogc
-
phm
Pretty HAL Machine
-
pid-ctrl
A flexible PID controller
-
pinetime-mynewt
Mynewt Bindings for PineTime Smart Watch
-
mimxrt500-bootstub
Glue code to make cortex-m-rt work with NXP i.MX RT500 series chips when booting from FlexSPI NOR flash
-
mcan
Unofficial MCAN Hardware Abstraction Layer
-
fchashmap
A fixed capacity no_std hashmap
-
drogue-boot
A cortex-m bootloader toolkit
-
async-pool
Statically allocated pool providing a std-like Box, with async functionality
-
embedded-i2s
An embedded Inter-IC Sound (I2S) abstraction layer
-
rhai_codegen
Procedural macros support package for Rhai, a scripting language and engine for Rust
-
grapple-config
Grapple Robotics' configuration structs and traits for use on embedded-hal projects
-
nrf-modem-nal
An embedded-nal implementation for the nrf9160 modem
-
ads122x04
Platform-agnostic driver for the ADS122C04 and ADS122U04 analog to digital converters
-
seeed-erpc
Driver crate for interacting with seeed-studio eRPC Wifi devices
-
midi-stream-parser
Parser to convert bytes from a MIDI stream into messages
-
apds9960
Platform-agnostic Rust driver for the APDS9960 digital proximity, ambient light, RGB and gesture sensor
-
nuki-backend-hifb
A HiFB + HiTDE drawing backend for the Nuki 2D immediate GUI library
-
at42qt1070
Embedded-hal implementation for the AT42QT1070
-
otm8009a
Hardware Abstraction Layer for OTM8009A LCD controller IC
-
wurth-calypso
Driver for the Würth Elektronik Calypso Wi-Fi radio module
-
mii
A rust-embedded implementation of the monome ii protocol
-
mcp4725-async
An async driver for the MCP4725 DAC
-
huber-pilot-one
huber Pilot ONE library
-
weensy
A collection of useful bits and bobs for programming the Teensy 4.1 microcontroller
-
ldc1614
TI LDC1614 inductance-to-digital converter user-friendly driver for
embedded-hal
-
libalgobsec-sys
Unsafe bindings to the Bosch BSEC library
-
cargo-ruspiro-push
Cargo tool to push new RusPiRo Kernel's from the development machine (PC) to the Raspberry Pi if connected through a serial port
-
diskio
trait for handling disk IO devices
-
hds
Heapless Data Structures for
no_std
environments -
arm_pl011
ARM Uart pl011 register definitions and basic operations
-
cmsis-rtos2
wrapper for the CMSIS-RTOS2 API, which should be provided by another library, and linked into the consuming library or application
-
micropnm
lightweight, zero-dependency Rust crate for parsing binary PPM image files. It is designed to with minimal memory usage and is suitable for embedded contexts and WebAssembly.
-
esp-idf-sys
Bindings for ESP-IDF (Espressif's IoT Development Framework)
-
levarint64
Little-Endian VARiable-length INTeger codec, compatible with no_std
-
r3_support_rza1
Supporting package for running R3-OS on Renesas RZ/A1
-
debounced-pin
A platform-agnostic debounce library. It also adds a wrapper for an
InputPin
that debounces it’sis_high()
andis_low()
methods -
cyclone-v
Cyclone V FPGA programming library for Rust
-
gc9a01a
SPI driver for the GC9A01A LCD display controller
-
rp2040-panic-usb-boot
On panic, boot to USB mode implemented in ROM
-
qwiic-button-led
A driver for the SparkFun Qwiic Button LED
-
rtic-macros
Procedural macros, syntax parsing, and codegen of the RTIC crate
-
ad5328
A rust-embedded driver for the Analog Devices ad5328 DAC
-
ezo_i2c_rs
interface to interact with Atlas Scientific Ezo Devices, using the I2C protocol
-
rpi_embedded
Interface for the Raspberry Pi's GPIO, I2C, PWM, SPI and UART peripherals. Forked from RPPAL
-
max6955
A platform agnostic driver to interface with MAX6955 LED Display Driver
-
aarch64-std
implementations of standard library components for bare-metal aarch64
-
edge-frame
Yew & Wasm-based user interface for microcontrollers
-
st7567_rs
ST7567 LCD driver with embedded-graphics support
-
std-embedded-nal
embedded-nal
traits for large devices that support the standard library -
bmp388
A platform agnostic driver to interface with the BMP388 pressure sensor
-
ad9912
1 GHz DDS SPI driver
-
calliope
Board support crate for the Calliope Mini (calliope.cc)
-
xtensa-lx106-rt
Low level access for xtensa lx6 processors and peripherals
-
stm32g0
Device support crates for STM32G0 devices
-
freebsd-embedded-hal
embedded-hal
traits for FreeBSD devices -
e-ring
A no_std append only ring buffer, when full new element replace oldest one
-
avr-std-stub
Contains simple implementations of required language items that
libstd
normally defines on other targets -
gihex-hc-sr04
access HC-SR04 ultrasonic sensor
-
max31855-rs
MAX31855 Cold-Junction Compensated Thermocouple-to-Digial Converter
-
dwf
Digilent WaveForms library Rust wrapper
-
jewel
BLE for a bare-metal, real-time system
-
k510-pac
Peripheral access API for Canaan K510 SoC generated from unofficial SVD file
-
cd74hc4067
A platform agnostic driver to interface with CD74HC4067
-
aevum
A CLI utility to calculate timer register values for STM32 microcontrollers
-
lvgl-sys
Raw bindings to the LVGL C library
-
thumby
TinyCircuits Thumby device
-
nu-isp
Nuvoton ISP_HID protocol library
-
lpc54606-pac
Low-level register mappings for the NXP LPC54606 series of ARM Cortex-M4 microcontrollers
-
embedded-nal-async-xtra
Hosts a bunch of traits which are not yet available in the embedded-nal-async crate
-
mnemos
A tiny embedded operating system kernel
-
clerk
A fully featured hardware agnostic HD44780 LCD controlling library
-
smlang-macros
Procedual macros for the smlang crate
-
ft5336
A platform agnostic driver for the FT5336 touch screen driver used on the STM32F746 Discovery board, built using the embedded-hal
-
mini-slcan-ng
Serial Line CAN (SLCAN) protocol decoder/encoder
-
espup
installing and maintaining Espressif Rust ecosystem
-
sensirion-rht
Driver for several temperature and humidity sensors from Sensirion
-
coap-zero
CoAP protocol implementation for no_std without alloc
-
wm8731
HAL for the WM8731 audio codec
-
allegro-motor-drivers
Allegro microsystems motor controller driver registers
-
saelient
SAE-J1939 support library
-
not-io
A synthesis between no-std, no-alloc and std::io
-
microchip-eeprom-25x
A platform agnostic driver to interface with the Microchip 25xxxx EEPROM through SPI
-
mwatch-sdk
A development SDK for applications on the https://github.com/MWatch
-
bmx055
platform agnostic Rust driver for the BMX055 small, versatile 9-axis sensor module: 3D accelerometer, 3D gyroscope and 3D magnetometer
-
max32660-hal
Hardware Abstraction Layer (HAL) for the MAX 32660 microcontroller
-
bl61x-pac
Embedded Rust's Peripheral Access Crate for BL616/BL618 microcontrollers
-
df2301q
Gravity Offline Voice Recognition Module Rust Driver
-
shiftreg-spi
SPI-based driver for shift registers such as 74HC595 with embedded-hal API
-
utf-16-to-utf-8
Convert UTF-16 to UTF-8 encoding
-
phm-worker
The Embedded Worker for Pretty HAL Machine
-
microchip-tc72r-rs
A platform agnostic driver to interface with the Microchip TC72 (temperature sensor) through SPI using embedded-hal
-
bmi088
6DOF IMU driver for embedded hal
-
endian-type-rs
Type safe wrappers for types with a defined byte order
-
svm40
Rust driver for the Sensirion SVM40 sensor
-
burble-fs
Bluetooth LE file system storage backend
-
efm32tg-pac
Peripheral access API for EFM32TG MCU (generated using svd2rust)
-
usbd-microsoft-os
Microsoft OS USB descriptors for usb-device
-
drv2605l
A platform agnostic driver for the drv2605l haptic driver
-
ufmt-utils
μfmt
utilities -
stemma_soil_sensor
reading data from Adafruit STEMMA Soil Sensor
-
rkrga-sys
Rockchip RGA FFI bindings for Rust
-
is31fl3733
A platform agnostic driver to interface with the IS31FL3733 (16x12 LED Matrix Driver) written in Rust
-
mics-vz-89te
driver implementation
-
git-tags-semver
extract SemVer Version Information from annotated git tags
-
cloudmqtt
A pure Rust MQTT client and server library
-
ea-big
open ea .big game files
-
pololu-smc
A driver for the Pololu Simple Motor Controller G2
-
ueight
Helpers for raw AVR programming
-
lilos-handoff
Synchronous rendezvous structure for lilos
-
async-embedded-traits
A set of async traits for embedded systems
-
blend-srgb
A small,
#![no_std]
-compatible sRGB conversion and blending library designed for performance -
msp430-rt
Minimal runtime / startup for MSP430 microcontrollers
-
beepy-display
Embedded graphics DrawTarget for Beepy
-
num_x
Implement the following non standard integers: u1, 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…
-
wasefire-cli-tools
Command-line utilities for Wasefire
-
simp6502
Opcode definition and interpreter for 6502 assembly
-
ist7920
SPI driver for the IST7920 LCD display controller
-
GPS-Gunnlaug_18
individual-assignment 7 in mechatronics 1: Crate up
-
bytex
8bit helper functions, mostly for AVR
-
dcc-rs
NMRA Digital Command Control for driving model trains
-
sdio_sdhc
driver to drive sdhc over SDIO, no filesystem, only test stm32f407 board,other stm32f4xx boards have no test
-
rwedid
Read and write EDID data over an I2C bus
-
max485
embedded-hal driver for operating the MAX485 uart to rs485 module in half duplex mode
-
lpc55s6x-pac
Peripheral access API for NXP LPC55s6x microcontrollers
-
lvbitfile2rust-cli
Command line entrypoint for the lvbitfile2rust crate
-
rust-forth-tokenizer
A Forth tokenizer written in Rust
-
dps422
A platform agnostic driver to interface with the DPS422 barometric pressure & temp sensor through I2C
-
as5048a
Rust driver for AMS AS5048A Magnetic Rotary Encoder
-
esp-storage
embedded-storage traits to access unencrypted ESP32 flash
-
oc2-hlapi
Rust bindings for the OpenComputers II Minecraft mod's HLAPI
-
nu-isp-cli
CLI tool for Nuvoton ISP_HID Bootloaders
-
ke04z4-pac
PAC for NXP Kinetis MKE04Zx microcontrollers
-
embedded-fps
Frames Per Second counter for embedded devices
-
sdp8xx
Platform agnostic Rust driver for the Sensirion SDP8xx differential pressure sensor
-
freertos-cargo-build
lib for building & using FreeRTOS in rust projects inside the build.rs
-
robot-hat-rs
The unofficial Rust implementation of robot-hat Python Library
-
ehlcd2d
embedded-hal driver for HD44780 with async support
-
u32err
A neat error type for FFI functions (where non-zero = failure)
-
hd44780_menu
A menu system for use with the HD44780 display
-
ist8310
magnetometer driver for embedded hal
-
embedded_font
Font rendering (ttf and otf) with embedded-graphics
-
r0
Initialization code ('crt0') written in Rust
-
efm32zg110-pac
Peripheral access API for EFM32ZG110 MCU (generated using svd2rust)
-
dfr0299
serial protocol for the DFR0299 MP3 player module
-
efm32zg108-pac
Peripheral access API for EFM32ZG108 MCU (generated using svd2rust)
-
efm32zg222-pac
Peripheral access API for EFM32ZG222 MCU (generated using svd2rust)
-
efm32zg210-pac
Peripheral access API for EFM32ZG210 MCU (generated using svd2rust)
-
hvac
hvac controller state machine
-
ambiq-apollo3-pac2
Peripheral access API for APOLLO3 microcontrollers
-
ht32f1xxxx
Device support crates for HT32F1XXXX devices
-
embedded-nal-tcpextensions
Extensions to embedded-nal's TCP parts around the more precise use of the stack's buffers
-
lcd-pcf8574
Hitachi HD44780-compatible LCD display attached to PCF8574 I2C expander
-
mcf-config-demo-settings
A Proof of Concept
-
rart-rs
A async runtime to use the benefits of the availables embedded OS
-
ufmt-stdio
C stdio writer for ufmt
-
embedded-flight-scheduler
Embedded flight real-time scheduler library
-
mallocator
Use malloc() and free() for memory management in Rust
-
mcp9600
Basic embedded-hal-based I2C driver for the MCP9600 and MCP9601 thermocouple amplifier ICs
-
i2c-reg
Create registers for reading and writing with I2C interface
-
kernaux-sys
Unsafe no-std binding to libkernaux - auxiliary library for kernel development
-
axp20x
Rust driver for axp20x Power Management Unit
-
tfmicro
Rust bindings of TensorFlow Lite for Microcontrollers
-
pebble-rust
Pebble bindings for Rust. See repository for instructions.
-
trinamic
Motion Control Language (TMCL) in Rust
-
ls7366
Rust interface to the LS7366 quadrature encoder buffer
-
lp50xx
platform agnostic library for the Texas Instruments LP50XX led driver
-
utrace_core
Instrumentation-based profiling library for embedded targets with async support
-
ssd1309
display-interface
compatible driver for the SSD1309 OLED display controller -
flash-algorithm
write CMSIS-DAP flash algorithms for flashing embedded targets
-
senseair
Protocol implementations to communicate with Senseair devices
-
bluetooth-hci
Bluetooth HCI
-
cubic-splinterpol
efficient cubic spline interpolation on no_std
-
ht32f2xxxx
Device support crates for HT32F2XXXX devices
-
sparreal-rt
Sparreal OS Runtime
-
static-linkedlist
A linked list implementation on a static array. Intended for use in environments without dynamic memory allocation.
-
i3g4250d
A platform agnostic driver to interface the I3G4250D (gyroscope)
-
edc2svd
Convert register description from the EDC format to the SVD format
-
max3263x
svd2rust generated peripheral crate for the max3263x
-
rn2xx3
Rust driver for Microchip RN2483 and RN2903 LoRaWAN modules. [WIP]
-
unmp-protocol-etp
etp protocol for unmp
-
anachro-icd
The Interface Control Document for Anachro-PC
-
ht32f2yyy
Device support crates for HT32F2YYY devices
-
drogue-grove-uart-spi
Grove's SPI over UART protocol
-
edge-net
no_std and no-alloc async implementations of various network protocols
-
can_aerospace_lite
A lite version of CAN Aerospace Implementation according to 'Interface specification for airborne CAN applications V 1.7'
-
postcard-dyn
Dynamic ser/de for postcard
-
panic-custom
Small panicking rust crate that allows to easily set the behavior of panicking for embedded or regular no_std binaries
-
bq24195-i2c
I2C driver for Texas Instruments BQ24195 Single Cell Charger
-
embeddy
Resource embedding
-
tai-time
Nanosecond-precision monotonic clock timestamps based on the TAI time standard
-
bbq10kbd
An Embedded-HAL driver for @arturo182's bbq10kbd PMOD
-
sh1122-rppal
A user mode driver for SH1122 (Raspberry PI interface)
-
si5351
A platform agnostic driver for the Si5351 clock generator
-
riot
RIOT OS bindings for Rust
-
picoborgrev
A controller library for PiBorg's PicoBorg Reverse motor driver board designed for use with the Raspberry Pi
-
vfork
vfork-rs is used in embedded low memory to run an external program
-
kobo
interacting with Kobo devices
-
adc-interpolator
An interpolator for analog-to-digital converters
-
aarch64-arch-helpers
Helper functions to access aarch64 CPU registers
-
stackdump-capture-probe
capturing stack dumps of embedded devices with a debugging probe
-
embedded-mqtt
no_std encoder/decoder for MQTT 3.1.1 protocol packets for embedded devices
-
tsl2591
embedded hal driver for the TSL2591
-
max112x
Driver for the 24-bit MAX11214 and similar ADCs
-
drone-tisl-map
Texas Instruments SimpleLink™ peripheral mappings for Drone, an Embedded Operating System
-
lc709203
Platform-agnostic Rust driver for the LC709302 battery gauge sensor
-
embedded-threads
generic embedded scheduler & IPC
-
esb
Nordic's Enhanced ShockBurst communication protocol
-
monotron-synth
1980's home computer style synthesiser that sounds pretty bad
-
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…
-
nintendo64-pac
A peripheral access crate for the Nintendo 64
-
ad983x
Platform-agnostic Rust driver for the AD9833, AD9834, AD9837 and AD9838 low-power programmable waveform generators / direct digital synthesizers
-
va108xx-hal
HAL for the Vorago VA108xx family of microcontrollers
-
vcgencmd
Bindings for Raspberry Pi's vcgencmd utility
-
unsize
A stable alternative to CoerceUnsize
-
wm8731-another-hal
Thin abstraction for the Cirrus Logic/Wolfson WM8731 audio codec IC
-
keypad2
reading a 3X4 keypad with embedded-hal
-
hcs-12ss59t
Platform-agnostic embedded-hal driver for Samsung HCS-12SS59T VFD displays
-
bern-conf-type
Bern RTOS configuration type
-
shared
A macro for safely sharing data between application and interrupt context on cortex-m systems
-
embedded-hdc1080-rs
Rust driver for the HDC1080 low-power humidity and temperature digital sensor
-
is31fl3743a
Driver for Lumissil Microsystem's IS31FL3743A IC
-
ina260
A platform agnostic driver to interface with the I2C based TI INA260 power monitor
-
pac55xx-hal
Hardware Abstraction Layer (HAL) for PAC55XX
-
sgp41
Rust driver for the Sensirion SGP41 series. VOC and NOx Sensor.
-
max17320
An embedded hal driver for the MAX17320 (2S-4S ModelGauge m5 Fuel Gauge with Protector, Internal Self-Discharge Detection and SHA-256 Authentication)
-
PY32c670xx-pac
Peripheral Access Crate for Puya's PY32c670xx microcontroller
-
lpc43xx
Register definitions for the NXP LPC43xx microcontroller platform, generated through svd2rust
-
da14531-hal
HAL crate for the DA14531 microcontroller
-
bern-conf
Bern RTOS default configuration
-
mcp795xx
A driver for the MCP795xx real time clock. Uses the embedded-hal crate.
-
sparreal-kernel
Sparreal OS kernel
-
adxl355
A platform agnostic driver to interface with the ADXL355 (accelerometer) through SPI
-
synergetic
Minimal tick-based async executor for constrained environments
-
microscpi
creating SCPI interfaces
-
encoded_pin
Binary encoded OutputPin, e.g. for encoded SPI chip select
-
atsams70q21
Peripheral access API for ATSAMS70Q21 microcontrollers from Atmel/Microchip (generated using svd2rust)
-
avr-libc
Rust bindings to avr-libc
-
opcua-core
Core components for OPC UA used by client and server
-
adafruit-bluefruit-protocol
A
no_std
parser for the Adafruit Bluefruit LE Connect controller protocol -
monotron-app
Support crate for writing Monotron applications
-
gpio-expander
A platform-independent driver for interacting with the products GPIO Port Expander (Troyka Module), Troyka HAT and Slot Expander Expansion Board
-
nourl
Url primitive for no_std environments
-
ht32f1yyy
Device support crates for HT32F1YYY devices
-
rsportal
A higher-level interface to the Adafruit PyPortal
-
efm32gg12b390-pac
Peripheral access API for EFM32GG12B390 MCU (generated using svd2rust)
-
efm32gg12b530-pac
Peripheral access API for EFM32GG12B530 MCU (generated using svd2rust)
-
efm32gg12b130-pac
Peripheral access API for EFM32GG12B130 MCU (generated using svd2rust)
-
efm32gg12b510-pac
Peripheral access API for EFM32GG12B510 MCU (generated using svd2rust)
-
efm32gg11b840-pac
Peripheral access API for EFM32GG11B840 MCU (generated using svd2rust)
-
embedded-gfx
3D graphics rendering for embedded systems
-
efm32tg11b140-pac
Peripheral access API for EFM32TG11B140 MCU (generated using svd2rust)
-
efm32tg11b320-pac
Peripheral access API for EFM32TG11B320 MCU (generated using svd2rust)
-
efm32gg11b320-pac
Peripheral access API for EFM32GG11B320 MCU (generated using svd2rust)
-
efm32gg11b420-pac
Peripheral access API for EFM32GG11B420 MCU (generated using svd2rust)
-
efm32gg11b120-pac
Peripheral access API for EFM32GG11B120 MCU (generated using svd2rust)
-
efm32gg12b810-pac
Peripheral access API for EFM32GG12B810 MCU (generated using svd2rust)
-
efm32gg12b830-pac
Peripheral access API for EFM32GG12B830 MCU (generated using svd2rust)
-
efm32tg11b520-pac
Peripheral access API for EFM32TG11B520 MCU (generated using svd2rust)
-
efm32tg11b340-pac
Peripheral access API for EFM32TG11B340 MCU (generated using svd2rust)
-
efm32tg11b120-pac
Peripheral access API for EFM32TG11B120 MCU (generated using svd2rust)
-
efm32tg11b540-pac
Peripheral access API for EFM32TG11B540 MCU (generated using svd2rust)
-
efm32gg11b520-pac
Peripheral access API for EFM32GG11B520 MCU (generated using svd2rust)
-
efm32gg12b430-pac
Peripheral access API for EFM32GG12B430 MCU (generated using svd2rust)
-
efm32gg12b330-pac
Peripheral access API for EFM32GG12B330 MCU (generated using svd2rust)
-
efm32gg11b310-pac
Peripheral access API for EFM32GG11B310 MCU (generated using svd2rust)
-
efm32gg11b110-pac
Peripheral access API for EFM32GG11B110 MCU (generated using svd2rust)
-
efm32gg12b410-pac
Peripheral access API for EFM32GG12B410 MCU (generated using svd2rust)
-
efm32gg11b820-pac
Peripheral access API for EFM32GG11B820 MCU (generated using svd2rust)
-
efm32jg12b500-pac
Peripheral access API for EFM32JG12B500 MCU (generated using svd2rust)
-
efm32gg12b310-pac
Peripheral access API for EFM32GG12B310 MCU (generated using svd2rust)
-
efm32gg12b110-pac
Peripheral access API for EFM32GG12B110 MCU (generated using svd2rust)
-
efm32jg1b200-pac
Peripheral access API for EFM32JG1B200 MCU (generated using svd2rust)
-
efm32jg1b100-pac
Peripheral access API for EFM32JG1B100 MCU (generated using svd2rust)
-
efm32lg840-pac
Peripheral access API for EFM32LG840 MCU (generated using svd2rust)
-
efm32hg309-pac
Peripheral access API for EFM32HG309 MCU (generated using svd2rust)
-
efm32wg380-pac
Peripheral access API for EFM32WG380 MCU (generated using svd2rust)
-
efm32wg900-pac
Peripheral access API for EFM32WG900 MCU (generated using svd2rust)
-
efm32tg232-pac
Peripheral access API for EFM32TG232 MCU (generated using svd2rust)
-
efm32lg230-pac
Peripheral access API for EFM32LG230 MCU (generated using svd2rust)
-
efm32lg380-pac
Peripheral access API for EFM32LG380 MCU (generated using svd2rust)
-
efm32hg110-pac
Peripheral access API for EFM32HG110 MCU (generated using svd2rust)
-
efm32tg222-pac
Peripheral access API for EFM32TG222 MCU (generated using svd2rust)
-
efm32hg108-pac
Peripheral access API for EFM32HG108 MCU (generated using svd2rust)
-
efm32lg895-pac
Peripheral access API for EFM32LG895 MCU (generated using svd2rust)
-
efm32gg390-pac
Peripheral access API for EFM32GG390 MCU (generated using svd2rust)
-
efm32gg230-pac
Peripheral access API for EFM32GG230 MCU (generated using svd2rust)
-
efm32gg895-pac
Peripheral access API for EFM32GG895 MCU (generated using svd2rust)
-
efm32gg290-pac
Peripheral access API for EFM32GG290 MCU (generated using svd2rust)
-
efm32gg842-pac
Peripheral access API for EFM32GG842 MCU (generated using svd2rust)
-
efm32lg940-pac
Peripheral access API for EFM32LG940 MCU (generated using svd2rust)
-
efm32gg232-pac
Peripheral access API for EFM32GG232 MCU (generated using svd2rust)
-
efm32gg890-pac
Peripheral access API for EFM32GG890 MCU (generated using svd2rust)
-
efm32tg822-pac
Peripheral access API for EFM32TG822 MCU (generated using svd2rust)
-
efm32lg232-pac
Peripheral access API for EFM32LG232 MCU (generated using svd2rust)
-
efm32tg225-pac
Peripheral access API for EFM32TG225 MCU (generated using svd2rust)
-
efm32tg825-pac
Peripheral access API for EFM32TG825 MCU (generated using svd2rust)
-
efm32gg295-pac
Peripheral access API for EFM32GG295 MCU (generated using svd2rust)
-
efm32gg332-pac
Peripheral access API for EFM32GG332 MCU (generated using svd2rust)
-
efm32lg290-pac
Peripheral access API for EFM32LG290 MCU (generated using svd2rust)
-
efm32lg980-pac
Peripheral access API for EFM32LG980 MCU (generated using svd2rust)
-
efm32lg880-pac
Peripheral access API for EFM32LG880 MCU (generated using svd2rust)
-
efm32gg900-pac
Peripheral access API for EFM32GG900 MCU (generated using svd2rust)
-
efm32gg330-pac
Peripheral access API for EFM32GG330 MCU (generated using svd2rust)
-
efm32gg980-pac
Peripheral access API for EFM32GG980 MCU (generated using svd2rust)
-
efm32gg280-pac
Peripheral access API for EFM32GG280 MCU (generated using svd2rust)
-
efm32tg230-pac
Peripheral access API for EFM32TG230 MCU (generated using svd2rust)
-
efm32lg360-pac
Peripheral access API for EFM32LG360 MCU (generated using svd2rust)
-
efm32tg842-pac
Peripheral access API for EFM32TG842 MCU (generated using svd2rust)
-
efm32lg942-pac
Peripheral access API for EFM32LG942 MCU (generated using svd2rust)
-
efm32tg110-pac
Peripheral access API for EFM32TG110 MCU (generated using svd2rust)
-
efm32lg295-pac
Peripheral access API for EFM32LG295 MCU (generated using svd2rust)
-
efm32hg210-pac
Peripheral access API for EFM32HG210 MCU (generated using svd2rust)
-
efm32lg900-pac
Peripheral access API for EFM32LG900 MCU (generated using svd2rust)
-
efm32hg310-pac
Peripheral access API for EFM32HG310 MCU (generated using svd2rust)
-
efm32hg308-pac
Peripheral access API for EFM32HG308 MCU (generated using svd2rust)
-
efm32hg350-pac
Peripheral access API for EFM32HG350 MCU (generated using svd2rust)
-
efm32tg108-pac
Peripheral access API for EFM32TG108 MCU (generated using svd2rust)
-
efm32lg395-pac
Peripheral access API for EFM32LG395 MCU (generated using svd2rust)
-
efm32tg210-pac
Peripheral access API for EFM32TG210 MCU (generated using svd2rust)
-
efm32lg390-pac
Peripheral access API for EFM32LG390 MCU (generated using svd2rust)
-
efm32gg942-pac
Peripheral access API for EFM32GG942 MCU (generated using svd2rust)
-
efm32gg880-pac
Peripheral access API for EFM32GG880 MCU (generated using svd2rust)
-
efm32tg840-pac
Peripheral access API for EFM32TG840 MCU (generated using svd2rust)
-
efm32lg330-pac
Peripheral access API for EFM32LG330 MCU (generated using svd2rust)
-
efm32lg990-pac
Peripheral access API for EFM32LG990 MCU (generated using svd2rust)
-
efm32lg995-pac
Peripheral access API for EFM32LG995 MCU (generated using svd2rust)
-
efm32hg322-pac
Peripheral access API for EFM32HG322 MCU (generated using svd2rust)
-
efm32gg995-pac
Peripheral access API for EFM32GG995 MCU (generated using svd2rust)
-
efm32gg940-pac
Peripheral access API for EFM32GG940 MCU (generated using svd2rust)
-
efm32g890-pac
Peripheral access API for EFM32G890 MCU (generated using svd2rust)
-
efm32g230-pac
Peripheral access API for EFM32G230 MCU (generated using svd2rust)
-
efm32hg222-pac
Peripheral access API for EFM32HG222 MCU (generated using svd2rust)
-
efm32hg321-pac
Peripheral access API for EFM32HG321 MCU (generated using svd2rust)
-
efm32lg280-pac
Peripheral access API for EFM32LG280 MCU (generated using svd2rust)
-
efm32lg890-pac
Peripheral access API for EFM32LG890 MCU (generated using svd2rust)
-
efm32lg842-pac
Peripheral access API for EFM32LG842 MCU (generated using svd2rust)
-
efm32gg380-pac
Peripheral access API for EFM32GG380 MCU (generated using svd2rust)
-
efm32gg990-pac
Peripheral access API for EFM32GG990 MCU (generated using svd2rust)
-
efm32gg395-pac
Peripheral access API for EFM32GG395 MCU (generated using svd2rust)
-
efm32g210-pac
Peripheral access API for EFM32G210 MCU (generated using svd2rust)
-
efm32g290-pac
Peripheral access API for EFM32G290 MCU (generated using svd2rust)
-
efm32g280-pac
Peripheral access API for EFM32G280 MCU (generated using svd2rust)
-
efm32g842-pac
Peripheral access API for EFM32G842 MCU (generated using svd2rust)
-
efm32g800-pac
Peripheral access API for EFM32G800 MCU (generated using svd2rust)
-
efm32g200-pac
Peripheral access API for EFM32G200 MCU (generated using svd2rust)
-
efm32g840-pac
Peripheral access API for EFM32G840 MCU (generated using svd2rust)
-
efm32g880-pac
Peripheral access API for EFM32G880 MCU (generated using svd2rust)
-
efm32g232-pac
Peripheral access API for EFM32G232 MCU (generated using svd2rust)
-
efm32g222-pac
Peripheral access API for EFM32G222 MCU (generated using svd2rust)
-
tpa2016d2
Embedded-hal driver for the Texas Instruments TPA2016D2 Class-D amplifier
-
msg_store_server_api
The backbone of the msg-store api that can be embedded into various server implementations
-
yarn-spool
parsing and evaluating Yarn Dialogue scripts
-
icm20689
ICM-20689 6DOF IMU driver for embedded hal
-
flipperzero-alloc
Flipper Zero
-
ssd1327-i2c
SSD1327 I2C Driver
-
mcp346x
Platform-agnostic driver for MCP346x Sigma-Delta ADC
-
simink_spinlock
simink 自旋锁
-
ssd1307fb
using embedded-graphics with framebuffer provided by ssd1307fb driver
-
rrt0
cross-platform runtime / startup (like crt0)
-
ssd1681
Driver for the SSD1681 e-Paper display (EPD) controller, for use with embedded-hal
-
efm32wg295-pac
Peripheral access API for EFM32WG295 MCU (generated using svd2rust)
-
efm32wg290-pac
Peripheral access API for EFM32WG290 MCU (generated using svd2rust)
-
efm32wg890-pac
Peripheral access API for EFM32WG890 MCU (generated using svd2rust)
-
efm32wg232-pac
Peripheral access API for EFM32WG232 MCU (generated using svd2rust)
-
efm32wg942-pac
Peripheral access API for EFM32WG942 MCU (generated using svd2rust)
-
efm32wg990-pac
Peripheral access API for EFM32WG990 MCU (generated using svd2rust)
-
efm32wg995-pac
Peripheral access API for EFM32WG995 MCU (generated using svd2rust)
-
efm32wg390-pac
Peripheral access API for EFM32WG390 MCU (generated using svd2rust)
-
efm32wg980-pac
Peripheral access API for EFM32WG980 MCU (generated using svd2rust)
-
efm32wg280-pac
Peripheral access API for EFM32WG280 MCU (generated using svd2rust)
-
efm32wg842-pac
Peripheral access API for EFM32WG842 MCU (generated using svd2rust)
-
efm32wg840-pac
Peripheral access API for EFM32WG840 MCU (generated using svd2rust)
-
efm32wg880-pac
Peripheral access API for EFM32WG880 MCU (generated using svd2rust)
-
efm32wg940-pac
Peripheral access API for EFM32WG940 MCU (generated using svd2rust)
-
efm32wg332-pac
Peripheral access API for EFM32WG332 MCU (generated using svd2rust)
-
efm32wg395-pac
Peripheral access API for EFM32WG395 MCU (generated using svd2rust)
-
efm32wg330-pac
Peripheral access API for EFM32WG330 MCU (generated using svd2rust)
-
efm32wg230-pac
Peripheral access API for EFM32WG230 MCU (generated using svd2rust)
-
efm32wg360-pac
Peripheral access API for EFM32WG360 MCU (generated using svd2rust)
-
efm32wg895-pac
Peripheral access API for EFM32WG895 MCU (generated using svd2rust)
-
sbus-parser
Futaba SBUS parser using loop and byte swap
-
efm32pg12-pac
Peripheral access API for Silicon Labs EFM32PG12 microcontrollers
-
hzgrow-r502
A USART driver for the HZ Grow R502 fingerprint reader module. May also be useful for other, similar modules.
-
lfsr-base
Linear feedback shift register base traits
-
qei
A wrapper that allows to extend quadratic encoder interface (QEI)
-
grove-matrix-led-my9221-rs
Rust driver for Grove RGB Matrix Led with my-9221 Driver
-
ws2812-blocking-spi
Driver based on embedded_hal::blocking::spi::Write for WS2812
-
sntpc
making SNTP requests
-
xmc1100
Low-level register mappings for the XMC1100 series of ARM Cortex-M0 microcontrollers
-
uart8250
provide a struct with many methods to operate uart 8250
-
gp2d12
Driver for the GP2D12 infrared distance sensor
-
phm-cli
The Interface Control Document (ICD) for Pretty HAL Machine
-
msp430fr4133
Peripheral access crate for MSP430FR4133 microcontroller
-
bern-test
test framework for hardware integration tests
-
free-flight-stabilization
PID flight stabilization functions. no_std, no-alloc.
-
sht4x
Sensirion SHT4x Driver for Embedded HAL
-
i-kdl
Inline-KDL Embedded Document Language
-
ag-lcd
port of the LiquidCrystal arduino library
-
nucleo-f401re
Board Support crate for the STM32 NUCLEO-f401RE development board
-
systemview-target
RTOS tracing trait implementation for SEGGER SystemView
-
himpi-sys
Hi35XX MPI API for Rust unsafe bindings
-
bbbase64
Bare-Bones Base64: no-std, heapless, memory-safe encoding/decoding library for embedded
-
fs3000
Basic embedded-hal-based I2C driver for the FS3000-1005 and FS3000-1015 air velocity sensors
-
embedded-graphics-transform
coordinate transforms for embedded display drivers
-
htu2xd
Driver for the TE Connectivity Measurement Specialties HTU20D and HTU21D series I2C temperature and humidity sensors
-
grapple-m24c64
embedded-hal driver for the M24C64 I2C EEPROM
-
cbor-smol
Streamlined serde serializer/deserializer for CBOR
-
npl_utils
NPL receiver for embedded platforms
-
cfap_screen
An embedded-hal based driver for ePaper displays from Crystalfontz
-
stemma-soil-sensor-embassy
Interface with Adafruit's STEMMA Soil Sensor while using embassy
-
aarch64-intrinsics
AArch64 optimized compiler intrinsics
-
rs-com
A Really simple serial communication terminal
-
da14531-sdk
DA14531 SDK Rust bindings
-
stm32f100xx
Peripheral access API for STM32F100XX microcontrollers
-
shared-pin
An abstraction to share rust embedded_hal pins between functions
-
uefi-graphics
An embedded-graphics display driver for UEFI environments
-
ms5637
no-std I2C driver for the MS5637 temperature and pressure sensor
-
arm64_virt
simink 程序
-
efm32gg11b510-pac
Peripheral access API for EFM32GG11B510 MCU (generated using svd2rust)
-
lcd1602-diver
A driver for the LCD1602 display using the PCF8574 I2C bus
-
efm32lg332-pac
Peripheral access API for EFM32LG332 MCU (generated using svd2rust)
-
efm32gg840-pac
Peripheral access API for EFM32GG840 MCU (generated using svd2rust)
-
ssd1322_di
display-interface
compatible driver for the SSD1322 OLED display controller -
ruspiro-register
definitions to conviniently work with register field values that are typically presented by a set of bit fields
-
spms_ring
Single publisher, multiple subscriber ring buffer for pubsub
-
cortex-m-rt-macros
Attributes re-exported in
cortex-m-rt
-
st7032i
Platform agnostic Rust driver for the Sitronix ST7032i Dot Matrix LCD Controller
-
embedded-test
A test harness and runner for embedded devices
-
tinypci
safe, rusty toolset for reading and writing PCI configuration memory
-
tt21100-async
An embedded-hal driver for the TT21100 multi-touch touchscreen controller
-
oxide-spark-utils
exposes public parts of oxide-spark
-
eei_vfd
An embedded-hal based driver for VFD displays from EEI Tech
-
panic-write
Write panic messages to a core::fmt::Write and then halt
-
embedded_types
Types useful in embedded, no_std amd hw development
-
one_alloc
A custom allocator that allows a singular allocation of a specific size known ahead of time
-
fill
trait, an alternative to Extend for finite containers
-
minireq
Lightweight support for MQTT-based request/response handling interfaces
-
embedded-crc32c
A
const
, single-choice opinionated tiny CRC32 implementation -
goertzel_algorithm
Goertzel algorithm implementation
-
anyleaf
Driver for AnyLeaf sensors
-
lfsr-instances
Some Galois linear feedback shift registers with predefined parameters
-
blimp
Terminal based status page for embedded devices
-
egui-stylist
An embeddable theme editor for egui
-
jrk-g2-rs
embedded driver for pololu Jrk G2
-
embedded-async-timer
Async timers for embedded devices
-
hpm-rt
Minimal runtime / startup for HPMicro MCUs
-
simink_entry
simink 启动运行时环境初始化
-
max14578e-driver
An embedded async driver for the MAX14578E/MAX14578AE USB charger detector
-
drmem-db-simple
backend for DrMem control system
-
thermostat
Finite state machine for a thermostat controlling a centralized HVAC system or other heating and/or cooling apparatus
-
rf4463
no-std library for interfacing with the SI4463 transceiver IC
-
mips
Low-level abstraction of MIPS processors
-
msp430fr5962
Peripheral access crate for MSP430FR5962 microcontroller
-
ssd1362
Driver to interface with SSD1362 based 256x64 OLED displays through SPI
-
burble-const
Bluetooth LE assigned numbers
-
discrete_count_core
Core implementation for discrete_count
-
adxl313
A platform agnostic driver to interface with the ADXL313 (accelerometer) through SPI
-
embed-rust-in-rust
A handy library allowing you to embed Rust 🚀 in Rust 🚀
-
fomu-rt
Minimal runtime / startup for RISC-V on Fomu
-
uefi-macros
Procedural macros for the
uefi
crate -
microamp
Asymmetric Multi-Processing on microcontrollers
-
simink-build
simink build
-
i2c_hung_fix
Attempts to unhang the I2C bus after an ungraceful reset using traits from the embedded-hal
-
mcp320x
Platform agnostic driver written using embedded-hal traits to interface with the MCP320X ADC's
-
vl53l1x-simple
driver for the VL53l1X TOF ranging sensor
-
htpa32x32d
Driver for the HTPA32x32 an Thermopile Array from Heimann
-
processor
simink 处理器操作底层封装
-
cic-fixed
CIC filter implementation for fixed point numbers
-
vcnl36825t-rs
Vishay VCNL36825T proximity sensor driver for embedded-hal i2c traits
-
variegated-board-cfg
Store pin and other HAL configurations for your embedded project in a TOML file
-
tm040040
An embedded-hal driver for the TM040040 Cirque Circle touchpad (and Pinnacle touchpads in general)
-
bit-byte-structs
A bus-agnostic trait and structs for interfacing with register based peripherals
-
tps6507x
platform agnostic Rust driver for the TPS6507x series Texas Instruments power management ICs
-
bnx-cal
Bnx Core Abstraction Layer
-
can-utils
Handy modules and utilities for manipulating CAN data and interfaces
-
am2301
interface with an AM2301 humidity and temperature sensor
-
array-utils
A no-std heapless set of array utils making use of const generics
-
k1921vk01t-pac
API доступа к периферии микроконтроллера НИИЭТ К1921ВК01Т
-
pavo-common
Common Types for the Pavo Framework
-
hd44780-ntb
A non-text buffer embedded hal driver for hd44780 like LCD display controllers
-
imxrt1170evk-fcb
FlexSPI configuration block for NXP's IMXRT1170EVK
-
uart
A clean implementation of the UART_16550 device functionality
-
unmp-link
unmp
-
ep-pin-toggle
embedded-profiling
implementation using a GPIO toggle -
stm32l0x1
Peripheral access API for STM32L0x1 microcontrollers
-
max3010x
Platform-agnostic Rust driver for the MAX3010x high-sensitivity pulse oximeter and heart-rate sensor for wearable health
-
pscontroller-rs
A hardware-level platform agnostic driver for PlayStation 1 or 2 contoller peripherals. Requires soldering. 😁
-
cst816s
touchscreen driver for embedded hal / no_std
-
imxrt1060evk-fcb
FlexSPI configuration block for NXP's IMXRT1060EVK
-
libosdp
IEC 60839-11-5 OSDP (Open Supervised Device Protocol)
-
ra2e1
Peripheral access API for ra2e1 microcontrollers (generated using svd2rust)
-
icm20689_driver_rs
platform independant Drivers for the ICM20689 6 axis IMU with embedded-hal
-
springql-core
SpringQL: Open-source stream processor for IoT devices and in-vehicle computers
-
data-streams
Extension traits for reading and writing data with streams
-
xtensa-lx
Low-level access for Xtensa LX processors and peripherals
-
defrag
safe and low overhead defragmenting memory manager for microcontrollers
-
arm-gic
A driver for the Arm Generic Interrupt Controller version 3 or 4
-
umm-malloc-sys
FFI bindings to the umm_malloc memory allocator
-
sen0177
Read air quality data from the SEN0177 and PMSA003I sensors
-
dw1000
Driver for the Decawave DW1000 UWB wireless transceiver chip, providing radio communication based on IEEE 802.15.4 and distance measurement
-
bmetal
bare-bones crate for working with bare-metal targets
-
mh-zx-driver
MH-Z* family (MH-Z14/Z19/Z19B) CO2 sensor driver built on top of
embedded-hal
primitives -
imxrt1010evk-fcb
FlexSPI configuration block for NXP's IMXRT1010EVK
-
bnx-sal
Bnx System Abstraction Layer
-
adxl345-eh-driver
Rust embedded-hal device driver for the ADXL345 Analog Devices Digital Accelerometer
-
nucleo-f446re
Board Support Package crate for the Nucleo-F446RE board
-
kiibohd-log
Basic log wrapper for the kiibohd project. Supports multiple backends (e.g. rtt, semi-hosting).
-
embtk-rotary-encoder
Embedded Toolkit helpers for handling rotary encoder input
-
embedded-snake
Snake game implementation in Rust with no-std. It uses embedded-graphics as a display target.
-
knightrs
The Knight programming language, in Rust
-
pmw3901-ehal
PMW3901 optical flow driver for embedded-hal no_std applications
-
stm32hal
A HAL for all stm32 devices
-
k8055_rs
Cross platform driver code for the Velleman K8055 kit
-
ldc1x1x
TI LDC1312/LDC1314/LDC1612/LDC1614 inductance-to-digital converter driver for
embedded-hal
-
sn3193
Driver for SN3193 3-Channel Fun LED Driver
-
groundhog-nrf52
A rolling timer abstraction for the nrf52
-
bq24195
Platform-agnostic Rust driver for the Texas Instruments BQ24195 Li-Ion/Li-Po battery charge management IC
-
st7306
TFT LCD driver with embedded-graphics support
-
turtlebot2
To drive Turtlebot2 (a.k.a Kobuki)
-
defmt-rtt-target
defmt logger implementation using the rtt-target crate
-
burble-crypto
Bluetooth LE cryptographic toolbox
-
mcp4725-rs
Platform agnostic Rust driver for the Microchip MCP3425 ADC
-
rppal-dht11
Raspberry Pi Rust driver for the DHT11 temperature and humidity sensor
-
xmc4700
XMC peripheral library for XMC4700 generated from SVD
-
r3_portkit
writing a port of R3
-
lsm303dlhc
A platform agnostic driver to interface with the LSM303DLHC (accelerometer + compass)
-
embedded-morse
A driver for morse output on embedded platforms
-
pl011
simink pl011 串口驱动实现
-
stm32f0x0-hal
HAL for the STM32F0x0 family of microcontrollers
-
es-wifi-driver
Driver for the es-wifi adapter from Inventek
-
mcp47x6
Driver for Microchip MCP4725 DAC
-
unmp-link-websocket
websocket link for unmp
-
hub75
A driver for hub75 rgb matrix displays
-
serial-embedded-hal
embedded-hal for non-embedded platforms
-
usbd-ccid
usb-device driver for CCID
-
defmt-bbq
A generic bbqueue based transport for defmt log messages
-
reg-map
Derive volatile accesses to a register map and memory-mapped IO
-
bitbang-hal
Implements embedded-hal traits by bitbanging
-
s32k116-pac
Device Support Crate for NXP S32K116 Devices
-
embedded-bacnet
A bacnet library for embedded systems (no_std)
-
SKEAZN642
Device support crate for KEAZN64 devices
-
scpi-contrib
SCPI/IEEE488.2 contrib library
-
atsam3u2c
Peripheral access API for ATSAM3U2C microcontrollers (generated using svd2rust)
-
atsam4lc2a-pac
Peripheral access crate for the ATSAM4LC2A microcontroller
-
atsam3n1b
Peripheral access API for ATSAM3N1B microcontrollers (generated using svd2rust)
-
s32k144
Peripheral access API for NXP S32K144 microcontrollers (generated using svd2rust)
-
ppm_decode
Parser for the Pulse Position Modulation (PPM/CPPM) radio control (RC) protocol
-
blynk_io
Blynk.io streaming API integration in Rust
-
cargo-minicov
Code coverage support for no_std and embedded programs
-
rn4870
A platform agnostic driver for the RN4870 BLE module
-
sdio-host
SD host protocol library
-
defmt-parser
Parsing library for defmt format strings
-
openthread-rust
Sample for Rust bindings for OpenThread
-
bmi323
Platform agnostic Rust driver for the BMI323 IMU
-
serial-can
Serial CAN (slcan) for small systems
-
scd30-interface
An I2C driver for the SCD30 sensor in Rust
-
panic-msp430
Halting panic implementation for MSP430 microcontrollers
-
stm32f1
Device support crates for STM32F1 devices
-
usbd-hid-descriptors
Low-level, wire-format enums/bitfields used in HID descriptors
-
atsaml21e18a
Device crate for the Microchip ATSAML21E18A, generated from its SVD file
-
daisy_bsp
A board support package for the Electro-Smith Daisy Seed
-
utrace
Instrumentation-based profiling library for embedded targets with async support
-
origen_metal
Bare metal APIs for the Origen SDK
-
bitwrap_extra
pack/unpack data into byte array
-
rflow
Text protocol for embedded apps
-
l3gd20-ng
A platform agnostic SPI driver to interface with the L3GD2 gyroscope
-
pa-spl
A no-std embedded-hal I2C driver for the PCB Artists SPL module
-
metrics-controller
Metrics Controller is a project to collect metrics for Mozilla IOT projects
-
tock/tock-cells
A secure embedded operating system for microcontrollers
-
teensy4-panic
Panic handler for the Teensy 4. Part of the teensy4-rs project
-
pl011-uart
A driver for the Arm PL011 UART
-
rusty-os
kernel for embedded systems written in Rust
-
xmc4-hal
Peripheral access API for XMC4 series microcontrollers
-
mips-mcu-alloc
A heap allocator for MIPS based microcontrollers
-
fe_rtos
OS for Arm Cortex-M CPUs
-
ral-registers
MMIO registers abstraction with a macro API
-
bmp180-driver
A driver for BMP180 Digital Pressure Sensor
-
pn532
protocol implementation
-
cyw43
Rust driver for the CYW43439 WiFi chip, used in the Raspberry Pi Pico W
-
embedded-hal-async
An asynchronous Hardware Abstraction Layer (HAL) for embedded systems
-
probe-rs-mi
The probe-rs machine interface for computers interfacing probe-rs
-
rpi_sim868
RPi SIM868 is a crate designed to facilitate interaction with the Waveshare SIM868 HAT for Raspberry Pi
-
bxcan-ng
STM32 bxCAN peripheral driver
-
rp-binary-info
Code and types for creating Picotool compatible Binary Info metadata
-
playdate-cli
The CLI tools for playdate-rs
-
signalo_filters
A collection of filters used in 'signalo' umbrella crate
-
cotton-unique
Deterministic per-device unique IDs for embedded systems
-
xmc1100-hal
Hardware Abstraction Layer (HAL) for the XMC1100 series of ARM Cortex-M+ microcontroller
-
edge-executor
Async executor suitable for embedded environments
-
spb_rs
Sparkplug-B client library
-
smoltcp-slip
SLIP network interface on top of smoltcp
-
cortex-m-asyncrt
A minimal async runtime for Cortex-M devices
-
ch32v103-hal
WCH CH32v103 MCU HAL
-
manchester-code
A no-std library to allow Manchester encoding and decoding of datagrams
-
vga-framebuffer
A text console output over a VGA compatible signal
-
thingy-91-nrf9160-bsp
BSP for the Nordic Thingy:91 nRF9160
-
mcxn947-pac
Peripherals Access Crate for NXP mcxn947
-
phidget-sys
Low-level, unsafe, Rust wrapper for the phidget22 library
-
emc2101
Platform-agnostic Rust driver for the EMC2101 temperature sensor and fan sensor/controler
-
rtic-time
Basic definitions and utilities that can be used to keep track of time
-
ht32-usbd
'usb-device' implementation for HT32 microcontrollers
-
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.
-
panic-serial
Print panics on serial port
-
atsams70n20
Peripheral access API for ATSAMS70N20 microcontrollers from Atmel/Microchip (generated using svd2rust)
-
lsm6dso
A platform-agnostic driver for the LSM6DSO 6-DoF Accel + Gyro IMU
-
mctp
Management Component Transport Protocol (MCTP) base types and traits
-
fel-cli
CLI tools for dealing with Allwinner devices in FEL mode, in pure Rust
-
eg-seven-segment
Seven-segment displays for embedded-graphics
-
efm32gg-hal
HAL for the EFM32GG (EFM32 Giant Gecko) family of microcontrollers
-
scoped-mutex
An abstraction over closure-based mutexes
-
uart_xilinx
provide a struct with many methods to operate uarts in Xilinx's FPGA: XPS UART Lite, AXI UART Lite
-
lpc13xx-pac
Device support crates for LPC13XX-PAC devices
-
nrf51-hal
HAL for nRF51 microcontrollers
-
py32f0
Device support crates for PY32F0 devices
-
embedded-utils
embedded-utils
provides some features in Rust(no_std) embedded systems -
wasefire-protocol
Wasefire protocol between platform and host
-
baryuxn
Uxn stack machine as a no_std library
-
astarte-device-sdk-mock
Mock implementation of the traits in the astarte-device-sdk
-
ember_os
OS kernel implemented in rust, which has referenced https://os.phil-opp.com/
-
canopen_rust
A CANOpen implementation for Rust
-
tinyrlibc
Tiny, incomplete C library for bare-metal targets, written in Stable (but Unsafe) Rust
-
efm32g-pac
Peripheral access API for EFM32G MCU (generated using svd2rust)
-
drogue-esp8266
Networking stack for ESP8266 Wifi offload board
-
xdevs-no-std
no-std implementation of xDEVS for real-time simulation on embedded systems
-
n32g4
Device support crate for N32G4 devices
-
sensor_lib_as5600
A driver for the AS5600 sensor module
-
simavr-section
Add simavr-compatible metadata to your binary
-
postform_rtt
Decodes Rtt logs for Postform, an efficient logging framework for mcu's
-
safe-ftdi
A safe wrapper around libftdi
-
nrf24l01
A pure Rust user space driver for NRF24L01(+) transceivers on Linux
-
s32k144-pac
Device Support Crate for NXP S32K144 Devices
-
bcm2835-lpa
Peripheral access crate for BCM2835 found in the Raspberry Pi 1 and Zero
-
socketcand
parser for small systems
-
efm32hg-pac
Peripheral access API for EFM32HG MCU (generated using svd2rust)
-
w5500-dhcp
DHCP client for the Wiznet W5500 internet offload chip
-
platform-millis-linux
PlatformMillis for linux
-
ch32-metapac
Peripheral Access Crate (PAC) for all WCH's MCU chips, including metadata
-
bmi160
Platform-agnostic Rust driver for the BMI160 inertial measurement unit (IMU)
-
msp430-periph
Peripheral definition for all MSP430s
-
embedded-spi
Rust embedded driver helper package (new releases at spi-hal)
-
athenna
light weight highly performant neural net framework for creating and using AI's cross platform and language
-
jtagice_mkii
client for AVRice MKII JTAG debuggers
-
stackdump-capture
capturing stack dumps
-
fomu-pac
svd2rust generated pac for the fomu
-
dht-embedded
reading temperature and humidity from the DHT11 and DHT22 sensors
-
canadensis_data_types
Automatically generated types for all Cyphal public regulated data types
-
awrite
awrite!(): the async write!()/format!() scratch buffer
-
system76_ecflash
Flashing and querying with System76 Embedded Controllers
-
ublox-cellular-rs
Driver crate for u-blox cellular devices, implementation follows 'UBX-13002752 - R65'
-
avr_delay
AVR providing software-based delay functions
-
rtcc
Real-time clock / calendar (RTC / RTCC) traits
-
nrf51-pac
Peripheral Access Crate for Nordic's nrf51 microcontroller
-
lpc845-pac
Low-level register mappings for the NXP LPC845 series of ARM Cortex-M0+ microcontrollers
-
rust-mqtt
MQTT client for both embedded and non-embedded devices
-
ads7924
no_std driver for the ADS7924 external analog-to-digital converter (ADC)
-
ws2812-nrf52833-hal-pwm
nrf52833 PWM driver for ws2812 leds
-
ghostfat
Virtual FAT16 file system for embedded USB Mass Storage Device use
-
sensd
The ultimate data logger and control system
-
jaylink
communicate with J-Link USB devices
-
Rusty_CryptoAuthLib
A platform agnostic I2C driver for Microchip’s Crypto Authentication HW (i.e. secure element
ATECC608A
), written in pure Rust. -
the-bridge
Efficient Binary Protocol Bridge for std and no_std Environments
-
andes-riscv
Low level access to Andes' AndeStar V5 RISC-V processors
-
embedded-timers
Softwaretimers and -delays (ms/us) based on a Clock implementation
-
hal-sim
An embedded-hal and embedded-graphics Display simulator
-
channel-bridge
Blocking and async Sender and Receiver traits and implementations
-
embassy-boot
A lightweight bootloader supporting firmware updates in a power-fail-safe way, with trial boots and rollbacks
-
tsl2591-eh-driver
Rust embedded-hal driver for the TSL2591 Light Sensor
-
stm32f1xx-hal-bxcan
HAL for the STM32F1xx family of microcontrollers
-
nrf52810-hal
HAL for nRF52810 microcontrollers
-
bbqueue-ng
A SPSC, lockless, no_std, thread safe, queue, based on BipBuffers
-
veml7700
Platform-agnostic Rust driver for the VEML7700 High Accuracy Ambient Light Sensor
-
sm2335egh
Driver for the SM2335EGH LED controller found in the SwitchBot Color Bulb
-
esp-ota
Easy OTA updates for ESP32 chips using only safe Rust. Transport agnostic.
-
standard-pid
Standard PID implementation in Rust for serious embedded projects
-
stm32f1-staging
Device support crates for STM32F1 devices
-
embedded-hal-error
core::error::Error for embedded-hal Errors
-
eeprom
emulation on top of FLASH for STM32
-
aht10-async
A platform agnostic driver to interface with the AHT10 temperature/humidity sensor
-
defmt-brtt
Defmt logs over RTT as well as through a BBQueue
-
openmv_h7_bsp
Board support crate for OpenMV H7 machine vision board
-
cs47l63
driver for the CS47L63 DSP
-
a653rs-postcard
Extension traits for sending types via a653rs channels using postcard
-
sk6812_rpi
SK6812RGBW library for RaspberryPi
-
udatatable
creating data tables in an embedded no_std environment without an allocator
-
lsm9ds1
A platform agnostic driver to interface with LSM9DS1 3D accelerometer, 3D gyroscope, 3D magnetometer sensor module
-
atsam3x4c
Peripheral access API for ATSAM3X4C microcontrollers (generated using svd2rust)
-
mkl25z4
Peripheral access API for NXP KL25Z microcontrollers
-
rkrga
Rockchip RGA bindings for Rust
-
atsame54p
Peripheral access API for ATSAME54P microcontrollers (generated using svd2rust)
-
s32k142-pac
Device Support Crate for NXP S32K142 Devices
-
simmer
A temperature unit library for Rust. It's intended to be minimal, embedded-aware, and easy to use!
-
dwt-systick-monotonic
RTIC Monotonic implemenation based on Systick and DWT
-
dyn-smooth
Dynamic smoothing filter based on an algorithm by Andrew Simper
-
pca9539
Abstraciton for PCA9539 I/O expander
-
pcf857x-simple
A very simple manager of PCF8574 and PCF8575
-
efm32pg-pac
Peripheral access API for EFM32PG MCU (generated using svd2rust)
-
embedded-nano-mesh-linux-examples
Lightweight mesh communication protocol for linux
-
pot-conditioner
Signal conditioner for analog potentiometer readouts
-
drogue-embedded-timer
Macro to shim heterogeneous HAL timers to embedded-time
-
bsec
Rust API to the Bosch BSEC library
-
led
Various LED implementations built on the embedded-hal traits
-
esp32c6
Peripheral access crate for the ESP32-C6
-
blue_hal
Embedded Hardware Abstraction Layer
-
wasm-embedded-rt
Runtime for embedded-wasm applications
-
lpc11uxx
Register mappings for the NXP LPC11Uxx family of ARM Cortex-M0+ microcontrollers
-
telit-me310g1
interoperate with the Telit ME310G1 LTE-M radio with AT commands
-
imxrt-usbd
USB driver for NXP iMX RT processors
-
is31fl3218
A rust-embedded driver for the Lumissil Microsystems IS31FL3218 LED driver
-
esp-max31865
An ergonomic wrapper for interfacing with Max31865 SPI RTD devices using an ESP32
-
efm32hg309f64-pac
Peripheral Access Crate for EFM32HG309 series MCU from Silicon Labs
-
wasefire-board-api
Wasefire board API
-
l0g
Opinionated l0gging facade meant for the no_std libraries
-
bmp085-180-rs
Driver for BMP085 & BMP180 sensors
-
seven_segment
driver for seven segment displays
-
stm32wlxx-hal
Hardware abstraction layer for the STM32WL series microcontrollers
-
p256-cortex-m4
Idiomatic, misuse-resistent bindings to P256-Cortex-M4
-
atsam4ls8c-pac
Peripheral access crate for the ATSAM4LS8C microcontroller
-
embedded-error
Universal error kinds for embedded systems
-
esp32h2
Peripheral access crate for the ESP32-H2
-
flem
Flexible, Light-weight, Embedded Messaging Protocol
-
barebones-watchface
Barebones Watch Face for Mynewt on PineTime Smart Watch
-
gd32e2
Device support crate for GD32E2 devices
-
esp-tm1637
platform agnostic driver for a LED-display powered by TM1637 chip
-
pinetime-lvgl
LVGL Bindings for Mynewt on PineTime Smart Watch
-
stm32l1xx-hal
Peripheral access API for STM32L1 series microcontrollers
-
chip-select
Chip select GPIO support traits
-
gdbstub
GDB Remote Serial Protocol in Rust
-
embedded-nal-minimal-coapserver
A minimal CoAP server implementation built on embedded-nal
-
avr-mcu
Pragmatic structures for all AVR microcontrollers
-
lsm303dlhc-registers
A typed map of the STMicroelectronics LSM303DLHC E-Compass registers
-
xmc4300
XMC peripheral library for XMC4300 generated from SVD
-
drone-stm32-map
STM32 peripheral mappings for Drone, an Embedded Operating System
-
bno080
AHRS driver
-
stm32f3
Device support crates for STM32F3 devices
-
xmc4800
XMC peripheral library for XMC4800 generated from SVD
-
senml-deser
serialization and deserialization using SenML specifications
-
keyberon
Parse command line argument by defining a struct
-
embedded-graphics-sparklines
Sparklines for rust's embedded-graphics
-
adafruit-lcd-backpack
Unofficial driver for the Adafruit I2C LCD backpack
-
teensy4-pins
Helpers for configuring and using a Teensy 4's pins. Part of the teensy4-rs project
-
ublox-short-range-rs
Driver crate for u-blox short range devices, implementation follows 'UBX-14044127 - R40'
-
satrs
A framework to build software for remote systems
-
opt300x
Platform-agnostic Rust driver for the OPT300x ambient light sensors. Compatible with OPT3001, OPT3002, OPT3004, OPT3006 and OPT3007
-
defmt-print
that decodes defmt logs and prints them to the console
-
lm3s6965
Interrupt bindings for the LM3S6965 microcontroller
-
nisty
NIST P256 signatures for Cortex-M4 microcontrollers
-
ade791x
Driver for the ADE7912/ADE7913 3-Channel, Isolated, Sigma-Delta ADC with SPI
-
rvideo-view
A lightweight video viewer for rvideo
-
smart-leds-matrix
DrawTarget implementation for smart led based matrixes. It allows the usage of the embedded-graphics Drawables.
-
diff-in-place
A no_std, zero-copy, in-place diff trait for constant sized arrays
-
drmem-drv-tplink
DrMem driver for TP-Link devices
-
dht-hal-drv
HAL based driver for digital humidity and temperature sensors DHT11, DHT21, DHT22
-
embedded-menu
interactive menu for embedded devices
-
device-driver-generation
Code generation for the
device-driver
crate -
mcp3424
Async Rust driver for the MCP3422/3/4 ADC
-
pcd8544
communicate and write to PCD8544 using embedded_hal as abstraction layer. WIP
-
is31fl3731
Driver for Lumissil Microsystem's IS31FL3731 IC
-
max6675-hal
An embedded-hal driver for the MAX6675 digital thermocouple converter
-
winpipe2serial
link a windows named pipe to a serial COM port
-
mpfs-hal
Hardware Abstraction Layer for PolarFire SoC
-
juggle
Async task switching for cooperative multitasking in single thread environments with no_std support
-
ad5668
Rust Embedded HAL driver for Analog Devices AD5668 DAC
-
gpiocdev-embedded-hal
providing embedded-hal wrappers around gpiocdev Requests
-
sram23x
Platform-agnostic Rust driver for the 23xx series serial SPI SRAMs
-
bl602-sdk
Rust Wrapper for BL602 IoT SDK
-
ruspiro-console
Lightweight console abstraction for bare metal implementations to print strings to an output channel that could be easely configured/attached
-
atsam3n00a
Peripheral access API for ATSAM3N00A microcontrollers (generated using svd2rust)
-
embedded-plots
Heapless plotting library for embedded targets based on embedded-graphics crate
-
stackdump-trace
tracing stack dumps
-
emcell-macro
A macro crate for emcell
-
canadensis_serial
A Cyphal implementation: Cyphal/Serial transport
-
rtt-logger
An rtt-target logger implementation for Cortex-M embedded platforms
-
dtb
Device tree blob manipulation
-
stm32g4
Device support crates for STM32G4 devices
-
sensor-temp-humidity-sht40
Driver for SHT40 temperature and humidity sensor
-
kernaux
Safe binding to libkernaux - auxiliary library for kernel development
-
w5500-regsim
Register simulation for the Wiznet W5500 internet offload chip
-
defmt-semihosting
Transmit defmt log messages over the Cortex-M Semihosting protocol
-
cotton-usb-host-msc
USB mass-storage host for embedded devices
-
ti-lp55231
Linux I2C driver for Texas Instruments LP55231 LED controller
-
northstar-nstar
Northstar is an container runtime for Linux targetting embedded systems
-
si7021-t-rh
Si7021 driver (7013, 7020 and 7021)
-
tm-wheel
Low-level hierachical timing wheel based timer driver implementation
-
dwm1001
Board Support Crate for the Decawave DWM1001 module and development board
-
care-parse-ncl
Nickel script parsing crate for the care tool
-
adxl345_driver
Driver for Analog Device ADXL345/ADXL346 3-Axis Digital Accelerometer
-
atsaml21e16b
Device crate for the Microchip ATSAML21E16B, generated from its SVD file
-
pca9555
A rust-embedded driver for the (P|T)CA9555 i/o port expander
-
jh71xx-hal
Hardware abstraction library for the JH71xx SoCs
-
rtos-trace
RTOS tracing trait
-
light_seq
Raspberry Pi based light show program reacting to the audio input
-
lsm303dlhc-ng
A platform agnostic driver to interface with the LSM303DLHC (accelerometer + compass)
-
lcd1602-driver
A LCD1602 driver
-
nrf24radio
Asynchronous embedded driver for NRF24L01(+) devices
-
r3_kernel
The R3-OS original kernel
-
bluenrg
Interface to ST Micro BlueNRG Bluetooth radios
-
vl53l1x-uld
source port of the ULD driver for the VL53L1X
-
unmp-id
unmp
-
postform_persist
Decodes persistent logs for Postform, an efficient logging framework for mcu's
-
scd4x
Rust driver for the Sensirion SCD4x series. Carbon Dioxide / Temperature / Humidity sensors.
-
edge-nal-std
A STD implementation of edge-nal based on
async-io
-
imxrt-uart-panic
Panic handler for i.MX RT that reports to UART
-
poller
File I/O events library for Rust
-
hal_sensor_dht
A Embedded HAL driver for the DHT humidity and temperature sensors
-
pygamer
Board Support crate for the Adafruit PyGamer
-
device-register
A
no_std
library to describe the registers permissions of a device to ease driver development -
metro_m0
Board Support crate for the Adafruit Metro M0
-
r528-pac
Peripheral access API for Allwinner R528 SoC generated from unofficial SVD file
-
megamorse
morse code translator
-
stm32f7
Device support crates for STM32F7 devices
-
lpc546xx-hal
Peripheral access API for LPC546xx series microcontrollers
-
i2cdev
API for safe access to Linux i2c device interface
-
avrisp
AVR ISP library
-
mwatch_kernel
A embedded 'Smart' watch
-
defmt-decoder
Decodes defmt log frames
-
vl53l0x-simple
driver for the VL53l0X TOF ranging sensor
-
rkaiq-sys
Rockchip RKAIQ FFI bindings for Rust
-
rk3399-pac
Peripheral Access Crate (PAC) for the RK3399 SoC from Rockchip
-
platform-serial
generic trait of generic serial interface for embedded-nano-mesh crate
-
sevseg_3642bs
Driver crate for the 3642BS seven segment display
-
kea-hal
HAL for NXP KEA devices
-
ch58x-hal
HAL for the CH583/CH582/CH581 RISC-V BLE microcotrollers from WCH
-
lpc8xx-hal
Hardware Abstraction Layer (HAL) for the NXP LPC800 series of ARM Cortex-M0+ microcontrollers
-
lcd_1602_i2c
I2C character LCD displays that use the AiP31068L chip with embedded-hal
-
enumap
A HashMap and HashSet like interface for enums backed by an array
-
max31865
generic driver for the MAX31865 RTD to Digital converter
-
tca9548-eh
An embedded-hal focused driver for the TCA9548 I2C multiplexer
-
aya-ufmt
A fork of
ufmt
tweaked to play nice with the eBPF kernel verifier -
embedded-dma
Traits to aid in the creation of sound DMA abstractions
-
atsam4ls2c-pac
Peripheral access crate for the ATSAM4LS2C microcontroller
-
imxrt-log
Logging extensions for i.MX RT processors
-
adi-adxl355-async
An embedded-hal-async driver for the ADXL355 accelerometer
-
care-ef-zeroinstall
0install effector for the care tool
-
bcm2837-lpa
Peripheral access crate for BCM2837 found in the Raspberry Pi 3 and Zero 2W
-
kpal
An extensible and RESTful control system for physical computing
-
ralte32
Arithmetic Library Testing Environment for embedded RISC-V 32-bit
-
tockloader-proto
A #[no_std] implementation of the protocol used by tockloader and the TockOS bootloader
-
atsams70j21
Peripheral access API for ATSAMS70J21 microcontrollers from Atmel/Microchip (generated using svd2rust)
-
lsm303c
A platform agnostic driver to interface with the LSM303C (accelerometer + compass)
-
ad57xx
Analog Devices AD57xx SPI DAC driver
-
drone-nrf-map
Nordic Semi nRFx peripheral mappings for Drone, an Embedded Operating System
-
embedded-drivers
Platform-agnostic Rust drivers for BME280/BMP280/BMP180, LM75, PMSx003
-
pca9548a
I2C-Expander driver using embedded-hal
-
loadstone
Portable secure bootloader for Cortex-M MCUs
-
soft-i2c
Soft i2c for any open drain pin
-
percore
Safe per-CPU core mutable state on no_std platforms through exception masking
-
esp32s3-ulp
Peripheral access crate for the ESP32-S3's RISC-V ULP coprocessor
-
ssd1322
SPI driver for the SSD1322 OLED display controller
-
gpio-utils
Command-line utilities for interacting with GPIOs under Linux This wraps the
sysfs_gpio
crate in a form usable by both Rust applications or any other applications -
signalo_sinks
A collection of filters used in 'signalo' umbrella crate
-
piddiy
DIY custom PID controller toolkit
-
microbit-text
Scrolling text on a 5×5 (micro:bit) display
-
assign-resources
Macro to split up fields of a Peripherals struct into new structs
-
rumio
Control your MMIO and CPU registers without pain
-
stm32f429
Peripheral access API for STM32F429 microcontrollers
-
regmock-rs
Register mocking library to allow host unittests of embedded software, build on svd2pac