Arduino Ethernet with MicroVGA input problem

When trying to connect an MicroVGA module to the Arduino Ethernet, keyboard input isn't working. While using an Arduino Duemilanove all works fine. Now both boards have these pin values:

SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK)

There must be some interference with the Ethernet part on the Arduino Ethernet, because when I use my Ethernet Shield on the Arduino Duemilanove, I have the exact same problem.

I'm only guessing this has to do with the the slave select (SS) pin being the same for Ethernet and MicroVGA (both 10), I red that for SD and Ethernet these are not the same pin, so maybe MicroVGA needs to use another pin too?

It is possible to use a pin other than pin 10 as the slave select (SS) pin. For example, the Arduino Ethernet shield uses pin 4 to control the SPI connection to the on-board SD card, and pin 10 to control the connection to the Ethernet controller.

Your view of SPI is not correct, the pins of the hardware SPI are: 11 (MOSI), 12 (MISO), 13 (SCK)

Ethernetcard: SS = 10
SD on board : SS = 4

MIcroVGA: SS = 9 (or any other free pin , can even be an analog one used ad pinMOde(A0, OUTPUT))

The SS stands for Slave Select, and only one at the time may be selected. Best way to handle this is to make an enableSPI function:

void enableSPI(pin selected)
{
  // disable all SPI devices
  digitalWrite(SSETHER, LOW);
  digitalWrite(SSVGA, LOW);
  digitalWrite(SSSD, LOW);
  // enable selected
  digitalWrite(selected, HIGH);
}