Skip to content

A simplify flashing tool of ESP32 boards on multiple platforms.

License

Notifications You must be signed in to change notification settings

william-ferguson-au/esp32-flash-tool

 
 

Repository files navigation

ESP32 Flash Tool

A desktop application for flashing production ESP32 firmware. App suports multiple platforms (Windows, MacOS, Linux)

ESP32 Flash Tool

Motivation

Simplify settings, clean UI and focus on mass manufacturing process where development and manufacturing are separated steps.

Dependencies install

ESP32 Flash Tool depends on pySerial version 3.0 or newer for serial communication with the target device. Hence, you should install Python before start run the app.

To install pySerial manually by running something like:

$pip install pyserial
or
$easy_install pyserial
or
$apt-get install python-serial

depending on your platform. (The official pySerial installation instructions are here).

Firmware manufacturing process

Imagine you have at least 5 steps from firmware development to flashing firmware into production board. The app would be used at Step 5 in the process flowing:

Firmware Manufacturing Process

Create a single compressed file for ESP32 Flash Tool

ESP32 flash tool uses a single zipped file for flashing, just simply collect all required binaries, and create partitions.csv in the same folder then compress all into a zip file.

partitions.csv file format

ESP32 flash tool uses partitions.csv for identifying offsets of binary blobs. Sample of partitions.csv will be:

id,name,offset
1,bootloader.bin,0x1000
2,ota_data_initial.bin,0xd000
3,partitions.bin,0xf000
4,device-00001.bin,0x10000
5,app.bin,0x20000

About

A simplify flashing tool of ESP32 boards on multiple platforms.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 53.3%
  • C 38.3%
  • JavaScript 4.1%
  • Vue 2.4%
  • SCSS 1.1%
  • Makefile 0.4%
  • Other 0.4%