Skip to content
@esp-rs

esp-rs

Libraries, crates and examples for using Rust on Espressif SoC's

Rust on Espressif microcontrollers

This organization is home to several projects enabling the use of the Rust programming language on various SoCs and modules produced by Espressif Systems.

If you are just getting started writing Rust for ESP devices, please first read The Rust on ESP book.

For a curated list of resources for development including tools and projects, see Awesome ESP Rust.

Hardware Abstraction Layer

We offer two choices for Hardware Abstraction Layers:

Repository Description Support status
esp-rs/esp-hal Without support for the Rust standard library (no_std) Support status
esp-rs/esp-idf-hal With support for the Rust standard library (std) Support status

Build Tools

This organization contains a fork of the Rust compiler with added support for the Xtensa ISA. Pre-built binaries for said compiler fork are additionally provided for most common operating systems and architectures.

Repository Description
esp-rs/rust Rust compiler fork with Xtensa support
esp-rs/rust-build Pre-built binaries of the Rust compiler fork, plus installation scripts

Pinned Loading

  1. rust rust Public

    Forked from rust-lang/rust

    Rust for the xtensa architecture. Built in targets for the ESP32 and ESP8266

    Rust 814 39

  2. espflash espflash Public

    Serial flasher utility for Espressif SoCs and modules based on esptool.py

    Rust 680 155

  3. esp-hal esp-hal Public

    no_std Hardware Abstraction Layers for ESP32 microcontrollers

    Rust 1.8k 419

  4. esp-generate esp-generate Public

    Template generation tool to create no_std applications targeting Espressif's chips.

    Rust 241 37

Repositories

Showing 10 of 55 repositories
  • esp-hal Public

    no_std Hardware Abstraction Layers for ESP32 microcontrollers

    esp-rs/esp-hal’s past year of commit activity
    Rust 1,810 Apache-2.0 419 255 31 Updated Mar 30, 2026
  • mbedtls-rs Public

    Rust wrappers for MbedTLS

    esp-rs/mbedtls-rs’s past year of commit activity
    Rust 45 Apache-2.0 36 7 2 Updated Mar 30, 2026
  • std-training Public

    Embedded Rust on Espressif training material.

    esp-rs/std-training’s past year of commit activity
    Rust 744 Apache-2.0 90 10 3 Updated Mar 30, 2026
  • esp-wifi-sys Public

    Wi-Fi and BT drivers packaged for integration into bare-metal esp-wifi.

    esp-rs/esp-wifi-sys’s past year of commit activity
    Rust 435 Apache-2.0 93 3 (1 issue needs help) 1 Updated Mar 30, 2026
  • esp-wireless-drivers-3rdparty Public Forked from espressif/esp-wireless-drivers-3rdparty

    Wi-Fi and BT drivers packaged for integration into 3rd party repositories. Work in progress.

    esp-rs/esp-wireless-drivers-3rdparty’s past year of commit activity
    C 23 Apache-2.0 16 0 1 Updated Mar 30, 2026
  • awesome-esp-rust Public

    Curated list of resources for ESP32 development in the Rust programming language

    esp-rs/awesome-esp-rust’s past year of commit activity
    1,484 CC0-1.0 61 0 1 Updated Mar 30, 2026
  • esp-idf-sys Public

    Bindings for ESP-IDF (Espressif's IoT Development Framework)

    esp-rs/esp-idf-sys’s past year of commit activity
    Rust 387 Apache-2.0 156 38 5 Updated Mar 29, 2026
  • esp-idf-svc Public

    Type-Safe Rust Wrappers for various ESP-IDF services (WiFi, Network, Httpd, Logging, etc.)

    esp-rs/esp-idf-svc’s past year of commit activity
    Rust 497 Apache-2.0 238 50 (1 issue needs help) 18 Updated Mar 29, 2026
  • esp-idf-hal Public

    embedded-hal implementation for Rust on ESP32 and ESP-IDF

    esp-rs/esp-idf-hal’s past year of commit activity
    Rust 704 Apache-2.0 224 36 (1 issue needs help) 11 Updated Mar 29, 2026
  • embuild Public

    Build support for embedded Rust: Cargo integration with other embedded build ecosystems & tools, like PlatformIO, CMake and kconfig.

    esp-rs/embuild’s past year of commit activity
    Rust 175 Apache-2.0 47 9 1 Updated Mar 28, 2026