Datalogger - lack of RAM?

Nick_Pyner:
You are essentially doing the same as me, and your code looks like a date-as-filename snippet. I guess yoiur only problem is falling into the string trap. Here is a working version.

RTC_DS1307 RTC;

char filename[] = "00000000.CSV";
File myFile;

void loop()
{

getFileName();
createFileName();
delay(3000);
}

void getFileName(){

DateTime now = RTC.now();

filename[0] = (now.year()/1000)%10 + '0'; //To get 1st digit from year()
filename[1] = (now.year()/100)%10 + '0'; //To get 2nd digit from year()
filename[2] = (now.year()/10)%10 + '0'; //To get 3rd digit from year()
filename[3] = now.year()%10 + '0'; //To get 4th digit from year()
filename[4] = now.month()/10 + '0'; //To get 1st digit from month()
filename[5] = now.month()%10 + '0'; //To get 2nd digit from month()
filename[6] = now.day()/10 + '0'; //To get 1st digit from day()
filename[7] = now.day()%10 + '0'; //To get 2nd digit from day()

}

void createFileName(){
myFile = SD.open(filename, FILE_WRITE);
myFile.close();
}

Nick you made my day! :wink:
Thanks a lot for good lesson, your code is working perfectly!