Step by step instructions for ESP-Prog?

kabaragoya
Posts: 2
Joined: Mon Mar 31, 2025 1:04 am

Step by step instructions for ESP-Prog?

Postby kabaragoya » Mon Mar 31, 2025 1:34 am

Hi everyone. I'm trying to program and debug an ESP32-S3-DevKitM-1 with an ESP-Prog, and I've been unable to get things working... at least not in a repeatable way. I'm on the hunt for some coherent tutorials on how to get this working, but so far the closest thing I've found is Yuri R's video. It's great, but doesn't go into the detail I need.

My ultimate goal is to be able to program, burn eFuses and debug running code without the presence of a USB connector.

For context, I'm using the IDF-SDK v5.4 extension inside VSCode on Windows 11. As I mentioned in the subject, I'm using an ESP-Prog.

I've used Zadig to install WinUSB on Interface 0 of my Dual RS-232 device. (I've tried libusbK as well.) I've managed to get two consecutive COM ports to show up. (Sometimes...)

I've burned the DIS_USB_JTAG eFuse.

Sometimes, I can get OpenOCD to start; whether by clicking the [OpenOCD Server] link in the IDF extension, or by running

Code: Select all

openocd -f interface/ftdi/esp32_devkitj_v1.cfg -f target/esp32s3.cfg
inside of an ESP-IDF Terminal session inside of VSCode. Most of the time, it seems like it doesn't work; "all ones" or "all zeroes".

I am really fuzzy on which drivers actually need to be installed via Zadig to make everything work just right every time, and it's more than a bit confusing that the COM ports assigned keep changing. It also seems like switching to a different USB port on my machine is a no-no.

As for UART debugging, I haven't been able to get that working at all. I've read that I should leave the USB driver for Interface 1 on the default ETFI, and I'm working on the assumption that JTAG is on the lower COM port and UART is on the higher one.

I was even able to flash an image using the JTAG interface, once, although it seemed to take forever. And I haven't been able to replicate it since.

I could live with slow speed, but the really problem is the eFuse. If there's no USB port, you need to be able to reliably connect over the UART so that you can burn the DIS_USB_JTAG eFuse. Otherwise, you're in a catch-22. I learned this the hard way when I received a PCB order where I broke out the JTAG interface but not the serial lines.

Anyhow, I feel like I'm within kicking distance of getting this all working, but I'm feeling pretty demoralized given all of the hours invested in trying to wrap my head around this and get all of the infrastructure set up just so. If you have solved some of these challenges in a relatable way, I would love to hear from you.

Yes, the ESP32-S3-DevKitM-1 obviously has USB ports. I am trying to work out the process on a dev board before I apply the same techniques to my own board, which will not have USB.

User avatar
egionet
Posts: 39
Joined: Thu Sep 26, 2024 4:34 am
Location: Atlantic Canada

Re: Step by step instructions for ESP-Prog?

Postby egionet » Fri Apr 04, 2025 8:42 pm

I connected my ESP-Prog, and two ports are visible on a Windows machine without using Zadig.

Introduction to the ESP-Prog Board (USB Driver) https://docs.espressif.com/projects/esp ... guide.html

JTAG Debugging (OpenOCD instructions) https://docs.espressif.com/projects/esp ... index.html
Regards,

Eric Gionet P.Tech.(Eng.), CIOTP, SMIEEE

kabaragoya
Posts: 2
Joined: Mon Mar 31, 2025 1:04 am

Re: Step by step instructions for ESP-Prog?

Postby kabaragoya » Fri Apr 04, 2025 10:03 pm

Thanks for your reply, Eric. I was hoping that providing the detail I gave in my initial message that I would demonstrate in spades that I have been all over that documentation several times.

The documentation you linked to is what suggests using Zadig to install the correct drivers on the USB interfaces. As it happens, to date I have tried using the default Windows 11 FTDI drivers, the updated FTDI drivers from the manufacturer as well as WinUSB and libusbK installed by Zadig.

Specifically, it's unclear how you could have OpenOCD working with an ESP-Prog if you didn't have the right USB driver installed.

Could you please open Zadig and tell me what USB drivers are currently installed on both Interface 0 and Interface 1 of your Dual RS 232 device?

ESP-Prog creates two virtual COM ports. Could you confirm whether it assigns JTAG to the lower port number or the higher one?

Also, what did you have to configure to get the IDF Monitor command to use the 2nd COM port as the serial debug interface?

Who is online

Users browsing this forum: Amazon [Bot], Bing [Bot], Google [Bot], Semrush [Bot] and 1 guest