Issue with esp prog JTAG debuuger

Hi!

first time user.

I have used Platform-IO for a little bit to program my ESP32 systems (esp-dev and Wemo-minis) without issue.
Now I wanted to try the ESP Prog JTag debugger…

After installing everything as I thought was correct (Zadig…) my ESPs are not properly recognized anymore as COM ports.

An Arduino is still recognized and can be programmed It shows as a CH340 driver):
(Unfortunately I just noticed when posting that beginners can only have one picture…??? ):nauseated_face:

The ESPs do not show up correctly anymore and cannot be programmed anymore, with or without the ESP-prog connected. (But they work on another system where I never fiddled with the drivers.)

I have uninstalled/reinstalled/rebooted, exchange drivers/ always the same…

By the way, this is as it shows when plugging in both the ESP board and the debugger, but not connected to each other, this is constantly disconnecting and reconnecting:
No picture allowed… ( It shows both con ports and the corrupted port.)

Windows 10 BTW.

Any help is appreciated.

Here is the other picture:

Reading is one other threads like

https://community.platformio.org/t/problem-with-esp-prog-with-espressif-esp32-devkit-must-be-missing-something/13023/2

I am not clear about how to connect the USB ports.

Most videos on Youtube do not connect the VCC form the prog board to the ESP board…
so I would need another USB cable to the board…? Or does it have to be an external power supply?

From a hardware stand point, you should have three connections:

  • ESP32 to computer, using USB cable
  • ESP-Prog to computer, using USB cable
  • ESP-Prog to ESP32, using jumper wires for GND, TDI, TDO, TCK, TMS, and optionally TRST

So the ESP32 gets its power directly from the computer via USB.

With Zadig, you should configure interface 0 of ESP-Prog to use the WinUSB driver. It will usually appear as “Dual RS232-HS” in Zadig. All other interfaces of ESP-Prog and the ESP32 board itself should be left alone.

Your device managers screenshot like indicates that:

  • the driver for the ESP32 board is not running (assuming your board uses a Silicon Labs chip)
  • interface 0 of ESP-Prog has not be correctly configured (assuming that COM5 and COM6 are related to ESP-Prog)

The steps to fix it are:

  • Remove the driver for COM9 and reinstall the Silicon Labs drivers.
  • Use Zadig to configure interface 0 of “Dual RS232-HS” to use the WinUSB driver

Thank you Manuel

I have done these steps many times, The problem is that the Silab Driver somehow does not function correctly ( see screenshot in my first post).
I can uninstall/reboot/reinstall… Same.

The Zadig driver actually shows as Dual RS232-HS: (with only channel 0 rep[laced)

image

The COM 11 is, shows up when I connect the ESP-prog and will be converted to a second USB=HS device, when I use Zadig for channel ! (in addition to )).

I my opinion it’s the Silab thing, although I never had issues before.

I also never can really uninstall it: I right-click on it, … uninstall. → Com 9 Disappears.

I unplug the ESP32 and reconnect and it shows up again WITHOUT REINSTALLING THE DRIVER

This is a steep start…
After reinstalling everyting I foulf the the silabs 6.7 version will work (as opposed to the Version 11 “universal driver”)
Everything looks good now and even after replacing the Drivers with Zadig, I still cal use the ESP32:

image

Unfortunately I still can’t get the debugger to run…

Can’t connect… investigation…

Open On-Chip Debugger v0.10.0-esp32-20210721 (2021-07-21-13:35)
Licensed under GNU GPL v2
For bug reports, read
OpenOCD: Bug Reporting
adapter speed: 20000 kHz

WARNING: boards/esp-wroom-32.cfg is deprecated, and may be removed in a future release.
adapter speed: 5000 kHz

Info : tcl server disabled
Info : telnet server disabled
Info : clock speed 5000 kHz
Error: JTAG scan chain interrogation failed: all ones
Error: Check JTAG interface, timings, target power, etc.
Error: Trying to use configured scan chain anyway…
Error: esp32.cpu0: IR capture error; saw 0x1f not 0x01
Warn : Bypassing JTAG setup events due to errors
Info : accepting ‘gdb’ connection from pipe
Warn : No symbols for FreeRTOS!
Error: Target not examined yet
Error executing event gdb-attach on target esp32.cpu0:

Error: Target not halted
Error: auto_probe failed
Error: Connect failed. Consider setting up a gdb-attach event for the target to prepare target for GDB connect, or use ‘gdb_memory_map disable’.

This is usually an indication of wrong wiring or an interally broken wire. Have you done it exactly as per https://medium.com/@manuel.bl/low-cost-esp32-in-circuit-debugging-dbbee39e508b?

You may also try lowering the debugging clock speed, by e.g. setting debug_speed = 500 in the platformio.ini.

Thanks. I will check it our this weekend

OK,
here is my last status:

I rewired everything, just to make sure that there were no bad crimps etc.
Same issue.

I rewired another adapter cable for a WEMOS D1: EVERTHING WORKS…!!!
Automatic upload, debug…breakpoints.

Further investigating revealed that it’s the G12 pin with the other board. As soon a that is connected it will not upload anymore.
Peter Galagher has a YOUTUBE video where he starts talking about issues with the D12 pin but then looses track and never explains the solution.

Another side info: My D1 board just uploads without interaction. The other board (Some esp32 dev clone) needs the BOOT button to be pushed once the upload is starting. (Connecting…_____.)

Here is the log of the failing board:

Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/esp32dev.html
PLATFORM: Espressif 32 (3.4.0) > Espressif ESP32 Dev Module
HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
DEBUG: Current (esp-prog) External (esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa)
PACKAGES:
 - framework-arduinoespressif32 3.10006.210326 (1.0.6)
 - tool-esptoolpy 1.30100.210531 (3.1.0)
 - tool-mkspiffs 2.230.0 (2.30)
 - toolchain-xtensa32 2.50200.97 (5.2.0)
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 28 compatible libraries
Scanning dependencies...
No dependencies
Building in release mode
Retrieving maximum program size .pio\build\esp32dev\firmware.elf
Checking size .pio\build\esp32dev\firmware.elf
Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
RAM:   [          ]   4.1% (used 13384 bytes from 327680 bytes)
Flash: [==        ]  15.4% (used 202170 bytes from 1310720 bytes)
Configuring upload protocol...
AVAILABLE: esp-prog, espota, esptool, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa
CURRENT: upload_protocol = esptool
Looking for upload port...
Use manually specified: COM4
Uploading .pio\build\esp32dev\firmware.bin
esptool.py v3.1
Serial port COM4
Connecting........_
Chip is ESP32-D0WDQ6 (revision 1)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
Crystal is 40MHz
MAC: 7c:9e:bd:f4:f4:34
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 460800
Changed.
Configuring flash size...
Warning: Could not auto-detect Flash size (FlashID=0xffffff, SizeID=0xff), defaulting to 4MB
Flash will be erased from 0x00001000 to 0x00005fff...
Flash will be erased from 0x00008000 to 0x00008fff...
Flash will be erased from 0x0000e000 to 0x0000ffff...
Flash will be erased from 0x00010000 to 0x00041fff...
Compressed 17104 bytes to 11191...

A fatal error occurred: Timed out waiting for packet content
*** [upload] Error 2