Communicate Arduino - SPI 3 wires + Eth. Shield ?

Hi all ,

I'm trying to make communicate an old game console (not very known but with some documentation) with a project using Arduino and I need to use Ethernet shield to send data to a web page. The game console use (it's what I think )a SPI interface but over only 3 wires (SKC,CS and one only line with SDI/O). I see in the documentation of Ethernet shield that i can not use the SPI (so neither the SPI.h library) because pins 10,11,12 and 13 are already in use by the ethernet controller. Additionally what is confuse for me is that there's only three wires . Well I don't know how to attack this . Do you think this is possible ? Some idea ? (I've never used yet an SPI interface) Thanks !

a SPI interface but over only 3 wires

"SPI" isn't a trademark, so the name gets used for several interfaces that aren't "SPI" in the Motorola sense. But the Ethernet shield is. Except that it violates the spec by not tri-stating the MISO line when it's not selected, so you can't connect multiple SPI peripherals >:(

Your controller might be a variation on I2C, but it definitely isn't SPI with only 3 wires. Odds are that you'll need to do some custom code to run it.

Are any of the docs for it available online?

Hello Ran ,

I couldn't find online documentation. I was taking a look again to the pin out . The SWn is what I supposed to be the three wires for system select (CS) , system clock (SCK) and SISO line (SI/SO). Additionally in the documentation is not spoken of any adress to identify destination and only slave and master (is for that I thought it could be a half-duplex SPI) and the description of the command to send / receive.

The pin-out that is also extrange for me make as it seems to be a combination of two types of serial communication : GND,RXD,TXD,READY,cSW1,cSW2,cSW3,CONTROL

It could be that it is a combination: many Palms and iPaqs from the early 2000s had both USB and serial on their PC connectors, for example. Maybe your console (it might help if you tell us what kind it is) supports two kinds of interfaces.