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.
esp32c6Peripheral access crate for the ESP32-C6783,241MIT OR Apache-2.0
cbor-ednConverter and processor for CBOR Diagnostic Notation (EDN)778,568MIT OR Apache-2.0
ral-registersMMIO registers abstraction with a macro API778,352MIT OR Apache-2.0
fugit-timerA Count Down Timer abstaction that uses fugit time primitives775,778MIT OR Apache-2.0
embedded-nal-asyncAn Async Network Abstraction Layer (NAL) for Embedded Systems769,875MIT OR Apache-2.0
aya-ebpf-ctyType aliases to C types like c_int for use with bindgen763,748MIT OR Apache-2.0
smart-ledsA crate to use smart-leds device drivers759,158MIT OR Apache-2.0
rtic-monotonicCore abstractions of the Real-Time Interrupt-driven Concurrency Monotonic timers757,074MIT OR Apache-2.0
esp32c2Peripheral access crate for the ESP32-C2756,843MIT OR Apache-2.0
esp-idf-halA Hardware abstraction layer for Espressif's ESP family of microcontrollers based on the ESP-IDF framework.756,371MIT OR Apache-2.0
embassy-time-queue-driverTimer queue driver trait for embassy-time751,750MIT OR Apache-2.0
rp2040-halA Rust Embedded-HAL impl for the rp2040 microcontroller741,315MIT OR Apache-2.0
uxImplement the following non standard integers: u2, u3, u4, u5, u6, u7, u9, u10, u11, u12, u13, u14, u15, u17, u18, u19, u20, u21,…739,914Apache-2.0/MIT
sntpcLibrary for making SNTP requests709,597MIT OR Apache-2.0
esp32h2Peripheral access crate for the ESP32-H2703,516MIT OR Apache-2.0
coap-liteA lightweight CoAP message manipulation crate, ideal for embedded environments.682,708MIT OR Apache-2.0
mutex-traitFoundational mutex trait and helpers673,187MIT OR Apache-2.0
atsamd-halHAL and Peripheral access API for ATSAMD11, ATSAMD21, ATSAMD51, ATSAME51, ATSAME53 and ATSAME54 microcontrollers668,020MIT OR Apache-2.0
sbi-specDefinitions and constants in the RISC-V Supervisor Binary Interface (RISC-V SBI)655,562MulanPSL-2.0 OR MIT
bitbybitEfficient implementation of bit-fields where several numbers are packed within a larger number and bit-enums. Useful for drivers,…653,464MIT
sbi-rtRuntime library for supervisors to call RISC-V Supervisor Binary Interface (RISC-V SBI)626,199MulanPSL-2.0 OR MIT
esp-idf-svcImplementation of the embedded-svc traits for ESP-IDF (Espressif's IoT Development Framework)614,640MIT OR Apache-2.0
bt-hciBluetooth HCI data types611,548MIT OR Apache-2.0
sequential-storageA crate for storing data in flash with minimal erase cycles.610,766MIT OR Apache-2.0
icu_capiC interface to ICU4X608,025Unicode-3.0
ink_prelude[ink!] Common API for no_std and std to access alloc crate types.607,976Apache-2.0
ink_primitives[ink!] Fundamental primitive types for ink! smart contracts.604,566Apache-2.0
embassy-nrfEmbassy Hardware Abstraction Layer (HAL) for nRF series microcontrollers602,434MIT OR Apache-2.0
tinybmpNo-std, low memory footprint BMP image loader597,237MIT OR Apache-2.0
libc-printprintln! and eprintln! macros on libc without stdlib594,588Apache-2.0 OR MIT
ink_metadata[ink!] Metadata definitions for ink! smart contracts.593,351Apache-2.0
qemu-exitExit QEMU with user-defined code591,570MIT OR Apache-2.0
embassy-stm32Embassy Hardware Abstraction Layer (HAL) for ST STM32 series microcontrollers589,506MIT OR Apache-2.0
ink_allocator[ink!] Bindings to the Wasm heap memory allocator.580,501Apache-2.0
ink_env[ink!] Low-level interface for interacting with the smart contract executor.576,789Apache-2.0
probe-rsA collection of on chip debugging tools to communicate with microchips.575,551MIT OR Apache-2.0
embedded-display-controllerTraits for display controllers566,713MIT/Apache-2.0
libc_allocA simple global allocator which hooks into libc's malloc/free559,440MIT
pc-keyboardPS/2 keyboard interface library.551,518MIT OR Apache-2.0
ssd1306I2C/SPI driver for the SSD1306 OLED display controller544,732MIT OR Apache-2.0
crc_allA Pure Rust Implementation of Generic CRC Algorithm544,367MIT OR Apache-2.0
ink_engine[ink!] Off-chain environment for testing.528,563Apache-2.0
probe-rs-targetTarget description schema for probe-rs.527,404MIT OR Apache-2.0
xargoThe sysroot manager that lets you build and customize `std`525,439MIT OR Apache-2.0
surrealdb-protocolThe official SurrealDB Rust Client Protocol used by the SurrealDB Rust SDK.511,213BUSL-1.1
icu_provider_fsICU4X data provider that reads from structured data files508,879Unicode-3.0
embassy-netAsync TCP/IP network stack for embedded systems487,659MIT OR Apache-2.0
bxcanSTM32 bxCAN peripheral driver470,200MIT OR Apache-2.0
atomic-poolStatically allocated pool providing a std-like Box.440,032MIT OR Apache-2.0
ink_storage_traits[ink!] defines traits for using ink storage.434,257Apache-2.0
embedded-testA test harness and runner for embedded devices431,598MIT OR Apache-2.0
ink_storage[ink!] Data structures to organize and manipulate ink! contract storage.418,710Apache-2.0
accelerometerGeneric, embedded-friendly accelerometer support, including
traits and types for taking readings from 2 or 3-axis
accelerometers…417,444Apache-2.0 OR MIT
esp-wifi-sysBindings to Espressif's WiFi and Bluetooth low-level drivers406,974MIT OR Apache-2.0
rticReal-Time Interrupt-driven Concurrency (RTIC): a concurrency framework for building real-time systems400,440MIT OR Apache-2.0
rtic-macrosProcedural macros, syntax parsing, and codegen of the RTIC crate397,892MIT OR Apache-2.0
stm32-device-signatureDevice electronic signature 'driver' for STM32 microcontrollers393,511MIT OR Apache-2.0
open62541-sysLow-level, unsafe bindings for the C11 library open62541, an open source and free implementation of OPC UA (OPC Unified…393,469MPL-2.0
intxDefines new integer types with non-standard but fixed sizes.390,898Apache-2.0/MIT
rtccReal-time clock / calendar (RTC / RTCC) traits.390,684MIT OR Apache-2.0
mavlinkImplements the MAVLink data interchange format for UAVs.389,712MIT/Apache-2.0
ftdi-embedded-halembedded-hal implementation for FTDI USB devices.389,087MIT
optimization_engineA pure Rust framework for embedded nonconvex optimization. Ideal for robotics!389,067MIT OR Apache-2.0
atsame54pPeripheral access API for ATSAME54P microcontrollers (generated using svd2rust)388,515MIT OR Apache-2.0
esp-rom-sysROM code support388,399MIT OR Apache-2.0
uefi-servicesDeprecated. Please migrate to `uefi::helpers`.380,066MIT OR Apache-2.0
shared-busAbstraction for sharing a bus between multiple devices.377,893MIT OR Apache-2.0
bluetooth-hciImplementation of the Bluetooth HCI377,081MIT/Apache-2.0
atsame54_xproBoard Support crate for the SAM E54 Xplained Pro Evaluation Kit372,608MIT OR Apache-2.0
mips-rtMinimal runtime for MIPS MCU cores370,894MIT OR Apache-2.0
esp-bootloader-esp-idfFunctionality related to the esp-idf bootloader369,080MIT OR Apache-2.0
mips-mcuLow level access to MIPS MCU cores368,308MIT OR Apache-2.0
ft5336A platform agnostic driver for the FT5336 touch screen driver used on the STM32F746 Discovery board, built using the embedded-hal366,837MIT OR Apache-2.0
open62541High-level, safe bindings for the C99 library open62541, an open source and free implementation of OPC UA (OPC Unified…365,896MPL-2.0
lbfgsA Rust implementation of the L-BFGS algorithm364,163MIT OR Apache-2.0
mips-rt-macrosAttributes re-exported in `mips-rt`363,998MIT OR Apache-2.0
bluenrgInterface to ST Micro BlueNRG Bluetooth radios362,421MIT/Apache-2.0
embassy-rpEmbassy Hardware Abstraction Layer (HAL) for the Raspberry Pi RP2040 or RP235x microcontroller352,586MIT OR Apache-2.0
flip-linkFlips the memory layout of embedded programs to protect against stack overflows351,556MIT OR Apache-2.0
stm32f1Device support crates for STM32F1 devices348,959MIT/Apache-2.0
littlefs2-sysLow-level bindings to littlefs346,878BSD-3-Clause
embedded-crc-macrosMacros implementing portable CRC calculation algorithms for use in no_std.345,448MIT OR Apache-2.0
burn-nnNeural network building blocks for the Burn deep learning framework342,673MIT OR Apache-2.0
esp-hal-embassyEmbassy support for esp-hal340,882MIT OR Apache-2.0
smbus-pecMinimal portable implementation of SMBus Packet Error Code calculation algorithm.339,626MIT OR Apache-2.0
burn-optimOptimizer building blocks for the Burn deep learning framework338,717MIT OR Apache-2.0
btuuidBluetooth UUID values334,814MIT OR Apache-2.0
embedded-sdmmcA basic SD/MMC driver for Embedded Rust.334,515MIT OR Apache-2.0
stm32f3Device support crates for STM32F3 devices332,685MIT/Apache-2.0
surrealmxAn embedded, in-memory, lock-free, transaction-based, key-value database engine329,434Apache-2.0
cortex-aLow level access to Cortex-A processors301,225MIT/Apache-2.0
heapless-bytesNewtype around heapless byte Vec with efficient serde.298,605Apache-2.0 OR MIT
ink_irdata structures and algorithms for ink! intermediate representation296,892Apache-2.0
biquadA library for digital second order IIR filters, also known as biquads.296,625MIT OR Apache-2.0
ink[ink!] Rust based eDSL for writing smart contracts for Polkadot SDK293,838Apache-2.0
ink_codegendata structures and algorithms for generating ink! IR code290,851Apache-2.0
ink_macro[ink!] Rust based eDSL for writing smart contracts for Substrate288,961Apache-2.0
burn-storeStorage and serialization infrastructure for Burn285,752MIT OR Apache-2.0
bwrapA fast, lightweight, embedded systems-friendly library for
wrapping text.284,360MIT OR GPL-3.0-or-later
surrealdb-types-deriveA scalable, distributed, collaborative, document-graph database, for the realtime web282,552non-standard
surrealdb-typesA scalable, distributed, collaborative, document-graph database, for the realtime web282,298non-standard
echodbAn embedded, in-memory, immutable, copy-on-write database engine280,640Apache-2.0
stm32l4Device support crates for STM32L4 devices275,851MIT/Apache-2.0
nrf-hal-commonImplementation details of the nRF HAL crates. Don't use this directly, use one of the specific HAL crates instead (`nrfXYZ-hal`).275,364MIT OR Apache-2.0
jaylinkLibrary to communicate with J-Link USB devices273,1960BSD
gt911An embedded touchscreen driver for GT911271,616Apache-2.0
safe-mmioTypes for safe MMIO device access, especially in systems with an MMU.271,413MIT OR Apache-2.0
avr-deviceRegister access crate for AVR microcontrollers269,269MIT OR Apache-2.0
surrealdb-nightlyA scalable, distributed, collaborative, document-graph database, for the realtime web269,166non-standard
port-expanderAbstraction for I2C port-expanders268,042MIT OR Apache-2.0
sci-rsRust scientific analysis library similar to SciPy266,078MIT OR Apache-2.0
malignedA memory alignment library265,141MIT OR Apache-2.0
micropbRust Protobuf library targetting embedded systems and no_std environments264,681MIT OR Apache-2.0
notedLibrary for creating ELF notes264,610Apache-2.0
littlefs2Idiomatic Rust API for littlefs263,713Apache-2.0 OR MIT
micropb-genGenerate Rust module from Protobuf files256,168MIT OR Apache-2.0
postcard-schemaReflection-like schemas for postcard types254,357MIT OR Apache-2.0
surrealdb-core-nightlyA scalable, distributed, collaborative, document-graph database, for the realtime web253,997non-standard
edge-executorAsync executor suitable for embedded environments.249,220MIT OR Apache-2.0
byteA low-level, zero-copy and panic-free serializer and deserializer for binary.249,215MIT/Apache-2.0
riscv-target-parserParser for RISC-V target specifications247,836ISC
panic-itmLog panic messages using the ITM (Instrumentation Trace Macrocell)247,200MIT OR Apache-2.0
libaflSlot your own fuzzers together and extend their features using Rust247,056MIT OR Apache-2.0
burn-backendCore backend interfaces and data structures for executing tensor operations in Burn.242,915MIT OR Apache-2.0
rtic-timeBasic definitions and utilities that can be used to keep track of time237,672MIT OR Apache-2.0
mavlink-coreImplements the MAVLink data interchange format for UAVs.236,932MIT/Apache-2.0
mavlink-bindgenLibrary used by rust-mavlink.236,653MIT/Apache-2.0
trouble-hostAn async Rust BLE host235,197Apache-2.0 OR MIT
libafl_deriveDerive proc-macro crate for LibAFL234,807MIT OR Apache-2.0
industrial-ioLinux Industrial I/O (IIO) Support234,564MIT
libiio-sysNative, unsafe, bindings to the Linux libiio library. Used by industrial-io.234,486MIT
svd2rustGenerate Rust register maps (`struct`s) from SVD files231,180MIT OR Apache-2.0
trouble-host-macrosAn async Rust BLE host - Derive macros crate230,722Apache-2.0 OR MIT
icu_codepointtrie_builderRuntime builder for CodePointTrie229,990Unicode-3.0
cargo-xbuildAutomatically cross-compiles the sysroot crates core, compiler_builtins, and alloc.229,494MIT OR Apache-2.0
rtic-commonrtic-common lib TODO226,566MIT OR Apache-2.0
atatAT Parser for serial based device crates223,837MIT OR Apache-2.0
lpc55-pacPeripheral access API for NXP LPC55 microcontrollers222,264Apache-2.0 OR MIT
defmt-or-logLogging macros that forward to either defmt or log221,314MIT OR Apache-2.0
stm32f1xx-halHAL for the STM32F1xx family of microcontrollers218,106MIT OR Apache-2.0
rtic-monotonicsA library that provides implementations of the Monotonic trait from rtic-time216,089MIT OR Apache-2.0
defmt-or-log-macrosProc-Macros to derive either defmt or log, depending on the configuration215,146MIT OR Apache-2.0
mutex-traitsAn abstraction over closure-based mutexes213,204MIT OR Apache-2.0
volatile-memA library for managing volatile memory213,024Apache-2.0
nrf-softdeviceRust interface to nRF SoftDevice207,362MIT OR Apache-2.0
device-registerA `no_std` library to describe the registers permissions of a device to ease driver development.206,977MIT OR Apache-2.0
nrf-softdevice-macroMacros for rust interface to nRF SoftDevice206,440MIT OR Apache-2.0
persistent-buffA buffer that stays persistent in ram between boots206,319MIT OR Apache-2.0
device-register-macroInternal macro lib for the `device-register` crate205,223MIT OR Apache-2.0
device-register-asyncA `no_std` library to describe the registers permissions of a device to ease async driver development.205,017MIT OR Apache-2.0
nrf-softdevice-s140Low-level bindings for the Nordic nRF SoftDevice S140204,518non-standard
postcard-rpcA no_std + serde compatible RPC library for Rust203,329MIT OR Apache-2.0
arm-gicA driver for the Arm Generic Interrupt Controller version 2, 3 or 4.202,589MIT OR Apache-2.0
trapframeHandle Trap Frame across kernel and user space on multiple ISAs.200,431MIT
async-opcua-macrosOPC UA support proc macros193,976MPL-2.0
async-opcua-typesOPC UA data types193,855MPL-2.0
automotive_diagUnified Diagnostic Services/UDS (ISO-14229-1), KWP2000 (ISO-142330), OBD-II (ISO-9141), and DoIP (ISO-13400) definitions to…192,598MIT OR Apache-2.0
async-opcua-cryptoOPC UA cryptography library192,560MPL-2.0
async-opcua-coreOPC UA core utils for client and server192,477MPL-2.0
async-opcua-nodesOPC UA node representation and import framework191,549MPL-2.0
sh8601-rsA Rust driver for the SH8601 display controller191,503MIT OR Apache-2.0
async-opcuaOPC UA client and server API188,290MPL-2.0
ockam_nodeThis crate provides an implementation of an Ockam [Ockam][main-ockam-crate-link]
Node and is intended for use by crates that…187,989Apache-2.0
embedded-io-adaptersAdapters between the `embedded-io` traits and other I/O traits187,325MIT OR Apache-2.0
mallocatorUse malloc() and free() for memory management in Rust.186,791MIT OR Apache-2.0
libafl_boltsLow-level bolts to create fuzzers and so much more183,365MIT OR Apache-2.0
ft3x68-rsA Rust driver for the FT3x68 touch controllers183,066MIT OR Apache-2.0
embedded-graphics-simulatorEmbedded graphics simulator182,996MIT OR Apache-2.0
ieee802154Partial implementation of the IEEE 802.15.4 standard for low-rate wireless personal area networks182,4340BSD
genioA type safe, low level replacement for `std::io`.
Supports `no_std` for embedded development, just disable cargo…182,324MIT/Apache-2.0
async-opcua-clientOPC UA client API181,529MPL-2.0
ockamEnd-to-end encryption and mutual authentication for distributed applications.181,401Apache-2.0
ockam_coreCore types of the Ockam library.178,517Apache-2.0
stm32g0Device support crates for STM32G0 devices177,887MIT/Apache-2.0
esp-syncSynchronization primitives for Espressif devices173,890MIT OR Apache-2.0
aluvmFunctional registry-based RISC virtual machine173,228Apache-2.0
esp-wifiA WiFi, Bluetooth and ESP-NOW driver for use with Espressif chips and bare-metal Rust172,275MIT OR Apache-2.0
rhai-urlUrl package for Rhai172,047MIT OR Apache-2.0
espupTool for installing and maintaining Espressif Rust ecosystem.172,025MIT OR Apache-2.0
ldproxyA linker proxy tool171,131MIT OR Apache-2.0
mimxrt685s-pacPeripheral Access Crate for MIMXRT685s devices170,523MIT
nunnythe definitive non-empty slice/array/vec library for Rust170,151MIT OR Apache-2.0
ockam_transport_tcpTCP Transport for the Ockam Routing Protocol.168,446Apache-2.0
nrf-usbdUSB driver for nRF microcontrollers168,213MIT OR Apache-2.0
icu_provider_registryA registry of all ICU4X data markers166,978Unicode-3.0
nmeaSimple NMEA 0183 parser162,192Apache-2.0
esp32s3-halHAL for ESP32-S3 microcontrollers161,363MIT OR Apache-2.0
icu_provider_sourceA data provider based on CLDR and ICU data.160,158Unicode-3.0
systick-monotonicRTIC Monotonic implementation based on SysTick158,287MIT OR Apache-2.0
icu_provider_exportGenerate data for ICU4X DataProvider156,200Unicode-3.0
esp32s2-halHAL for ESP32-S2 microcontrollers155,999MIT OR Apache-2.0
device-driverA toolkit to write better device drivers, faster155,702MIT OR Apache-2.0
wpactrlwpa_supplicant control interface library152,511MIT
keycodeA Rust crate for translating keycodes based on Chrome's mapping of keys.150,366MIT
tt21100An embedded-hal driver for the TT21100 multi-touch touchscreen controller147,644MIT OR Apache-2.0
imxrt-ralRegister access layer for all NXP i.MX RT microcontrollers145,302MIT/Apache-2.0
mimxrt633s-pacPeripheral Access Crate for MIMXRT633s devices142,635MIT
minimqAn MQTT5 client140,766MIT
arm-pl011-uartArm PrimeCell UART (PL011) driver138,391MIT OR Apache-2.0
nrf52840-halHAL for nRF52840 microcontrollers136,952MIT OR Apache-2.0