Skip to content

ESP Prog 2 firmware update guide

Djordje Nedic edited this page Jan 9, 2024 · 1 revision

Introduction

In order to provide users with improvements and potential bugfixes, the ESP-Prog-2 programmer/JTAG probe provides the option of user-updatable firmware.

There are multiple ways to update the firmware on the ESP-Prog-2 probe:

Updating using the ESP Launchpad

By far the easiest and recommended way to upgrade the firmware of your ESP-Prog-2 probe is to use ESP Launchpad which enables you to flash binary images straight from your web browser. To use this method follow these steps:

  1. Open the ESP Launchpad website
  2. Press down the BOOT button with the ESP32S3 label on the board and connect it to your PC
  3. Select the ESP-Prog-2 application from the application dropdown menu
  4. Click Flash and wait until the operation completes
  5. Disconnect and connect your ESP-Prog-2 to your PC again

Manual flashing

The following methods require you to grab the firmware binaries from the esp-usb-bridge Releases page.

esptool

esptool provides a way to flash our binary to the ESP32S3 on the probe.

  1. First, install esptool:
pip install esptool
  1. Press down the BOOT button with the ESP32S3 label on the board and connect it to your PC

  2. Then flash the binary with the following command:

esptool.py write_flash 0x10000 esp-prog2-firmware.bin

esptool will automatically detect the required port and chip type, but if the automatic detection doesn't work, you can specify the options manually:

esptool.py --chip esp32s3 --port /dev/ttyUSB0 write_flash 0x10000 esp-prog2-firmware.bin
  1. Finally, disconnect and connect your ESP-Prog-2 to your PC again

DFU and USB Serial/JTAG

These methods don't require you to reconnect the probe with the BOOT button pressed down, and can be used by following their respective guides:

Building and flashing the firmware using ESP-IDF

The ESP-Prog-2 programmer and debugger uses the esp-usb-bridge project for it's firmware.

In order to get the sources, you can either clone the esp-usb-bridge git repository:

git clone https://github.com/espressif/esp-usb-bridge.git

and checkout a tag we are interested in:

git checkout <tagname>

or grab them from the Releases page.

Then, you need a working ESP-IDF environment, which can be set up by following the Getting Started guide.

After this you can configure and build the project:

export SDKCONFIG_DEFAULTS="sdkconfig.defaults.esp_prog2;sdkconfig.defaults.esp32s3"
idf.py build

Finally, to flash the probe press down the BOOT button with the ESP32S3 label on the board and connect it to your PC, then run:

idf.py flash