Page 1 of 1

Pin conflict, or what?

Posted: Tue Aug 28, 2012 2:24 am
by ngp99
Still on the learning curve with the EtherTen....

I have gotten my DK 16x2 display shield to work as well as I need it to, and I can read and write to my SD card. So far, so good.

So, you guessed it, I tried to read the SD on the LCD. I got an "initialisation failed". I removed the LCD, uploaded again, and the SD card was OK.

It appears that the SD doesn't like the LCD. I don't know what pins the SD uses, as it is an integral part of the EtherTen. I have seen separate SD boards and they typically use D04 for SELECT and maybe an on-board SD does too. This pin is required by my display.

Could this be why the initialisation fails? I guess I don't get much choice about the pins.

Am I expecting too much of the EtherTen? I don't regret getting it, it's Australian after all, and has been a great learning experience, but perhaps all that integration can be too much of a good thing as it brings pin allocation constraints to the mix that I didn't see coming.

I can't see get how I can get by with select/deslect of the SD and display.

It has just occurred to me that I have made up the Freetronics short prototype board for my sensors and to get the clearance over the RJ jack, and maybe that can save the day.

The additions to the EtherTen I need to account for are LCD, WiFi, Bluetooth, RTClock, and three sensors. Assuming the SD uses digital pins, then three analogue pins are still unused.

I therefore propose the following

1. remove pin D04 from the stackable header on the little proto board. Just the pin.

2. run a wire from D04 across to pin A0.

3. Change the LCD line to
LiquidCrystal lcd( 8, 9, 14, 5, 6, 7 );

so that D04 on the LCD shield is now read as D14, by virtue of actually being on A0.

How does that sound?

I guess I really need a breadboard to muddle through this....

Re: Pin conflict, or what?

Posted: Tue Aug 28, 2012 3:07 pm
by ngp99
tronixstuff wrote:Yes, the microSD card socket on the EtherTen (and EtherMega) uses D4 so you will need to reroute your LCD shield if it needs D4.
OK Thanks. I will move it to D14. Further On this matter, solving conflict with the EtherNet is bound to come sooner or later. I see in the IDE sketch WebServer that pins 10,11,12,13 are allocated. Is D10 the select pin?
tronixstuff wrote: As the Arduino ecosystem is open-sourced the pins used by various shields vary wildly depending on the manufacturer, and as such a little planning goes a long way. Then again, there isn't much you can't change with a soldering iron :)
Yes, I am using Exel to set this up. Lots of colour.
Work in progress, I might add........

Thanks again