Upload Code using Web Serial ESPTool
The WebSerial ESPTool was designed to be a web-capable option for programming Espressif ESP family microcontroller boards that have a serial-based ROM bootloader. It allows you to erase the contents of the microcontroller and program up to 4 files at different offsets.
For boards that lack native USB, like the ESP32 or ESP32-C3 microcontroller, this is how any firmware like CircuitPython .bin files can be loaded. There is no drag-and-drop to a folder option for these boards.
For boards with native USB, like ESP32-S2, -S3, etc. this is how the UF2 bootloader .bin file can be loaded. Once the UF2 bootloader is on, firmware like CircuitPython .uf2 files can be drag-and-dropped to a BOOT folder.
This tool is a good alternative for folks who cannot run Python esptool.py on their computer or are having difficulty installing or using esptool.py.
You will have to use the Chrome or Chromium-based browser for this to work. For example, Edge and Opera are Chromium. Safari and Firefox, etc are not supported - they have not implemented Web Serial!
Enter Bootloader Mode
Before you can use the tool, you will need to put your board in bootloader mode. Before you start, make sure your ESP32-S2/S3 is plugged into a USB port to your computer using a data/sync cable. Charge-only cables will not work!
Turn on the On/Off switch - check that you see the green power light on so you know the board is powered, a prerequisite!
To enter the bootloader:
- Press and hold the BOOT/DFU button down (green box). Don't let go of it yet!
- Press and release the Reset button (red box). You should still have the BOOT/DFU button pressed while you do this.
- Now you can release the BOOT/DFU button.
No USB drive will appear when you've entered the ROM bootloader. This is normal!
Download the application for your board
Click the button below to download the application binary file for your board.
Connect and Upload
You should have plugged in only the MEMENTO board that you intend to flash. That way there's no confusion in picking the proper port when it's time!
In the Chrome browser visit https://adafruit.github.io/Adafruit_WebSerial_ESPTool/. You should see something like the image shown.
Press the Connect button in the top right of the web browser. You will get a pop-up asking you to select the COM or Serial port.
Remember, you should remove all other USB devices so only the ESP32-S2/S3 board is attached, that way there's no confusion over multiple ports!
On some systems, such as MacOS, there may be additional system ports that appear in the list.
The JavaScript code will now try to connect to the ROM bootloader. It may time out for a bit until it succeeds. On success, you will see that it is Connected and will print out a unique MAC address identifying the board along with other information that was detected.
On the top of the tool, ensure the offset is set to 0x0
and click "Choose a File..."
From the file browser, select the .bin file you downloaded earlier.
Text editor powered by tinymce.