Photo of prototype
As well as this, the board can turn a Raspberry Pi into a JTAG-based debugging machine for other processor boards.
- USB-connected debugging of a code on a Pi board (using an add-on module, see below)
- Connection of external debuggers to a Pi
- Use of the Pi as a network attached-debugger (with OpenOCD server running native on Pi) to debug another Tap-Hat-connected Pi or other embedded target with external 3.3v JTAG/SWD connections – so long as OpenOCD support is available for the target.
There is also a UART debug output.
Not available quite yet, it is being designed in the UK by eCosCentric – the source of the eCosPro RTOS.
Physically, it mates with the Raspberry Pi IO header, but extends away from the Pi (unlike a typical HAT which site over the Pi) to allow probing access to Pi components. Its stacking header allows further HATs to be connected over the Pi in the normal orientation.
To use Tap-Hat, certain Pi IO pins have to be re-allocated for JTAG use – the firm’s own Redboot SD Card boot-loader supports this configuration of Pi JTAG pin map, and configures the CPU’s alternate pin mappings to match the Tap-Hat board’s jumper settings.
Supported external JTAG debuggers include Lauterbach TRACE32, Ronetix PEEDI and Segger J-Link.
“Simply connect the hardware debugger’s standard 20 way ARM JTAG cable to the Tap-Hat’s JTAG socket and boot the Pi. Remote reset of the Pi is supported by connection of included flying probe to the Pi reset pin,” according to eCosCentric.
An FTDI mini-module needs to be installed on Tap-Hat to provide both the USB-based JTAG debug capability and debug UART output to a connected PC.
Supported modules include the FTDI FT2232H and FT2232H-56Q. As said above, the open-source OpenOCD server is used to provide GNU GDB connectivity.
Alternatively the Tap-Hat’s standard FTDI 6pin header enables the installation of basic UART to USB converters, such as FTDI LC234X. “This can be used to provide terminal access to the Pi, capture debug output, or in conjunction with the RedBoot bootloader’s debug agent, direct high-speed serial debugging of the Pi with GDB,” said eCosCentric.
Along with Tap-Hat comes an accessory pack with: a Pi reset header, probe clip and flying lead for external reset connection, 20 way ARM JTAG cable for connection to other boards, and board stand-off legs.
Source: Debug Raspberry Pi software, and more, with this hardware