• Have you tried out dark mode?! Scroll to the bottom of any page to find a sun or moon icon to turn dark mode on or off!

diy solar

diy solar

Anybody tried new JK BMS with inverter communication support?

I have done it different ways.
The simplest is to disconnect the battery cables so nothing is going IN or OUT but the Pack Terminals are ON (HOT). Measure the Voltage at the Pack Terminals (3 decimal accuracy) and enter that value on the top of the settings screen. The AMPS can be 0 in this case without deleterious effects. I have done it with 10A flowing in and set that too and this does n ot seem to make a difference, it appears more reliant on actual voltage at the terminals.

Optionally, if you use a Bench Powersupply that can set a "specific voltage & Amperage" then you can enter the Voltage & Amperage used (verified by your DMM/DVOM) and in such a case over 5A inbound minimum is needed, 10A is better of course.

Of note, I have just been testing a few things and find that the V15.24 BMS can resolve to 0.3A In/Out and apparently 15.27 improves on that again (have to install & test that).

TIP: If you have a Battery Cell Tester like a YR1030/YR1035 or similar, you can use that to do the Voltage Test at the terminals as it will give you an accurate 3 decimal place value. These two YR's can handle up to 100VDC so your good to go. I don't know about other Battery Testers
There is another calibration that needs to be done involving the bus bars resistance (Con. Wire Res.)
This test should be done while charging or discharging the battery at minimum 30A - I did it while charging the battery with 30A from grid.

If you measure the voltage of each cell at the terminals with a 0.1% voltmeter you will find a deviation of 0 - 15 mV from the voltage reported by the BMS. The bigger the load the bigger the deviation. You have to input the (busbar + contact to battery terminal) resistance in 0.1 milliohm steps until the voltages match. Repeat this for every cell.

I know that the general opinion on this forum is that these settings refer to the thin voltage reading/balancing wires going from the BMS to each cell, but this is wrong.

This calibration should also help minimize the SOC drift problem and help with correct balancing.

I ended up with this:
1000010176.png
 
Last edited:
That is not going to help, the issue is unlike on an SMS Sunny Island the Growatt takes a report of 100% SOC, even if the voltage measured is well under 3.45V per cell, as a signal to stop charging. Due to the JK PB SOC drift the JK can send the 100% SOC at low voltages and the Growatt will stop charging despite the batteries not being full. If all inverters acted like the SMA SI then it would not be an issue. The fix is a Ghost battery which I can confirm works.

I see what you mean... but I tested anyway with 100%SOC = 3.55V and RCV = 3.45V and it passed over first cell 3.45V and pack 55.2V like nothing happened... The Growatt ignores it completely...
And I had activated 'charging float mode' under 'control'.
And you can put 100%SOC > RCV without the error message.
 
Last edited:
I see what you mean... but I tested anyway with 100%SOC = 3.55V and RCV = 3.45V and it passed over first cell 3.45V and pack 55.2V like nothing happened... The Growatt ignores it completely...
And I had activated 'charging float model under 'control'.
And you can put 100%SOC > RCV without the error message.
Oh, your BMS must be using one the the old and dangerous firmware version.

EDIT: ....and don't forget the coulomb counting will cause 100% as well.
 
Last edited:
Oh, your BMS must be using one the the old and dangerous firmware version.

EDIT: ....and don't forget the coulomb counting will cause 100% as well.
but still, I don't get why the voltage was not clamped at 55.2V... it continued to rise. I checked for voltage difference between JK and Growatt and the Growatt is +0.1V. This means it was at 55.3V when I saw 55.2V at the bms...

So, was the RCV of 3.45 (55.2V) ignored by the Growatt or what?! SOC was below 80% and I made sure no cell reached 3.55V 100%SOC...

I am using RS485 comm. Should I use CAN? Should I update the firmware? to what version?
 
but still, I don't get why the voltage was not clamped at 55.2V... it continued to rise. I checked for voltage difference between JK and Growatt and the Growatt is +0.1V. This means it was at 55.3V when I saw 55.2V at the bms...

So, was the RCV of 3.45 (55.2V) ignored by the Growatt or what?! SOC was below 80% and I made sure no cell reached 3.55V 100%SOC...

I am using RS485 comm. Should I use CAN? Should I update the firmware? to what version?
Logically, the SOC100% value must be lower than RCV value. Hence it is correctly in the later firmware. Later firmware will not allow you to set SOC100% higher than RCV.
JK mentioned due to the this logical bug, the saved settings is rejected during the BMS reboot/powerdown/up and defaulted back to Li-Ion profile.

