Repository navigation
JK BMS V19 #161
Replies: 15 comments 1 reply
|
The V19 is a return to messed up comms, lets face it there were 41 releases for the V15 before they sort of got it nearly right. Not got a V19 yet but one is on route and I expect issues. Luckily I have a spare V15 if I cannot get it to behave. They seem to have changed now the board connects in parallel and if you initially set it up in a particular way you lose the ability to parallel connect. https://diysolarforum.com/threads/jk-bms-v19-broken-parallel-comms.110148/ Worth a watch |
|
Well , works fine from the PC on all 3 RS485 ports using BMS monitor but in bms-to-inverter can't make it work for the love of my life ... been trying now all kind of stuff ... nothing works. |
|
My delivery date is late Nov so until then I cannot try to see if anything
works.
…On Wed, 1 Oct 2025 at 09:29, GeorgeSas ***@***.***> wrote:
Well , works fine from the PC on all 3 RS485 ports using BMS monitor but
in bms-to-inverter can't make it work for the love of my life ... been
trying now all kind of stuff ... nothing works.
—
Reply to this email directly, view it on GitHub
<#161 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AHVWRWC3X3BYAI7OF5JIXU33VOGGRAVCNFSM6AAAAACH6IN2H6VHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTINJWGA3DINY>
.
You are receiving this because you commented.Message ID:
***@***.***
.com>
|
|
I will try to change the RS485 protocol in the BMS to one of the others like they show in video .. LCD or something else. |
|
Ok , this software seems to be pretty buggy .... |
|
@GeorgeSasDK can you please configure the log level to debug. I can't see from the above log why its failing to send the RS485 frame. The send-frame looks good, but possibly your wiring to your RS485 hat is wrong. |
|
Ok, so my config changed a bit as I need to use RS485 , more information present in RS485 protocol than CAN....but still NO RS485 communication with batteries. Attached LOG with debug level. Attached also Python script for /dev/ttySC0 |
|
I've been monitoring on one console the ttySC0 ... and your script does not seem to send ANYTHING on this port ... just listens ? Pylontech RS485 Battery Monitor
|
|
I think there's something wrong with your configuration of the BMSes and their IDs. The application requests the data actively from the BMS. |
|
Not sure what and how you actively request data on RS485 from Pylontech because I can't see anything on RS485. |
|
I saw that you set the BMS ID to 2. I checked the spec again and saw that the group id was lacking in my code. |
|
Tested again with Both Pylontech and JK Inverter BMS (v19), the RS485 protocol does not work. |
|
Attached an RS485 sniffed log when Solar Assistant is connecting RS485 |
|
And a script that will read all batteries via RS485. |

Uh oh!
There was an error while loading. Please reload this page.
No matter what I tried I can not make it work with JK Bms RS485.

