Skip to content

7. ESP32 web flasher

Nathan zhou edited this page Sep 16, 2025 · 1 revision

Web flasher source code

https://github.com/sikaxn/sikaxn.github.io/tree/master/customcanespfw

Our flasher is based on ESP Web Tools: https://esphome.github.io/esp-web-tools/

Step 1: Export compiled binary from Arduino IDE

1. Select Other board and port

image image

Please select ESP32 Dev Module

Step 2: Export compiled binary

Go to the build folder under your sketch

image

Copy the merged bin file to your web server.

Step 3: prepare manifest json file

Update path and name of your .bin file.

{
  "name": "New firmware",
  "version": "1.0.0",
  "builds": [
    {
      "chipFamily": "ESP32",
      "improv": false,
      "parts": [
        {
          "path": "../firmware/New-firmware.bin",
          "offset": 0
        }
      ]
    }
  ]
}

Save this .json to manifest.

Step 5: update firmwarelist.json

Add an entry into the json

    {
      "id": "new-fw",
      "label": "New firmware",
      "manifest": "manifest/new-fw.json"
    }

To test locally.

You can't click on index.html as ESP Web Tool must get firmware from HTTP server. To test locally, run this in the terminal on your html directory

python -m http.server 5000

Clone this wiki locally