Serial flasher utility for Espressif SoCs and modules based on esptool.py.
Currently supports the ESP32, ESP32-C3, ESP32-S2, ESP32-S3, and ESP8266.
This repository contains two applications:
Application | Description |
---|---|
cargo-espflash | Cargo subcommand for espflash |
espflash | Library and espflash binary (without Cargo integration) |
NOTE: requires
rustc >= 1.56.0
in order to build either application
$ cargo install cargo-espflash
$ cargo install espflash
cargo-espflash is a subcommand for Cargo which utilizes the espflash library. This tool integrates with your Cargo projects and handles compilation, flashing, and monitoring for target devices.
Please see the cargo-espflash README for more information.
$ cargo espflash --release --example=blinky /dev/ttyUSB0
espflash is a standalone binary and library contained within the same crate. This tool does not integrate with Cargo, but supports all of the same features as cargo-espflash which are not related to compilation.
Please see the espflash README for more information.
$ espflash /dev/ttyUSB0 target/xtensa-esp32-none-elf/release/examples/blinky
The esprs/espflash
Docker image contains all necessary toolchains and tooling (including espflash) to build an application and flash it to a target device.
To clone, build and flash the esp32-hal examples run the following:
$ git clone https://github.com/esp-rs/esp32-hal
$ cd esp32-hal
$ docker run -v "$(pwd):/espflash" --device=/dev/ttyUSB0 -ti esprs/espflash --release --example=blinky /dev/ttyUSB0
$ git clone --depth 1 https://github.com/esp-rs/espflash.git
$ cd espflash
$ docker build -t esprs/espflash .
Licensed under the GNU General Public License Version 2. See LICENSE for more details.