diy solar

diy solar

jbd / overkill bms - state of charge

squowse

Solar Enthusiast
Joined
Jan 4, 2021
Messages
571
Hi. I am hoping someone is an expert and can tell me about how it calculates the state of charge.

It seems to be that it has two methods

1) estimate from cell voltages using the values set in the configuration
2) "coulomb counting" where it measures the current in and out of the battery

So method 1) is obviously going to be very rough and I would only expect it to be used when it has no other information eg when it's first used.

I noticed the first time I used it - it measured and adjusted the battery capacity based on the first discharge 100% to 0%. This changed from the 272Ah I set it to and changed it to 290Ah.

At some point since then it has changed it to 230Ah.

So I would like to understand when and how it changes this value.

But more importantly - it seems to use method 2) a lot.

For example - when I attach a mains charger, as soon as the "cell voltages" (actually the charger voltage) gets to 13.2V (cell voltage 3300mV) the state of charge jumps to 100%. Even though the battery is only about 25-50% at this point.

This is puzzling and annoying. So I wait for the charge amps to fall near zero before disconnecting the charger. But if I disconnected it before then it would still think it's on 100%, or try to estimate from the settled battery voltage.

So - why does it abandon the coulomb counting?

Thanks
Roger
 
Trying to find the BMS firmware version.
 

Attachments

  • BF1EF54A-D042-47AC-B946-DF54328EE411.png
    BF1EF54A-D042-47AC-B946-DF54328EE411.png
    297.1 KB · Views: 35
What I've been trying is to change all the cell voltages 0% to 100% to either 3.65 or 2.50. This does have the effect of resetting the state of charge to either 0% or 100% and seems to force the use of the shunt afterwards. For a while. But it's not 100% reliable. For example before charging I reset to 0%. It incremented ok for one charging session. (Generator is only on in evenings). The next day it had reset to zero Ah despite probably 2/3 full from the evening before.
 
What I've been trying is to change all the cell voltages 0% to 100% to either 3.65 or 2.50. This does have the effect of resetting the state of charge to either 0% or 100% and seems to force the use of the shunt afterwards. For a while. But it's not 100% reliable. For example before charging I reset to 0%. It incremented ok for one charging session. (Generator is only on in evenings). The next day it had reset to zero Ah despite probably 2/3 full from the evening before.
Similar story on the discharge cycle.
 
What voltages did you choose for 20%, 40%, 60% & 80% SOC settings?

My understanding is that the method 1 you describe is used whenever Reset Capacity is triggered or a settings change is made or when reaching full (and maybe also when reaching empty). Method 2 is used during normal use discharging & charging of an actively used battery.

I think that the settings for method 1 should be resting voltages obtained from actual testing. You're assured that they are accurate then and only accurate when the cells have been at rest. Example, If the battery has not been used for weeks or months then initiating the reset capacity option prior to use would give you an accurate starting SOC for that usage period. Method 2 should take over when the battery is actively being used.
 
What voltages did you choose for 20%, 40%, 60% & 80% SOC settings?

My understanding is that the method 1 you describe is used whenever Reset Capacity is triggered or a settings change is made or when reaching full (and maybe also when reaching empty). Method 2 is used during normal use discharging & charging of an actively used battery.

I think that the settings for method 1 should be resting voltages obtained from actual testing. You're assured that they are accurate then and only accurate when the cells have been at rest. Example, If the battery has not been used for weeks or months then initiating the reset capacity option prior to use would give you an accurate starting SOC for that usage period. Method 2 should take over when the battery is actively being used.
They were the standard values that come with the bms. I could look them up? It's not an accurate way of measuring the lithium soc. The voltage varies much more when charging / at rest than it does from 80-20%.
How do you reset capacity? That would be much more useful. To reset manually at 0% or 100%. Other than those positions you can only rely on the coulomb counting.
 
FUNCTION SETTING -> RESET CAPACITY brings it back inline with your 20/40/60/80% voltage set point choices.

Tested & confirmed resting voltages accurately reflect SOC (24hrs or so at rest). That's the only time voltage is useful for determining SOC in my opinion.

With cylindrical cells, I'm using:
Full: 3.45V
80%: 3.332V
60%: 3.293V
40%: 3.29V
20%: 3.24V

That's based on actual discharge testing, 10% discharge & 20+ hours rest each step.

discharge test.jpg

Prismatic cells might be like the following. Some adjusting probably required.
80% 3.337
60% 3.302
40% 3.295
20% 3.251
 
1) estimate from cell voltages using the values set in the configuration
2) "coulomb counting" where it measures the current in and out of the battery

