Skip to content
@esp-rs

esp-rs

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

Rust on ESP Community

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

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

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

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

Hardware Abstraction Layer

We offer two choices for Hardware Abstraction Layers:

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

Peripheral Access Crates

The repository esp-pacs contains Peripheral Access Crates for Espressif SoCs and modules.

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 723 34

  2. espflash espflash Public

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

    Rust 457 110

  3. esp-hal esp-hal Public

    no_std Hardware Abstraction Layers for ESP32 microcontrollers

    Rust 628 174

  4. esp-idf-hal esp-idf-hal Public

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

    Rust 420 171

  5. esp-template esp-template Public

    A minimal esp-hal application template for use with cargo-generate

    Dockerfile 129 27

  6. esp-idf-template esp-idf-template Public

    A "Hello, world!" template of a Rust binary crate for the ESP-IDF framework.

    CMake 376 44

Repositories

Showing 10 of 53 repositories
  • xtensa-lx Public

    Low-level access to Xtensa LX processors

    esp-rs/xtensa-lx’s past year of commit activity
    Rust 27 11 3 1 Updated Jul 16, 2024
  • esp-hal Public

    no_std Hardware Abstraction Layers for ESP32 microcontrollers

    esp-rs/esp-hal’s past year of commit activity
    Rust 628 Apache-2.0 174 115 (13 issues need help) 2 Updated Jul 16, 2024
  • esp-pacs Public

    Peripheral Access Crates for Espressif SoCs and modules

    esp-rs/esp-pacs’s past year of commit activity
    Rust 98 Apache-2.0 28 2 4 Updated Jul 16, 2024
  • esp-template Public

    A minimal esp-hal application template for use with cargo-generate

    esp-rs/esp-template’s past year of commit activity
    Dockerfile 129 Apache-2.0 27 7 0 Updated Jul 16, 2024
  • no_std-training Public

    Getting-started guide on using the Rust with Espressif SoCs using no_std.

    esp-rs/no_std-training’s past year of commit activity
    Rust 51 Apache-2.0 12 2 0 Updated Jul 16, 2024
  • esp-mbedtls Public

    mbedtls for ESP32 bare-metal

    esp-rs/esp-mbedtls’s past year of commit activity
    Rust 15 Apache-2.0 6 0 2 Updated Jul 16, 2024
  • esp-rs/repo-activity-digest’s past year of commit activity
    Python 0 Apache-2.0 1 0 0 Updated Jul 16, 2024
  • 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 420 Apache-2.0 171 34 (2 issues need help) 18 Updated Jul 16, 2024
  • 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 289 Apache-2.0 164 36 (3 issues need help) 10 Updated Jul 15, 2024
  • espup Public

    Tool for installing and maintaining Espressif Rust ecosystem.

    esp-rs/espup’s past year of commit activity
    Rust 214 Apache-2.0 24 9 4 Updated Jul 15, 2024