Your current issue is very simple, your battery already reaches RCV value, yet the coulomb counter already stops counting since there is no longer any current flowing,but due to the logical bug where you set the SOC100% higher than RCV, you are basically overcharging your battery.
Do remember the JKBMS couloumb counter can only count/sense if the the current is higher than 0.3A.
 
I found the problem. Program 19 and 20 on the Growatt are showing 58.4V, which is 3.65V, which is my OVP voltage... I changed it in the JK to 3.6V and Prog 19 and 20 dropped to 57.6V in the Growatt... So instead of sending RCV to the Growatt, the JK is sending OVP voltage...

I'm on RS485, I wonder if I change to CAN it is fixed... it's also possible the old firmware I'm using is the problem...
Q1:
so what firmware do you recommend? I have v15.XA hardware.

Q2:
If I switch to CAN port which I understand is the port next to current RS485 do I need another type of cable?
 
Last edited:
I found the problem. Program 19 and 20 on the Growatt are showing 58.4V, which is 3.65V, which is my OVP voltage... I changed it in the JK to 3.6V and Prog 19 and 20 dropped to 57.6V in the Growatt... So instead of sending RCV to the Growatt, the JK is sending OVP voltage...

I'm on RS485, I wonder if I change to CAN it is fixed... it's also possible the old firmware I'm using is the problem...
Q1:
so what firmware do you recommend? I have v15.XA hardware.

Q2:
If I switch to CAN port which I understand is the port next to current RS485 do I need another type of cable?
........Post your JKBMS settings first. In Lithium Comm mode, Prog 19 and 20 are tied together.

Q1 = 15.24 so far.

Q2 = No need, use back the same cable, I suggest you to switch to CAN protocol. There is a "dangerous" bug with JK implementation of Growatt inverter RS485 communication protocol, which is fixed in 15.26, however, you will not find the firmware as it is included in 15.27........the bad news,15.27 onward until 15.30 has issue with parallel communication.

Oh, you better double check the inverter voltage reading and the BMS voltage reading first. If you take a look on my posts at the Ghost SOC fixer, the inverter will use the pack voltage value at the inverter charger itself and not the BMS pack voltage. In this case, you might need to calibrate either JKBMS voltage or the Growatt inverter depending on your measuring device point of truth.

edit: Don't forget about Growatt 100% stopped charging issue and its 95%-100% rebulk charging algorithm. As I mentioned before, this particular algorithm is not suitable for JK BMS. There will only be negative SOC% drift.
 
Last edited:
I just switched to CAN and can confirm program 19/20 now showing correct RCV x16 from JK, instead of OVPx16 with RS485....

So how can I calibrate the Growatt 6000 ES+ voltage? it is +0.2V over the JK. I calibrated the JK yesterday with my trusted Fluke 179.
 
Last edited:
I just switched to CAN and can confirm program 19/20 now showing correct RCV x16 from JK, instead of OVPx16 with RS485....

So how can I calibrate the Growatt 6000 ES+ voltage? it is +0.2V over the JK. I calibrated the JK yesterday with my trusted Fluke 179.
Very well, young one.

Turn on the Growatt LCD, then press UP and DOWN together. Enter password 111. Then press down to Prog 30, from here you can adjust the pack offset directly....by 0.1v offset.

HOWEVER, for a proper calibration, in order to avoid Vdrop caused by inverter charger voltage and battery pack voltage, I suggest you to switch to USE mode instead of Lithium mode and set both PROG 19 and 20 to 55.2V. Let the growatt charger charges up the battery pack to 55.2V. When there is no longer any current flowing between the inverter and battery, check the inverter charger voltage and JKBMS voltage, only then you can start calibrating the voltage (either JKBMS or Growatt inverter, depending on your measuring point of truth). The key is to match both voltage value for the JKBMS and Growatt inverter when the battery pack had been saturated.

edit: Why using USE mode for calibration purpose ----> Cause growatt will stop charging the battery the moment it received SOC 100% from the JKBMS. There is no float at all.

Remember, during charging/discharging, it is normal to have voltage difference at the battery and charger. Think of it as water level flowing for a certain higher height to the lower height. Hence, you can only start calibrating once the battery pack has been fully charged (same height level)
 
Last edited:
There is another calibration that needs to be done involving the bus bars resistance (Con. Wire Res.)
This test should be done while charging or discharging the battery at minimum 30A - I did it while charging the battery with 30A from grid.

If you measure the voltage of each cell at the terminals with a 0.1% voltmeter you will find a deviation of 0 - 15 mV from the voltage reported by the BMS. The bigger the load the bigger the deviation. You have to input the (busbar + contact to battery terminal) resistance in 0.1 milliohm steps until the voltages match. Repeat this for every cell.

