40-Pin GPIO Modification

Some design problems encountered by early Raspberry Pi peripherals, such as RPi900, were addressed by subsequent Raspberry Pi models. The Raspberry Pi Model B+ and Model A+ introduced and standardized a new, 40-pin GPIO header and mounting hole locations. These new layouts have been maintained in newer models such as the Raspberry Pi 2 and the Pi Zero.

Unfortunately, two critical signals used by RPi900 (the hardware handshake signals) were moved in this transition, rendering the RPi900 design physically incompatible with the new board layout.

However, not all is lost! By soldering an extra pair of jumper wires when assembling the RPi900 board, it can be made to work with the 40-pin GPIO header on all new Raspberry Pi models. Thanks to Brendan Traw for providing instructions and illustrations for this procedure.

(For users wishing to use a Raspberry Pi Zero, an alternative modification is available here.)

Instructions

An additional 2x20-pin female header will be needed to replace the 26-pin header which comes with the RPi900 kit. These are cheaply obtained on eBay and elsewhere. With a pair of pliers, remove pins 27-35 and 37-40 as illustrated below:

40-pin GPIO socket

(Pin 36 carries the CTS0 signal which we will be relocating.)

Next, solder the extended header to your RPi900 board in place of the normal 26-pin header. The new header will block the cut-out for the old composite video port, but as this port’s location has also changed, this is not a concern.

socket soldered to RPi900 board

Finally, cut two short jumper wires as shown below. Using the wires, solder GPIO pins 36 and 11, (the new CTS0 and RTS0 pins, respectively, with white and brown wires in the illustration) to their old locations on the RPi900 board.

jumper wires soldered in place

A dab of hot glue on the longer jumper wire and at pin 36 may help secure the assembly in place.

No further hardware or software modifications are needed to use RPi900 with the newer-generation Raspberry Pi models. The only downside to this configuration is the lack of support posts to hold the RPi900 board above the Raspberry Pi. (You may be able to come up with your own solution for this minor issue.)

Be sure to install the latest version of the rpirtscts utility package, which auto-detects the Raspberry Pi model being used and enables hardware flow control accordingly.