Need a detailed explaination about the CMSIS-DAP debugger for ESP32

I find there is a document about CMSIS-DAP, it says that CMSIS-DAP support ESP32. Unfortunately, the document is very brief.
Is there a detailed document for how to configure the CMSIS-DAP support ESP32?
Best regards.

The PlatformIO configuration is already documented above. What the document assumes as background knowledge is that you know to connect the CMSIS-DAP’s JTAG pins (TDI, TDO, TCK, TMS) to the target ESP32 board, like Low-cost ESP32 In-circuit Debugging | by Manuel Bl. | Medium does with a ESP-PROG.

Hi, thank you very much for replying.
I connect the CMSIS-DAP debugger with esp32 correctly:


  • TDI —> GPIO12
  • TDO —> GPIO15
  • TCK —> GPIO13
  • TMS —> GPIO14
  • GND —> GND
  • 3V3 —> 3V3

But when debugging in PIO, errors appeared:

P.S. platformio.ini is:

platform = espressif32
board = esp32dev
framework = arduino

In the device Windows manager, where does your CMSIS-DAP show up? What VID and PID does it have in the details view? Did you load any other drivers using e.g. Zadig?

Specifically, OpenOCD will search for a USB device that has “CMSIS-DAP” in its product string.

So if you don’t see such a device in the Windows device manager, that is one cause.

Also there should be

upload_protocol = cmsis-dap
debug_tool = cmsis-dap

at the end, as the documentation says.

In the device windows manager, CMSIS-DAP shows:
VID and PID view:
No other drivers using Zadig.
I find there is a virtual disk named “DAPLINK” appeared when insert CMSIS-DAP in my computer:


upload_protocol = cmsis-dap
debug_tool = cmsis-dap

errors appeared:

I find that there is an issue, in the end of it, the figure is very similar with mine:

Then I download the openocd provided by wuxx, and unzip it, then two folders getted:
in the folder “bin”, openocd.exe exists.
I replace the two folders (bin, share) in “C:\Users\wgt04.platformio\packages\tool-openocd-esp32” with the folders (bin, share) just unziped.
Then, I click the debug button in PIO, and some messages appeared:

The messages above is different from the messages before.

Interesting, so OpenOCD doesn’t have that support compiled in in the offical binary :confused:

Can you add

debug_speed = 500

in the platformio.ini to lower the frequency? maybe it gets further then.

Otherwise, the OpenOCD-ESP32 issue will be a better place to discuss it

Thank you for replying.
After adding

debug_speed = 500

it still output the same error.
So let’s wait for espressif solve the problem.

Can you comment on the issue to push it up? Just waiting might not get Espressif’s attention. If it was working for the person who custom-built the OpenOCD version, you might want to write to that person too.

Hi, I had opened an issue #237, want to get Espressif’s attention.
P.S. My English is poor.