I know that the general opinion on this forum is that these settings refer to the thin voltage reading/balancing wires going from the BMS to each cell, but this is wrong.

This calibration should also help minimize the SOC drift problem and help with correct balancing.

I ended up with this:
View attachment 248186
This is really difficult for me to do because my batteries are pouch cells and not prism. They are all just spot welded at the tabs. Plus I would have to break out the pouches from the fiber board and wrapping... I'm hoping they are just close enough to 0... 😂
 
I am just reading through this thread, so I don't know if I might have missed some detail on the issue with the JK-BMS <-> Luxpower/EG4. But I was curious if this setting might be eg4's attempt to create a solution. This is on a 12kpv1729356097668.png

I haven't tested the SOC-based communication, but I did notice they have a SOC limit set by default to 101%. Might this resolve the issue where the inverter shuts off too soon?

(And I just barely understand the technical details of the underlying issue- so also forgive me if I've totally missed the point)
 
I haven't tested the SOC-based communication, but I did notice they have a SOC limit set by default to 101%. Might this resolve the issue where the inverter shuts off too soon?

(And I just barely understand the technical details of the underlying issue- so also forgive me if I've totally missed the point)
It might help, try it.
If the defect is corrected, the battery voltage graph should get a horizontal section with a balancing length in the state of 100%.
DEYE somehow work with JK-BMS, albeit crookedly. But Luxpower does not work at all.
 
It might help, try it.
If the defect is corrected, the battery voltage graph should get a horizontal section with a balancing length in the state of 100%.
DEYE somehow work with JK-BMS, albeit crookedly. But Luxpower does not work at all.
I have a friend who has a DEYE SUN-7.6/8K-SG01LP1-US/EU and he needs a BMS. What do you mean JK works, but crookedly with Deye? Do you have experience with them? What BMS would you recommend for Deye? I know some say Seplos but it lacks a balancer.
 
Well- it sure seems like this is working now. To recap- I am using the EG4 12kpv. I set my JK-BMS to use the luxpower protocall over CAN and my EG4 inverter is using the CAN EG4 battery protocall (setting 0). The inverter seems to be performing the expected behavior: when the battery reports 100% the inverter continues to trickle in 120 watts or so. Meanwhile the battery is drawing enough to balance out the cells. 1729462061105.png


And its hard to see, but that green line is close, but not right at 0.1729462115149.png

The inverter is set to use the SOC of the battery, with the stop charging level set to 101% (the default). I don't think the BMS will ever report that, but it also takes the battery offline once it reaches the max cell voltage.

I think this is the desired behavior- but I think there are more experienced folks who have thought a lot more about this issue, so I'd love to hear if this indeed is a fix.
 
Well- it sure seems like this is working now. To recap- I am using the EG4 12kpv. I set my JK-BMS to use the luxpower protocall over CAN and my EG4 inverter is using the CAN EG4 battery protocall (setting 0). The inverter seems to be performing the expected behavior: when the battery reports 100% the inverter continues to trickle in 120 watts or so. Meanwhile the battery is drawing enough to balance out the cells. View attachment 251181


And its hard to see, but that green line is close, but not right at 0.View attachment 251182

The inverter is set to use the SOC of the battery, with the stop charging level set to 101% (the default). I don't think the BMS will ever report that, but it also takes the battery offline once it reaches the max cell voltage.

I think this is the desired behavior- but I think there are more experienced folks who have thought a lot more about this issue, so I'd love to hear if this indeed is a fix.
What firmware version are you on?
 
Will be interesting to see when discharge starts and how well pack is balanced. See you have 57.2v. I typically stop at 55.4v
If using Lux protocol, should have battery min/max in the data history to see the values of the pack(s)
 

Attachments

  • IMG_6659.jpeg
    IMG_6659.jpeg
    160.8 KB · Views: 5
It might help, try it.
If the defect is corrected, the battery voltage graph should get a horizontal section with a balancing length in the state of 100%.
DEYE somehow work with JK-BMS, albeit crookedly. But Luxpower does not work at all.
Hey yur43, did you try JK-BMS with Deye inverter? what do you mean it works crookedly?
 
Hey yur43, did you try JK-BMS with Deye inverter? what do you mean it works crookedly?
Greetings.
The adjustment of the charging current does not work when approaching the saturation stage of LiFePo, a similar mechanism for lower balancing does not work.
The charge is turned off not by limitations, but by start/stop commands.
 

diy solar

diy solar
Back
Top