CATEGORY
Embedded development 6,261 crates
Data as of 2026-07-25 (crates.io database dump, timestamp 2026-07-25T02:00:36Z). Source: crates.io · db-dump.tar.gz · methodology & corrections.
beetmash_netA lightweight Bevy replication library.11,624MIT OR Apache-2.0
emerald-coreEthereum Classic secure account management core libary11,603Apache-2.0
mcumgr-smpAn implementation of the smp protocol for microcontrollers in pure rust.11,587MIT OR Apache-2.0
simple_bitfieldCreate bitfields with the same memory structure as integers using a simple macro.11,578GPL-3.0
w5500-dnsDNS client for the Wiznet W5500 internet offload chip.11,568MIT
aligned-bytesA continuous fixed-length byte array with a specified alignment.11,563MIT
serpenteBoard Support crate for the Serpente board11,559MIT OR Apache-2.0
veml7700Platform-agnostic Rust driver for the VEML7700 High Accuracy Ambient Light Sensor11,559MIT OR Apache-2.0
tmp006Platform-agnostic Rust driver for the TMP006/TMP006B non-contact infrared (IR) thermopile temperature sensor.11,558MIT OR Apache-2.0
eosio-macroeosio macro for generating code for contracts11,558Apache-2.0
ak09915_rsA Rust library for interacting with the AK09915 magnetometer11,534MIT
mcp3425Platform agnostic Rust driver for the Microchip MCP3425/6/7/8 ADC.11,506MIT OR Apache-2.0
kernaux-sysUnsafe no-std binding to libkernaux - auxiliary library for kernel development11,485MIT
max3010xPlatform-agnostic Rust driver for the MAX3010x high-sensitivity pulse oximeter and heart-rate sensor for wearable health.11,461MIT OR Apache-2.0
eng-pwasm-abiRust WebAssembly Contracts Abi11,442MIT/Apache-2.0
s2json-deriveThis library supports the S2JSON 1.0 Specification11,423MIT
cargo-frcA cargo extension for deploying rust code to FRC robots.11,421MIT OR Apache-2.0
ruspiro-cacheRaspberry Pi cache maintenance operation API11,417Apache-2.0
galileo-osnmaGalileo OSNMA (Open Service Navigation Message Authentication)11,414MIT OR Apache-2.0
phidget-sysLow-level, unsafe, Rust wrapper for the phidget22 library.11,396MIT
arduino_mkr1000Board Support crate for the Arduino MKR 1000 WiFi11,375MIT OR Apache-2.0
bosch-bme680A pure rust implementation for the BME680 environmental sensor11,366MIT
edge-captiveAsync + `no_std` + no-alloc implementation of a Captive Portal DNS11,366MIT OR Apache-2.0
arbintraryProof of concept for arbitrary integer sizes using generic const.11,358Apache-2.0/MIT
bma400A platform-agnostic Rust driver for the BMA400 12-bit ultra-low-power 3-axis accelerometer.11,354MIT OR Apache-2.0
at32f4xx-pacDevice support crates for AT32F4 devices11,351MIT/Apache-2.0
mcx-pacPeripheral Access Crate for NXP MCX Series MCUs11,346MIT
executorch-sysUnsafe Rust bindings for ExecuTorch - On-device AI across mobile, embedded and edge for PyTorch11,316Apache-2.0
awedio_esp32ESP32 backend for the awedio audio playback library11,315MIT OR Apache-2.0
ledcatControl lots of LED's over lots of protocols11,307GPL-3.0
pcf857xPlatform-agnostic Rust driver for the PCF8574, PCF8574A and PCF8575 I/O expanders.11,297MIT OR Apache-2.0
kiibohd-hid-ioHID-IO protocol implementation for the C kiibohd firmware.11,286MIT OR Apache-2.0
canadensis_filter_configAutomatic receive filter configuration for Cyphal11,279MIT OR Apache-2.0
xous-riscvLow level access to RISC-V processors; Xous fork11,270ISC
icm20689ICM-20689 6DOF IMU driver for embedded hal11,268BSD-3-Clause
dwfvA simple digital waveform viewer with vi-like key bindings11,254MIT
portable-dlmallocPortable Fork of Doug Lea's malloc Implementation.11,241MIT
r3_port_arm_mCortex-M port for the R3-OS original kernel11,201MIT OR Apache-2.0
arduino-uno-r4-halHardware Abstraction Layer for Arduino Uno R4 (RA4M1)11,190MIT OR Apache-2.0
psxLibrary for developing homebrew for the Sony PlayStation 111,182MIT
executorchRust bindings for ExecuTorch - On-device AI across mobile, embedded and edge for PyTorch11,167Apache-2.0
rubbleAn embedded BLE stack11,1590BSD
hp203b`embedded-hal`-based driver crate for the HOPERF HP203B altimeter/barometer11,157MPL-2.0
dorsNo-fuss workspace-friendly task runner for cargo11,152MIT OR Apache-2.0
seasickTools for implementing and transcribing C APIs.11,143Apache-2.0 OR MIT
serial-embedded-halAn implementation of embedded-hal for non-embedded platforms11,139MIT
lsm303cA platform agnostic driver to interface with the LSM303C (accelerometer + compass)11,136MIT OR Apache-2.0
at-rs[DEPRECATED] AT Parser for serial based device crates11,134MIT OR Apache-2.0
stm32g4-stagingDevice support crates for STM32G4 devices11,131MIT/Apache-2.0
rust-forth-interactive-compilerA interactive interfaco to the Forth compiler written in Rust11,088MIT
pmsa003iPlantower PMSA003I Driver for Embedded HAL11,077MIT OR Apache-2.0
kfilterA no-std implementation of the Kalman and Extended Kalman Filter.11,063MIT
driver-interfaceSparreal OS kernel11,052MPL-2.0
embedded-graphics-web-simulatorA web simulator using rust-embedded library with wasm11,032MIT OR Apache-2.0
esp32-hal-proc-macrosAttributes re-exported in `esp32-hal`11,028MIT OR Apache-2.0
atsamx7x-halHAL and peripheral access API for ATSAME70, ATSAMS70, ATSAMV70, and ATSAMV71 microcontrollers11,023MIT OR Apache-2.0
cyphalOpen Cyphal Rust Implementation10,982MIT OR Apache-2.0
ch32v3Device support crates for CH32V3 devices10,973MIT/Apache-2.0
async-io-miniAsync I/O fork for embedded systems10,973Apache-2.0 OR MIT
open-vector-tileThis library reads/writes The Open Vector Tiles 1.0 Specification10,954MIT
logicsimcomposable, modular, digital logic simulation10,946MIT
st7920SPI driver for the ST7920 LCD display controller10,910MIT
multicalcCalculus, autodiff, nonlinear least squares, and Lie groups in pure no_std Rust: the same math from 64-bit servers to bare-metal…10,909MIT
da14531Peripheral access crate for the DA14531 microcontroller10,908MIT
atsam4n16c-pacPeripheral access crate for the ATSAM4N16C microcontroller10,893MIT OR Apache-2.0
possum-dbconcurrent disk-backed cache supporting efficient direct file I/O, transactions, and snapshots using file cloning and sparse files10,861MPL-2.0
wasefire-schedulerWasefire scheduler10,841Apache-2.0
dusk-kelvin-mapBST Map implementation with Microkelvin backend10,837MPL-2.0
senml-deserLibrary for serialization and deserialization using SenML specifications10,820OLFL-1.3
u8poolStack for u8 slices in a client-provided buffers10,818MIT
cobs-rsA minimal no-std library for doing Consistent Overhead Byte Stuffing10,801MIT
defmt-semihostingTransmit defmt log messages over the Cortex-M Semihosting protocol10,792MIT OR Apache-2.0
toy-apcbA10,772MPL-2.0
rustosWriting an OS in Rust10,756Apache-2.0 OR MIT
atsam4lc8c-pacPeripheral access crate for the ATSAM4LC8C microcontroller10,755MIT OR Apache-2.0
enocoro128v2Safe, embedded-friendly Enocoro-128 (Version 2) stream cipher. Verified using Hitachi's official test vectors.10,754MIT
kernauxSafe binding to libkernaux - auxiliary library for kernel development10,742MIT
fixed_star_framePatched version of the fixed crate pending https://gitlab.com/tspiteri/fixed/-/merge_requests/1410,740MIT/Apache-2.0
macroconfmacro for creating configurations using miniconf10,729MIT OR Apache-2.0
st-mems-busWrapper for I2C and SPI buses, providing a unified API to the underlying bus.10,714BSD-3-Clause
lpc55-rtic-macrosProcedural macros of the cortex-m-rtic crate10,701MIT OR Apache-2.0
width_countersAtomic counters with variable bit widths and customizable atomic ordering10,699MIT OR Apache-2.0
axaddrspaceArceOS-Hypervisor guest address space management module10,687Apache-2.0
stm32f7x7-halHAL for the STM32F7x7 familiy of microcontrollers10,671Apache-2.0
vex-libunwind-sysLLVM libunwind FFI bindings for VEX V5 robots10,663MIT
mishA proof of concept Rust libm like implementation with almost full coverage of libm10,658MIT
phytium-mciA no_std Rust driver for SD/MMC cards on Phytium E2000 series SoCs10,653MIT
k210-pacPeripheral access API for K210 SoC10,649ISC
bno080BNO080 AHRS driver10,628BSD-3-Clause
cargo-embassyGet up and running with Embassy in seconds.10,613non-standard
rk3568_clkClock and Reset Unit (CRU) driver for RK3568 SoC10,589GPL-3.0-or-later OR Apache-2.0 OR MIT
edsEasy data separator10,582non-standard
sdmmcA no_std SD/MMC/eMMC driver library for ARM64 platforms10,556GPL-3.0-or-later OR Apache-2.0 OR MIT
nrf5340-app-halHAL for nRF5340 app SoC10,530MIT OR Apache-2.0
bern-kernelPreemptive real-time kernel for microcontrollers.10,515MIT
atmega32u4-halHardware Abstraction Layer for ATmega32U410,508MIT OR Apache-2.0
dsdlRust command line interface (CLI) for OpenCyphal Data Structure Description Language (DSDL) files10,469MIT OR Apache-2.0
wasefire-interpreterWasefire WebAssembly interpreter10,462Apache-2.0
max170xxPlatform-agnostic Rust driver for the MAX170xx 1-cell/2-cell fuel-gauge systems with ModelGauge for lithium-ion (Li+)…10,451MIT OR Apache-2.0
bern-archBern RTOS hardware specific implementation.10,447MIT
fel-cliCLI tools for dealing with Allwinner devices in FEL mode, in pure Rust.10,444MIT/Apache-2.0
embedded-errorUniversal error kinds for embedded systems10,430MIT OR Apache-2.0
kiibohd-usbKiibohd USB HID Interface10,421MIT OR Apache-2.0
ep-dwt`embedded-profiling` implementation using the Data Watchpoint and Tracing (DWT) unit10,403MIT OR Apache-2.0
emerald-vault-coreEthereum secure account management core libary10,393Apache-2.0
pfza_proto1Board Support crate for the PathfinderZA Proto110,386MIT OR Apache-2.0
vex-libunwindLLVM libunwind bindings for VEX V5 robots10,371MIT
stmpe1600Platform-agnostic Rust driver for the STMPE1600 I/O expander.10,365MIT OR Apache-2.0
atsam4lc2a-pacPeripheral access crate for the ATSAM4LC2A microcontroller10,364MIT OR Apache-2.0
ep-pin-toggle`embedded-profiling` implementation using a GPIO toggle10,353MIT OR Apache-2.0
atsam4lc4a-pacPeripheral access crate for the ATSAM4LC4A microcontroller10,353MIT OR Apache-2.0
beet_examplesBits and pieces for substantial beet examples10,353MIT OR Apache-2.0
madgwickMadgwick's orientation filter10,351MIT OR Apache-2.0
atsam4lc2c-pacPeripheral access crate for the ATSAM4LC2C microcontroller10,347MIT OR Apache-2.0
st-mem-bank-macroSimplifies memory state management for sensors with multiple memory banks by providing useful macros.10,347BSD-3-Clause
atsam4lc4c-pacPeripheral access crate for the ATSAM4LC4C microcontroller10,345MIT OR Apache-2.0
signal-gen-cjds66-libAn unofficial support library which can fully remote control the inexpensive Koolertron DDS Signal Generator known as GH-CJDS66.10,330non-standard
atsam4ls8a-pacPeripheral access crate for the ATSAM4LS8A microcontroller10,322MIT OR Apache-2.0
rn2xx3Rust driver for Microchip RN2483 and RN2903 LoRaWAN modules. [WIP]10,314MIT OR Apache-2.0
r3_port_riscvRISC-V port for the R3-OS original kernel10,295MIT OR Apache-2.0
atsam4ls4b-pacPeripheral access crate for the ATSAM4LS4B microcontroller10,295MIT OR Apache-2.0
libcoap-sysRaw bindings to the libcoap CoAP library.10,293BSD-2-Clause AND BSD-1-Clause
atsam4ls4a-pacPeripheral access crate for the ATSAM4LS4A microcontroller10,280MIT OR Apache-2.0
atsam4ls2b-pacPeripheral access crate for the ATSAM4LS2B microcontroller10,273MIT OR Apache-2.0
atsam4lc4b-pacPeripheral access crate for the ATSAM4LC4B microcontroller10,269MIT OR Apache-2.0
atsam4ls4c-pacPeripheral access crate for the ATSAM4LS4C microcontroller10,264MIT OR Apache-2.0
atsam4s16b-pacPeripheral access crate for the ATSAM4S16B microcontroller10,263MIT OR Apache-2.0
atsam4s16c-pacPeripheral access crate for the ATSAM4S16C microcontroller10,252MIT OR Apache-2.0
esp8266-hal-proc-macrosAttributes re-exported in `esp8266-hal`10,250MIT OR Apache-2.0
atsam4ls8b-pacPeripheral access crate for the ATSAM4LS8B microcontroller10,243MIT OR Apache-2.0
atsam4lc8a-pacPeripheral access crate for the ATSAM4LC8A microcontroller10,238MIT OR Apache-2.0
atsam4lc8b-pacPeripheral access crate for the ATSAM4LC8B microcontroller10,230MIT OR Apache-2.0
nrf-softdevice-mbrLow-level bindings for the MBR included in all Nordic nRF SoftDevices10,228non-standard
atsam4lc2b-pacPeripheral access crate for the ATSAM4LC2B microcontroller10,210MIT OR Apache-2.0
esp-at-nalNetwork layer client for ESP-AT modems10,208MIT OR Apache-2.0
atsam4ls8c-pacPeripheral access crate for the ATSAM4LS8C microcontroller10,205MIT OR Apache-2.0
is31fl3741Driver for Lumissil Microsystem's IS31FL3741 IC10,189MIT
stk8ba58Driver for the Sensortek STK8BA58 3-axis MEMS Accelerometer10,188MIT OR Apache-2.0
rust-ethernet-ipHigh-performance EtherNet/IP communication library for Allen-Bradley CompactLogix and ControlLogix PLCs10,185MIT
atsam4ls2c-pacPeripheral access crate for the ATSAM4LS2C microcontroller10,160MIT OR Apache-2.0
beet_flowAn ECS control flow library10,156MIT OR Apache-2.0
r3_port_armArmv7-A port for the R3-OS original kernel10,149MIT OR Apache-2.0
pca9539Abstraciton for PCA9539 I/O expander10,143MIT OR Apache-2.0
atsam4ls2a-pacPeripheral access crate for the ATSAM4LS2A microcontroller10,138MIT OR Apache-2.0
scalpel-binbinary modification tool, cut, stitch, replace, sign10,117Apache-2.0 OR MIT
max116xx-10bitDriver crate for the MAX116xx 10-bit ADC devices10,045Apache-2.0
atsam4n8c-pacPeripheral access crate for the ATSAM4N8C microcontroller10,040MIT OR Apache-2.0
cichlidA color math library for programming addressable LEDs.10,036MIT
minimult_cortex-mA minimal multitask library, or RTOS, for Cortex-M microcontrollers.10,015Unlicense
rttmonA simple RTT monitor for OpenOCD10,015MIT OR Apache-2.0
rpi_sim868RPi SIM868 is a crate designed to facilitate interaction with the Waveshare SIM868 HAT for Raspberry Pi.10,005MIT
unmp-link-udpudp link for unmp10,002non-standard
axplat-aarch64-raspiImplementation of `axplat` hardware abstraction layer for Raspberry Pi 4B board.9,986GPL-3.0-or-later OR Apache-2.0 OR MulanPSL-2.0
owasm-ethereumExterns library to interact with Ethereum-like network9,984MIT/Apache-2.0
rainbow-hat-rsRust Driver for the Rainbow HAT for Raspberry Pi.9,948MIT
cargo-dfucargo extension for flashing embedded rust programs via dfu9,937MIT
owasm-abiRust WebAssembly Contracts Abi9,928MIT/Apache-2.0
microasync-utilUtilities for the very small async runner9,910MIT
atsam4n16b-pacPeripheral access crate for the ATSAM4N16B microcontroller9,899MIT OR Apache-2.0
cst816sCST816S touchscreen driver for embedded hal / no_std9,898BSD-3-Clause
aws-greengrass-nucleusaws greengrass nucleus in Rust (unofficial)9,897MIT
panic-ramdumpKeep panic messages in the targets' RAM9,870MIT OR Apache-2.0
surrealism-typesTypes for Surrealism9,870non-standard
eth-intelIntel e1000 ethernet driver9,866MIT
riscv-slicRISC-V Software-Level Interrupt Controller9,847MIT
rv8803RTC clock driver for the rv8803 chip via I2C9,843MIT OR Apache-2.0
atsam4n8b-pacPeripheral access crate for the ATSAM4N8B microcontroller9,843MIT OR Apache-2.0
atmega32u4Low level access to ATmega32U4 registers9,809MIT OR Apache-2.0
goohttpAn embedded, axum-compatible HTTP server and macros9,806MIT
modio-logger-dbmodio-logger Dbus service9,804AGPL-3.0-or-later
ufmt_floatA rough implementation of a writer for f32 and f64 for ufmt.9,801MIT
knx_ets_rsKNX ETS Library9,785Apache-2.0
moondancerMoondancer firmware for the Great Scott Gadgets Cynthion USB Test Instrument9,783BSD-3-Clause
axplat-aarch64-phytium-piImplementation of `axplat` hardware abstraction layer for Phytium Pi board.9,779GPL-3.0-or-later OR Apache-2.0 OR MulanPSL-2.0
axplat-aarch64-bsta1000bImplementation of `axplat` hardware abstraction layer for Black Sesame Technology A1000b SoC.9,779GPL-3.0-or-later OR Apache-2.0 OR MulanPSL-2.0
stabilizerFirmware for the Sinara Stabilizer board (STM32H743, Ethernet, PoE, 2 ADCs, 2 DACs)9,778MIT OR Apache-2.0
cmimMove your data to interrupt context9,770MIT OR Apache-2.0
burble-constBluetooth LE assigned numbers9,768MPL-2.0
tb6612fngA `no_std` driver for the TB6612FNG motor driver.9,751MIT OR Apache-2.0
bmp280-ehalA platform agnostic driver to interface with the BMP280 pressure sensor9,741MIT
atsam4n8a-pacPeripheral access crate for the ATSAM4N8A microcontroller9,700MIT OR Apache-2.0
mma8x5xPlatform-agnostic Rust driver for the MMA8451, MMA8452, MMA8453, MMA8652 and MMA8653 tri-axis accelerators.9,693MIT OR Apache-2.0
stm32l4x6Memory map for STM32L4x6 microcontrollers9,650MIT OR Apache-2.0
knx_examples_rsExamples for KNX Library9,639Apache-2.0
smolusbAn experimental lightweight library for implementing USB on embedded systems.9,603BSD-3-Clause
vexriscvLow level access to the VexRiscv processor9,598ISC
shared-mem-queueSingle-writer single-reader queues which can be used for inter-processor-communication in a shared memory region9,582OLFL-1.3
forgedClient API for forged.dev and device provisioning processes9,573MIT
musbmusb(Mentor USB) regs and `embassy-usb-driver`, `usb-device` impl9,569Apache-2.0
groundhog-nrf52A rolling timer abstraction for the nrf529,557MIT OR Apache-2.0
atsamd11dPeripheral access API for ATSAMD11D microcontrollers (generated using svd2rust)9,532MIT OR Apache-2.0
e-write-bufferA no_std, const-generic, `core::fmt::Write`able buffer9,523MIT
embassy-usb-dfuAn implementation of the USB DFU 1.1 protocol, using embassy-boot9,513MIT OR Apache-2.0
stspin220Driver crate for the STSPIN220 stepper motor driver9,4920BSD
rart-rsA async runtime to use the benefits of the availables embedded OS9,479non-standard
bcm2711-lpaPeripheral access crate for BCM2711 found in the Raspberry Pi 4.9,476Unlicense
fxmac_rsFXMAC Ethernet driver in Rust for PhytiumPi (Phytium Pi) board, supporting DMA-based packet transmission and reception.9,469Apache-2.0
cc1101A platform agnostic driver to interface with the CC1101 (Sub-1GHz RF Transceiver)9,467Apache-2.0
rpi-st7789v2-driverRaspberry-Pi driver for the ST7789V2 TFT display controller (WaveShare 1.69" 240x280 LCD)9,460GPL-3.0-or-later
m95320Driver for STMicroelectronics M95320 32-Kbit serial SPI bus EEPROM9,4480BSD