Cannot locate CMSIS-DAP device on Arduino Zero

I’m attempting to troubleshoot a Go application with VS Code on WSL, but unfortunately, dlv is not functional on WSL 1.


Uploading the Blink test sketch to my new Zero board with the
shield installed. The IDE’s Console displays the following message when I click on the Upload button.

The board selected for programming is “Arduino/Genuino Zero” and the version of Arduino being used is 1.6.10 on a Linux system.

Open On-Chip Debugger 0.9.0-gd4b7679 (2014-10-03-00:26)
Licensed under GNU GPL v2
For bug reports, read
debug_level: 0
adapter speed: 500 kHz
adapter_nsrst_delay: 100
cortex_m reset_config sysresetreq
Error: unable to find CMSIS-DAP device
Error: No Valid JTAG Interface Configured.
Error: No Valid JTAG Interface Configured.

My usage involves the programming port known as Zero.


Encountering the identical error on the board, I found a resolution by running the IDE with root access. Therefore, it supports Chris’s observation that there was a permission problem.

Additional details can be accessed at this link:

Afterward, I included the document labeled


into the project.

ACTION!="add|change", GOTO="openocd_rules_end"
SUBSYSTEM!="usb|tty|hidraw", GOTO="openocd_rules_end"
ATTRS{product}=="*CMSIS-DAP*", MODE="664", GROUP="plugdev"                                                                                                                                                                                

I made certain that I became a part of the



The program identified as


monitors its rules directory for updates, eliminating the need for manual restarts.

The board started functioning again when I plugged it back in.

Keep in mind that it’s possible to prompt udev to re-read the rule files by inputting:

sudo udevadm control --reload

Due to an initial error in the rule file, it was necessary for me to take this action.

Hope this helps.

Frequently Asked Questions