We had a cold night (for Belgium that is) with temperatures down to -8 degrees Celsius. The Lion 3.7V 18650 batteries of the outdoor meteo sensors are starting to fail occasionally when the temperature went below -5 degrees Celsius last night
The brownouts occur when the device wants to make a Wifi connection (which requires lots of power); I think it is a good time to replace Wifi with LoRa assuming that drains less power from the battery. For now the measurements are stored on the device until a good connection can be made (probably when I take the sensor boxes inside).
yes that’s a known 'problem with that type batteries.
they 'recover however.
I would suggest 2x CR123A’s in series followed by a DC/DC but then you still won’t have the same capacity.
but they can stand lower temps, also 3 x AA in series (duracell long life) works but not rechargable.
if possible some insulation inside the enclosure can help ?
A chemistry that ‘works better’ is Lithium-Thionyl chloride (Li-SOCl2).
These are primary (non-rechargeable) batteries however and relatively expensive. To save battery power try to optimize your device for low-power (even power usage for Wifi can be optimized).
Thanks for the info. Good to know they will recover.
I also noticed that the performance of batteries vary; now only 2 out of 3 sensor boxes have failed occasionally.
“3x AA in series” is a good tip!
These Li-SOCl2 are not powerful enough (mA) when using Wifi; LoRa should work, no idea for NB-IoT.
I was told that LiFePO4 batteries are a little bit better in cold environments so I will try that next night. If they survive up to -10 degrees Celsius then that is fine for me. The downside is that their capacity is half that of Lion 18650.
Another thing is that some humidity sensors do not work anymore when humidity gets close to 90%-100% (it gets stuck at that percentage; the only solution is to cook them dry in an oven). I’m going to try to replace the BME280 with an Sensirion SHTx but I think that will have the same problem.
I normaly never have this problem with my SHT15’s. My F.A.R.S. has a fan in it that forces air past the sensor. The only problem I have is corrosion of the PCB it is mounted on.
Temperature dropped only to -3, but the LiFePO4 battery voltage has been stable throughout the night, no drop with the temperature.
I need to look more in details to the data, because I have 2 gaps in the graph. The device didn’t crash as the packet counter didn’t reset. It might be unrelated as I also have gaps with other nodes (e.g. the orange line) and this is very unusual…
Temperatures:
select max(temperature),min(temperature),last(temperature) from environ where dev_id = 'bulles-minilora-01' and time >= now()-24h
time max min last
---- --- --- ----
2019-01-21T08:31:20.274882581Z 22.5 -2.8 -1.3
Voltages:
select max(voltage),min(voltage),last(voltage) from environ where dev_id = 'bulles-minilora-01' and time >= now()-24h
time max min last
---- --- --- ----
2019-01-21T08:35:21.574417311Z 3.28 3.27 3.27
Missing points:
select * from environ where dev_id = 'bulles-minilora-01' and time >= now()-24h
time analog_input counter data_rate dev_id humidity pressure rssi snr temperature voltage
---- ------------ ------- --------- ------ -------- -------- ---- --- ----------- -------
...
2019-01-21T22:21:28.504029864Z 2322 SF7BW125 bulles-minilora-01 80 1009.8 -84 9.25 -2.1 3.27
2019-01-21T22:31:36.201477425Z 2324 SF7BW125 bulles-minilora-01 79.5 1009.7 -84 8.25 -2.2 3.28
...
2019-01-22T06:17:32.845840515Z 2416 SF7BW125 bulles-minilora-01 77.5 1001 -83 9.25 -1.8 3.28
2019-01-22T06:37:48.487811162Z 2420 SF7BW125 bulles-minilora-01 77.5 1000.6 -83 7.75 -1.8 3.27
...
So I am missing 1 packet at 22:21Z and 3 at 06:17Z.
I don’t have gateway logs to cross check, but given the fact that frame counter was incremented, it looks like the node sent them but got lost…
My test with LiFePO4 failed during the night. Temperature was -5 degrees Celsius. So this battery type is not better than Lion in these cold environments Note that I enabled brownout detection on the MCU; it would have stayed alive longer if I had disabled that feature.