at the moment my weather station uses a 5V/16MHz Arduino Pro Mini, Nokia 5110 display, DHT22, BMP180, RTC3231 and SD card reader (with normal SD.h lib !) for logging data every 15 minutes. It uses 3 AA batteries on a Pololu 5V step up converter. LEDs are desoldered and deep sleep is used. It works quite nice, however every 5 - 6 weeks the batteries are empty and i don´t really like the display because it´s small, contrast is bad and the sleep consumption is still quite high (0.4 mA). The whole station uses about 0.8 - 1.0mA in sleep (depending on battery voltage), which also is quite high.
So i decided to rebuild it and bought a Waveshare 2.9 (should be 3.3V, but works with 5V as well) inch epaper display. It took me quite a long time to rework the given lib for my needs (adding sleep, progmem for fonts and logic for importing fonts from dotfactory). Nevertheless it still uses more memory than the old Nokia display. This leads to the first big problem:
- I can´t use SD.h any longer because it uses too much memory (all together over 70%). This makes the code unstable. Is crashes or freezes the display after few loops. If i remove SD.h and the sd-code, it runs fine ... Are there any SD-libs that use less (i need about 20% less) memory than SD.h that uses over 50%? ... I just use 2GB SD card for logging a few values in a csv-file which has the name of the date (for example 20170727.csv). What about this one ? : https://github.com/greiman/Fat16 I didn´t try it yet, just want to know from experience how to use SD-cards without this memory killing SD.h ...
The other thing is the energy consumption. I tried to undervolt the arduino to 3.3V by giving it 3.3V at 5V pin ... and it works fine. So I made some measurements with results (including sensors and epaper display in sleep - but without any voltage converter):
5V in deep sleep: 0.11mA 5V while active: about 12mA
3.3V in deep sleep: 0.05mA 3.3V while active: about 8mA
... which leads me to 2 possibilities.
1) Running it without any voltage converter with 3x AA (4.5V at the beginning dropping to 3.0V shortly before dying).
2) Rebuilding it to 4 batteries (with 2 in row and 2 parallel) giving 3.0V at the beginning, dropping to 2.0V at the end. This would need a step up converter to 3.3V. My old 5V pololu uses about 0.4mA in idle which is too bad in my opinion. Is there any 3.3V stepup converter which does not exceed 0.05mA in idle (so that at least it would not exceed the 5V-non-converter-configuration in idle) ?