Electrical Engineering Stack Exchange is a question and answer site for electronics and electrical engineering professionals, students, and enthusiasts. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I want to read the remaining charge on a Li-po battery in a device I'm making but I'm confused as to exactly how to get an accurate reading.

I know that the voltages of the battery are different based on how much current you are pulling off of it and this will affect the reading. The problem is that the device I'm making pulls power off the battery in short bursts (not good for the battery but no way around it) so it seems to me to make sense to read the battery level while the device is idle (drawing mA as opposed to amps) and match that voltage against the unloaded voltage charts.

How long do i have to wait after a surge demand from the device before the battery voltage stabilizes again and I can take an accurate measurement of the remaining voltage of the battery? Or am I going about this the wrong way all together?

The batteries I'm using are in 4s2p configuration with individual cells rated at rated at 1500 mAh.

share|improve this question
up vote 5 down vote accepted

The "best" way to measure battery capacity is by current and voltage monitoring during both charge and discharge and subsequent calculation - versions of this are generally known as "gas gauging". For almost all applications current monitoring is enough for capacity measurement.

Voltage alone can give some indication but "has problems":

Here are some discharge curves - these are for a std LiIon cell but results will be similar for a Lithium Polymer ("LiPo"). Curves shown here (not a n easy to read graph :-( ) are 1C, 0.5C and 0.2C but a similar family of curves exists up to whatever C capacity will tolerate.

Using a low discharge rate or no discharge to read the cell voltage is liable to give you less accuracy, not more. Compare the 0.2C and 1C curves. The low discharge curve is muc flatter across the middle of the capacity range. Between say 90% and 95% exhausted the rate of change is still much the same as from 40% to 90% BUT for the 1C discharge the rate of decline in voltage is now much steeper. Monitoring the 1C curve would give you a good idea of where you were from about 90% on, whereas the low discharge curve is up to about 96% before things "start to get alarming".

BUT these curves are for one temperature and battery temperature can have a significant effect and will depend on ambient temperature and recent discharge history and also cycle life of cell and probably calendar life as well.

Below: Typical lithium Ion 1 cell 'battery' discharge curve.

enter image description here

Gas gauging takes a bit more effort to get going but is liable to be more accurate for any degree of effort once operational.

The normal approach is just measuring current in & current out, and a LiIon battery (including LiPo) ic close to 100% efficient in that respect. Many ICs exist to do that

An example only is the cheapest in stock at Digikey at $2.801 is STC3100. This is I^2C controlled. Designed to operate at up to 2.5 Amp but could be scaled to higher currents with different sense resistor.

They say

■ Battery voltage monitoring
■ Internal temperature sensor
■ Coulomb counter with 12/14-bit AD converter, +/- 80 mV input voltage range
■ Internal or external 32768 Hz time base
■ I2C interface for gas gauge monitoring and
device control ■ 32-RAM bytes
■ 8-byte unique device ID
■ One general-purpose I/O


The STC3100 monitors the critical parameters of a single-cell Li-Ion battery (voltage, temperature and current) and includes hardware functions to implement a gas gauge for battery charge monitoring, based on a programmable 12- to 14-bit A/D converter. With a typical 30 milliOhms external sense resistor, the battery current can be up to 2.5 A and the accumulator system provides a capacity up to +/-7000 mAh with a resolution of 0.2 mAh

From the above data sheet

enter image description here

share|improve this answer
Thanks for the answer. I'll defiantly take a look at the more accurate ICs if the project gets more advanced. In the meantime I only really need a rough estimate, so how long would I need to wait after say a 5C drain on the battery for the battery to recover it's voltage to something stable and somewhat representative of it's current discharge state? – Faken Aug 31 '11 at 17:26
I'm uncertain re recovery time BUT as above, measuring AT 5C will give you a better feel for state than at rest. Using a smoothed V_bat_min value (as little as a diode + resistor + capacitor) will give you minimum voltage under load which is probably useful enough. See manufacturer's graphs for your battery to calibrate OR do calibration run yourself. – Russell McMahon Aug 31 '11 at 20:47
Thanks, you guys are awesome! – Faken Aug 31 '11 at 22:12

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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