Skip to content

ArcusEDS/IsolatedDebugProbe

Repository files navigation

Arcus-EDS Isolated Debugprobe

When debugging RPxxxx devices you need a debug-probe. The one from RPI is great and cheap.

But do you know these:

  • You don't have good feeling to have the debugged device directly connected to your PC.
  • Running the program leads to disconnects of the USB-Port when the RP is switching high loads.
  • You have ground-loops when developing audio firmware with an RPxxxx.

Then you need a potential-free isolated debug-probe which galvanically separates the debugging hardware and the debugged device.
We needed such a device for our developments and so we had to develop it.
And we guess others might also be interested so we decided to sell the devices as well.

Arcus-EDS Isolated Debug Probe product page

Isolated Debugprobe Top

Isolated Debugprobe Bottom

Additionally you get:

  • An isolated USB/UART converter which is not so bad at all for many purposes.
  • 3.3V isolated power with up to 150mA.

In this repository you find the firmware source for the Arcus-EDS Isolated Debug Probe SWD/UART accessory which is an adapted version of the original debug probe firmware

Raspberry Pi Debug Probe product page

The Isolated-Debugprobe can also be transformed into a isolated serprog serial flash programmer to be used with flashrom.exe

Arcus-EDS Isolated Serprog flash programmer

Documentation

The debug probe is designed to support the RPxxxx Pico chips.
Debug Probe documentation can be found at the Raspberry Pi Microcontroller Documentation portal.

Commissioning

  • Connect the USB-C cable and watch the probe beeing discovered by the operating system.
  • Switch the 3V-En switch on to provide power to the device to debug, switch it off if the debugged device is self-powered.
    If the 3.3V power is present the LED beside the switch lights up.
  • Connect the GND(-)/SWD/SWCLK/3V3(+) pins to your device to debug.
  • The device should be present and selectable in your IDE.

Some IDEs have a test procedure that should run without any error.

Changing the firmware

For changing the firmware on the probe itself you hold the Programming-button pressed while connecting the USB-cable.

Data

* **
Input Power 5V/300mA over USB
Power Output to debugged device 3.3V/150mA galvanically isolated and short circuit protected
SWD-Speed up to 10MHz
UART up to 250KBaud

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/ArcusEDS/IsolatedDebugProbe 
cd IsolatedDebugProbe 

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 IsolatedDebugProbe.uf2 that you can upload to your Debug Probe over USB.

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.

About

Galvanically isolated version of the RPI Debug-Probe

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published