New JK BMS Has SERIOUS Flaw in latest build

Korishan

Administrator
Joined
Jan 7, 2017
Messages
7,543
wow, just checked my older JK BMS (had been switched off for 3 days) which is hooked up to a standby fully charged 24Volt 8x 304aH (8Kw) lifepo bank. Pleased to report that the settings are still the same.
 
I'm guessing this is a firmware coding error on JK's part. They probably mis-coded and saved the data to the EEPROM stored on the MCU (processor) instead of storing in the external EEPROM.
The reason I am assuming this is because these things keep logs, and they'd need to have plenty of space beyond what the MCU storage would provide, so an external storage would be needed.
If this is the case, then a firmware update to the existing broken systems would be all that's needed to fix the issue. Let's hope this is the issue. Especially considering that there are OEM's that use these boards for their packs and the end customer may have no idea about the situation
 
Wow. Just...wow. I don't use any JK BMS products, but I hear them referenced all the time around here and elsewhere. No telling how many people don't even know about the potential problem.

Cheers, John
 
Just to play devil's advocate. And I may not fully understand the issue. But as far as I understand it, the issue is that when a battery is disconnected from a BMS (ie, the BMS cuts power), and then reconnected, the JKBMS will default to Li-Ion settings. Is that the bulk of the issue?

Because if so. While I do believe this is a fault. Shouldn't you catch this problem? First, If I'm going to disconnect or pull from service a battery, and plug it back in, you can be damn sure I'm going to immediately pull up my BMS data and triple check that everything is where I left it. Who is putting a battery back into service without checking all of their safeties? Secondly, who is turning on a BMS after a time and just assuming everything is working? Thirdly, isn't the advice to only rely on BMS safeties as a final-defense? You should have external fuses in multiple places in your system for overcurrent protection, your charge controller should already be set to a proper max charge voltage that is under your BMS cutoff limit, if you use an inverter you can also set extra parameters on that side... and ultimately, batteries shouldn't be ignored if you're going to use them.

Again, I don't mean to argue that this isn't an issue (it is), nor do I think JKBSM shouldn't have to fix it (they should). I just believe: 1. Your first, last and most important protection needs to be yourself, and 2., always assume a computer isn't going to do its job. I have 4 JKBMS's in service (all small ones, none of the models in question), and I think you should still always use a BMS. Just not sure this particular issue necessitates this level of response.

Or who knows. Maybe I'm turning into a cranky old man who was annoyed by Andy's silly news reporting bit...
 
I totally agree with basically everything you said! BUT...
Who is putting a battery back into service without checking all of their safeties? Secondly, who is turning on a BMS after a time and just assuming everything is working?
I daresay, "nearly everyone." I think even in a tinkerer's world, where a lot of people are like us, I bet there are MORE people out there just bolting cells together, slapping on some out-of-the-box BMS, and never thinking about it again. For many, I bet the BMS is the only safety mechanism in the entire battery portion of their setup. I suspect lots of folks turn their systems completely on and off for long periods of time -- like the RV crowd, the seasonal off-grid cabin people, etc. And that's the problem with this bug. It's not a big deal for someone like you, or someone like me. But it's potentially a very big deal for everyone out there who doesn't know better or who is too lazy to care. (Also, there's just the fact that a system should not be designed in a way that it can "forget" all of its parameters simply because it is shut off. Imagine if your car couldn't remember the engine's firing order if you didn't start it for a week. Yikes...but even that doesn't have the potential to cause an enormously expensive accident.)

You're absolutely right about best practices and being responsible for our own safety. Zero question about it. But I'd make a pretty good wager that there are a whole lot of people out there who just aren't doing it. They are the ones who make the rest of us look bad, and who make insurance companies terrified of our projects.

And I share your view of the kitschy news reporter bit -- I was amused in the same way I am at most of my six-year-old's jokes, but that video could have been 1/3 the length and been just as useful!

Cheers, John
 
