Here are some graphs of measured Vbat(10bit) with a software filtering that I’ve just completed. Its using a 2minute reading sample time – the electronic noise is hopefully similar when used on 15minute sampling intervals.
For the Mayfly 1.1 & Adafruit PkCell 4400mAh, I’ve run it for 4days interfacing over Modbus/RS485 in a critical voltage range of 3.85V dropping 0.2V to 3.65V.
Vbat is under reading the LiIon Voltage by 0.1V, and still having some noise break through during this period of 0.1V, but much better than unfiltered.
The two graphs are of the same period, one is from MMW that is a little easier to understand and annotated however has different scales for the Vbat/LiIonV. The second is from an xls graph, using the same scale, and has the quantization more visible.
My conclusion is when using Vbat for determing energy available – use a filtered version of Vbat, and be conservative with the estimated low battery voltage.
I can submit my Vbat software filtering if it would be useful.
neilh10/ModularSensors/blob/release1/src/sensors/ProcessorStats.cpp #175 only for AVR.
I use the Vbat threshold for determing when to cease reliable wireless transmission, and only store readings locally, ready for when battery energy is restored, and then bulk upload of readings.
Of course your specific LiIon battery may be different, the Pkcell 4400 is designed for cycle life > 500 charge/discharges (not specified for a daily partial discharge/recharge). Once working, the depth of the battery discharge could indicate when the battery needs replacing.