As I understand it, the terminal voltage of batteries changes a little on charge/discharge, but these changes are minimal compared to other effects (temperature, minor manufacturing differences, recent charge/discharge history, etc).

But even the oldest mobile phones could show a charge icon. And it works correctly even in the case of a battery change.

How is this possible?


4 Answers 4


There is one thing which is obvious once stated, but not until then.

Your phone tells you it has "37% Charge Remaining". How do you know that's accurate? It's probably not.

The software may be doing some estimating based on average current draw since it was fully charged, average time between charges, and of course the discharge characteristics for the specific battery. Then it presents you with its best guess.

Over time, it can build up a reasonably accurate profile for the battery and use that to improve the estimates. But it is usually an estimate.

In my experience of developing battery based systems (with smart batteries, dumb NiCad, and everything in between) the only times you are confident of the charge level are 100% and 0%.

Usually, a smart battery will let you know when it's fully charged, and with a dumb one you are probably doing some calculations with current and temperature. That takes care of the 100% case.

The 0% case is where the sneakiness comes in. Whatever the battery chemistry, there is often a distinctive pattern in the discharge curve as you approach voltage collapse. But allowing a battery to go into deep discharge is generally a "Bad Thing" (TM).

So firmware looks for that pattern and decides when the battery is at a virtual "0%". Then it shuts the system down so that there's enough residual charge in the battery to avoid deep discharge and, more importantly, a sudden loss of power. This allows a graceful shutdown.

If this seems a little unlikely, let your phone "run down" and shut itself off. Then turn it back on again. If the battery were truly at 0%, it could not boot and power up the screen to tell you it needed charging.

The 5% (or perhaps 10% depending on the precision of the measurements and the batteries tolerances) warning is also often somewhat artificial, again representing a point on the discharge curve when the firmware starts thinking "Going to shutdown soon".

Ironically, this is the level at which someone in marketing insists that you turn on that bright LED to tell the user they are about to run out of battery power.


As you mention, the voltage changes a little bit on charge/discharge. Millivolt-level measurements are reasonably straightforward, and every battery chemistry I'm familiar with has a voltage change of at least a few hundred millivolts between "full" and "effectively empty".

Most battery discharge curves are linear, at least over the range that most devices use them. Because of this, you can get a rough estimate of the remaining charge by remembering the last voltage peak (corresponding to full charge), knowing the voltage level at shutoff, and interpolating between them. For more precision, you can either program the device with the typical discharge curve for the battery chemistry you're using, or have the device measure it during a "conditioning" charge-discharge cycle.

  • \$\begingroup\$ Plus some more advanced gas-gauging chips (that need 100% reliability a couple of steps above mobile phones) will use the charge and discharge current information for highly accurate gauge and even in some cases a remaining lifetime prediction. \$\endgroup\$
    – Asmyldof
    Commented Jul 29, 2015 at 0:43
  • \$\begingroup\$ @Mark Thus, there is no secret: we have the charge/discharge history data, and also the history of the voltage, which is enough to an estimate? Well, it is understable. Thank you. \$\endgroup\$
    – peterh
    Commented Jul 31, 2015 at 3:38
  • 3
    \$\begingroup\$ -1. Accurate (cell phone grade) battery gauging is done by coulomb counting, rather than voltage measurement. I'm surprised that 7 people have upvoted this answer without knowing better. \$\endgroup\$ Commented Aug 14, 2015 at 22:27

The "charge icon" represents the State of Charge (SOC) of the battery - which is normally a percentage figure.

Different battery technologies are managed in differing ways...

Some have a sloped discharge curve - you know that a given voltage at a given temperature represents a given SOC.

Others are less helpful (eg lead/acid) and have a very flat discharge curve, in that they provide X volts right up until the point of expiry, then pretty much 0 volts thereafter! These require a level of input/output counting - and recalibration at the 0%/100% levels.

Most consumer devices offer a fairly crude SOC - but it is also dependant on the State of Health - which represents the state of the battery over its lifetime.


Here is an example of a coulomb counter: http://cds.linear.com/docs/en/datasheet/4150fc.pdf which can be used to fairly accurately measure the charge used in real time of a specific battery, in this case a Li ion 1-2 cell or 3-6 cell NiCd or NiMH batteries. It accomplishes this by simply measuring the current across a very small (micro ohoms) known resistor and then using that over time to derive mAHrs consumed,


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.