the issue is that when a battery is disconnected from a BMS (ie, the BMS cuts power), and then reconnected, the JKBMS will default to Li-Ion settings. Is that the bulk of the issue?
This is correct.
While I do believe this is a fault. Shouldn't you catch this problem? First, If I'm going to disconnect or pull from service a battery, and plug it back in, you can be damn sure I'm going to immediately pull up my BMS data and triple check that everything is where I left it.
Having a battery in service is not really the issue here. Tho, that is definitely one of the use cases this could be an issue. Just because you take a battery out of service to work on it, why would you think to check all the nitty gritty settings of your BMS to make sure their settings are correct?? You don't do this when you turn your phone off for a day or so and then turn it back on. You don't do this with your computer when there's a power outage. You expect the settings to be saved and restored upon power restoring.
The bigger issue here is not for those people who take a battery out of service for working on it. It's mostly an issue with people who shut the whole system down for Long Term Storage. When you leave a cabin, for example, that's built around battery power, you don't leave the BMS connected to the battery when you shut things down, otherwise you'd return to a dead battery. You disconnect everything, including the BMS from the battery for Storage purposes.
Granted, when you return, you should double check the settings. I get that. But again, it is generally accepted and expected that the settings would be set and restored during power resupply.

Secondly, who is turning on a BMS after a time and just assuming everything is working?
The majority of users, to be completely honest. Think about this. Someone builds a battery pack for a scooter, or golf cart, or some other device, as a business model. They install one of these units and sell the whole thing to a customer. They tell the customer that when the cart is not going to be used for long periods of time (say for instance over the winter), to disconnect the whole the system by flipping that breaker on the side of the battery. Then the customer when they are ready to use the cart, or what ever device, flips the switch back on expecting the device to work and function as expected. This isn't the fault of the customer to know the nitty gritty of the battery installed in their device. They expect the system to work as they purchased it.
You gotta remember that it's not just DIYers who rely on these things. Businesses do as well. Could you imagine the financial hurt a business could incur if this happened during their warranty period?!? It could bankrupt someone who's totally innocent of the whole thing.

Thirdly, isn't the advice to only rely on BMS safeties as a final-defense? You should have external fuses in multiple places in your system for overcurrent protection, your charge controller should already be set to a proper max charge voltage that is under your BMS cutoff limit, if you use an inverter you can also set extra parameters on that side... and ultimately, batteries shouldn't be ignored if you're going to use them.
If the BMS resets to Li-Ion voltages, then what's the point of it being the last defense!? It's already failed and won't do any triggering to stop. Not all chargers are designed to stop at a specific voltage. And even if they are designed, they wouldn't know the individual voltages of the cells in the battery pack. The charger wouldn't know if a cell was going high voltage while another was lagging behind, as it looks at the overall voltage instead.

Fuses wouldn't work in this situation. Breakers wouldn't work either. There isn't an overcurrent situation. It's an overvoltage situation, and according to the BMS that's defaulted to Li-Ion settings, it doesn't know any different. It'll continue to allow the cells to get more juice until they begin to swell. The only thing that would hopefully save them at this point would be the temperature probe(s) as the cells would most definitely heat up. But again, if it's only a few cells and they happen to be the ones without a temp probe, it'd be too late.

Again, I don't mean to argue that this isn't an issue (it is), nor do I think JKBSM shouldn't have to fix it (they should)
Just to play devil's advocate.
As you mention here, your being devils advocate. It's good to ask these questions for people who don't understand the severity of the situation and don't even know what to ask. They don't know what they don't know and don't know what to ask so as to know.
For example, on the Discord server I posted this video in there was a guy who didn't have the faintest idea why this was an issue. He has multiple LFP "12V" batteries in his various equipments. It took probably close to 10 minutes to fully explain (ya know, text and waiting for them to reply and such) what the problem was and why it was so severe. Afterwards, he was like "Oh damn! That's why! Yeah they need to fix that quick"

He was under the assumption it was a DIY only thing and was only used for huge battery packs.

