Hi
I have a number of battery powered temperature sensors. I would like to reduce battery consumption. I see the constant that controls time between reads:-
const int time_between_readings= 20000;
How high can I take the constant and is there a point where increasing it is unlikely to help extend battery life.
Regards
Ian
Re: How can I reduce battery consumption on emontx
I've no idea about that, but take a look over at JeeLabs. I'm pretty sure I've read quite a bit there about battery-saving techniques, though I can't remember now how applicable they might be. You'll probably need to use a number of different approaches.
Re: How can I reduce battery consumption on emontx
Ian,
You may have to change the 'int' to a 'long' or 'unsigned long' to use some larger figures.
Re: How can I reduce battery consumption on emontx
Hi Ian,
I did a lot for reducing powerusage on my jeeheater project (a datalogger for centralheating system) you can find the sourcecode at: https://github.com/alco28/JeeHeat_monitor
I used two solutions: 1) disable the use of the ADAC reference module when you don't need it:
bitClear(PRR, PRADC); // power up the ADC
ADCSRA |= bit(ADEN); // enable the ADC
delay(10); // stabilize the voltage
ADCSRA &= ~ bit(ADEN); // disable the ADC
bitSet(PRR, PRADC); // power down the ADC
2) Use sleepfunctions for the RFM12B radiomodule. (from jeelabs lib).
and I also use and scheduler so I don't loop the whole sketch with the upload part to EmonCMS.
Re: How can I reduce battery consumption on emontx
Here is one more excellent article by Nick Gammon:
http://www.gammon.com.au/forum/?id=11497
Re: How can I reduce battery consumption on emontx
Many thanks for all the replies. Very helpful.
Regards
Ian