All I get is error sending data.
2025-10-01 00:31:53.310 | INFO | Thread-14 | verter.BmsToInverter:335 | Sending to inverter NONE on /dev/ttyUSB0...
2025-10-01 00:31:53.343 | INFO | Thread-12 | verter.BmsToInverter:309 | Reading BMS #1 JK_RS485 on /dev/ttyACM0...
2025-10-01 00:31:53.343 | INFO | Thread-12 | toinverter.core.Port:111 | Opening /dev/ttyACM0 ...
2025-10-01 00:31:53.344 | INFO | Thread-12 | toinverter.core.Port:113 | Opening port /dev/ttyACM0 SUCCESSFUL
2025-10-01 00:31:53.345 | INFO | Thread-12 | toinverter.core.Port:111 | Opening /dev/ttyACM0 ...
2025-10-01 00:31:53.346 | INFO | Thread-12 | toinverter.core.Port:113 | Opening port /dev/ttyACM0 SUCCESSFUL
2025-10-01 00:31:53.348 | ERROR | Thread-12 | .JKBmsRS485Processor:199 | Error sending frame: Buffer (HEX): [0x4E, 0x57, 0x00, 0x13, 0x00, 0x00, 0x00, 0x00, 0x06, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x00, 0x00, 0x01, 0x29]
2025-10-01 00:31:53.348 | INFO | Thread-12 | verter.BmsToInverter:361 |
BMS SOC V A CellMinV CellMaxV CellDiff
2025-10-01 00:31:53.350 | INFO | Thread-12 | verter.BmsToInverter:431 | BMS alarms:
NONE
2025-10-01 00:31:53.351 | INFO | Thread-12 | verter.BmsToInverter:309 | Reading BMS #2 JK_RS485 on /dev/ttyACM1...
2025-10-01 00:31:53.351 | INFO | Thread-12 | toinverter.core.Port:111 | Opening /dev/ttyACM1 ...
2025-10-01 00:31:53.352 | INFO | Thread-12 | toinverter.core.Port:113 | Opening port /dev/ttyACM1 SUCCESSFUL
2025-10-01 00:31:53.353 | INFO | Thread-12 | toinverter.core.Port:111 | Opening /dev/ttyACM1 ...
2025-10-01 00:31:53.353 | INFO | Thread-12 | toinverter.core.Port:113 | Opening port /dev/ttyACM1 SUCCESSFUL
2025-10-01 00:31:53.356 | ERROR | Thread-12 | .JKBmsRS485Processor:199 | Error sending frame: Buffer (HEX): [0x4E, 0x57, 0x00, 0x13, 0x00, 0x00, 0x00, 0x00, 0x06, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x00, 0x00, 0x01, 0x29]
2025-10-01 00:31:53.356 | INFO | Thread-12 | verter.BmsToInverter:361 |
BMS SOC V A CellMinV CellMaxV CellDiff
2025-10-01 00:31:53.358 | INFO | Thread-12 | verter.BmsToInverter:431 | BMS alarms:
NONE
2025-10-01 00:31:53.359 | INFO | Thread-12 | verter.BmsToInverter:309 | Reading BMS #3 JK_RS485 on /dev/ttyACM2...
2025-10-01 00:31:53.359 | INFO | Thread-12 | toinverter.core.Port:111 | Opening /dev/ttyACM2 ...
2025-10-01 00:31:53.360 | INFO | Thread-12 | toinverter.core.Port:113 | Opening port /dev/ttyACM2 SUCCESSFUL
2025-10-01 00:31:53.360 | INFO | Thread-12 | toinverter.core.Port:111 | Opening /dev/ttyACM2 ...
2025-10-01 00:31:53.361 | INFO | Thread-12 | toinverter.core.Port:113 | Opening port /dev/ttyACM2 SUCCESSFUL
2025-10-01 00:31:53.363 | ERROR | Thread-12 | .JKBmsRS485Processor:199 | Error sending frame: Buffer (HEX): [0x4E, 0x57, 0x00, 0x13, 0x00, 0x00, 0x00, 0x00, 0x06, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x00, 0x00, 0x01, 0x29]
2025-10-01 00:31:53.363 | INFO | Thread-12 | verter.BmsToInverter:361 |
BMS SOC V A CellMinV CellMaxV CellDiff
2025-10-01 00:31:53.365 | INFO | Thread-12 | verter.BmsToInverter:431 | BMS alarms:
NONE
2025-10-01 00:31:53.366 | INFO | Thread-12 | verter.BmsToInverter:309 | Reading BMS #4 JK_RS485 on /dev/ttyACM3...
2025-10-01 00:31:53.366 | INFO | Thread-12 | toinverter.core.Port:111 | Opening /dev/ttyACM3 ...
2025-10-01 00:31:53.367 | INFO | Thread-12 | toinverter.core.Port:113 | Opening port /dev/ttyACM3 SUCCESSFUL
2025-10-01 00:31:53.367 | INFO | Thread-12 | toinverter.core.Port:111 | Opening /dev/ttyACM3 ...
2025-10-01 00:31:53.368 | INFO | Thread-12 | toinverter.core.Port:113 | Opening port /dev/ttyACM3 SUCCESSFUL
2025-10-01 00:31:53.369 | ERROR | Thread-12 | .JKBmsRS485Processor:199 | Error sending frame: Buffer (HEX): [0x4E, 0x57, 0x00, 0x13, 0x00, 0x00, 0x00, 0x00, 0x06, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x00, 0x00, 0x01, 0x29]
2025-10-01 00:31:53.369 | INFO | Thread-12 | verter.BmsToInverter:361 |
BMS SOC V A CellMinV CellMaxV CellDiff
2025-10-01 00:31:53.369 | INFO | Thread-12 | verter.BmsToInverter:431 | BMS alarms:
NONE
^C2025-10-01 00:31:54.259 | WARN | Thread-1 | verter.BmsToInverter:461 | Starting shutdown.
2025-10-01 00:31:54.259 | INFO | Thread-1 | verter.BmsToInverter:466 | Shutting down BMS and inverter threads...OK
Weld SE container 2fbda114-1f08-481b-9e9c-86be17217008 shut down by shutdown hook
2025-10-01 00:31:54.263 | INFO | Thread-1 | verter.BmsToInverter:474 | Shutting down MQTT producer threads...OK
2025-10-01 00:31:54.381 | INFO | Thread-1 | tt.MQTTBrokerService:110 | Shutting down MQTT broker on 'tcp://127.0.0.1:61616'...OK
2025-10-01 00:31:54.381 | INFO | Thread-1 | verter.BmsToInverter:483 | Shutting down MQTT broker threads...OK
2025-10-01 00:31:54.384 | INFO | Thread-1 | er.AbstractConnector:383 | Stopped ServerConnector@5e0ec41f{HTTP/1.1, (http/1.1)}{0.0.0.0:8080}
2025-10-01 00:31:54.386 | INFO | Thread-1 | er.AbstractConnector:383 | Stopped ServerConnector@76332405{SSL, (ssl, http/1.1)}{0.0.0.0:8443}
2025-10-01 00:31:54.386 | INFO | Thread-1 | .session.HouseKeeper:149 | node0 Stopped scavenging
2025-10-01 00:31:54.389 | INFO | Thread-1 | verter.BmsToInverter:492 | Shutting down webserver threads...OK
2025-10-01 00:31:54.390 | INFO | Thread-1 | verter.BmsToInverter:500 | Shutting down ports...OK
Runing on UBUNTU and Waveshare USB to RS485 with 4 ports.
/dev/ttyACM0
/dev/ttyACM1
/dev/ttyACM2
/dev/ttyACM3
Tested on a Windows machine with BMS Monitor and I can connect with no problem.

All reactions