Determining State of Charge of lead acid battery

Thread Starter


Joined Mar 25, 2010
Apologies if this is the wrong forum for this topic, and I hope it's not repeating what's already well covered. I couldn't find much relevant help from a Search.
I would like to make a State of Charge meter for the unsealed lead acid batteries on my sailing boat. These are 300Ah total, 12V. They are charged by the boat's engine when it runs (occasionally) at up to 30A and more often by a solar panel which can achieve up to 2A. Discharge loads vary a lot, from 0.1 to about 10A. The purpose of the meter is to ensure that the batteries do not get discharged too deeply, and that the engine is not too long long when recharging.
I plan to use a Hall effect current sensor pdf.pdf on the battery lead and an ADC input across the battery, both supplying data to a Picaxe (BASIC programmable version of a PIC) do the sums.
I aim to determine state of charge by coulomb counting in and out of the battery. This seems to be more complex than I expected. From research on the web, I have found out about Peukert's law, Coulombic efficiency and self discharge.
My sources have not all been consistent but it seems that Peukert's law applies only during discharge, while Coulombic efficiency relates to charging. Have I got that right?
I expected that internal resistance would be significant but it doesn't seem to feature in the sources I found. Is it covered by Peukert and efficiency?
Is it reasonable to aim for 5% accuracy determining SOC over the range 40 to 100%?
Is Coulomb counting the best approach?


Joined Jul 17, 2007
I think you're going to have a very hard time trying to get to any degree of accuracy. There are a lot of variables involved, and errors (like enemies) accumulate.

Better to have the uC taking a nap most of the time, and just wake up occasionally to check the battery, and see what else is going on. Battery internal temp, voltage, current flow from solar charger, alternator, etc.

As the battery ages, the internal resistance will increase due to plate sulphation.

While the battery was designed for deep cycling, it's really best if you don't let it get discharged more than 50%. The deeper you discharge it, the shorter it's life will be.


Joined Jul 7, 2009
You might want to consider a voltage measurement.

Years ago I wanted to do something similar in my RV, as integrating the current in and out of the batteries seemed to be the right way to do things. Never got around to it though. Instead, somewhere I found a formula that relates terminal voltage to state of charge (I think it was from a lead acid battery book I have laying around somewhere). I made a spreadsheet and printed it out. I taped it to the inside of a cupboard door in the RV and use it when I remember to bring my Fluke DMM. One caution I remember about using it is to wait a couple of hours after charging.

The only thing I really trust is my Misco refractometer, but I can't get to the electrolyte in these RV batteries, as they're sealed.


Duane P Wetick

Joined Apr 23, 2009
If you can find a device that can electronically measure the S.G. (specific gravity) of the battery electrolyte...thats the REAL test of the amount of charge left in your batteries. Normally, this test is done manually, but a remotely controlled SG tester is feasible. See www.batteryuniversity for more information.

Cheers, DPW [ Everything has limitations...and I hate limitations.]