Windrose

ESP Serial Flasher

espressif · 571 GitHub stars

Program and control ESP8266 and ESP32-series chips from a host MCU over UART, USB CDC-ACM, SPI and more.

ESP Serial Flasher

espressif · 571 GitHub stars

Program and control ESP8266 and ESP32-series chips from a host MCU over UART, USB CDC-ACM, SPI and more.

  • Follows branch master: each west update will get its latest commits. To stay on one version, it is recommended to use a release tag.

Install

# From the workspace root
curl -fsSL https://kartben.github.io/windrose/m/esp-serial-flasher.yaml \
     -o zephyr/submanifests/esp-serial-flasher.yaml
west update esp-serial-flasher

Details

Revision
master
License
Apache-2.0
Maintainers
@espressif
Last commit
22 days ago
Includes
DT bindings

About

ESP Serial Flasher is a portable C library developed and maintained by Espressif Systems that enables programming and interacting with Espressif SoCs (ESP8266, ESP32 series) from host microcontrollers running embedded operating systems. The library provides a unified API for flash operations, RAM download and execution, and device management across multiple communication interfaces including UART, USB CDC ACM, SPI, and SDIO.

This module is particularly valuable for Zephyr-based applications that need to program or interact with Espressif target devices without requiring a PC or Python runtime environment. It offers similar functionality to esptool but is optimized for resource-constrained embedded systems, making it ideal for production programming tools, bootloaders, and firmware update mechanisms.

ESP Serial Flasher supports a wide range of Espressif SoCs. For the list of supported targets and more information, see ESP Serial Flasher GitHub.

ESP Serial Flasher is licensed under the Apache License 2.0.