Maybe I'm turning into a cranky old man
Meh, we all get that was as we get older. I'm seeing it even in myself. I have far less patience for certain things than I used to. Idiocy I can't stand.
 
I totally agree with basically everything you said! BUT...

I daresay, "nearly everyone." I think even in a tinkerer's world, where a lot of people are like us, I bet there are MORE people out there just bolting cells together, slapping on some out-of-the-box BMS, and never thinking about it again. For many, I bet the BMS is the only safety mechanism in the entire battery portion of their setup. I suspect lots of folks turn their systems completely on and off for long periods of time -- like the RV crowd, the seasonal off-grid cabin people, etc. And that's the problem with this bug. It's not a big deal for someone like you, or someone like me. But it's potentially a very big deal for everyone out there who doesn't know better or who is too lazy to care. (Also, there's just the fact that a system should not be designed in a way that it can "forget" all of its parameters simply because it is shut off. Imagine if your car couldn't remember the engine's firing order if you didn't start it for a week. Yikes...but even that doesn't have the potential to cause an enormously expensive accident.)

You're absolutely right about best practices and being responsible for our own safety. Zero question about it. But I'd make a pretty good wager that there are a whole lot of people out there who just aren't doing it. They are the ones who make the rest of us look bad, and who make insurance companies terrified of our projects.

And I share your view of the kitschy news reporter bit -- I was amused in the same way I am at most of my six-year-old's jokes, but that video could have been 1/3 the length and been just as useful!

Cheers, John
You summed it up pretty well. I agree, most ppl would just basically have a "set it and forget it" mentality. And that's the bigger issue overall. Even if ppl have other safety measures in place, the BMS is suppose to catch the bulk of the issues. If it doesn't think there's an issue, it's not going to trigger. And not triggering will result in severe damage.

I agree, there are best practices that need to be adhered to. Problem is for those ppl who are third party to the whole thing. Do you expect Joe Schmoe to check his BMS settings of his battery that he bought from Super Power Sports to upgrade his lead acid in his gocart?? No. He expects that the smart ppl at SPS has set his device correctly and that it will function as expected, even when he turns it off for storage for overwintering, and then it will function as expected when he brings it out of the shed in spring.
I won't reiterate since I already posted an example in my previous post :p

But yes, this is generally a major issue! Thing is, if JK messed up like this, there are plenty of other companies that could mess up too. This is like Tesla sending out an update to their cars and the car doesn't stop as fast when someone walks out in front of it. Possible collissions are very likely to occur
 
You don't do this when you turn your phone off for a day or so and then turn it back on. You don't do this with your computer when there's a power outage. You expect the settings to be saved and restored upon power restoring.
Eh. So maybe it's just my point of view. Because yes, I do all those things to some extent. I have zero trust for technology.
But yes, this is generally a major issue! Thing is, if JK messed up like this, there are plenty of other companies that could mess up too. This is like Tesla sending out an update to their cars and the car doesn't stop as fast when someone walks out in front of it. Possible collissions are very likely to occur
You mean, exactly how they operate already?


Kinda proving my point. I don't trust tech to begin with. But I'm okay with being the only one who feels this way: buy crappy tech expecting it to be crappy and you won't be disappointed.
 
So there's an update, sort of
View: https://youtu.be/jd0Jp9OM0ts


imho, this is not a real fix. It's a changing of the bandage. Having it to just reset to different default values after being disconnected for a period of time is not the solution. Even resetting to default values if it detects a fault isn't a fix either. The software interface (whether using PC or App) should inform the user of the fault and "what" the fault is in the first place. Just have the BMS keep the battery disconnected via the MOSFETs instead until the fault is cleared. But at least let the user know what the problem is. By not telling the user what the problem is, what's to say the user won't just repeat the error when they go back to change the settings to what they had before? Those are a lot of settings to configure and a lot of ppl just have them listed so they can rapidly input the values or they just know what the numbers are. They aren't going to check the ? sign next to every value to verify what is expected to be there based on other values.
 
Back
Top