Skip to content

Repository files navigation

espflash

Actions StatusCrates.io

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:

ApplicationDescription
cargo-espflashCargo subcommand for espflash
espflashLibrary and espflash binary (without Cargo integration)

NOTE: requires rustc >= 1.56.0 in order to build either application

Installation

$ cargo install cargo-espflash
$ cargo install espflash

cargo-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.

Example

$ cargo espflash --release --example=blinky /dev/ttyUSB0

espflash

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.

Example

$ espflash /dev/ttyUSB0 target/xtensa-esp32-none-elf/release/examples/blinky

Notes on Building

In order to build from source, in addition to the Rust toolchain libuv must be present on your system. This can be installed via most popular package managers.

macOS

$ brew install libuv

Ubuntu

$ sudo apt-get install libuv-dev

Fedora

$ dnf install systemd-devel

Quickstart - Docker

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

Custom Docker Build

$ git clone --depth 1 https://github.com/esp-rs/espflash.git
$ cd espflash
$ docker build -t esprs/espflash .

License

Licensed under the GNU General Public License Version 2. See LICENSE for more details.

About

ESP8266 and ESP32 serial flasher

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages