#embedded-hal #esp #esp32s2 #no-std

no-std esp32s2-hal

HAL for ESP32-S2 microcontrollers

13 breaking releases

0.15.0 Jan 19, 2024
0.14.0 Dec 12, 2023
0.13.0 Oct 31, 2023
0.10.0 Jul 4, 2023
0.3.0 Nov 17, 2022

#1604 in Embedded development

Download history 1786/week @ 2023-11-05 2062/week @ 2023-11-12 1773/week @ 2023-11-19 2695/week @ 2023-11-26 2330/week @ 2023-12-03 2759/week @ 2023-12-10 2121/week @ 2023-12-17 1858/week @ 2023-12-24 1763/week @ 2023-12-31 1714/week @ 2024-01-07 1813/week @ 2024-01-14 1892/week @ 2024-01-21 1551/week @ 2024-01-28 1679/week @ 2024-02-04 1568/week @ 2024-02-11 1778/week @ 2024-02-18

6,802 downloads per month
Used in 3 crates


48K SLoC


Crates.io docs.rs Crates.io Matrix

no_std HAL for the ESP32 from Espressif.

Implements a number of the traits defined in embedded-hal.

This device uses the Xtensa ISA, which is not officially supported by the Rust compiler. In order to develop for this device, you must use the Rust compiler fork with Xtensa support, found at esp-rs/rust.

Please refer to the documentation for more information.



Getting Started

Installing the Rust Compiler

We provide a tool, espup, for easily installing the Rust toolchain with Xtensa support:

cargo install espup
espup install

Following installation of the Xtensa toolchain, if you are running a Unix-like operating system (macOS, Linux) then you must additionally export the necessary environment variables:

. $HOME/export-esp.sh

See the Installation chapter of The Rust on ESP Book for more details.


Licensed under either of:

at your option.


Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.


~463K SLoC