So method 1) is obviously going to be very rough and I would only expect it to be used when it has no other information eg when it's first used.
The JBD use the built in shunt to count the current flow in and out. This is your meathod 2)
It will then also use the cell voltaged 1) that you set up to make sure something is not out of sync. As long as your cells are mostly balanced those in 1) will not be used. The exact formula is different for all manufactures, but if one cell is not behaving it will look at the cell voltage settings and make adjustmenst to the SOC to take that into account.

If you set the battery capacity, the BMS will adjust that capacity up or down depending on if more or less current was able to be stored in the battery before the full voltage was reached or the battery empty voltage is reached. The default setting is either 5%or 10% adjustment. If you set that to 0% then it will not be adjusted.
 
The JBD use the built in shunt to count the current flow in and out. This is your meathod 2)
It will then also use the cell voltaged 1) that you set up to make sure something is not out of sync. As long as your cells are mostly balanced those in 1) will not be used. The exact formula is different for all manufactures, but if one cell is not behaving it will look at the cell voltage settings and make adjustmenst to the SOC to take that into account.

If you set the battery capacity, the BMS will adjust that capacity up or down depending on if more or less current was able to be stored in the battery before the full voltage was reached or the battery empty voltage is reached. The default setting is either 5%or 10% adjustment. If you set that to 0% then it will not be adjusted.
My cells are balanced but it still uses method 1) regularly as described
 
You might still have more capacity in the cells than your original setting. Then unbalanced cells are not be an issue, but rather mismatched settings.

If the actual capacity of your cells is not matching what is set in the BMS settings, then the BMS will see that you have charged 272Ah of energy into the BMS and it would expect the cells should start getting to the 3.4V range. However if the cells can do 290Ah then they might be still in the 3.30V range and the SOC will want to be adjusted.

So if your BMS up the capacity to 290Ah you should not set it lower again (most cells are supplied to give a bit more that their specification) as 290Ah would be the more acurate capacity. If you don't want to use the battery to the limits then rather change other settings.
 
FUNCTION SETTING -> RESET CAPACITY brings it back inline with your 20/40/60/80% voltage set point choices.

Tested & confirmed resting voltages accurately reflect SOC (24hrs or so at rest). That's the only time voltage is useful for determining SOC in my opinion.

With cylindrical cells, I'm using:
Full: 3.45V
80%: 3.332V
60%: 3.293V
40%: 3.29V
20%: 3.24V

That's based on actual discharge testing, 10% discharge & 20+ hours rest each step.

View attachment 69988

Prismatic cells might be like the following. Some adjusting probably required.
80% 3.337
60% 3.302
40% 3.295
20% 3.251
Is "function setting" in the app? Or the computer program? I have the USB interface and software, maybe I shoulder check in there and see if there's anything I can do to stop it resetting the soc based on voltage.
 
You might still have more capacity in the cells than your original setting. Then unbalanced cells are not be an issue, but rather mismatched settings.

If the actual capacity of your cells is not matching what is set in the BMS settings, then the BMS will see that you have charged 272Ah of energy into the BMS and it would expect the cells should start getting to the 3.4V range. However if the cells can do 290Ah then they might be still in the 3.30V range and the SOC will want to be adjusted.

So if your BMS up the capacity to 290Ah you should not set it lower again (most cells are supplied to give a bit more that their specification) as 290Ah would be the more acurate capacity. If you don't want to use the battery to the limits then rather change other settings.
Yes the capacity is more like 290. But it changes the soc based on the voltage. As described in the first post. When it's charging it jumps to 100% when the voltage hits 13.2v (3.3 per cell). First thing i did was change all the voltages higher to avoid this. But then it would drop to 0% way too quickly ( voltages less on the discharge).
 
It just changes the soc way too often and uses the cell voltages. Need to find a way to stop this.
 
the default voltages should work well. I'll have to go plug the bluetooth back in tomorrow and then can check all the settings I use in the app. The adjustment percentage is in the app.
I suspect your problem will be a setting that is wrongly set.
 
Is "function setting" in the app? Or the computer program? I have the USB interface and software, maybe I shoulder check in there and see if there's anything I can do to stop it resetting the soc based on voltage.
Function Setting is on the Android app main menu.
 
I found a manual online that attempts to explain the charge capacity and state of charge calibration. (see attached PDF)
The translation is not great , it needs repeated reads (for me). I think what may have happened is that it requires a discharge from full followed by a full charge to calibrate. BUT - if you change any parameters (or various other conditions) it will forget that and use the voltage for estimation until it's had a calibration cycle again.

I have reset all the cell voltage thresholds back to the values recommended in the overkill guide. And we'll see how we go if I make sure to leave it alone.
1635187889681.png
 

Attachments

  • Smart BMS instructions.pdf
    73.5 KB · Views: 108
It use Full Cell Voltage at 3.45V
The rest is the same as the default you have.
 
I have seen the standard voltages for Lifepo4 in the app are not correct and need to be updated
 
Back
Top