Skip to content

DazzlingOkami/debugprobe

 
 

Debugprobe with Black Magic

Firmware source for the Raspberry Pi Debug Probe SWD/UART accessory. Can also be run on a Raspberry Pi Pico.

Raspberry Pi Debug Probe product page

Raspberry Pi Pico product page

Black Magic home page

Documentation

Debug Probe documentation can be found in the Pico Getting Started Guide. See "Appendix A: Using the Debug Probe".

Black Magic Probe documentation can be found in the Black Magic Probe Getting Started.

Hacking

For the purpose of making changes or studying of the code, you may want to compile the code yourself.

First, clone the repository:

git clone https://github.com/DazzlingOkami/debugprobe
cd debugprobe

Initialize and update the submodules:

 git submodule update --init --depth=1

Then create and switch to the build directory:

 mkdir build
 cd build

If your environment doesn't contain PICO_SDK_PATH, then either add it to your environment variables with export PICO_SDK_PATH=/path/to/sdk or add PICO_SDK_PATH=/path/to/sdk to the arguments to CMake below.

Run cmake and build the code:

 cmake ..
 make

Done! You should now have a debugprobe.uf2 that you can upload to your Debug Probe via the UF2 bootloader.

Features

It support for BMP debug mode compared to the official firmware. It includes support for most targets, but only implements the SWD interface.

Refactored the code of the cdc_uart part and implemented a v2 version. It does not rely on the tud_cdc_connect() interface, which can make it more friendly to the host computer. I'm not sure if using DMA transfer would result in more efficient performance, but I did try it out. It achieves zero copy of data at the application layer.

Use floating point division mode for PIO to achieve more accurate SWD clock frequency.

Optimize the dual core of MCU by using SMP with FreeRTOS.

TODO

  1. BMP JTAG adapter support.
  2. BMP run and error LED compatible with Debugprobe.
  3. RTT support based on module within BMP.

About

No description, website, or topics provided.

Resources

License

GPL-3.0 and 3 other licenses found

Licenses found

GPL-3.0
COPYING
Apache-2.0
LICENSE-Apache
BSD-3-Clause
COPYING-BSD
MIT
COPYING-MIT

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 89.0%
  • CMake 11.0%