Hello, i have arduino 2560 and the ethernet shield w5100.
I bought a microsd 4gb from SanDisk (they didn't sell the 2gb one).
will it work on the ethernet shield?
it says that the max is 2gb.
Have you tried it? That would be the fastest way to see if it works.
What SD library are you using? SDFat is a better (faster and more stable) option than the standard library and the limitation may be in the library rather than the hardware.
marco_c:
Have you tried it? That would be the fastest way to see if it works.What SD library are you using? SDFat is a better (faster and more stable) option than the standard library and the limitation may be in the library rather than the hardware.
thank you for the reply.
I still didn't try it because it's still in his original package. so if I don't need it I would take it back to the shop
so I was hoping that someone already tested a 4gb microsd.
Nearly 100% of SanDisk Micro SD cards work with both SD.h and SdFat.
SD.h is just a wrapper for a very old version of SdFat.
I am the author of SdFat.
I got a 4 gByte Sd card on a ethernet arduino r3 shield and i'm able to write and read on it with the folowing simple code
#include <SD.h>
File myFile;
void setup()
{
// Open serial communications and wait for port to open:
Serial.begin(9600);
while (!Serial) {
; // wait for serial port to connect. Needed for Leonardo only
}
Serial.print("Initializing SD card...");
// On the Ethernet Shield, CS is pin 4. It's set as an output by default.
// Note that even if it's not used as the CS pin, the hardware SS pin
// (10 on most Arduino boards, 53 on the Mega) must be left as an output
// or the SD library functions will not work.
pinMode(10, OUTPUT);
if (!SD.begin(4)) {
Serial.println("initialization failed!");
return;
}
Serial.println("initialization done.");
// open the file. note that only one file can be open at a time,
// so you have to close this one before opening another.
myFile = SD.open("test.txt", FILE_WRITE);
// if the file opened okay, write to it:
if (myFile) {
Serial.print("Writing to test.txt...");
myFile.println("Hello world");
// close the file:
myFile.close();
Serial.println("done.");
} else {
// if the file didn't open, print an error:
Serial.println("error opening test.txt");
}
// re-open the file for reading:
myFile = SD.open("test.txt");
if (myFile) {
Serial.println("test.txt:");
// read from the file until there's nothing else in it:
while (myFile.available()) {
Serial.write(myFile.read());
}
// close the file:
myFile.close();
} else {
// if the file didn't open, print an error:
Serial.println("error opening test.txt");
}
}
void loop()
{
// nothing happens after setup
}