Skip to content
Free public beta until December 4, 2026: every course is open, no card needed. After that, the first chapter of each course stays free and full access is a one-time $39 ($19 for up to 100 founding members chosen for helpful feedback). Your progress is kept. How the beta works

HAL

A library that turns raw registers into easy, safe functions like "set this pin high".

A hardware abstraction layer wraps a PAC in safe, chip-specific drivers (GPIO, timers, I2C, SPI) and implements the embedded-hal traits so portable drivers can use them.

Examples

  • With esp-hal, switching the fan is fan.set_high() on an Output for GPIO8, with no register writes or unsafe in your code.

  • esp-hal 1.0.0 is the ESP32-C6's HAL, giving safe drivers for GPIO, I2C, SPI, UART and timers on top of the PAC.

Read the full section →