Is anyone using the new style JK inverter BMS with dbus-serialbattery driver? #969
Replies: 22 comments 135 replies
-
I'm trying to get it to work, but for some reason I don't get any output on the serial port. |
Beta Was this translation helpful? Give feedback.
-
So my investigation is a bit further. If the software is not connected, I get no output. Zero. When the software connects, I get data from the serial port. The error I'm getting from dbus-serialbattery is:
|
Beta Was this translation helpful? Give feedback.
-
I've been using a JK-B2A20S20P with the serial battery driver on a Cerbo GX, awesome driver! I made a data cable using the same Waveshare USB to RS485 and powered up my JK-PB2A16S-20PH using a set of temporary cables. I updated the software so I'm at v15.10 as well. I didn't bother to set up any parameters except Uart1 Protocol to 001-JK BMS RS485 Modbus V1.0 (also tried 000-4G-GPS Remote Comm), dip one up and the rest down. No luck here. Pretty much same logs with connection errors. I was hoping this would be plug and play because I'm pretty sure my coding skills won't get me very far! The new style BMS is far superior to my older one but it will stay boxed up until I can use it with the serialbattery driver. |
Beta Was this translation helpful? Give feedback.
-
Anyone asked JKBMS for the protocol documentation? Are there not some communication protocols you can select? |
Beta Was this translation helpful? Give feedback.
-
I asked JK (Nami) for UART protocol documentation and she got back to me with this: Origional: My Google translation: |
Beta Was this translation helpful? Give feedback.
-
I have some python code working! I don't use dbus-serialbattery but am trying to get modbus communication working with the JK inverter BMS model JK-PB2A16S20P. Hopfully you will find it useful. The modbus map files posted were a big help. Thank you!!! It was what I was looking for. You have to connect to one of the two rs485/rj-45 ports on the right. Not the left ones. The left ones are rs485 and CAN for inverter communication. The right side ones are for parallel battery communication and our modbus. I used orange/white to B, orange to A and green/white to GND on my CH340 USB to RS485 connector. The other end rj-45 crimped with standard T568B. The dip switches on the comm board are to set the slave address. I don't think they can all be down which would be 0. I think they have to be set to any from 1 to 8. Mine is set to 1, first switch up. I think this may be a problem if multiple BMS are in parallel like they designed it for with inverter communication, the master BMS needs to be set to 0 and you wouldn't be able to communicate to it. But not tested. If not using their inverter communication like me than no problem, Just don't use 0. In the register map you have to add the address field and the HEX field togeather to get the registar you are trying to get. For example if you wanted BatVol it lists 0x1200 and 0x00E4. Added equals 0x12E4. Also note UINT16 for decoding.
For CellCount it lists 0x1000 and 0x006C. Added equals 0x106C. Also note UINT32 for decoding.
|
Beta Was this translation helpful? Give feedback.
-
Also throwing myself inhere. CAN-Bus:
Gets stuck here forever and after re plugging the CAN Cable its gets recognized as Daly CAN and fails.
Bluetooth i get a few beeps from BMS when connecting but its not recognized:
Over RS485 same Problem like in the original Post |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
Ok. The log repeats itself 32 times with different addresses. Please let me know if you'd like the full log: root@einstein:~# tail -f /data/log/dbus-canbattery.can0/current |
Beta Was this translation helpful? Give feedback.
-
The JK docs on this new BMS are as already pointed out are a mess, I have come across this doc which confirms they have everything back to front on pinouts. Hopefully this may be of help. It plus Fugri's earlier pic allowed me to get the Canbus working. |
Beta Was this translation helpful? Give feedback.
-
Hi guys do you have any solution with this Problem? i got my New JK BMS yesterday and ran into some problems. I was using 4 old style jk bms with serialbattery and the battery aggregator. Now with the new one i connectet them in master Slave and via victron type A cable to the cerbo now i can see the overall Voltega, highest, lowest cell, Ah and thats it. I cant use the Serialbattery now to reduce the charge current when the battery gets full. So is there a solution to get this to work? ATM i just made a small programm on the cerbo to reduce the CCL when the highest cell gets over 3.4V but thas not the best solution. Is there a way the BMS controlls the CCL? |
Beta Was this translation helpful? Give feedback.
-
Hi everyone, I'm using serial battery with two batteries already (with another BMS) and really like the comfort just to plug the USB in. I've bought a Battery Kit for my 3rd battery that came with this BMS and sadly it is not working out of the box. After reading this thread I understand that it works somewhat with CAN but not in combination with serial battery and I won't get single cell voltage, right? So that would be a no go for me. I want to use the USB that comes with the battery. I've seen the documentation that @NorthTown2022 attached (thx) and started to modify the existing jkbms driver to work with the new BMS version. At this point I can request data and parse the overall voltage, temperatures, current, and single cell voltages But there are still some todos as I'm using some shortcuts ..
But before I dive deeper I'd like to make sure that it is worth the effort .. there is nobody working on the same at the moment, right? Thanks JKW |
Beta Was this translation helpful? Give feedback.
-
@flashy02 please post the logs under this answer. Are your daisy chained BMS recognized from the PC software? |
Beta Was this translation helpful? Give feedback.
-
The JK-PB uart2 port behaves differently when the dip switch is in different positions plus when master/slave is initiated using the RJ45 cable connections between batterys. In a standalone battery Dip set to 1 allows the BMS settings to be altered plus firmware to be uploaded using the Windows app but you get no access to the Parallel tab. Set Dip to 0 and the Win app loses access to the battery settings and the ability to upload firmware, the parallel tab is ungreyed and you get access to all the data on daisy chained battery's. If you keep the daisy chain wires in place then turning the Dip from 0 back to 1 does not change the Windows app back to allowing changing settings and firmware. You must first undaisy chain the BMS to regain access to the settings. This suggests that daisy chaining breaks the JK RS485 protocol and it changes behaviour to a currently undocumented protocol. Uart 1 also has the JK RS485 protocol as selectable. Maybe the solution is to set Uart1 to the JK RS485 and leave Uart2 in its odd daisychain configuartion and instead connect the ESP32 to uart 1. |
Beta Was this translation helpful? Give feedback.
-
I think the multiple-bms-per serial wouldn't work, because at the moment,
it is not possible to recognize only one batterie if the daisychain is
connected on RS485-2. So at the moment, the only way would be to use 3 USB
cables each connected to the equivalent address on RS485-1 while daisychain
is connected on RS485-2. I can try the offered steps to test.
Naja, nähe ist relativ. Komme aus Region Wolfsburg und du laut LinkedIn und
Git Profil wohl Region Celle :-).
Kolja Windeler ***@***.***> schrieb am Mi., 10. Juli 2024,
13:36:
… thanks for the guidance .. @flashy02 <https://github.com/flashy02> could
you follow those steps ? sorry to use you here as our tester .. and to
speed up things even further: *Wo kommst du genau her? du wohnst nicht
zufaellig in der naehe von Hannover?*
Cheers, Kolja
—
Reply to this email directly, view it on GitHub
<#969 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AIRFMY3CS55SDR3SGQ4HEXLZLUMCVAVCNFSM6AAAAABDEAPDKSVHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTAMBQHEYDSNA>
.
You are receiving this because you were mentioned.Message ID:
***@***.***
.com>
|
Beta Was this translation helpful? Give feedback.
-
Has at least one of you the same problem as here? |
Beta Was this translation helpful? Give feedback.
-
Hi all not sure how to differentiate those two versions. Will try TTL to USB later. but I get " btw, it works perfectly via bluetooth. Just would like to make it work via serial. One setting I have on iOS application to choose the correct protocol (don't know which one it is). See below. I managed to let the driver ignore the /dev/ttyUSB0 via config.ini (as the BMS is connected to /dev/ttyUSB1). But it is not communicating at all. I see in the log only
and on remote control an "not connected" battery. Any idea what might be wrong? Here the protocol that also needs to fit to my adapter. I guess this one should be the correct one: and here is where I had to chose |
Beta Was this translation helpful? Give feedback.
-
I only have one UART on my BMS, that is UART1. I replaced now those two components by a TTL-USB not sure if VenusOS is supporting that chip. The behavior is the same as on my previous set-up. Venus OS sends some transmit (transmit LED flashes), but nothing is combing back. If I choose the 013 - (9600)JKBMS... then the read LED flashes very quickly after the transmit LED, but still nothing showing up on the driver. I don't see anywhere to set the BAUD rate. If that might be an issue? |
Beta Was this translation helpful? Give feedback.
-
I have problem with connecting multiple JKBMS_pb in parallel: in config,ini: Everything works fine with the JK Windows PC software: Parallel setup (DIP master 0, 2nd battery 1), or 1, 2, or via separate COM ports from USB adapter. All options work. But if I connect to Gerbo I get the unique identifier issue. Either battery, 1st or 2nd individually works. Since the USB adapter provides 4 separate USB ports I tried connecting every possible way:
Whatever way two batteries are both recognized, I get the identifier conflict ("4041849190"). If I look at the Battery serial number via bluetooth app I see different serial numbers (ending "3" and "5"): I don-t know whether JK publishes this faulty info or dbus-serialbattery doesn't read all the identifier fields (last number missing). I cannot change serial number via app, although there are other customizable fields that I can change: |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
I would love to be able to use the features and functionality of the new inverter style BMS with the dbus-serialbattery driver.
Has anyone made this work?
Beta Was this translation helpful? Give feedback.
All reactions