-
Notifications
You must be signed in to change notification settings - Fork 152
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
jkbms connect via rs485 #342
Comments
Info via bluetooth about the bms:
|
ive not had an opportunity to debug this so far (not had someone with the rs485 connection have the time to see what is going on) note: others have used their own code and suggested that not everything works via rs485 |
|
Hello, can i join the party? I'm fiddling with my JK for a few days and i came to the conclusion that the implementation is broken as jblance said. However BLE seems to works "almost" fine but is not so reliable. I need to be constant to send data to a database I don't have so much time and knowledge but i bring 11,XW hardware! I can try your instructions to make it work for all I have the exact same setup as the pic from SA, i already tried the usual noob tricks like switching wires, switching USBs and such
|
How can we help? |
That's a bummer. I managed to take data from bluetooth and send It to mysql but since i'm waiting to install a second JK i can't use bluetooth for both in continuous polling. Hope we can arrange something |
I have the same setup. First I installed Solar Assistant and confirmed it could communicate with my JK BMS over RS485, so I know my connection is good. You can see form the debug I do get some data back $ jkbms -p /dev/ttyUSB1 -P JK485 -c Command: command help - List available commands for protocol JK485Parameter Value Unit $ jkbms -p /dev/ttyUSB1 -P JK485 -c getBalancerData $ jkbms -p /dev/ttyUSB1 -P JK485 -c getBalancerData -D |
Also printbms.py from https://github.com/fah/jk-bms works so this is possible $ python3 printbms.py |
How Is connected to the bms? |
Just like the picture at the top of this thread which comes from here https://solar-assistant.io/help/battery/jk-bms A USB RS485 adapter using the FTDI chip bought from Amazon, plugged into the JK BMS RS485 module. The JK BMS RS485 module connected to the BMS using the GPS port. I use a Pi Zero W (the first one) which does not have much power for the USB ports so I use a small powered USB hub. |
i have the exact same setup as the photo in #1 but it doesen't work for me. I already tried that |
Hello there. @jblance do you have any news for the 485 support? I'm stuck with bluetooth and is very bad |
Hello all! I've been very interested in this option via RS485 due to Bluetooth instabilities people are talking about. I was able to confirm that I can get data using the JKBMS RS485 adapter connected to a USB adapter. Once connected to a raspberry pi zero w via USB, I was able to get data from USB using https://github.com/fah/jk-bms as well. # Git diff (changing to USB2)
$ git diff
diff --git a/printbms.py b/printbms.py
index 01dd162..9f68c62 100644
--- a/printbms.py
+++ b/printbms.py
@@ -14,7 +14,7 @@ import serial
sleepTime = 10
try:
- bms = serial.Serial('/dev/ttyUSB0')
+ bms = serial.Serial('/dev/ttyUSB2')
bms.baudrate = 115200
bms.timeout = 0.2
except:
# Output
~/jk-bms $ python3 printbms.py
Cell 1 : 3.305 V
Cell 2 : 3.299 V
Cell 3 : 3.3 V
Cell 4 : 3.3 V
Cell 5 : 3.301 V
Cell 6 : 3.32 V
Cell 7 : 3.311 V
Cell 8 : 3.305 V
Cell 9 : 3.3 V
Cell 10 : 3.3 V
Cell 11 : 3.297 V
Cell 12 : 3.3 V
Cell 13 : 3.299 V
Cell 14 : 3.3 V
Cell 15 : 3.3 V
Cell 16 : 3.293 V
Temp1: 21 ?C
Temp2: 21 ?C
Battery voltage: 52.78 V
Current: 0.72 A
Remaining capacity: 14 % As many others have mentioned, I get :
As you can see, same exact setup and USB, but the jkbms command via mpp-solar does not work. Any ideas? As a somewhat related note, the TTL connection (RS485 connection via GPS) does NOT work. I only have success with the JK BMS dongle. I have two JK BMS connected to two separate 16s LifePo4 batteries, one using dongle (ttyUSB2), the other using TTL cable (ttyUSB1) and USB1 does not work. I was successful in getting data via ESP32 bluetooth esphome-jk-bms but it's pretty unreliable. Also I was hoping to emulate Pylontec protocol for my MPP inverter. I get data from both JK BMS. I'd much prefer to use USB. |
As others have said I can get data via printbms.py from https://github.com/fah/jk-bms . Using the Waveshare USB to RS458 and the command The first run I got this output
Every run after that I get
Powering the BMS off with the button and turning it back on I get the initial response and then everything after that is the second example response. The Victron BMS driver from Louisvdw/dbus-serialbattery#29 seems to be working but the BMS is blocking charge and discharge. Not by disabling a Victron charger but in the BMS itself as it won't take anything from a bench power supply even when not connected to the RPI. Everything looks fine in the app so I figured we'd try a different piece of software to troubleshoot. |
you are getting incomplete results from the BMS - likely due to the serial input/output logic |
Use `--porttype serial`
…On Sun, 3 Mar 2024, 6:59 pm geobitus, ***@***.***> wrote:
Hardware: R_pi4 with CAN/RS485 hut connected trough 485 bus to a
JK_B2A8S20P hw V11.XW sw V11.261H using CAN/RS485 port configured for CAN
protocol (the RS485 protocol doesn't return anything, maybe the JK messed
up the CAN/RS485 ticks).
On my system the hut native port is: /dev/ttyS0 wich is not recognized by
the script so for be abble to access it I do a dirty but fast " mv
/dev/ttyS0 /dev/ttyUSB0 "
#mppsolar -p /dev/ttyUSB0 -P jkserial -D
2024-03-03 ***@***.***: Solar Device Command
Utility, version: 0.16.27-dev, python version: 3.11.2
2024-03-03 ***@***.***
<https://github.com/29>: mqttbroker config: {'name': 'localhost', 'port':
1883, 'user': None, 'pass': None}
2024-03-03 ***@***.***: MqttBroker name:
localhost, port: 1883, user: None
2024-03-03 ***@***.***: udp port 5555
2024-03-03 ***@***.***: Using Postgres None
2024-03-03 ***@***.***: Using Mongo None with
mppsolar
2024-03-03 ***@***.***: Creating device "unnamed"
(type: "mppsolar") on port "/dev/ttyUSB0 (porttype=None)" using protocol
"jkserial"
2024-03-03 ***@***.***: device_class <class
'mppsolar.devices.mppsolar.mppsolar'>
2024-03-03 ***@***.*** <https://github.com/34>:
*init* args ()
2024-03-03 ***@***.*** <https://github.com/35>:
*init* kwargs {'name': 'unnamed', 'port': '/dev/ttyUSB0', 'protocol':
'jkserial', 'baud': 2400, 'porttype': None, 'mqtt_broker':
<mppsolar.libs.mqttbrokerc.MqttBroker object at 0x7f933c1dd0>, 'udp_port':
5555, 'mongo_url': None, 'mongo_db': 'mppsolar', 'push_url': '
http://localhost:9091/metrics/job/pushgateway'}
2024-03-03 ***@***.***: port matches ttyusb
2024-03-03 ***@***.***: Using serialio for
communications
2024-03-03 ***@***.***: Protocol jkserial
2024-03-03 ***@***.*** <https://github.com/39>:
*init* name unnamed, port <mppsolar.inout.serialio.SerialIO object at
0x7f9382a6d0>, protocol JKBMS TTL serial communication protocol handler
2024-03-03 ***@***.***: Commands
[(<mppsolar.devices.mppsolar.mppsolar object at 0x7f92c57490>, '', '',
'screen', None, None)]
2024-03-03 ***@***.***: Looping 1 commands
2024-03-03 ***@***.***: Getting results from
device: mppsolar device - name: unnamed, port:
<mppsolar.inout.serialio.SerialIO object at 0x7f9382a6d0>, protocol: JKBMS
TTL serial communication protocol handler for command: , tag: , outputs:
screen
2024-03-03 ***@***.***: Running command
2024-03-03 ***@***.***: Using
protocol b'JKSERIAL' with 1 commands
2024-03-03 ***@***.***:
Processing command 'getBalancerData'
2024-03-03 ***@***.***: Found
command getBalancerData in protocol b'JKSERIAL'
2024-03-03 ***@***.***: cmd with
crc:
bytearray(b'NW\x00\x13\x00\x00\x00\x00\x03\x03\x00\x00\x00\x00\x00\x00h\x00\x00\x01&')
2024-03-03 ***@***.***: full command
bytearray(b'NW\x00\x13\x00\x00\x00\x00\x03\x03\x00\x00\x00\x00\x00\x00h\x00\x00\x01&')
for command getBalancerData
2024-03-03 ***@***.***:
Processing command 'getBalancerData'
2024-03-03 ***@***.***: Found
command getBalancerData in protocol b'JKSERIAL'
2024-03-03 ***@***.***: port
/dev/ttyUSB0, baudrate 2400
2024-03-03 ***@***.***: Executing
command via serialio...
2024-03-03 ***@***.***: serial
response was:
b'\xfc\xff\x94GBT\\xceD\xc7U\\xcfDG\x0eT\\xceD\xc7U\\xcfDG\x86T^\xceD\xc7U\\xcfD\xc7\x86T^\xceD\xc7U\\xcfD\xc7LD\xcfDFBU\\xcfD\xc7LL\xcfDFBU\\xcfD\xc7LL\xcfDGBT\\xcfD\xc7LL\xcfDGBT\\xceD\xc7LL\xcfDGBT\\xceD\xc7LL\xcfDGBT\\xceD\xc7U\\xcfDG\x86T\\xceD\xc7U\\xcfDG\x86T^\xceD\xc7U\\xcfD\xc7\x86T^\xceD\xc7U\\xcfD\xc7LD\xcfDFBU\\xcfD\xc7LL\xcfDFBU\\xcfD\xc7LL\xcfDGBT\\xcfD\xc7LL\xcfDGBT\\xceD\xc7LL\xcfDGBT'
2024-03-03 ***@***.***: Send and Receive
Response
b'\xfc\xff\x94GBT\\xceD\xc7U\\xcfDG\x0eT\\xceD\xc7U\\xcfDG\x86T^\xceD\xc7U\\xcfD\xc7\x86T^\xceD\xc7U\\xcfD\xc7LD\xcfDFBU\\xcfD\xc7LL\xcfDFBU\\xcfD\xc7LL\xcfDGBT\\xcfD\xc7LL\xcfDGBT\\xceD\xc7LL\xcfDGBT\\xceD\xc7LL\xcfDGBT\\xceD\xc7U\\xcfDG\x86T\\xceD\xc7U\\xcfDG\x86T^\xceD\xc7U\\xcfD\xc7\x86T^\xceD\xc7U\\xcfD\xc7LD\xcfDFBU\\xcfD\xc7LL\xcfDFBU\\xcfD\xc7LL\xcfDGBT\\xcfD\xc7LL\xcfDGBT\\xceD\xc7LL\xcfDGBT'
2024-03-03 ***@***.***: response passed
to decode:
b'\xfc\xff\x94GBT\\xceD\xc7U\\xcfDG\x0eT\\xceD\xc7U\\xcfDG\x86T^\xceD\xc7U\\xcfD\xc7\x86T^\xceD\xc7U\\xcfD\xc7LD\xcfDFBU\\xcfD\xc7LL\xcfDFBU\\xcfD\xc7LL\xcfDGBT\\xcfD\xc7LL\xcfDGBT\\xceD\xc7LL\xcfDGBT\\xceD\xc7LL\xcfDGBT\\xceD\xc7U\\xcfDG\x86T\\xceD\xc7U\\xcfDG\x86T^\xceD\xc7U\\xcfD\xc7\x86T^\xceD\xc7U\\xcfD\xc7LD\xcfDFBU\\xcfD\xc7LL\xcfDFBU\\xcfD\xc7LL\xcfDGBT\\xcfD\xc7LL\xcfDGBT\\xceD\xc7LL\xcfDGBT'
2024-03-03 ***@***.***:
Processing command 'getBalancerData'
2024-03-03 ***@***.***: Found
command getBalancerData in protocol b'JKSERIAL'
2024-03-03 ***@***.***: Processing
response of type POSITIONAL
2024-03-03 ***@***.***: get_responses:
responses [b'\xfc\xff\x94GBT\\xceD\xc7U', b'\', b'\xcf', b'D', b'G\x0e',
b'T', b'\\xce', b'D', b'\xc7U', b'\', b'\xcfD', b'G', b'\x86T', b'^',
b'\xceD', b'\xc7', b'U\', b'\xcf', b'D\xc7', b'\x86', b'T^', b'\xce',
b'D\xc7', b'U', b'\\xcf', b'D', b'\xc7L', b'D', b'\xcfD', b'F', b'BU',
b'\', b'\xcfD', b'\xc7', b'LL', b'\xcf', b'DF', b'B', b'U\', b'\xcf',
b'D\xc7', b'L', b'L\xcf', b'D', b'GB', b'T', b'\', b'\xcfD', b'\xc7',
b'LL', b'\xcf', b'DGBT', b'\\xceD', b'\xc7', b'LL', b'\xcf', b'DG',
b'BT\\xceD\xc7LL\xcfDGBT\\xceD\xc7U\\xcfDG\x86T\\xceD\xc7U\\xcfDG\x86T^\xceD\xc7U\\xcfD\xc7\x86',
b'T', b'^', b'\xceD\xc7U\\xcfD\xc7LD\xcfDFBU\\xcfD\xc7LL',
b'\xcfDFBU\\xcfD\xc7LL\xcf', b'DG', b'B', b'T\\xcfD', b'\xc7', b'L', b'L',
b'\xcf', b'DGBT\\xceD\xc7LL\xcfDGBT']
2024-03-03 ***@***.***: trimmed and
split responses: [b'\xfc\xff\x94GBT\\xceD\xc7U', b'\', b'\xcf', b'D',
b'G\x0e', b'T', b'\\xce', b'D', b'\xc7U', b'\', b'\xcfD', b'G', b'\x86T',
b'^', b'\xceD', b'\xc7', b'U\', b'\xcf', b'D\xc7', b'\x86', b'T^', b'\xce',
b'D\xc7', b'U', b'\\xcf', b'D', b'\xc7L', b'D', b'\xcfD', b'F', b'BU',
b'\', b'\xcfD', b'\xc7', b'LL', b'\xcf', b'DF', b'B', b'U\', b'\xcf',
b'D\xc7', b'L', b'L\xcf', b'D', b'GB', b'T', b'\', b'\xcfD', b'\xc7',
b'LL', b'\xcf', b'DGBT', b'\\xceD', b'\xc7', b'LL', b'\xcf', b'DG',
b'BT\\xceD\xc7LL\xcfDGBT\\xceD\xc7U\\xcfDG\x86T\\xceD\xc7U\\xcfDG\x86T^\xceD\xc7U\\xcfD\xc7\x86',
b'T', b'^', b'\xceD\xc7U\\xcfD\xc7LD\xcfDFBU\\xcfD\xc7LL',
b'\xcfDFBU\\xcfD\xc7LL\xcf', b'DG', b'B', b'T\\xcfD', b'\xc7', b'L', b'L',
b'\xcf', b'DGBT\\xceD\xc7LL\xcfDGBT']
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 11, 'Packet header', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Packet header, raw_value
b'\xfc\xff\x94GBT\\xceD\xc7U'
2024-03-03 ***@***.***:
Discarding Packet header:b'\xfc\xff\x94GBT\\xceD\xc7U'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Cells connected', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Cells connected, raw_value b'\'
2024-03-03 ***@***.***:
Discarding Cells connected:b'\'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['Hex2Int:r/3', 1, 'Cells_connected', '']
2024-03-03 ***@***.***: Got
template r/3 for Cells_connected b'\xcf'
2024-03-03 ***@***.***:
Processing data_type: Hex2Int for data_name: Cells_connected, raw_value
b'\xcf'
2024-03-03 ***@***.***:
Processing format string Hex2Int(raw_value)
2024-03-03 ***@***.***: Hex b'\xcf'
decoded to 207
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Voltage_Cell01', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Voltage_Cell01, raw_value b'D'
2024-03-03 ***@***.***:
Discarding Voltage_Cell01:b'D'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['BigHex2Short:r/1000', 2, 'Voltage_Cell01', 'V']
2024-03-03 ***@***.***: Got
template r/1000 for Voltage_Cell01 b'G\x0e'
2024-03-03 ***@***.***:
Processing data_type: BigHex2Short for data_name: Voltage_Cell01, raw_value
b'G\x0e'
2024-03-03 ***@***.***:
Processing format string BigHex2Short(raw_value)
2024-03-03 ***@***.***: Hex
b'G\x0e' 2 byte decoded to 18190
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Voltage_Cell02', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Voltage_Cell02, raw_value b'T'
2024-03-03 ***@***.***:
Discarding Voltage_Cell02:b'T'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['BigHex2Short:r/1000', 2, 'Voltage_Cell02', 'V']
2024-03-03 ***@***.***: Got
template r/1000 for Voltage_Cell02 b'\\xce'
2024-03-03 ***@***.***:
Processing data_type: BigHex2Short for data_name: Voltage_Cell02, raw_value
b'\\xce'
2024-03-03 ***@***.***:
Processing format string BigHex2Short(raw_value)
2024-03-03 ***@***.***: Hex
b'\\xce' 2 byte decoded to 23758
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Voltage_Cell03', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Voltage_Cell03, raw_value b'D'
2024-03-03 ***@***.***:
Discarding Voltage_Cell03:b'D'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['BigHex2Short:r/1000', 2, 'Voltage_Cell03', 'V']
2024-03-03 ***@***.***: Got
template r/1000 for Voltage_Cell03 b'\xc7U'
2024-03-03 ***@***.***:
Processing data_type: BigHex2Short for data_name: Voltage_Cell03, raw_value
b'\xc7U'
2024-03-03 ***@***.***:
Processing format string BigHex2Short(raw_value)
2024-03-03 ***@***.***: Hex
b'\xc7U' 2 byte decoded to -14507
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Voltage_Cell04', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Voltage_Cell04, raw_value b'\'
2024-03-03 ***@***.***:
Discarding Voltage_Cell04:b'\'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['BigHex2Short:r/1000', 2, 'Voltage_Cell04', 'V']
2024-03-03 ***@***.***: Got
template r/1000 for Voltage_Cell04 b'\xcfD'
2024-03-03 ***@***.***:
Processing data_type: BigHex2Short for data_name: Voltage_Cell04, raw_value
b'\xcfD'
2024-03-03 ***@***.***:
Processing format string BigHex2Short(raw_value)
2024-03-03 ***@***.***: Hex
b'\xcfD' 2 byte decoded to -12476
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Voltage_Cell05', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Voltage_Cell05, raw_value b'G'
2024-03-03 ***@***.***:
Discarding Voltage_Cell05:b'G'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['BigHex2Short:r/1000', 2, 'Voltage_Cell05', 'V']
2024-03-03 ***@***.***: Got
template r/1000 for Voltage_Cell05 b'\x86T'
2024-03-03 ***@***.***:
Processing data_type: BigHex2Short for data_name: Voltage_Cell05, raw_value
b'\x86T'
2024-03-03 ***@***.***:
Processing format string BigHex2Short(raw_value)
2024-03-03 ***@***.***: Hex
b'\x86T' 2 byte decoded to -31148
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Voltage_Cell06', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Voltage_Cell06, raw_value b'^'
2024-03-03 ***@***.***:
Discarding Voltage_Cell06:b'^'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['BigHex2Short:r/1000', 2, 'Voltage_Cell06', 'V']
2024-03-03 ***@***.***: Got
template r/1000 for Voltage_Cell06 b'\xceD'
2024-03-03 ***@***.***:
Processing data_type: BigHex2Short for data_name: Voltage_Cell06, raw_value
b'\xceD'
2024-03-03 ***@***.***:
Processing format string BigHex2Short(raw_value)
2024-03-03 ***@***.***: Hex
b'\xceD' 2 byte decoded to -12732
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Voltage_Cell07', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Voltage_Cell07, raw_value
b'\xc7'
2024-03-03 ***@***.***:
Discarding Voltage_Cell07:b'\xc7'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['BigHex2Short:r/1000', 2, 'Voltage_Cell07', 'V']
2024-03-03 ***@***.***: Got
template r/1000 for Voltage_Cell07 b'U\'
2024-03-03 ***@***.***:
Processing data_type: BigHex2Short for data_name: Voltage_Cell07, raw_value
b'U\'
2024-03-03 ***@***.***:
Processing format string BigHex2Short(raw_value)
2024-03-03 ***@***.***: Hex
b'U\' 2 byte decoded to 21852
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Voltage_Cell08', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Voltage_Cell08, raw_value
b'\xcf'
2024-03-03 ***@***.***:
Discarding Voltage_Cell08:b'\xcf'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['BigHex2Short:r/1000', 2, 'Voltage_Cell08', 'V']
2024-03-03 ***@***.***: Got
template r/1000 for Voltage_Cell08 b'D\xc7'
2024-03-03 ***@***.***:
Processing data_type: BigHex2Short for data_name: Voltage_Cell08, raw_value
b'D\xc7'
2024-03-03 ***@***.***:
Processing format string BigHex2Short(raw_value)
2024-03-03 ***@***.***: Hex
b'D\xc7' 2 byte decoded to 17607
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Voltage_Cell09', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Voltage_Cell09, raw_value
b'\x86'
2024-03-03 ***@***.***:
Discarding Voltage_Cell09:b'\x86'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['BigHex2Short:r/1000', 2, 'Voltage_Cell09', 'V']
2024-03-03 ***@***.***: Got
template r/1000 for Voltage_Cell09 b'T^'
2024-03-03 ***@***.***:
Processing data_type: BigHex2Short for data_name: Voltage_Cell09, raw_value
b'T^'
2024-03-03 ***@***.***:
Processing format string BigHex2Short(raw_value)
2024-03-03 ***@***.***: Hex
b'T^' 2 byte decoded to 21598
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Voltage_Cell10', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Voltage_Cell10, raw_value
b'\xce'
2024-03-03 ***@***.***:
Discarding Voltage_Cell10:b'\xce'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['BigHex2Short:r/1000', 2, 'Voltage_Cell10', 'V']
2024-03-03 ***@***.***: Got
template r/1000 for Voltage_Cell10 b'D\xc7'
2024-03-03 ***@***.***:
Processing data_type: BigHex2Short for data_name: Voltage_Cell10, raw_value
b'D\xc7'
2024-03-03 ***@***.***:
Processing format string BigHex2Short(raw_value)
2024-03-03 ***@***.***: Hex
b'D\xc7' 2 byte decoded to 17607
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Voltage_Cell11', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Voltage_Cell11, raw_value b'U'
2024-03-03 ***@***.***:
Discarding Voltage_Cell11:b'U'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['BigHex2Short:r/1000', 2, 'Voltage_Cell11', 'V']
2024-03-03 ***@***.***: Got
template r/1000 for Voltage_Cell11 b'\\xcf'
2024-03-03 ***@***.***:
Processing data_type: BigHex2Short for data_name: Voltage_Cell11, raw_value
b'\\xcf'
2024-03-03 ***@***.***:
Processing format string BigHex2Short(raw_value)
2024-03-03 ***@***.***: Hex
b'\\xcf' 2 byte decoded to 23759
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Voltage_Cell12', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Voltage_Cell12, raw_value b'D'
2024-03-03 ***@***.***:
Discarding Voltage_Cell12:b'D'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['BigHex2Short:r/1000', 2, 'Voltage_Cell12', 'V']
2024-03-03 ***@***.***: Got
template r/1000 for Voltage_Cell12 b'\xc7L'
2024-03-03 ***@***.***:
Processing data_type: BigHex2Short for data_name: Voltage_Cell12, raw_value
b'\xc7L'
2024-03-03 ***@***.***:
Processing format string BigHex2Short(raw_value)
2024-03-03 ***@***.***: Hex
b'\xc7L' 2 byte decoded to -14516
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Voltage_Cell13', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Voltage_Cell13, raw_value b'D'
2024-03-03 ***@***.***:
Discarding Voltage_Cell13:b'D'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['BigHex2Short:r/1000', 2, 'Voltage_Cell13', 'V']
2024-03-03 ***@***.***: Got
template r/1000 for Voltage_Cell13 b'\xcfD'
2024-03-03 ***@***.***:
Processing data_type: BigHex2Short for data_name: Voltage_Cell13, raw_value
b'\xcfD'
2024-03-03 ***@***.***:
Processing format string BigHex2Short(raw_value)
2024-03-03 ***@***.***: Hex
b'\xcfD' 2 byte decoded to -12476
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Voltage_Cell14', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Voltage_Cell14, raw_value b'F'
2024-03-03 ***@***.***:
Discarding Voltage_Cell14:b'F'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['BigHex2Short:r/1000', 2, 'Voltage_Cell14', 'V']
2024-03-03 ***@***.***: Got
template r/1000 for Voltage_Cell14 b'BU'
2024-03-03 ***@***.***:
Processing data_type: BigHex2Short for data_name: Voltage_Cell14, raw_value
b'BU'
2024-03-03 ***@***.***:
Processing format string BigHex2Short(raw_value)
2024-03-03 ***@***.***: Hex
b'BU' 2 byte decoded to 16981
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Voltage_Cell15', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Voltage_Cell15, raw_value b'\'
2024-03-03 ***@***.***:
Discarding Voltage_Cell15:b'\'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['BigHex2Short:r/1000', 2, 'Voltage_Cell15', 'V']
2024-03-03 ***@***.***: Got
template r/1000 for Voltage_Cell15 b'\xcfD'
2024-03-03 ***@***.***:
Processing data_type: BigHex2Short for data_name: Voltage_Cell15, raw_value
b'\xcfD'
2024-03-03 ***@***.***:
Processing format string BigHex2Short(raw_value)
2024-03-03 ***@***.***: Hex
b'\xcfD' 2 byte decoded to -12476
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Voltage_Cell16', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Voltage_Cell16, raw_value
b'\xc7'
2024-03-03 ***@***.***:
Discarding Voltage_Cell16:b'\xc7'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['BigHex2Short:r/1000', 2, 'Voltage_Cell16', 'V']
2024-03-03 ***@***.***: Got
template r/1000 for Voltage_Cell16 b'LL'
2024-03-03 ***@***.***:
Processing data_type: BigHex2Short for data_name: Voltage_Cell16, raw_value
b'LL'
2024-03-03 ***@***.***:
Processing format string BigHex2Short(raw_value)
2024-03-03 ***@***.***: Hex
b'LL' 2 byte decoded to 19532
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'MOS_Temp', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: MOS_Temp, raw_value b'\xcf'
2024-03-03 ***@***.***:
Discarding MOS_Temp:b'\xcf'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['BigHex2Short', 2, 'MOS_Temp', '°C']
2024-03-03 ***@***.***:
Processing data_type: BigHex2Short for data_name: MOS_Temp, raw_value b'DF'
2024-03-03 ***@***.***:
Processing format string BigHex2Short(raw_value)
2024-03-03 ***@***.***: Hex
b'DF' 2 byte decoded to 17478
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Battery_T1', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Battery_T1, raw_value b'B'
2024-03-03 ***@***.***:
Discarding Battery_T1:b'B'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['BigHex2Short', 2, 'Battery_T1', '°C']
2024-03-03 ***@***.***:
Processing data_type: BigHex2Short for data_name: Battery_T1, raw_value
b'U\'
2024-03-03 ***@***.***:
Processing format string BigHex2Short(raw_value)
2024-03-03 ***@***.***: Hex
b'U\' 2 byte decoded to 21852
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Battery_T2', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Battery_T2, raw_value b'\xcf'
2024-03-03 ***@***.***:
Discarding Battery_T2:b'\xcf'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['BigHex2Short', 2, 'Battery_T2', '°C']
2024-03-03 ***@***.***:
Processing data_type: BigHex2Short for data_name: Battery_T2, raw_value
b'D\xc7'
2024-03-03 ***@***.***:
Processing format string BigHex2Short(raw_value)
2024-03-03 ***@***.***: Hex
b'D\xc7' 2 byte decoded to 17607
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Battery_Voltage', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Battery_Voltage, raw_value b'L'
2024-03-03 ***@***.***:
Discarding Battery_Voltage:b'L'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['BigHex2Short:r/100', 2, 'Battery_Voltage', 'V']
2024-03-03 ***@***.***: Got
template r/100 for Battery_Voltage b'L\xcf'
2024-03-03 ***@***.***:
Processing data_type: BigHex2Short for data_name: Battery_Voltage,
raw_value b'L\xcf'
2024-03-03 ***@***.***:
Processing format string BigHex2Short(raw_value)
2024-03-03 ***@***.***: Hex
b'L\xcf' 2 byte decoded to 19663
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Battery_Current', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Battery_Current, raw_value b'D'
2024-03-03 ***@***.***:
Discarding Battery_Current:b'D'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['BigHex2Short:(r&0x7FFF)/100*(((r&0x8000)>>15)
*2-1)', 2, 'Battery_Current', 'A'] 2024-03-03
***@***.***: Got template
(r&0x7FFF)/100*(((r&0x8000)>>15)*2-1) for Battery_Current b'GB'
2024-03-03 ***@***.***:
Processing data_type: BigHex2Short for data_name: Battery_Current,
raw_value b'GB'
2024-03-03 ***@***.***:
Processing format string BigHex2Short(raw_value)
2024-03-03 ***@***.***: Hex
b'GB' 2 byte decoded to 18242
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Percent_Remain', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Percent_Remain, raw_value b'T'
2024-03-03 ***@***.***:
Discarding Percent_Remain:b'T'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['Hex2Int', 1, 'Percent_Remain', '%']
2024-03-03 ***@***.***:
Processing data_type: Hex2Int for data_name: Percent_Remain, raw_value b'\'
2024-03-03 ***@***.***:
Processing format string Hex2Int(raw_value)
2024-03-03 ***@***.***: Hex b'\'
decoded to 92
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 2, 'Number of battery sensors', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Number of battery sensors,
raw_value b'\xcfD'
2024-03-03 ***@***.***:
Discarding Number of battery sensors:b'\xcfD'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Cycle_Count', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Cycle_Count, raw_value b'\xc7'
2024-03-03 ***@***.***:
Discarding Cycle_Count:b'\xc7'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['BigHex2Short', 2, 'Cycle_Count', '']
2024-03-03 ***@***.***:
Processing data_type: BigHex2Short for data_name: Cycle_Count, raw_value
b'LL'
2024-03-03 ***@***.***:
Processing format string BigHex2Short(raw_value)
2024-03-03 ***@***.***: Hex
b'LL' 2 byte decoded to 19532
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Total_capacity', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Total_capacity, raw_value
b'\xcf'
2024-03-03 ***@***.***:
Discarding Total_capacity:b'\xcf'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['BigHex2Float', 4, 'Total_capacity', 'Ahr']
2024-03-03 ***@***.***:
Processing data_type: BigHex2Float for data_name: Total_capacity, raw_value
b'DGBT'
2024-03-03 ***@***.***:
Processing format string BigHex2Float(raw_value)
2024-03-03 ***@***.***: Hex
b'DGBT' 4 byte decoded to 1145520724
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 3, 'Total number of battery strings', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Total number of battery
strings, raw_value b'\\xceD'
2024-03-03 ***@***.***:
Discarding Total number of battery strings:b'\\xceD'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Battery Warning Message', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Battery Warning Message,
raw_value b'\xc7'
2024-03-03 ***@***.***:
Discarding Battery Warning Message:b'\xc7'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['Hex2Str', 2, 'Battery Warning Message', '']
2024-03-03 ***@***.***:
Processing data_type: Hex2Str for data_name: Battery Warning Message,
raw_value b'LL'
2024-03-03 ***@***.***:
Processing format string Hex2Str(raw_value)
2024-03-03 ***@***.***: Hex b'LL'
decoded to 4c4c
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Battery status information', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Battery status information,
raw_value b'\xcf'
2024-03-03 ***@***.***:
Discarding Battery status information:b'\xcf'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['Hex2Str', 2, 'Battery status information', '']
2024-03-03 ***@***.***:
Processing data_type: Hex2Str for data_name: Battery status information,
raw_value b'DG'
2024-03-03 ***@***.***:
Processing format string Hex2Str(raw_value)
2024-03-03 ***@***.***: Hex b'DG'
decoded to 4447
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 45, 'settings', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: settings, raw_value
b'BT\\xceD\xc7LL\xcfDGBT\\xceD\xc7U\\xcfDG\x86T\\xceD\xc7U\\xcfDG\x86T^\xceD\xc7U\\xcfD\xc7\x86'
2024-03-03 ***@***.***:
Discarding
settings:b'BT\\xceD\xc7LL\xcfDGBT\\xceD\xc7U\\xcfDG\x86T\\xceD\xc7U\\xcfDG\x86T^\xceD\xc7U\\xcfD\xc7\x86'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Balancer Active', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Balancer Active, raw_value b'T'
2024-03-03 ***@***.***:
Discarding Balancer Active:b'T'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['Hex2Int', 1, 'Balancer Active', '']
2024-03-03 ***@***.***:
Processing data_type: Hex2Int for data_name: Balancer Active, raw_value b'^'
2024-03-03 ***@***.***:
Processing format string Hex2Int(raw_value)
2024-03-03 ***@***.***: Hex b'^'
decoded to 94
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 21, 'more settings', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: more settings, raw_value
b'\xceD\xc7U\\xcfD\xc7LD\xcfDFBU\\xcfD\xc7LL'
2024-03-03 ***@***.***:
Discarding more settings:b'\xceD\xc7U\\xcfD\xc7LD\xcfDFBU\\xcfD\xc7LL'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 12, 'temp settings', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: temp settings, raw_value
b'\xcfDFBU\\xcfD\xc7LL\xcf'
2024-03-03 ***@***.***:
Discarding temp settings:b'\xcfDFBU\\xcfD\xc7LL\xcf'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 2, 'string count', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: string count, raw_value b'DG'
2024-03-03 ***@***.***:
Discarding string count:b'DG'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Capacity Setting', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Capacity Setting, raw_value
b'B'
2024-03-03 ***@***.***:
Discarding Capacity Setting:b'B'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['BigHex2Float', 4, 'Capacity Setting', 'Ahr']
2024-03-03 ***@***.***:
Processing data_type: BigHex2Float for data_name: Capacity Setting,
raw_value b'T\\xcfD'
2024-03-03 ***@***.***:
Processing format string BigHex2Float(raw_value)
2024-03-03 ***@***.***: Hex
b'T\\xcfD' 4 byte decoded to 1415368516
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Charge Enabled', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Charge Enabled, raw_value
b'\xc7'
2024-03-03 ***@***.***:
Discarding Charge Enabled:b'\xc7'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['Hex2Int', 1, 'Charge Enabled', '']
2024-03-03 ***@***.***:
Processing data_type: Hex2Int for data_name: Charge Enabled, raw_value b'L'
2024-03-03 ***@***.***:
Processing format string Hex2Int(raw_value)
2024-03-03 ***@***.***: Hex b'L'
decoded to 76
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 1, 'Discharge Enabled', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: Discharge Enabled, raw_value
b'L'
2024-03-03 ***@***.***:
Discarding Discharge Enabled:b'L'
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['Hex2Int', 1, 'Discharge Enabled', '']
2024-03-03 ***@***.***:
Processing data_type: Hex2Int for data_name: Discharge Enabled, raw_value
b'\xcf'
2024-03-03 ***@***.***:
Processing format string Hex2Int(raw_value)
2024-03-03 ***@***.***: Hex b'\xcf'
decoded to 207
2024-03-03 ***@***.***: Processing
POSITIONAL type responses
2024-03-03 ***@***.***: Got defn
['discard', 116, 'remaining data', '']
2024-03-03 ***@***.***:
Processing data_type: discard for data_name: remaining data, raw_value
b'DGBT\\xceD\xc7LL\xcfDGBT'
2024-03-03 ***@***.***:
Discarding remaining data:b'DGBT\\xceD\xc7LL\xcfDGBT'
2024-03-03 ***@***.***: Decoded response
{'_command': 'getBalancerData', '_command_description': 'Get Balancer
Data', 'raw_response':
['üÿ\x94GBT\ÎDÇU\ÏDG\x0eT\ÎDÇU\ÏDG\x86T^ÎDÇU\ÏDÇ\x86T^ÎDÇU\ÏDÇLDÏDFBU\ÏDÇLLÏDFBU\ÏDÇLLÏDGBT\ÏDÇLLÏDGBT\ÎDÇLLÏDGBT\ÎDÇLLÏDGBT\ÎDÇU\ÏDG\x86T\ÎDÇU\ÏDG\x86T^ÎDÇU\ÏDÇ\x86T^ÎDÇU\ÏDÇLDÏDFBU\ÏDÇLLÏDFBU\ÏDÇLLÏDGBT\ÏDÇLLÏDGBT\ÎDÇLLÏDGBT',
''], 'Cells_connected': [69.0, ''], 'Voltage_Cell01': [18.19, 'V'],
'Voltage_Cell02': [23.758, 'V'], 'Voltage_Cell03': [-14.507, 'V'],
'Voltage_Cell04': [-12.476, 'V'], 'Voltage_Cell05': [-31.148, 'V'],
'Voltage_Cell06': [-12.732, 'V'], 'Voltage_Cell07': [21.852, 'V'],
'Voltage_Cell08': [17.607, 'V'], 'Voltage_Cell09': [21.598, 'V'],
'Voltage_Cell10': [17.607, 'V'], 'Voltage_Cell11': [23.759, 'V'],
'Voltage_Cell12': [-14.516, 'V'], 'Voltage_Cell13': [-12.476, 'V'],
'Voltage_Cell14': [16.981, 'V'], 'Voltage_Cell15': [-12.476, 'V'],
'Voltage_Cell16': [19.532, 'V'], 'MOS_Temp': [17478, '°C'], 'Battery_T1':
[21852, '°C'], 'Battery_T2': [17607, '°C'], 'Battery_Voltage': [196.63,
'V'], 'Battery_Current': [-182.42, 'A'], 'Percent_Remain': [92, '%'],
'Cycle_Count': [19532, ''], 'Total_capacity': [1145520724, 'Ahr'], 'Battery
Warning Message': ['4c4c', ''], 'Battery status information': ['4447', ''],
'Balancer Active': [94, ''], 'Capacity Setting': [1415368516, 'Ahr'],
'Charge Enabled': [76, ''], 'Discharge Enabled': [207, '']}
2024-03-03 ***@***.***: results: {'_command':
'getBalancerData', '_command_description': 'Get Balancer Data',
'raw_response':
['üÿ\x94GBT\ÎDÇU\ÏDG\x0eT\ÎDÇU\ÏDG\x86T^ÎDÇU\ÏDÇ\x86T^ÎDÇU\ÏDÇLDÏDFBU\ÏDÇLLÏDFBU\ÏDÇLLÏDGBT\ÏDÇLLÏDGBT\ÎDÇLLÏDGBT\ÎDÇLLÏDGBT\ÎDÇU\ÏDG\x86T\ÎDÇU\ÏDG\x86T^ÎDÇU\ÏDÇ\x86T^ÎDÇU\ÏDÇLDÏDFBU\ÏDÇLLÏDFBU\ÏDÇLLÏDGBT\ÏDÇLLÏDGBT\ÎDÇLLÏDGBT',
''], 'Cells_connected': [69.0, ''], 'Voltage_Cell01': [18.19, 'V'],
'Voltage_Cell02': [23.758, 'V'], 'Voltage_Cell03': [-14.507, 'V'],
'Voltage_Cell04': [-12.476, 'V'], 'Voltage_Cell05': [-31.148, 'V'],
'Voltage_Cell06': [-12.732, 'V'], 'Voltage_Cell07': [21.852, 'V'],
'Voltage_Cell08': [17.607, 'V'], 'Voltage_Cell09': [21.598, 'V'],
'Voltage_Cell10': [17.607, 'V'], 'Voltage_Cell11': [23.759, 'V'],
'Voltage_Cell12': [-14.516, 'V'], 'Voltage_Cell13': [-12.476, 'V'],
'Voltage_Cell14': [16.981, 'V'], 'Voltage_Cell15': [-12.476, 'V'],
'Voltage_Cell16': [19.532, 'V'], 'MOS_Temp': [17478, '°C'], 'Battery_T1':
[21852, '°C'], 'Battery_T2': [17607, '°C'], 'Battery_Voltage': [196.63,
'V'], 'Battery_Current': [-182.42, 'A'], 'Percent_Remain': [92, '%'],
'Cycle_Count': [19532, ''], 'Total_capacity': [1145520724, 'Ahr'], 'Battery
Warning Message': ['4c4c', ''], 'Battery status information': ['4447', ''],
'Balancer Active': [94, ''], 'Capacity Setting': [1415368516, 'Ahr'],
'Charge Enabled': [76, ''], 'Discharge Enabled': [207, '']}
2024-03-03 ***@***.***: attempting to create
output processor: screen
2024-03-03 ***@***.*** <https://github.com/17>:
processor.screen *init* args: (), kwargs: {}
2024-03-03 ***@***.***: Using output filter: None
2024-03-03 ***@***.***: Using output processor:
screen
2024-03-03 ***@***.***: kwargs {'data':
{'_command': 'getBalancerData', '_command_description': 'Get Balancer
Data', 'raw_response':
['üÿ\x94GBT\ÎDÇU\ÏDG\x0eT\ÎDÇU\ÏDG\x86T^ÎDÇU\ÏDÇ\x86T^ÎDÇU\ÏDÇLDÏDFBU\ÏDÇLLÏDFBU\ÏDÇLLÏDGBT\ÏDÇLLÏDGBT\ÎDÇLLÏDGBT\ÎDÇLLÏDGBT\ÎDÇU\ÏDG\x86T\ÎDÇU\ÏDG\x86T^ÎDÇU\ÏDÇ\x86T^ÎDÇU\ÏDÇLDÏDFBU\ÏDÇLLÏDFBU\ÏDÇLLÏDGBT\ÏDÇLLÏDGBT\ÎDÇLLÏDGBT',
''], 'Cells_connected': [69.0, ''], 'Voltage_Cell01': [18.19, 'V'],
'Voltage_Cell02': [23.758, 'V'], 'Voltage_Cell03': [-14.507, 'V'],
'Voltage_Cell04': [-12.476, 'V'], 'Voltage_Cell05': [-31.148, 'V'],
'Voltage_Cell06': [-12.732, 'V'], 'Voltage_Cell07': [21.852, 'V'],
'Voltage_Cell08': [17.607, 'V'], 'Voltage_Cell09': [21.598, 'V'],
'Voltage_Cell10': [17.607, 'V'], 'Voltage_Cell11': [23.759, 'V'],
'Voltage_Cell12': [-14.516, 'V'], 'Voltage_Cell13': [-12.476, 'V'],
'Voltage_Cell14': [16.981, 'V'], 'Voltage_Cell15': [-12.476, 'V'],
'Voltage_Cell16': [19.532, 'V'], 'MOS_Temp': [17478, '°C'], 'Battery_T1':
[21852, '°C'], 'Battery_T2': [17607, '°C'], 'Battery_Voltage': [196.63,
'V'], 'Battery_Current': [-182.42, 'A'], 'Percent_Remain': [92, '%'],
'Cycle_Count': [19532, ''], 'Total_capacity': [1145520724, 'Ahr'], 'Battery
Warning Message': ['4c4c', ''], 'Battery status information': ['4447', ''],
'Balancer Active': [94, ''], 'Capacity Setting': [1415368516, 'Ahr'],
'Charge Enabled': [76, ''], 'Discharge Enabled': [207, '']}, 'tag': '',
'name': 'unnamed', 'mqtt_broker': <mppsolar.libs.mqttbrokerc.MqttBroker
object at 0x7f933c1dd0>, 'udp_port': 5555, 'postgres_url': None,
'mongo_url': None, 'mongo_db': 'mppsolar', 'push_url': '
http://localhost:9091/metrics/job/pushgateway', 'mqtt_topic': None,
'filter': None, 'excl_filter': None, 'keep_case': False}
2024-03-03 ***@***.***: displayData:
{'cells_connected': [69.0, ''], 'voltage_cell01': [18.19, 'V'],
'voltage_cell02': [23.758, 'V'], 'voltage_cell03': [-14.507, 'V'],
'voltage_cell04': [-12.476, 'V'], 'voltage_cell05': [-31.148, 'V'],
'voltage_cell06': [-12.732, 'V'], 'voltage_cell07': [21.852, 'V'],
'voltage_cell08': [17.607, 'V'], 'voltage_cell09': [21.598, 'V'],
'voltage_cell10': [17.607, 'V'], 'voltage_cell11': [23.759, 'V'],
'voltage_cell12': [-14.516, 'V'], 'voltage_cell13': [-12.476, 'V'],
'voltage_cell14': [16.981, 'V'], 'voltage_cell15': [-12.476, 'V'],
'voltage_cell16': [19.532, 'V'], 'mos_temp': [17478, '°C'], 'battery_t1':
[21852, '°C'], 'battery_t2': [17607, '°C'], 'battery_voltage': [196.63,
'V'], 'battery_current': [-182.42, 'A'], 'percent_remain': [92, '%'],
'cycle_count': [19532, ''], 'total_capacity': [1145520724, 'Ahr'],
'battery_warning_message': ['4c4c', ''], 'battery_status_information':
['4447', ''], 'balancer_active': [94, ''], 'capacity_setting': [1415368516,
'Ahr'], 'charge_enabled': [76, ''], 'discharge_enabled': [207, '']}
2024-03-03 ***@***.***: Not daemon, so not looping
Command: getBalancerData - Get Balancer Data Parameter Value Unit
cells_connected 69.0
voltage_cell01 18.19 V
voltage_cell02 23.758 V
voltage_cell03 -14.507 V
voltage_cell04 -12.476 V
voltage_cell05 -31.148 V
voltage_cell06 -12.732 V
voltage_cell07 21.852 V
voltage_cell08 17.607 V
voltage_cell09 21.598 V
voltage_cell10 17.607 V
voltage_cell11 23.759 V
voltage_cell12 -14.516 V
voltage_cell13 -12.476 V
voltage_cell14 16.981 V
voltage_cell15 -12.476 V
voltage_cell16 19.532 V
mos_temp 17478 °C
battery_t1 21852 °C
battery_t2 17607 °C
battery_voltage 196.63 V
battery_current -182.42 A
percent_remain 92 %
cycle_count 19532
total_capacity 1145520724 Ahr
battery_warning_message 4c4c
battery_status_information 4447
balancer_active 94
capacity_setting 1415368516 Ahr
charge_enabled 76
discharge_enabled 207
—
Reply to this email directly, view it on GitHub
<#342 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAJVKNQCZGGIWVV6LHA3RSDYWK327AVCNFSM6AAAAAAXMXQJVGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNZVGA2TGMJVGM>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Hardware: R_pi4 with CAN/RS485 hut connected trough 485 bus to a JK_B2A8S20P hw V11.XW sw V11.261H using CAN/RS485 port configured for CAN protocol (the RS485 protocol doesn't return anything, maybe the JK messed up the CAN/RS485 ticks). On my system the hut native port is: /dev/ttyS0 wich is not recognized by the script so for be abble to access it I do a dirty but fast " mv /dev/ttyS0 /dev/ttyUSB0 " |
looks like that baud rate is wrong, try 9600 or 115200 |
9600 doesn't return any data. |
oh, wait you are using the CAN protocol. I dont have any support for CAN
(yet)
maybe try rs485 again at different baud rates (and dont mv the port, just
use the system location and specify the port type)
also can you add the debug flag to the command `-D` and post the debug up
to where is shows the response (or all of it)
…On Tue, 5 Mar 2024 at 02:40, geobitus ***@***.***> wrote:
9600 doesn't return any data.
jkbms -b 115200 -P jkserial --porttype serial >>115200_no_eol.txt (without
120 ohm terminator)
115200_no_eol.txt
<https://github.com/jblance/mpp-solar/files/14482112/115200_no_eol.txt>
jkbms -b 115200 -P jkserial --porttype serial >>115200_eol.txt (with 120
ohm terminator)
115200_eol.txt
<https://github.com/jblance/mpp-solar/files/14482139/115200_eol.txt>
any further test idea will be much appreciated
—
Reply to this email directly, view it on GitHub
<#342 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAJVKNUARUE3EBVAK7KNMF3YWR2TFAVCNFSM6AAAAAAXMXQJVGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNZWGYYDINRZGE>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
No success in getting any data so far. |
Back on business. Update 2024-03-11 18:55:04,678:INFO:init:main@205: Solar Device Command Utility, version: 0.16.30-dev, python version: 3.11.2 |
try `--porttype dalyserial` instead of serial (as the data is getting
truncated
…On Sat, 9 Mar 2024 at 05:11, geobitus ***@***.***> wrote:
Back on business.
Now just for test the new hardware (jikong RS485 adapter connected to GPS
port) using the printbms.py script I get:
(mppsolar) ***@***.***:~ $ python ./printbms.py
Cell 1 : 3.358 V
Cell 2 : 3.359 V
Cell 3 : 3.359 V
Cell 4 : 3.35 V
Cell 5 : 3.357 V
Cell 6 : 3.358 V
Cell 7 : 3.353 V
Cell 8 : 3.359 V
Temp1: 14 ?C
Temp2: 14 ?C
Battery voltage: 26.85 V
Current: 2.55 A
Remaining capacity: 99 %
mppsolar debug below:
(mppsolar) ***@***.***:~ $ mppsolar -p /dev/ttyS0 -P jkserial -b 115000
--porttype serial -D 2> dbg.txt
dbg.txt <https://github.com/jblance/mpp-solar/files/14540300/dbg.txt>
—
Reply to this email directly, view it on GitHub
<#342 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAJVKNXBEGK4FKWPXQMK5PTYXHPMTAVCNFSM6AAAAAAXMXQJVGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSOBVHE3TEOJSGI>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
I encountered a new issue that I don't succeed to cleanly address. |
I'm querying the jkbms via bluetooth every minute and besides being slow sometimes it gets stuck, so I tried to switch to the solution presented by the solar assistant
lsusb:
dmesg:
jkbms:
tried with -P JK485 and JK232, tried with -b 115200 and 9600, serial response is always b''
not sure what else i can try :(
The text was updated successfully, but these errors were encountered: