Following up from getting my debug-pico hardware working, I’ve now written the project up on the project wiki.
Notes 11: Hardware!
Yesterday I published the 11th issue of Yarg Notes: Test Hardware.
Yarg Debug Hardware
I’ve been developing Yarg for a while on Pico boards, and have got into the habit of preferring to use a connected Debug Probe. This has a couple of advantages. Firstly, the USB connection to the development PC is stable even when the target is reset. Secondly, the UART debug is available before the USB connection to the PC stabilises. My standard test setup includes the ‘hello button‘ circuit, so I can press a button and see interrupt handling working on demand.
This all has come together on a breadboard, which has served me well for about a year. However, it’s not very portable – I’m always nervous when it leaves my desk. Additionally, the debug probe is always hanging around loose, which seems ungainly.

Raspberry Pi provide the debug probe firmware to run on a standard Pico, so it is straightforward to debug a pico with another pico. This opens up the idea of a custom board which combines debug probe functionality and the hello button circuit. I’ve just completed testing of this, and the hardware design is in the Yarg test-hardware repo.

If you want to order your own, the ‘gerbers’ are in the manufacture/ directory. You’ll need two Picos, and some thorough hole components: 1x 3mm LED (any colour), 1x 220K resistor, 3x 6mm tactile push button and a 2×3 header. The PCB is drawn to accommodate hand-soldered assembly.

The header is optional, and only needed if you intend to debug the debug pico, which is a bit meta! I’ve not found that ever to be needed during Yarg development.
I’ve chosen to use different button colours for the push buttons, again that’s optional.
In use, you have reset buttons for both the debugger and the target pico. You can choose whether to connect the target Pico via USB, but now you have a permanently coupled debug probe, there’s no need for it.
Note that this PCB will allow you to run the hardware test for Yarg in full. It should pass without using the debug pico at all.