as the subject name says, I want to use the Arduino Ethernet Shield in combination with the Wave Shield from Ladyada for my project. Now I have stumbled over a problem while researching on info for both shields.
Both shields use the digital pins 13, 12 and 11 to communicate with the Arduino Board + pin 10 to use the SD-card on both shields (the Ethernet Shield has an onboard SD-card as well). My question is now: Does this even work at all? I mean can I work with both shield, not simultanously, but at all in one project?
I'm still pretty new to both shields, so feel free to overwhelm me with information, as long as it stays understandable
Pins 13, 12, 11 are always used by the SD card (they are the only pins that have a high speed SPI interface). Then there are 5 other pins used to talk to the DAC and SD card, but they can be set to connect to any arduino pin. However, by default, the library is configured to use pins 10 (for SD card) and pins 2, 3, 4 and 5 for the DAC. To change these pins requires modifying the library - the pins are referenced by their 'hardware' pin names (ie PORTD, etc) not by arduino pins.
Digital pins 11,12, and 13 will be shared by the ethernet shield and the wave shield. Those are the SPI data lines. There should be no trouble with those if the wave shield Slave Select pin is used correctly. The ethernet shield and SD code manages those two SS pins for you.
Digital pin 10 is the Slave Select for the ethernet part of the ethernet shield. You will need to move the wave shield Slave Select to another pin, like pin 9.
Digital pin 4 is the Slave Select for the microSD card on the ethernet shield. Don't use this pin for the DAC.
I haven't tried it, but it sounds like it would work. As the FAQ states, it will require modifications to the wave shield library tho.
It appears you will need to do the pin bending and the jumper to move the SS pin.
The wave shield should be the top shield. Bend digital pin 10 slightly on the wave shield just enough so it does not insert into pin 10 on the ethernet shield. Then insert a short jumper wire into pin 10 header and connect to the pin you plan on using for the SS pin.