JKSERIAL - JK TTL Communications v2.5 - 0x4E57
| NW
¶
Document Details¶
Source: http://www.jk-bms.com/en/Upload/2023-12-05/1702131628.pdf
Implemented in protocol: JKSERIAL
Physical Interface¶
This protocol defines the communication protocol between the monitoring platform and the battery terminal, as well as the message format, transmission mode and communication mode, etc.
Communication using 2G GPRS in TCP transmission, 4G in GAT1, Socket interface mode, RS232TTL serial port, content custom communication format, baud rate 115200.
During the communication process, the device has active reporting frame and passive response frame. Please refer to the communication data format for details. The interval of each packet number is at least 100MS, and the longest reply packet is not more than 5S. Timed broadcast. If dormant, the control terminal will send the activation information, activate the BMS, and then communicate.
Frame Structure¶
Example: 'NW\x00\x13\x00\x00\x00\x00\x06\x03\x00\x00\x00\x00\x00\x00h\x00\x00\x01)'
no |
length |
byte description |
description |
---|---|---|---|
1 |
2 |
start bytes |
|
2 |
2 |
length |
|
3 |
4 |
bms terminal no |
|
4 |
1 |
command word |
|
5 |
1 |
frame source |
|
6 |
1 |
transport type |
|
7 |
n |
data |
|
8 |
4 |
record number |
|
9 |
1 |
end byte |
|
10 |
4 |
checksum |
|
Command Word¶
0x01
- Activate - Activate the BMS (when dormant) before proceeding to any other action0x02
- Write - Write / configure BMS parameter(s)0x03
- Read - Read BMS parameter0x05
- Pair - Pair with the BMS0x06
- Read All Data - Read all BMS data at once
Transport Type¶
0 for request frame, 1 for reply frame. 2 is for active reporting. As long as 5-Bluetooth,2-GPS,3-PC PC and 4-BMS are initiated first, the reply will use 1.
crc calc¶
crc = 0
for b in byte_data:
crc += b
crc_low = crc & 0xFF
crc_high = (crc >> 8) & 0xFF
BMS Data¶
Use |
Code |
Name |
Byte Count |
Description |
---|---|---|---|---|
R |
|
Single Battery Voltage |
3*n |
the first byte is the battery number, the second is data length, then each 3 bytes is battery number, and 2 bytes of voltage in mV |
R |
|
Power tube temperature |
2 |
0 – 140 (-40 to 100 °C) parts over 100 are negative temperatures, such as 10, 1 is negative 1 °C (100 Benchmark) |
R |
|
Battery box temperature |
2 |
0 – 140 (-40 to 100 °C) parts over 100 are negative temperatures, such as 10, 1 is negative 1 °C (100 Benchmark) |
R |
|
Battery temperature |
2 |
0 – 140 (-40 to 100 °C) parts over 100 are negative temperatures, such as 10, 1 is negative 1 °C (100 Benchmark) |
R |
|
Total battery voltage |
2 |
0.01V, eg 3500 * 0.01 = 35.00v The minimum unit is 10 mV |
…#TODO: finish …