Hacker News new | ask | show | jobs
by duskwuff 7 days ago
> I tried to use picoprobe to debug an nrf52 chip, it failed to even detect it

I've literally got a Pi Debug Probe and a nRF52840 dev board on my desk, so I gave it a shot - and it works just fine. Make sure the core is awake when you try to connect for debug, or connect under reset; SWD goes to sleep with the rest of the chip.

> All that’s officially supported is using it to debug a raspberry pi

The Pi Debug Probe is a generic DAPlink probe, and will work for pretty much any Cortex-M part. I routinely use mine for debugging STM32 parts.

1 comments

'Connect under reset' is an STM32 thing, nrf52840 can't really do that and the probe doesn't use hardware reset pin. Once the MCU is out of pin reset, Ctrl-AP can hold the mcu in soft reset, but that's the standard behavior.

The difference between Pico and Pi Debug Probe are those 100Ω resistors on CLK/DIO lines, so I guess it working for you means I need to try again with resistors soldered.

Thanks for verifying it works!

There's basically zero chance 100Ω resistors are contributing to your issues on a protocol that is host-clocked and can operate in the single kilobaud range.

Lower speed or try one of the other fifty debug firmware projects.

https://github.com/raspberrypi/debugprobe

https://github.com/bugadani/rusty-probe-embassy

https://github.com/probe-rs/rusty-probe

https://github.com/ciniml/rust-dap

https://github.com/ccattuto/rp2040-dap-probe

Not all firmware implements all modes or the CMSIS-DAP spec correctly (most don't implement JTAG, either.)

Okay i'm officially a dumbass - looking at the pinout i can clearly see Arduino pins and normal GPIO pins are mixed up on the board I used (seeed xiao rp2040). Arduino strikes again!

Just checked - of course if works fine on proper pins