After dealing with the so called 100% SoC issue with the new JK Inverter BMS, I decided to take matters into my own hands and solve this issue once and for all.
Why might I need this?
1. You are using the new JK Inverter BMS (PB1A16S10P, PB2A16S10P, PB1A16S20P, PB2A16S20P)
2. You are using it...
I got around to implementing the ghost battery using a dedicated microprocessor to spoof the battery. I created a new thread for it at https://diysolarforum.com/threads/jkbms-inverter-bms-soc-fixer-ghost-battery-open-hardware-project.88554/
So far it has been working well, I was out of town...
A brief update, I released a V1.0 firmware with added debug capability to help aid in debugging RS485 coms issues. Simply hold the button while booting and open a terminal emulator (such as the one that comes with arduino, putty, etc) at 115200 baud and the RS485 traffic will be printed in a...
New firmware day! -- Lets try our luck...
First things first should we update the app?
There is no new PC application or mobile app so no need to update them.
Timestamps are the same as before:
PC app 2.0.7.22 dated 2024-01-26
mobile app 4.19.6 dated 2024-04-09
Now lets move on to the...
I am not sure about your use case (open loop system), but I think that you are misunderstanding how the JKBMS is intended to operate.
The 'battery is full' error message is a poor Chinese translation for 'battery is overcharged, activate over voltage protection to prevent battery damage'.
I am...
Excellent -- thank you for the tip about V15.24. I was able to install it this morning, and the LCD display came back online 🥳
It does look like this firmware update got a lot of work put into it, but I agree that it doesn't look promising for luxpower users.
My batteries are up to 85% charge...
@maks2204 That is great to hear you got it running an a 2560! I was a bit concerned that it would run out of ram to hold the RS485 responses on an 8-bit micro but clearly it works well.
@AshleyL: It should not affect the RCV/RFV timer logic on the JKBMS, the timer seems to start on a per-BMS...
There is an interesting development on this project:
Andy has managed to get in touch with JK and they have agreed to release a firmware which should fix this 100% SoC issue once and for all: they will change the SoC logic to reset to 100% after the RCV timer expires. This should render this...
That is an interesting observation of the behavior of your 8s system.
From what I have been able to gather you are experiencing the exact opposite of the issue that we are having with the EG4/Luxpower inverter, which is that the inverter is using the 'for display only' SOC to terminate the...
AshleyL: Yes, feel free to share with Andy. It does seem that he is the only one who has been able to get a technical response out of JK
I should share my current solution to work around this issue and allows closed loop SOC based control on the inverter with a JKBMS based battery:
NOTE: It is...
Interesting to hear that the 15.32 firmware is causing problems. JK likely changed up the (undocumented) parallel mode communication protocol. It should be a simple fix (update the responses stored in the firmware, using the debug mode snooper) but I don't have any hardware running on 15.32 to...
A brief update -- solar assistant released a new beta firmware and I am happy to report that JKBMS parallel mode operation is now working with SA.
The connection is modified from the existing configuration (connect SA usb->rs485 adapter to the inverter RS485 port), instead you now connect the SA...
Yes, float mode is enabled on the jkbms.
Do you have a system where the float mode actually works with your JKBMS? The only ones I have heard of are the Victron charge controllers
The issue is more of a philosophical one:
JK considers that the cell is at 100% SOC during the entire CV period of...
If you are not using communication with the inverter then I do not think this will help.
You only need one ghost battery per system (up to 15x JKBMS with one CAN connection to the inverter)
It should work with Deye over can, but I do not have any deye hardware to test with. Please report back...
I would rather connect to the internal RS485 port than the external HDMI one, but in general I would like to voice support for getting a direct rs485 connection working with luxpower inverters (I use eg4 6000xp).
A quick comment -- I noticed that with the wifi dongle trying to set 'charge...
And the results are in... Sadly there is no change in the charging performance with paired with an EG4/Luxpower 6000XP.
Here is the screen capture from Solar Assistant showing the charge behavior this morning.
I didn't bother including the battery SOC graph, it was at 99% this morning and hit...
There is good news and bad news:
The good:
There is now a firmware version 15.17 on the jkbms.net site:
Furthermore, there is now a new android app verison 4.19.6 on the same site.
http://www.jkbms.net/download_pc
I found that if you update the new 15.17 firmware AND use the new android app...
Here is the update from yesterdays experiment showing the charging behavior of the JK float controller with the ghost battery connected (limits SOC to 99% so the EG4/Luxpower inverter does not shut off charging prematurely).
To recap from before:
At 5:45am the sun rose and the PV array began...
There is a new tutorial on the SA website for how to get it set up.
The tricky part is that SA _does not_ talk the JKBMS parallel protocol (although they claim they are trying to support it), so if you are connected to the parallel jacks it won't work.
Instead, you need to connect the...
Excellent, I am glad to hear that you got it working.
It looks like you got it working, but there are 2 ways to confirm that it is working correctly.
1. You can use the JK windows app (not mobile) to monitor the RS485 bus (parallel mode) and confirm that there is a device at address 15 showing...
Interesting to hear ---
How do you have the enable pins on the max3485 wired? There is a bit of a hack that the m5 rs485 adapters use to avoid needing an enable pin. See https://docs.m5stack.com/en/atom/Atomic%20RS485%20Base for the schematic, they tie both RE and DE to TX and keep DI grounded...
As long as you have the inverter style BMS (with RJ45 ports) you should be all plug and play. Connect a standard ethernet cable from the CAN port on the master BMS to the CAN port of your inverter, and set them both to the pylontech protocol. Set the address of the master battery to 0 and then...
Excellent! I am glad to hear that the 'CAN 003 - Growatt' protocol seems to be working (at least in 15.24 firmware) and the SoC is being reported as 99%.
I hope that this gets the RFV timer working, I agree that it makes sense to play it safe and calibrate the inverter to be a smidge higher...
Hi-
Can you report the changelog for the new 5.17 firmware available from
http://www.jkbms.net/download_pc
Does it fix the issue where the SOC is 100% before the pack is done charging?
I see, I was confused because my problem is that the JKBMS reports 100% SOC 'too early', but you were saying that it was too late. Different applications I suppose.
So far it sounds like the only person who has got the new JKBMS to actually work satisfactorily in closed loop is @kommando with...
I am using a 110v powered USB power brick (as normally used for charging a phone) so no battery involved.
Also works well powered from the usb port on the raspi used for solar assistant
The setup is very simple:
1. Connect batteries as usual (set up addressing, daisy chain the RS485 ports, connect DC cables, etc) and confirm the battery array is working correctly and fully charged.
2. Select the target battery to convert for use as the ghost.
3. Set the capacity of the ghost...
Thanks for the tip -- after a cursory search the Sleeper85 project does seem like the best bet for modifying the charge algorithm.
I have also been investigating the fork by txubelaxu https://github.com/txubelaxu/esphome-jk-bms/blob/main/components/jk_rs485_bms/README.md
He has figured out...
Has anyone found that adjusting the cell resistance actually affects the SoC calculations? In my experiments I found those values only affect the reported voltages, but the JKBMS SoC calculation is done purely based on current (with reset at the SOC-100%-volt and SOC-0%-volt thresholds).