| # Debugprobe |
| |
| 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](https://www.raspberrypi.com/products/debug-probe/) |
| |
| [Raspberry Pi Pico product page](https://www.raspberrypi.com/products/raspberry-pi-pico/) |
| |
| |
| # Documentation |
| |
| Debug Probe documentation can be found at the [Raspberry Pi Microcontroller Documentation portal](https://www.raspberrypi.com/documentation/microcontrollers/debug-probe.html#about-the-debug-probe). |
| |
| # 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/raspberrypi/debugprobe |
| cd debugprobe |
| ``` |
| Initialize and update the submodules: |
| ``` |
| git submodule update --init --recursive |
| ``` |
| 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. |
| |
| If you want to create the version that runs on the Pico, then you need to invoke `cmake` in the sequence above with the `DEBUG_ON_PICO=ON` option: |
| ``` |
| cmake -DDEBUG_ON_PICO=ON .. |
| ``` |
| |
| This will build with the configuration for the Pico and call the output program `debugprobe_on_pico.uf2`, as opposed to `debugprobe.uf2` for the accessory hardware. |
| |
| Note that if you first ran through the whole sequence to compile for the Debug Probe, then you don't need to start back at the top. You can just go back to the `cmake` step and start from there. |
| |
| # Building for the Pico 2 |
| |
| If using an existing debugprobe clone: |
| - You must completely regenerate your build directory, or use a different one. |
| - You must also sync and update submodules as rp2350 needs a downstream FreeRTOS port for now. |
| - `PICO_SDK_PATH` must point to a version 2.0.0 or greater install. |
| |
| |
| ``` |
| git submodule sync |
| git submodule update --init |
| mkdir build-pico2 |
| cd build-pico2 |
| cmake -DDEBUG_ON_PICO=1 -DPICO_BOARD=pico2 -DPICO_PLATFORM=rp2350 ../ |
| ``` |
| |
| # TODO |
| - AutoBaud selection, as PIO is a capable frequency counter |
| - Possibly include RTT support |