I want to emphasize again how important the data logging program is in terms of power use.
The above traces are for the dataLogger example. Each record has the ASCII values of four analog pins in CSV format and records are logged at 5 Hz. Sync is called after each record so the above trace is repeated five times per second. Each SD access involves reading the current data block, updating the data block, writing the data block, reading the directory entry, updating the directory entry, and writing it back to the SD.
I removed the sync() call and ran the example again. Now access to the SD will only happen when the 512 byte cache block is full.
The size of a record is about 20 bytes so now the SD card is accessed about once every five seconds, not five times per second. Most accesses only involve a single block write.
I estimate the method with sync uses over 50 times as much power. You could call sync every few seconds and save lots of power but still prevent loss of all but a few seconds of data.
Here is a trace of a write to the old card with no sync. Note how much shorter the SD access is.
The card draws about 20 ma for 1.5 ms once every 5000 ms. The average current will be close to the sleep current.
Even the example with sync() only draws high current for about 4 ms every 200 ms so the average is not over a milliamp.
Hi, I think that I dont completely understand your graphs.
I am working with EmonTX hardware and I want to incluide a Micro SD to log data. EmonTX has a feature to be powered by the AC NET that is being monitored but getting NO more than 20-30mA from that.
I haven't an oscilloscope, so I can check this on my own.
My question is about this: could you think that putting a XX uF capacitor will be enought to avoid the Micro SD write cycle power peak??? Also, how do I have to put, and how may ohms to charge the capacitor again an slow speed?
Until now I have:
1. Arduino standalone chip (ATMEGA328 or more) : 5 - 8 mA,
2. RTC with 2 mA (but i have to cut off the led that it has, so probably will be less than 1 mA),
3. Nokia 5110 display 0.2 mA (with light 7mA but I will probably not use it)
so I have to "waste" in Micro SD card about 10 - 15 mA more
Does anybody try this? Or try to avoid micro sd peaks with capacitors ?