Designed by a team led by University of Manchester honorary research fellow Dr Andrew Robinson, the PiFace Control & Display does exactly what the name implies: it provides users a means of controlling the Raspberry Pi away from a keyboard and mouse, while also providing a means of displaying its output.
The PiFace C&D takes the form of a piggy-back board, connecting to the general-purpose input-output (GPIO) header at the top-left of the Pi and straddling the USB and Ethernet ports. The fit is a little loose on a Model A, which lacks the tall Ethernet port of the Model B, but is usable – although building a ‘leg’ out of firm non-conductive foam would be advisable to prevent strain on the GPIO connector.
The front of the PiFace C&D is dominated by its liquid- crystal display, an alphanumeric character-driven unit which offers two lines of 16 characters apiece. It’s a common design for embedded projects, and includes support for custom character sets, allowing for basic sprites, but without the flexibility of a true bitmap display. A backlight, which can be toggled via software, allows for the display to be seen in complete darkness.
The control portion of the PiFace C&D is very clever: five tactile switches are located on the bottom edge of the PCB, facing outwards, in a bank of four and a lone unit spaced slightly apart. A three-way rocker switch, capable of reading left, right, or a push while central, is located at the top. Additionally, an infra-red receiver is provided for use with almost any remote control.
The hardware is undeniably well laid out, but it’s the software that makes the PiFace C&D such a pleasure to use. The team behind the device has worked hard to develop a range of example applications, written in Python, which provide a springboard for adding the PiFace C&D to your own projects. The initial demonstration app, executed as part of the installation process from the short download- only manual, displays a Pi’s IP address, the temperature of the CPU and the percentage of memory used.
Other Python programs get a little more complicated: one downloads and displays a weather forecast, another train times to and from selected stations, and yet another plays an interactive game of Hangman. One piece of example code even provides a fully-operational shell, using the navigation switch on the top of the board to pick out your text letter-by-letter – a process that becomes extremely tiring very quickly, but is undeniably handy for short and infrequently-used interactions.
Many of the example packages work via a menu system, and here things get even easier: a menu builder is included in the download for quickly making your own menus, and a PiFace C&D emulator means you can tweak your code away from the hardware should you so desire.
The PiFace C&D isn’t perfect. The board connects to the entire GPIO header, despite leaving a few pins available, meaning anyone who wants to use other hardware with the board will need to solder their own connections on top or make use of a device like the £8.39 PiRack expansion board.
The price, too, is perhaps a little high. A rival add-on from the US-based Adafruit lacks only the three-way navigation switch and infra-red receiver, yet costs more than £7 less. For only £8 more, meanwhile, consumers can have a full-colour and touch-sensitive display in the form of the PiTFT Mini Kit – although neither of these options, it must be said, can match the excellent software bundle that is the PiFace C&D.
The PiFace Control & Display is very close to perfect: low power, highly visible and with an excellent library of supporting software and example code, it’s by far the easiest way to make an embedded project more interactive. Its price is a little high compared to the competition, however, and its fit is awkward on a Model A board.