The PiRack is a carrier card designed to allow multiple expansion boards to be connected to the Raspberry Pi proving as many copies of the GPIO header (P1) as the user may require. Measuring 10cm x 5cm (board size excluding pins) it allows 4 expansion boards to be connected at the same time. However, as the PIRack can be daisy chained (the end header on one board is connected to the input of another) this allows as many boards as the user requires to be connected without any diffficulty. It can be purchased from Farnell for £6.99 or Newark for $10.50.
(PiRack with Raspberry Pi for scale)
As many expansion boards can be connected, the PiRack features the option for the boards to be powered externally via a 2.1mm barrel jack on the side of the board. The power jumpers (circled here in red) allowing the user to select between external power and being powered from the Raspberry Pi for each expansion board. I have a reasonably large collection of power supplies and no commercial 5V ones which ended with a barrel jack. Possibly the addition of a 7805 regulator which would allow good voltage regulation and any input voltage from 9-35V would make this product more usable without the need to swap connecters on power supplies. That said, 5V barrel jack wall warts are available on Farnell for £5.25 so it's probably not too much of a problem.
The jumpers circled in yellow were a bit more troublesome when it came to working out what they did. The website address marked on the silkscreen of the PiRack (http://piface.opnelx.org.uk) provided very little information to do with the PiRack. After some lengthy Internet searches, the two jumpers swap the SPI chip enable lines over which appears to be something exclusive to PiFace expansion boards to allow them to have different addresses. I was using homemade expansion boards so just left them in the default position. Given the amount of space on the PiRack and the fact they have already used a silkscreen, I wouldn't have thought it would have been too much trouble to show this was what the jumpers did somewhere on the board.
Using the PiRack
The first thing I was anxious to test was the quality of theI2C bus as I had been having problems with ribbon cable. The capictance between the data lines was greater than the specification allowed so the communications with the Si570 chip I was driving kept missing bits. This meant the entire Python program I had written crashed as that is how Python handles incomplete data transmissions. However I had no problem with the PiRack, even on the end set of pins, so this was a great relief. I have now sent over one million commands through the PiRack and have never dropped a bit. The wide spacing between the data lines on the board should mean that any data transmission should be of high quality throughout the board which was a great benefit to me as my project relies critically on all these data buses working well. Well done PiFace! During these tests, I noticed some of the pins on the PiRack I had been sent were slightly bent. Two minutes with a pair of pliers and this problem was easily overcome.
While the PiRack is excellent for rapid prototyping with many expansion boards, I am uncertain of its suitability in a finished project. The only form of mechanical support for the boards is the GPIO pins. When I mounted a small board on the pins, it was able to flex 3mm either way. Now imagine what could happen if a heavy board containing several relays were mounted and if PiRacks are connect together, the problem would get much worse. If the PiRack were mounted horizontally and the RPi and expansion boards mounted vertically, stand off pillars would be required. The pins on the underside of the board have not been trimmed during production and so stick out nearly 4mm from the board. This combined with the RCA socket on the RPi means the Pi Rack needs to be mounted at least 8mm from the base of the project box. Also the screw holes are very close to the edge (<1mm). For scale, in the picture below, the screw hole is 3.5mm in diameter. This means any screws are not completely vertical when going through the board, there is a high chance of the board breaking in that area.
I feel that the PiFace PiRack is an excellent tool for rapid prototyping involving many expansion boards and from an electronics perspective is excellent. However, the mechanical aspects could do with a little more consideration before I would consider using it in a finished product particularly to a method of supporting the boards to prevent bending and damaging the pins. My thanks to element14 for this item to review and I would be grateful for any feedback as this is my first RoadTest review.