If you need to store data, let's say numbers (one byte each), and you need a capacity for at least 100,000 readings in a low power sensor (3.3 V and less than 20 mA in stand-by operation), will you go using an SD card storage type or a simple EEPROM chip and why?


1 Answer 1


I don't know exactly what you mean by "stand by operation". You mean sleep? 20 mA is pretty high for sleep. I'd expect less than 100 uA in general.

I'd go with SD card storage. I've designed plenty of "low power systems" and the reality is that most people go to the trouble of going all the way to optimize for low power when in fact it doesn't make that big of an impact (it makes for nice marketing, but marketing doesn't always makes real-world sense). There are many other factors that are more important to logging:

  1. Accessibility - An SD card is much easier and faster to read from and access (just take it out, pop in an SD card reader and it's done), and it's faster to do. EEPROM reading requires more equipment. An SD card can be accessed using a file system so it's intuitive

  2. Capacity - You won't find anything better than a couple of gigabytes of storage. It's amazing how fast this goes once you start logging.

  3. Ease of Implementation - Many commercial and open source applications have used FatFs which you can get for many microcontrollers. It will work nicely. Just open a txt file and save the numbers, one after the other.

An SD card isn't that power hungry. Some have power-down modes after 5 ms that will help.

I can't find a reason not to use an SD card.

  • 1
    \$\begingroup\$ SD cards can have high peak write current. The OP didn't mention it, but run-time of the device might be a concern here. \$\endgroup\$ Commented Dec 28, 2012 at 0:41
  • 2
    \$\begingroup\$ They do, that's right, but it usually averages out if you write big chunks since it's also very fast. Perhaps he can buffer a certain amount and write all at once. That will definitively help with power consumption. \$\endgroup\$ Commented Dec 28, 2012 at 0:50
  • \$\begingroup\$ I would add, Cost! Cost of EEPROM is lesser than SD Card... That would be only disadvantage of SD Card, if I ignore implementation time/efforts. \$\endgroup\$
    – Swanand
    Commented Dec 28, 2012 at 5:11
  • \$\begingroup\$ @accessibility => for that to work, you need to use a proper filesystem on the SD, which requires quite a bit of software on the controller to implement. \$\endgroup\$
    – jippie
    Commented Dec 28, 2012 at 9:56
  • \$\begingroup\$ @Swanand: Cost per byte is much lower on the sd card. it's probably $1 per GB or less, whereas EEPROM is much much greater (several orders of magnitude i'd say) \$\endgroup\$ Commented Dec 30, 2012 at 20:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.