Espressif’s ESP USB Bridge is a project based on the ESP-IDF that leverages ESP32-S2 or ESP32-S3 USB interface to use the board as a USB to UART or USB to JTAG debug board.
It can serve as a substitute for USB to TTL debug boards based on CH340 or CP2104 for instance, be used with OpenOCD in JTAG bridge mode, and also flash UF2 firmware file to the target board.
As just mentioned, there are three main use cases:
- Serial bridge mode with a terminal program or a firmware flashing tool like esptool. In that case, it just works like your typical USB to TTL debug board
- JTAG bridge mode for JTAG debugging with OpenOCD, and if the target board is based on ESP32, you can use openocd-esp32 project
- Mass storage device where the board can be accessed by a file manager on the host computer. One of the specific use cases in this mode is to copy a UF2 firmware file that can then be flashed to the target microcontroller by ESP32-S2/S3. At this time, ESP USB Bridge only supports UF2 flashing to Espressif microcontrollers.
The source code, released under an Apache 2.0 license, and instructions can be found on Github. You’ll need an ESP32-S2 or ESP32-S3 board that exposes the USB DM/DP pins as well as UART and/or JTAG interfaces. Something like Lolin S2 Mini should do the job as a USB to UART board with USB and UART available on the headers, but if you need JTAG, the ESP32-S3-USB-OTG board should be a better option. The ESP-IDF 4.3 or greater is required to build the project.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.