Link to this headingJTAG for RasPi

Link to this headingNetBooting a Pi

PXE booting a Raspberry Pi 4

Link to this headingSetting up the Pi

  1. Download the Raspi 32bit OS.
  2. Flash the sdcard
  3. (Optional) Add the ssh file to the root of the sdcard to enable ssh

Link to this headingEnabling JTAG on the RasPi

Set the enable_jtag_gpio option in the boot variables

Enable Jtag Pins:

echo "enable_jtag_gpio=1" >> /boot/firmware/config.txt

Link to this headingWiring the Connectors

Using the JTAG Pinouts for the RasPi connect the pins in the Alt4 mode.

Connecting them to the Shikra Pins

Pins on the PI:

Pi Pins NamesPi Pin NumberWire ColorTigard JTAG
GPIO 22 (TRST)Pin 15Green(TRST)
GPIO 24 (TDO)Pin 18Purple(TDO)
GPIO 25 (TCK)Pin 22White(TCK)
GPIO 26 (TDI)Pin 37Grey(TDI)
GPIO 27 (TMS)Pin 13Blue(TMS)
GroundPin 20Black(GND)
5V VCCPin 2Red(VTGT)

Link to this headingTesting the Connectors

$ sudo openocd -f tigard-jtag.cfg -f raspi.cfg Open On-Chip Debugger 0.11.0-rc2 Licensed under GNU GPL v2 For bug reports, read http://openocd.org/doc/doxygen/bugs.html jtag DEPRECATED! use 'adapter speed' not 'adapter_khz' raspi.arm Info : Listening on port 6666 for tcl connections Info : Listening on port 4444 for telnet connections Info : clock speed 1000 kHz Info : JTAG tap: raspi.arm tap/device found: 0x07b7617f (mfg: 0x0bf (Broadcom), part: 0x7b76, ver: 0x0) Info : found ARM1176 Info : raspi.arm: hardware has 6 breakpoints, 2 watchpoints Info : starting gdb server for raspi.arm on 3333 Info : Listening on port 3333 for gdb connections Info : accepting 'telnet' connection on tcp/4444