On my Android smart-phone, I have the third-party “GSam” battery monitoring app installed.
This app can be a useful tool, to determine which other apps are causing the greatest battery drain. It gives very detailed information about the battery and its charging behavior.
Further, this app will state the battery voltage – in addition to the percentage charged – any time it is clicked on. This is where I obtained the numbers I used in this earlier posting.
At lower current-levels of battery-drain (-13mA), this same app showed the battery as 96% charged, but with a voltage of 4.24V . The app continues to run in the background, when the phone is asleep, and when the phone may be drawing much less current than it does with the display on. Then, after we wake up the phone, this app initially displays with its remembered values, until a few seconds later, the app-data updates.
(Edit 12/14/2016 : In the case of a soldered-in battery, it would make perfect sense if the O/S of the device computed the State Of Charge as a linear function with two fixed voltage end-points, as well as to compensate for the amount of current drawn, as if the battery simply had an assumed series-resistance. This is because a soldered-in battery is not assumed to be changed. However, multi-pronged battery-packs also exist, which possess internal chips. Those could be exchanged easily by the user.)
(Edit 12/12/2016 : Actually, this app does not tell the phone, what the State Of Charge of the battery is – the Percentage Charged.
And so there will be a scattering of relationships, between voltages as measured by the device, and percentages. However, one concept which intrigues me, is that if each battery-pack has 4 prongs, there is no way for me to rule out, that 1 prong could be for discharging, while 1 prong could be for charging.
If that were the case, then the charging circuit would detect that the battery suddenly seems to stop drawing current from its charging terminal, and could then immediately measure the voltage on the discharging terminal.)
The advantage this would offer, instead of setting up an arbitrary communications-protocol between a battery and its device, is a simpler internal chip as well.
But If somebody did that, it would still assume a fixed low-endpoint voltage, corresponding to a Sate Of Charge of 0%. This might as well be the voltage, at which Li-Ion Batteries generally start to produce Li2O , which I think is at 2.5V .
(Edit 12/13/2016 : Actually, the battery of the Samsung Galaxy S6 Phone is soldered in. Therefore, it does not need to be an info-battery, and only has 2 terminals.)