Take the 2-minute tour ×
Raspberry Pi Stack Exchange is a question and answer site for users and developers of hardware and software for Raspberry Pi. It's 100% free, no registration required.

I haven't tracked down a lot of information on this on the web, and the previous notable difference of the Gertboard being DIY no longer holds.

The kind of answers I'm looking for: "If you want to do x, y, z, you should go for [Gertboard|Pi-Face]...", and "If you know how to a, b, c, you're better off choosing the [Gertboard|Pi-Face]"

Go easy, I'm not a hardware expert...

(Apparently pi-face tag doesn't exist?)

(Element14, Gertboard, Pi-Face)

share|improve this question
    
Couldn't you connect a second piface via a custom ribbon cable? May not stack on top of the rpi too well, but isn't this a possibility? Stacking of course would be ideal for design... –  user7008 Apr 18 '13 at 18:30

1 Answer 1

up vote 11 down vote accepted

If I compare the schematics of the two boards the first thing that I see is that the PiFace (schematic) is a much less complicated board then the Gertboard (Schematic on the last pages).

PiFace

The PiFace is actually an I/O extender that uses the SPI bus to extend the I/O capabilities of the RPi with 8 extra input and 8 extra output pins. While all 8 input and 8 ouput capabilities are routed to pins for external connection, some have a double function. 2 of the 8 output pins are used to drive a couple of Relays, and 4 of the 8 input pins are fitted with buttons on the board itself. Further the input pins are directly connected to the I/O extension IC, there is no protection for over voltage in these circuits. The 8 output pins are driven by a ULN2801A, this means that each output pin can drive up to 500mA (externally supplied) at a maximum of 50V.

In theory you could connect 4 PiFace boards to the RPi, because the address of the SPI I/O extension chip (MCP23S17SP) can be set using 2 jumpers. In reality this will be very hard to achieve because the PiFace is a board that needs to be stacked on top of the RPi and the main connector (the one on the bottom that connects to the GPIO pins on the RPi) is not fitted with a female counter part on the top to enable stacking more boards. I guess they did not do that because the Relays are too high anyway to enable stacking.

Further all the I/O is in a fixed setup, the board is AS IS and you cannot change it in any way.

GertBoard

The Gertboard on the other hand isn't fixed in any way, when you just connect it to the RPi, nothing (??) will work because nothing is actually connected to the GPIO pins. You need to use the scratch pad to manually make the connections to the desired parts of the board. This is done by using wires with a little connector on both ends. The number of options on this board are higher, but you cannot use everything together at the same time (??), so you will have to rewire the scratchpad when a different function is required.

It can also provide extra input and output (Low voltage TTL) pins to use externally, these can be configured for input or output individually, there are 12 of these available and these are buffered (input and output) and the first 3 are fitted with onboard buttons.

It also features 'power' outputs similar to the PiFace board, 6 of these are available, they can also provide a 500mA at a maximum of 50V (externally supplied)

Further is has Analog/Digital conversion, and Digital/Analog conversion, a motor driver that can power brushless motors (servos/stepper motors etc). It even has a separate AVR microcontroller which can be programmed from the RPi to perform separate tasks, independent of the RPi.

Conclusion

Back to your question and the way you wanted it answered, to give a set of general rules the way you asked for is nearly impossible. The only useful thing I can comment in the 'if .. then ..' style is this:

  • If you want to experiment with various types of input and output, the Gertboard is the one to go, it features much more options,
  • If you need just some extra input and outputs without the hassle of using a scratchpad, the PiFace is the way to go.

You cannot compare both very well, for example I would never use the Gertboard in a product, I could however use the Gertboard for tests and use parts of it in a separate design to be used in a product. The PiFace could be used in a product if you just need some extra input and output contacts.

Within a learning context: The PiFace could be featured in the first lessons to get some basic feeling for input and output and how to handle those from the RPi, the Gertboard could be introduced after that for more advanced tasks.

share|improve this answer
    
Thank you for the considerable effort you put into this answer, I will now try to digest it :) –  Benjol Jan 18 '13 at 13:07
    
If you have additional questions, or things are vague, add a comment here and I'll try to clear it up for you. –  ikku Jan 18 '13 at 13:13
    
Well I've understood enough to go and register interest for the Pi-Face. One thing I don't understand about 'extending I/O' is that I thought that the Pi already has I/O (isn't that what the GPIO pins are?) –  Benjol Jan 18 '13 at 13:28
1  
The RPi has multiple types of I/O (SPI/I2C) those are pins that can have an alternative function. So when used for SPI or I2C, you cannot use them for anything else. For plain simple I/O like 8 LVTTL outputs and 8 LVTTL inputs, you should be able to do that if you disable all alternative pin functions. The only problem left then is that if you make a mistake in connecting the I/O, your BCM (the actual processor) will take the hit and possibly get damaged, Using or the Gertboard or the PiFace, the chip on that board will be damaged and those are easily/cheaply replaced. –  ikku Jan 18 '13 at 13:47
1  
Also those two (Gert and PiFace) are not the ONLY two board available, there are around 66 boards available with different functions here –  ikku Jan 18 '13 at 13:49

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.