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 Public

    Forked from rust-lang/rust

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

    Rust 765 38

  2. espflash Public

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

    Rust 557 136

  3. esp-hal Public

    no_std Hardware Abstraction Layers for ESP32 microcontrollers

    Rust 1.1k 278

  4. esp-generate Public

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

    Rust 82 15

Repositories

Showing 10 of 55 repositories
  • Python 2 Apache-2.0 1 0 0 Updated Apr 25, 2025
  • esp-hal Public

    no_std Hardware Abstraction Layers for ESP32 microcontrollers

    Rust 1,106 Apache-2.0 278 227 (7 issues need help) 21 Updated Apr 24, 2025
  • book Public

    The Rust on ESP Book

    JavaScript 221 Apache-2.0 61 7 1 Updated Apr 24, 2025
  • espflash Public

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

    Rust 557 Apache-2.0 136 30 (2 issues need help) 6 Updated Apr 23, 2025
  • esp-generate Public

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

    Rust 82 Apache-2.0 15 6 1 Updated Apr 22, 2025
  • esp-idf-svc Public

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

    Rust 393 Apache-2.0 210 39 (2 issues need help) 17 Updated Apr 20, 2025
  • esp-idf-part Public

    A library for parsing and generating ESP-IDF partition tables

    Rust 9 Apache-2.0 10 0 0 Updated Apr 16, 2025
  • openthread Public
    Rust 57 6 6 (1 issue needs help) 0 Updated Apr 15, 2025
  • esp-mbedtls Public

    mbedtls for ESP32 bare-metal

    Rust 29 Apache-2.0 21 6 2 Updated Apr 11, 2025
  • esp-pacs Public

    Peripheral Access Crates for Espressif SoCs and modules

    Rust 131 Apache-2.0 38 3 0 Updated Apr 11, 2025