I have noticed a lot of fun interesting things have become available for the Raspberry Pi and they could be particularly interesting for robots like the GoPiGo.
Issue:
They all use SPI instead of i2c.
Though SPI has the capability of supporting multiple devices, the primary implementation paradigm has been “one master and one slave”.
Even if the physical hardware supports one or more “select” inputs, the application software usually doesn’t implement a chip-select and the result is a totally schiz robot that can’t tell itself from a can of baked beans.
Or, if it does, it uses the first chip-select pin, alone, just like a dozen other devices. Result: A totally schiz robot again.
I verified that a while back when I tried to attach a Velleman touchscreen display to Charlie by plugging it into Charlie’s GPIO header. The results were NOT pretty and I ended up having to rebuild Charlie’s system image from scratch.
This is annoying.
Based on the GoPiGo’s schematic, one chip-select for SPI is implemented - pin 26. The second chip-select, (pin 24), is unused and not internally connected.
@cleoqc,
Though pin 26 is connected, can you confirm if it is actually used to address SPI on the red board?
I am assuming that connecting additional SPI devices to the GoPiGo is a bad idea. Can you confirm or deny this? Have you tried to connect additional SPI devices to the GoPiGo?