I am using an arduino to measure the battery level of a LiPo battery using a simple voltage divider and performing an analogue read of the battery level (against an internal 1.1V reference). My question is if this method of reading battery level will work to indicate the battery level during charging? or will this only work when not charging?

If so how can i also indicate the battery level while charging?


2 Answers 2


You always have to take the internal resistance of the battery into account. If a current flows, there's always a voltage drop across this internal resistance. So if you want a reliable measurement you have to be sure that no current flows out of or into the battery.

If you want to determine the state of charge (SOC) by a voltage measurement, you have to know that the unloaded voltage isn't linearly proportional to the SOC and different for every chemistry. You should be able to get graphs from the battery manufacturer or find some on google.

Another possibility: Measure the voltage at the beginning of your charging process and determine the SOC. Then, measure the current flowing into the battery and calculate the total amount of charged Ah or mAh to determine the SOC while charging without the need to interrupt the current flow.


Inhibit charging, measure the voltage, then resume charging.

  • \$\begingroup\$ Didn't really answer the question. \$\endgroup\$ Commented Oct 12, 2015 at 10:20

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.