debugprobe icon indicating copy to clipboard operation
debugprobe copied to clipboard

Support additional boards

Open thezim opened this issue 2 years ago • 12 comments

Supporting addition boards via the QWIIC/Stemma QT connector like the following would be a great addition. This is not an exhaustive list, I'm sure many more exist.

I see @smittytone has already started on the Adafruit board.

thezim avatar Aug 25 '21 19:08 thezim

Indeed. Ready to go and in a way that can be extended to other boards

smittytone avatar Aug 26 '21 14:08 smittytone

Those QWIIC, Stemma QT, Grove ports, they are not suitable for debugging. Those are just I²C interface and power lines.

werediver avatar Aug 10 '22 11:08 werediver

Those QWIIC, Stemma QT, Grove ports, they are not suitable for debugging. Those are just I²C interface and power lines.

I can assure you it is suitable and it works. You might be misunderstanding that pins can be mapped to other IO functions and not locked to i2c functionality. I have used both of the above to debug another RP2040 target.

thezim avatar Aug 10 '22 16:08 thezim

Those QWIIC, Stemma QT, Grove ports, they are not suitable for debugging. Those are just I²C interface and power lines.

I can assure you it is suitable and it works. You might be misunderstanding that pins can be mapped to other IO functions and not locked to i2c functionality. I have used both of the above to debug another RP2040 target.

Looking at RP2040 datasheet, the SWD pins don't seem to be remappable. You can, of course, solder any connector to any pins, but that's not what QWIIC et al. typically mean.

If you're saying it's possible, I trust there may be such a possibility in some cases, though.

werediver avatar Aug 10 '22 17:08 werediver

I see where you are coming from now. In this case we can use the above boards as a pico probe to connect to a different target. On the probe side we are not limited to which pins can be assigned. Now if we were trying to debug the boards as a target you are 100% corrected. Those lines have to go to SWDIO/SWCLK directly.

thezim avatar Aug 10 '22 18:08 thezim

Ah, that's what you mean, now I understand 👍

I'd personally prefer to use an IDC-10 with the standard Cortex Debug pinout (ideally the suggested 1.27 mm pitch size), but that's not always possible 🤷

Picoprobe seems to be focusing on Pico quite sharp, though. And the custom debugger protocol (requiring a custom OpenOCD build) doesn't really help promoting it.

werediver avatar Aug 10 '22 18:08 werediver

Ah, that's what you mean, now I understand 👍

I'd personally prefer to use an IDC-10 with the standard Cortex Debug pinout (ideally the suggested 1 mm pitch size), but that's not always possible 🤷

Had to solder my own header to my SparkFun Thing Plus - RP2040, not fun in the through hole position at that pitch . I do wish all target boards had an IDC-10 but I understand trying to keep price point low and gearing most RP2040 board towards Arduino core for easier user adoption.

thezim avatar Aug 10 '22 20:08 thezim

I'd personally prefer to use an IDC-10 with the standard Cortex Debug pinout

See also https://datasheets.raspberrypi.com/debug/debug-connector-specification.pdf (as used on the Raspberry Pi Pico H). And yes, of course https://xkcd.com/927/ also applies :laughing:

Picoprobe seems to be focusing on Pico quite sharp, though.

Because when picoprobe was written, Pico was the only RP2040 board :wink: (we're a small engineering team, so we've not had the time or resources to actively support non-Pico boards)

And the custom debugger protocol

It's not really my area of knowledge, but see #31

lurch avatar Aug 10 '22 23:08 lurch

@lurch My understanding regarding #31 is it's never going to be merged 😞 Which is, probably, not that big of a deal, because there is other CMSIS-DAP compliant firmware that can run on Pico, e.g. https://github.com/majbthrd/DapperMime and https://github.com/ciniml/rust-dap (in Rust, using PIO).

werediver avatar Aug 11 '22 18:08 werediver

Hi, thezim.

So am I correct in stating that I can buy the adafruit Raspberry Pi Debug Probe Kit for Pico and RP2040 (product #5699) & use it to debug the adafruit QT Py RP2040?

Just asking before buying.....

Thanks for your help! --Don

Dandy-Don avatar Nov 22 '23 17:11 Dandy-Don

Hi, thezim.

So am I correct in stating that I can buy the adafruit Raspberry Pi Debug Probe Kit for Pico and RP2040 (product #5699) & use it to debug the adafruit QT Py RP2040?

Just asking before buying.....

Thanks for your help! --Don

No. The QT Py RP2040 does not expose the SWDIO or SWCLK pins to allow it to be debugged as a target.

thezim avatar Nov 23 '23 13:11 thezim

If it's the QTPy's small form-factor that appeals, @Dandy-Don, then the Pimoroni Tiny is of a similar size and does expose SWD and SWD pins.

smittytone avatar Nov 23 '23 14:11 smittytone