I think I am experiencing a similar issue using the Latest HW for Ethernet shield and Mega 2560 -
I had intermittent failures, where the SD card would init and I could list all files on the card - but not read any file contents. Sometimes a re-start could cause the card init to fail.
I think it is related (in part) to the SPI IO.
At the time, I was setting pin 10 as an output, and high.
The mistake I was making was that I thought 'SS' (pin 53), was the SD chip_select, and I was passing SS to the sd.init function.
It seemed when I did this the operation was flaky at best - though it did work in part.
Does anyone have a definitive description of what the following pins do:
Pin 4 = CS_SD ?
Pin 10 = CS_Ethernet ?
Pin 53 (SS) = Must be set as an output, and preferably pulled high ?
I plan on trying to trace the PCB scheamtics, but if anyone has that done, it would be great.