This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

BQ27520EVM: SOC and capacity decreasing too fast

Part Number: BQ27520EVM


I have a battery with design capacity 8000mAh. My goal was to learn a fuel gauge to our battery.

First I calibrated FG, then I programmed chemical id 2011 as this was the best one (8% deviation). Then I configured the FG (Design capacity, Qmax Cell 0, Qmax Cell 1, Terminate Voltage, Taper Current ...)

Then I fully discharged the battery, then fully charge battery and relax. The Qmax cell 0 was updated to 8425 and Update status 0 was changed to 1. Then I performed discharge at rate of 1.5A to achieve fully discharged state. Again I let battery relax until update status 0 was changed to 2 and Ra Tables were modified. It seemed to be a successful learning cycle according the documentation.

I copied all the values from Ra0 Table to Ra0 Default, Ra1 Default, Ra0X Table and Ra1x Table. Then I fully charged the battery and again qmax cell 0 was changed to 8456 and CC Offset was changed to -1408.

Finally I wanted to discharge at rate 500mA to compare real SOC with BQ SOC. However I was shocked as the capacity and SOC was depleted within couple of minutes and showing total nonsense.

What did I do wrong?

Please see attached files. First learning discharge log, second measuring discharge log and final gg file used before second discharge.

Thanks for

  • Btw here is the gg file before I modified other Ra tables, right after the first discharge was finished and configured gg file before I started learning cycle. Maybe it can help.

  • Your Ra Base value is extremely high. 307 equals 307*4 = 1228mOhm. With a load of 1494mA (avg I last run) and a full charge OCV of 4200mV, this would cause an immediate voltage drop to 4200mV - 1835mV = 2365mV, which is below Terminate Voltage + Delta Voltage, and the gauge will return unfiltered RM = 0mAh, unfiltered FCC = 0mAh and TSOC = 0%.

    What you observe is the smoothing engine converging the filtered values to 0 because of the initial capacity simulation that returns 0mAh for RM and FCC.

    1228mOhm is obviously incorrect. The gauge won't learn Ra base so this must be set correctly. Ra1, which is measured, resolves to 364mOhm, Ra 2 = 300mOhm, Ra3 = 284mOhm and so on. These are measured so it looks like Ra 0 should be 307mOhm, not Ra Base.

    --> set Ra Base to 307/4mOhm = 77 and Ra1 to 3 (instead of -54). This will translate to a similar resistance profile as from your learning cycle with a reasonable Ra Base, hence Ra 0 = 307mOhm and the initial voltage drop is 4200mV - 459mV = 3741mV, unlocking capacity.

    Once the gauge runs another capacity simulation during discharge, for example when DOD crosses a grid point, it will then use the present average discharge power, which will unlock even more capacity. You should see unfiltered values adjust accordingly with the filtered values smoothly decreasing.