syssi / esphome-seplos-bms

ESPHome component to monitor a Seplos Battery Management System (Seplos-BMS) via UART or RS485
Apache License 2.0
63 stars 28 forks source link

Chisage ESS CE48100-R Rack Mounted 5kWh battery (DR-ZHONGZ01-16S50JC09-V1.0.1-T4) supported? #105

Open sarpba opened 1 month ago

sarpba commented 1 month ago

I have 3pc chisage ess ce48100-r rack mounted 5KWh battery. I need to disassembly one or other way? https://chisagess.com/wp-content/uploads/2023/03/UM_Lithium-Battery-CE48100-R_20230216_V1.2.pdf

syssi commented 1 month ago

You could just attach an ESP to the RS485 port and give it a try. Do you know any details about the BMS?

syssi commented 1 month ago

Does the BMS has Bluetooth support? What's the advertised name? Could you ask the seller of your BMS/battery bank about a management software? What's the name of the software and how it looks like?

sarpba commented 1 month ago

Unfortunatly not have bluetoot connection. I connected it with esp32. With esp32-seplos-v3-example-multiple-battery-banks.yaml config file. I saw some kind of communication, but only in bank2 total voltage report 176.64 V (of course this is false information). I'll ask the local reseller for more information tomorrow.

syssi commented 1 month ago

Feel free to provide some logs including RAW traffic.

sarpba commented 1 month ago
After a fresh esp install in log:
INFO ESPHome 2024.6.6
INFO Reading configuration /config/esphome/esphome-web-51a298.yaml...
INFO Generating C++ source...
INFO Compiling app...
Processing esphome-web-51a298 (board: esp32-s3-devkitc-1; framework: espidf; platform: platformio/espressif32@5.4.0)
--------------------------------------------------------------------------------
HARDWARE: ESP32S3 240MHz, 320KB RAM, 8MB Flash
 - framework-espidf @ 3.40407.240606 (4.4.7) 
 - tool-cmake @ 3.16.4 
 - tool-ninja @ 1.7.1 
 - toolchain-esp32ulp @ 2.35.0-20220830 
 - toolchain-riscv32-esp @ 8.4.0+2021r2-patch5 
 - toolchain-xtensa-esp32s3 @ 8.4.0+2021r2-patch5
Reading CMake configuration...
Dependency Graph
|-- noise-c @ 0.1.4
Compiling .pioenvs/esphome-web-51a298/src/main.o
Linking .pioenvs/esphome-web-51a298/firmware.elf
RAM:   [=         ]   9.4% (used 30924 bytes from 327680 bytes)
Flash: [====      ]  40.2% (used 737713 bytes from 1835008 bytes)
Building .pioenvs/esphome-web-51a298/firmware.bin
Creating esp32s3 image...
Successfully created esp32s3 image.
esp32_create_combined_bin([".pioenvs/esphome-web-51a298/firmware.bin"], [".pioenvs/esphome-web-51a298/firmware.elf"])
Wrote 0xc4320 bytes to file /data/build/esphome-web-51a298/.pioenvs/esphome-web-51a298/firmware.factory.bin, ready to flash to offset 0x0
esp32_copy_ota_bin([".pioenvs/esphome-web-51a298/firmware.bin"], [".pioenvs/esphome-web-51a298/firmware.elf"])
========================= [SUCCESS] Took 12.90 seconds =========================
INFO Successfully compiled program.
INFO Connecting to 192.168.7.109
INFO Uploading /data/build/esphome-web-51a298/.pioenvs/esphome-web-51a298/firmware.bin (738080 bytes)
Uploading: [============================================================] 100% Done...

INFO Upload took 3.44 seconds, waiting for result...
INFO OTA successful
INFO Successfully uploaded program.
INFO Starting log output from 192.168.7.109 using esphome API
INFO Successfully connected to esphome-web-51a298 @ 192.168.7.109 in 7.285s
INFO Successful handshake with esphome-web-51a298 @ 192.168.7.109 in 0.065s
[16:13:59][I][app:100]: ESPHome version 2024.6.6 compiled on Jul  7 2024, 16:13:35
[16:13:59][I][app:102]: Project syssi.esphome-seplos-bms version 1.1.0
[16:13:59][C][wifi:599]: WiFi:
[16:13:59][C][wifi:427]:   Local MAC: EC:DA:3B:51:A2:98
[16:13:59][C][wifi:432]:   SSID: [redacted]
[16:13:59][C][wifi:435]:   IP Address: 192.168.7.109
[16:13:59][C][wifi:439]:   BSSID: [redacted]
[16:13:59][C][wifi:440]:   Hostname: 'esphome-web-51a298'
[16:13:59][C][wifi:442]:   Signal strength: -48 dB ▂▄▆█
[16:13:59][C][wifi:446]:   Channel: 5
[16:13:59][C][wifi:447]:   Subnet: 255.255.255.0
[16:13:59][C][wifi:448]:   Gateway: 192.168.7.1
[16:13:59][C][wifi:449]:   DNS1: 192.168.7.1
[16:13:59][C][wifi:450]:   DNS2: 0.0.0.0
[16:13:59][D][modbus:077]: Modbus user-defined function 45 found
[16:13:59][W][modbus:144]: Got Modbus frame from unknown address 0x03! 
[16:13:59][C][logger:185]: Logger:
[16:13:59][C][logger:186]:   Level: DEBUG
[16:13:59][C][logger:188]:   Log Baud Rate: 115200
[16:13:59][C][logger:189]:   Hardware UART: USB_SERIAL_JTAG
[16:13:59][C][uart.idf:139]: UART Bus 1:
[16:13:59][C][uart.idf:140]:   TX Pin: GPIO16
[16:13:59][C][uart.idf:141]:   RX Pin: GPIO17
[16:13:59][C][uart.idf:143]:   RX Buffer Size: 256
[16:13:59][C][uart.idf:145]:   Baud Rate: 9200 baud
[16:13:59][C][uart.idf:146]:   Data Bits: 8
[16:13:59][C][uart.idf:147]:   Parity: NONE
[16:13:59][C][uart.idf:148]:   Stop bits: 1
[16:13:59][C][modbus:152]: Modbus:
[16:13:59][C][modbus:154]:   Send Wait Time: 200 ms
[16:13:59][C][modbus:155]:   CRC Disabled: NO
[16:13:59][C][modbus_controller:341]: ModbusController:
[16:13:59][C][modbus_controller:342]:   Address: 0x00
[16:13:59][C][modbus_controller:341]: ModbusController:
[16:13:59][C][modbus_controller:342]:   Address: 0x01
[16:13:59][C][modbus_controller:341]: ModbusController:
[16:13:59][C][modbus_controller:342]:   Address: 0x02
[16:13:59][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:00:55:0A
[16:13:59][C][modbus_controller.sensor:010]: modbus_controller.sensorModbus Controller Sensor 'esphome-web-51a298 bank 0 total voltage'
[16:13:59][C][modbus_controller.sensor:010]: modbus_controller.sensor  Device Class: 'voltage'
[16:13:59][C][modbus_controller.sensor:010]: modbus_controller.sensor  State Class: 'measurement'
[16:13:59][C][modbus_controller.sensor:010]: modbus_controller.sensor  Unit of Measurement: 'V'
[16:13:59][C][modbus_controller.sensor:010]: modbus_controller.sensor  Accuracy Decimals: 2
[16:13:59][C][modbus_controller.sensor:010]: modbus_controller.sensorModbus Controller Sensor 'esphome-web-51a298 bank 1 total voltage'
[16:13:59][C][modbus_controller.sensor:010]: modbus_controller.sensor  Device Class: 'voltage'
[16:13:59][C][modbus_controller.sensor:010]: modbus_controller.sensor  State Class: 'measurement'
[16:13:59][C][modbus_controller.sensor:010]: modbus_controller.sensor  Unit of Measurement: 'V'
[16:13:59][C][modbus_controller.sensor:010]: modbus_controller.sensor  Accuracy Decimals: 2
[16:13:59][D][modbus:077]: Modbus user-defined function 45 found
[16:13:59][W][modbus:144]: Got Modbus frame from unknown address 0x03! 
[16:13:59][C][modbus_controller.sensor:010]: modbus_controller.sensorModbus Controller Sensor 'esphome-web-51a298 bank 2 total voltage'
[16:13:59][C][modbus_controller.sensor:010]: modbus_controller.sensor  Device Class: 'voltage'
[16:13:59][C][modbus_controller.sensor:010]: modbus_controller.sensor  State Class: 'measurement'
[16:13:59][C][modbus_controller.sensor:010]: modbus_controller.sensor  Unit of Measurement: 'V'
[16:13:59][C][modbus_controller.sensor:010]: modbus_controller.sensor  Accuracy Decimals: 2
[16:13:59][C][mdns:115]: mDNS:
[16:13:59][C][mdns:116]:   Hostname: esphome-web-51a298
[16:13:59][C][esphome.ota:073]: Over-The-Air updates:
[16:13:59][C][esphome.ota:074]:   Address: esphome-web-51a298.local:3232
[16:13:59][C][esphome.ota:075]:   Version: 2
[16:13:59][C][safe_mode:018]: Safe Mode:
[16:13:59][C][safe_mode:020]:   Boot considered successful after 60 seconds
[16:13:59][C][safe_mode:021]:   Invoke after 10 boot attempts
[16:13:59][C][safe_mode:023]:   Remain in safe mode for 300 seconds
[16:13:59][C][api:139]: API Server:
[16:13:59][C][api:140]:   Address: esphome-web-51a298.local:6053
[16:13:59][C][api:142]:   Using noise encryption: YES
[16:13:59][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:55:00:10:0C:EC:0C:E9:0C:E8:0C:E9:0C:EA:0C:E8:0C:E9:0C:E9:0C:E8:0C:E9:0C:E8:0C:EB:0C:E6:0C:EC:0C:E8:0C:EA:0C:EC:0C:E6:14:A8:FF:FF:FA:C8:0B:E1:0B:D7:27:10:19:F3:00:42:00:42:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:2B:F8
[16:14:00][D][modbus:077]: Modbus user-defined function 45 found
[16:14:00][W][modbus:144]: Got Modbus frame from unknown address 0x04! 
[16:14:00][D][uart_debug:114]: <<< 04:45:00:00:00:54:00:00:14:EC
[16:14:00][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:00][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB
[16:14:00][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:00][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB
[16:14:00][D][modbus:077]: Modbus user-defined function 45 found
[16:14:00][W][modbus:144]: Got Modbus frame from unknown address 0x05! 
[16:14:00][D][uart_debug:114]: <<< 05:45:00:00:00:54:00:00:D5:20
[16:14:00][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:00][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB
[16:14:00][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:00][D][modbus:077]: Modbus user-defined function 45 found
[16:14:00][W][modbus:144]: Got Modbus frame from unknown address 0x06! 
[16:14:00][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB:06:45:00:00:00:54:00:00:95:35
[16:14:01][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:01][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB
[16:14:01][D][modbus_controller:040]: Modbus command to device=0 register=0x1000 countdown=0 no response received - removed from send queue
[16:14:01][D][modbus:077]: Modbus user-defined function 45 found
[16:14:01][W][modbus:144]: Got Modbus frame from unknown address 0x07! 
[16:14:01][D][uart_debug:114]: <<< 07:45:00:00:00:54:00:00:54:F9
[16:14:01][D][modbus:077]: Modbus user-defined function 45 found
[16:14:01][W][modbus:144]: Got Modbus frame from unknown address 0x08! 
[16:14:01][D][uart_debug:114]: <<< 08:45:00:00:00:54:00:00:14:B9
[16:14:02][D][modbus:077]: Modbus user-defined function 45 found
[16:14:02][W][modbus:144]: Got Modbus frame from unknown address 0x09! 
[16:14:02][D][uart_debug:114]: <<< 09:45:00:00:00:54:00:00:D5:75
[16:14:02][D][modbus:077]: Modbus user-defined function 45 found
[16:14:02][W][modbus:144]: Got Modbus frame from unknown address 0x0A! 
[16:14:02][D][uart_debug:114]: <<< 0A:45:00:00:00:54:00:00:95:60
[16:14:02][D][modbus:077]: Modbus user-defined function 45 found
[16:14:02][W][modbus:144]: Got Modbus frame from unknown address 0x0B! 
[16:14:03][D][uart_debug:114]: <<< 0B:45:00:00:00:54:00:00:54:AC
[16:14:03][D][modbus:077]: Modbus user-defined function 45 found
[16:14:03][W][modbus:144]: Got Modbus frame from unknown address 0x0C! 
[16:14:03][D][uart_debug:114]: <<< 0C:45:00:00:00:54:00:00:15:4A
[16:14:03][D][modbus:077]: Modbus user-defined function 45 found
[16:14:03][W][modbus:144]: Got Modbus frame from unknown address 0x0D! 
[16:14:03][D][uart_debug:114]: <<< 0D:45:00:00:00:54:00:00:D4:86
[16:14:04][D][modbus:077]: Modbus user-defined function 45 found
[16:14:04][W][modbus:144]: Got Modbus frame from unknown address 0x0E! 
[16:14:04][D][uart_debug:114]: <<< 0E:45:00:00:00:54:00:00:94:93
[16:14:04][D][modbus:077]: Modbus user-defined function 45 found
[16:14:04][W][modbus:144]: Got Modbus frame from unknown address 0x0F! 
[16:14:04][D][uart_debug:114]: <<< 0F:45:00:00:00:54:00:00:55:5F
[16:14:04][D][modbus:077]: Modbus user-defined function 45 found
[16:14:05][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:00:94:C6
[16:14:05][D][modbus:077]: Modbus user-defined function 45 found
[16:14:05][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:55:00:10:0C:EB:0C:E7:0C:E8:0C:EB:0C:E9:0C:EC:0C:E7:0C:EB:0C:E6:0C:EA:0C:E6:0C:E7:0C:E9:0C:E9:0C:E9:0C:E8:0C:EC:0C:E6:14:A7:FF:FF:FB:9C:0B:F5:0B:EB:27:10:19:13:00:44:00:40:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:FB:FB
[16:14:05][D][modbus:077]: Modbus user-defined function 45 found
[16:14:05][W][modbus:144]: Got Modbus frame from unknown address 0x03! 
[16:14:05][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:00:55:0A
[16:14:05][D][modbus:077]: Modbus user-defined function 45 found
[16:14:05][W][modbus:144]: Got Modbus frame from unknown address 0x03! 
[16:14:05][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:55:00:10:0C:E4:0C:EB:0C:E3:0C:EA:0C:E3:0C:EA:0C:E4:0C:EA:0C:E3:0C:E9:0C:E3:0C:EC:0C:E1:0C:ED:0C:E3:0C:EB:0C:ED:0C:E1:14:A4:FF:FF:FA:D4:0B:E1:0B:D7:27:10:19:F1:00:42:00:42:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:70:14
[16:14:05][D][modbus:077]: Modbus user-defined function 45 found
[16:14:05][W][modbus:144]: Got Modbus frame from unknown address 0x04! 
[16:14:05][D][uart_debug:114]: <<< 04:45:00:00:00:54:00:00:14:EC
[16:14:06][D][modbus:077]: Modbus user-defined function 45 found
[16:14:06][W][modbus:144]: Got Modbus frame from unknown address 0x05! 
[16:14:06][D][uart_debug:114]: <<< 05:45:00:00:00:54:00:00:D5:20
[16:14:06][D][modbus:077]: Modbus user-defined function 45 found
[16:14:06][W][modbus:144]: Got Modbus frame from unknown address 0x06! 
[16:14:06][D][uart_debug:114]: <<< 06:45:00:00:00:54:00:00:95:35
[16:14:06][D][modbus:077]: Modbus user-defined function 45 found
[16:14:06][W][modbus:144]: Got Modbus frame from unknown address 0x07! 
[16:14:07][D][uart_debug:114]: <<< 07:45:00:00:00:54:00:00:54:F9
[16:14:07][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:07][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39
[16:14:07][D][modbus:077]: Modbus user-defined function 45 found
[16:14:07][W][modbus:144]: Got Modbus frame from unknown address 0x08! 
[16:14:07][D][uart_debug:114]: <<< 08:45:00:00:00:54:00:00:14:B9
[16:14:07][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:07][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39
[16:14:07][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:07][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39
[16:14:07][D][modbus:077]: Modbus user-defined function 45 found
[16:14:07][W][modbus:144]: Got Modbus frame from unknown address 0x09! 
[16:14:07][D][uart_debug:114]: <<< 09:45:00:00:00:54:00:00:D5:75
[16:14:07][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:07][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39
[16:14:07][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:08][D][modbus:077]: Modbus user-defined function 45 found
[16:14:08][W][modbus:144]: Got Modbus frame from unknown address 0x0A! 
[16:14:08][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A:0A:45:00:00:00:54:00:00:95:60
[16:14:08][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:08][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39
[16:14:08][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:08][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A
[16:14:08][D][modbus:077]: Modbus user-defined function 45 found
[16:14:08][W][modbus:144]: Got Modbus frame from unknown address 0x0B! 
[16:14:08][D][modbus_controller:040]: Modbus command to device=2 register=0x1000 countdown=0 no response received - removed from send queue
[16:14:08][D][uart_debug:114]: <<< 0B:45:00:00:00:54:00:00:54:AC
[16:14:08][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:08][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A
[16:14:08][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:08][D][modbus:077]: Modbus user-defined function 45 found
[16:14:08][W][modbus:144]: Got Modbus frame from unknown address 0x0C! 
[16:14:09][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A:0C:45:00:00:00:54:00:00:15:4A
[16:14:09][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:09][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A
[16:14:09][D][modbus_controller:040]: Modbus command to device=1 register=0x1000 countdown=0 no response received - removed from send queue
[16:14:09][D][modbus:077]: Modbus user-defined function 45 found
[16:14:09][W][modbus:144]: Got Modbus frame from unknown address 0x0D! 
[16:14:09][D][uart_debug:114]: <<< 0D:45:00:00:00:54:00:00:D4:86
[16:14:09][D][modbus:077]: Modbus user-defined function 45 found
[16:14:09][W][modbus:144]: Got Modbus frame from unknown address 0x0E! 
[16:14:09][D][uart_debug:114]: <<< 0E:45:00:00:00:54:00:00:94:93
[16:14:10][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:10][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB:0F:45:00:00:00:54:00:00:55:5F
[16:14:10][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:10][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB
[16:14:10][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:10][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB:02:45:00:00:00:54:00:00:94:C6
[16:14:10][D][modbus:077]: Modbus user-defined function 45 found
[16:14:10][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:55:00:10:0C:EC:0C:E6:0C:E7:0C:EB:0C:E9:0C:EC:0C:E7:0C:EB:0C:E6:0C:E9:0C:E6:0C:E7:0C:EA:0C:E9:0C:EA:0C:E8:0C:EC:0C:E6:14:A7:FF:FF:FB:C0:0B:F5:0B:EB:27:10:19:11:00:44:00:40:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:E8:B9
[16:14:10][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:10][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB
[16:14:10][D][modbus:077]: Modbus user-defined function 45 found
[16:14:10][W][modbus:144]: Got Modbus frame from unknown address 0x03! 
[16:14:10][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:00:55:0A
[16:14:10][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:11][D][modbus:077]: Modbus user-defined function 45 found
[16:14:11][W][modbus:144]: Got Modbus frame from unknown address 0x03! 
[16:14:11][D][modbus_controller:040]: Modbus command to device=0 register=0x1000 countdown=0 no response received - removed from send queue
[16:14:11][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB:03:45:00:00:00:54:00:55:00:10:0C:E5:0C:EB:0C:E7:0C:E9:0C:E8:0C:EA:0C:E8:0C:E9:0C:E6:0C:E9:0C:E6:0C:EB:0C:E4:0C:EC:0C:E6:0C:EA:0C:EC:0C:E4:14:A6:FF:FF:FA:D6:0B:E1:0B:D7:27:10:19:EF:00:42:00:42:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:19:25
[16:14:11][D][modbus:077]: Modbus user-defined function 45 found
[16:14:11][W][modbus:144]: Got Modbus frame from unknown address 0x04! 
[16:14:11][D][uart_debug:114]: <<< 04:45:00:00:00:54:00:00:14:EC
[16:14:11][D][modbus:077]: Modbus user-defined function 45 found
[16:14:11][W][modbus:144]: Got Modbus frame from unknown address 0x05! 
[16:14:11][D][uart_debug:114]: <<< 05:45:00:00:00:54:00:00:D5:20
[16:14:12][D][modbus:077]: Modbus user-defined function 45 found
[16:14:12][W][modbus:144]: Got Modbus frame from unknown address 0x06! 
[16:14:12][D][uart_debug:114]: <<< 06:45:00:00:00:54:00:00:95:35
[16:14:12][D][modbus:077]: Modbus user-defined function 45 found
[16:14:12][W][modbus:144]: Got Modbus frame from unknown address 0x07! 
[16:14:12][D][uart_debug:114]: <<< 07:45:00:00:00:54:00:00:54:F9
[16:14:12][D][modbus:077]: Modbus user-defined function 45 found
[16:14:12][W][modbus:144]: Got Modbus frame from unknown address 0x08! 
[16:14:13][D][uart_debug:114]: <<< 08:45:00:00:00:54:00:00:14:B9
[16:14:13][D][modbus:077]: Modbus user-defined function 45 found
[16:14:13][W][modbus:144]: Got Modbus frame from unknown address 0x09! 
[16:14:13][D][uart_debug:114]: <<< 09:45:00:00:00:54:00:00:D5:75
[16:14:13][D][modbus:077]: Modbus user-defined function 45 found
[16:14:13][W][modbus:144]: Got Modbus frame from unknown address 0x0A! 
[16:14:13][D][uart_debug:114]: <<< 0A:45:00:00:00:54:00:00:95:60
[16:14:14][D][modbus:077]: Modbus user-defined function 45 found
[16:14:14][W][modbus:144]: Got Modbus frame from unknown address 0x0B! 
[16:14:14][D][uart_debug:114]: <<< 0B:45:00:00:00:54:00:00:54:AC
[16:14:14][D][modbus:077]: Modbus user-defined function 45 found
[16:14:14][W][modbus:144]: Got Modbus frame from unknown address 0x0C! 
[16:14:14][D][uart_debug:114]: <<< 0C:45:00:00:00:54:00:00:15:4A
[16:14:14][D][modbus:077]: Modbus user-defined function 45 found
[16:14:14][W][modbus:144]: Got Modbus frame from unknown address 0x0D! 
[16:14:15][D][uart_debug:114]: <<< 0D:45:00:00:00:54:00:00:D4:86
[16:14:15][D][modbus:077]: Modbus user-defined function 45 found
[16:14:15][W][modbus:144]: Got Modbus frame from unknown address 0x0E! 
[16:14:15][D][uart_debug:114]: <<< 0E:45:00:00:00:54:00:00:94:93
[16:14:15][D][modbus:077]: Modbus user-defined function 45 found
[16:14:15][W][modbus:144]: Got Modbus frame from unknown address 0x0F! 
[16:14:15][D][uart_debug:114]: <<< 0F:45:00:00:00:54:00:00:55:5F
[16:14:16][D][modbus:077]: Modbus user-defined function 45 found
[16:14:16][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:00:94:C6
[16:14:16][D][modbus:077]: Modbus user-defined function 45 found
[16:14:16][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:55:00:10:0C:EC:0C:E7:0C:E7:0C:EB:0C:E7:0C:EC:0C:E6:0C:EB:0C:E5:0C:EB:0C:E5:0C:E8:0C:E8:0C:E8:0C:E8:0C:E8:0C:EC:0C:E5:14:A7:FF:FF:FB:E4:0B:F5:0B:EB:27:10:19:10:00:44:00:40:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:9E:12
[16:14:16][D][modbus:077]: Modbus user-defined function 45 found
[16:14:16][W][modbus:144]: Got Modbus frame from unknown address 0x03! 
[16:14:16][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:00:55:0A
[16:14:16][D][modbus:077]: Modbus user-defined function 45 found
[16:14:16][W][modbus:144]: Got Modbus frame from unknown address 0x03! 
[16:14:16][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:55:00:10:0C:EC:0C:E3:0C:EA:0C:E1:0C:EC:0C:E0:0C:EB:0C:E1:0C:EB:0C:E2:0C:EA:0C:E2:0C:E9:0C:E4:0C:EA:0C:E3:0C:EC:0C:E0:14:A3:FF:FF:FA:DB:0B:E1:0B:D7:27:10:19:ED:00:42:00:42:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:19:E0
[16:14:16][D][modbus:077]: Modbus user-defined function 45 found
[16:14:16][W][modbus:144]: Got Modbus frame from unknown address 0x04! 
[16:14:16][D][uart_debug:114]: <<< 04:45:00:00:00:54:00:00:14:EC
[16:14:17][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:17][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39
[16:14:17][D][modbus:077]: Modbus user-defined function 45 found
[16:14:17][W][modbus:144]: Got Modbus frame from unknown address 0x05! 
[16:14:17][D][uart_debug:114]: <<< 05:45:00:00:00:54:00:00:D5:20
[16:14:17][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:17][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39
[16:14:17][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:17][D][modbus:077]: Modbus user-defined function 45 found
[16:14:17][W][modbus:144]: Got Modbus frame from unknown address 0x06! 
[16:14:17][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39:06:45:00:00:00:54:00:00:95:35
[16:14:17][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:17][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39
[16:14:18][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:18][D][modbus:077]: Modbus user-defined function 45 found
[16:14:18][W][modbus:144]: Got Modbus frame from unknown address 0x07! 
[16:14:18][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A:07:45:00:00:00:54:00:00:54:F9
[16:14:18][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:18][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39
[16:14:18][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:18][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A
[16:14:18][D][modbus:077]: Modbus user-defined function 45 found
[16:14:18][W][modbus:144]: Got Modbus frame from unknown address 0x08! 
[16:14:18][D][modbus_controller:040]: Modbus command to device=2 register=0x1000 countdown=0 no response received - removed from send queue
[16:14:18][D][uart_debug:114]: <<< 08:45:00:00:00:54:00:00:14:B9
[16:14:18][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:18][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A
[16:14:18][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:18][D][modbus:077]: Modbus user-defined function 45 found
[16:14:18][W][modbus:144]: Got Modbus frame from unknown address 0x09! 
[16:14:18][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A:09:45:00:00:00:54:00:00:D5:75
[16:14:19][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:19][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A
[16:14:19][D][modbus_controller:040]: Modbus command to device=1 register=0x1000 countdown=0 no response received - removed from send queue
[16:14:19][D][modbus:077]: Modbus user-defined function 45 found
[16:14:19][W][modbus:144]: Got Modbus frame from unknown address 0x0A! 
[16:14:19][D][uart_debug:114]: <<< 0A:45:00:00:00:54:00:00:95:60
[16:14:19][D][modbus:077]: Modbus user-defined function 45 found
[16:14:19][W][modbus:144]: Got Modbus frame from unknown address 0x0B! 
[16:14:19][D][uart_debug:114]: <<< 0B:45:00:00:00:54:00:00:54:AC
[16:14:20][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:20][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB:0C:45:00:00:00:54:00:00:15:4A
[16:14:20][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:20][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB
[16:14:20][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:20][W][modbus:114]: Modbus CRC Check failed! C071!=00
[16:14:20][D][uart_debug:114]: <<< 00:00:00:00:00:00:20:20:9D:F8
[16:14:20][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:20][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB
[16:14:20][D][modbus:077]: Modbus user-defined function 45 found
[16:14:20][W][modbus:144]: Got Modbus frame from unknown address 0x0E! 
[16:14:20][D][uart_debug:114]: <<< 0E:45:00:00:00:54:00:00:94:93
[16:14:20][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:21][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB
[16:14:21][D][modbus_controller:040]: Modbus command to device=0 register=0x1000 countdown=0 no response received - removed from send queue
[16:14:21][D][modbus:077]: Modbus user-defined function 45 found
[16:14:21][W][modbus:144]: Got Modbus frame from unknown address 0x0F! 
[16:14:21][D][uart_debug:114]: <<< 0F:45:00:00:00:54:00:00:55:5F
[16:14:21][D][modbus:077]: Modbus user-defined function 45 found
[16:14:21][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:00:94:C6
[16:14:21][D][modbus:077]: Modbus user-defined function 45 found
[16:14:22][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:55:00:10:0C:E9:0C:E8:0C:E5:0C:EC:0C:E6:0C:EC:0C:E4:0C:EC:0C:E3:0C:EB:0C:E4:0C:E8:0C:E8:0C:EA:0C:E6:0C:E9:0C:EC:0C:E3:14:A6:FF:FF:FB:D5:0B:F5:0B:EB:27:10:19:0E:00:44:00:40:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:9B:BC
[16:14:22][D][modbus:077]: Modbus user-defined function 45 found
[16:14:22][W][modbus:144]: Got Modbus frame from unknown address 0x03! 
[16:14:22][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:00:55:0A
[16:14:22][D][modbus:077]: Modbus user-defined function 45 found
[16:14:22][W][modbus:144]: Got Modbus frame from unknown address 0x03! 
[16:14:22][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:55:00:10:0C:ED:0C:E8:0C:E9:0C:E7:0C:EB:0C:E7:0C:EA:0C:E7:0C:EA:0C:E6:0C:E9:0C:E9:0C:E7:0C:EB:0C:E9:0C:EA:0C:ED:0C:E6:14:A7:FF:FF:FA:E7:0B:E1:0B:D7:27:10:19:EB:00:42:00:42:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:14:BC
[16:14:22][D][modbus:077]: Modbus user-defined function 45 found
[16:14:22][W][modbus:144]: Got Modbus frame from unknown address 0x04! 
[16:14:22][D][uart_debug:114]: <<< 04:45:00:00:00:54:00:00:14:EC
[16:14:22][D][modbus:077]: Modbus user-defined function 45 found
[16:14:22][W][modbus:144]: Got Modbus frame from unknown address 0x05! 
[16:14:23][D][uart_debug:114]: <<< 05:45:00:00:00:54:00:00:D5:20
[16:14:23][D][modbus:077]: Modbus user-defined function 45 found
[16:14:23][W][modbus:144]: Got Modbus frame from unknown address 0x06! 
[16:14:23][D][uart_debug:114]: <<< 06:45:00:00:00:54:00:00:95:35
[16:14:23][D][modbus:077]: Modbus user-defined function 45 found
[16:14:23][W][modbus:144]: Got Modbus frame from unknown address 0x07! 
[16:14:23][D][uart_debug:114]: <<< 07:45:00:00:00:54:00:00:54:F9
[16:14:24][D][modbus:077]: Modbus user-defined function 45 found
[16:14:24][W][modbus:144]: Got Modbus frame from unknown address 0x08! 
[16:14:24][D][uart_debug:114]: <<< 08:45:00:00:00:54:00:00:14:B9
[16:14:24][D][modbus:077]: Modbus user-defined function 45 found
[16:14:24][W][modbus:144]: Got Modbus frame from unknown address 0x09! 
[16:14:24][D][uart_debug:114]: <<< 09:45:00:00:00:54:00:00:D5:75
[16:14:24][D][modbus:077]: Modbus user-defined function 45 found
[16:14:24][W][modbus:144]: Got Modbus frame from unknown address 0x0A! 
[16:14:25][D][uart_debug:114]: <<< 0A:45:00:00:00:54:00:00:95:60
[16:14:25][D][modbus:077]: Modbus user-defined function 45 found
[16:14:25][W][modbus:144]: Got Modbus frame from unknown address 0x0B! 
[16:14:25][D][uart_debug:114]: <<< 0B:45:00:00:00:54:00:00:54:AC
[16:14:25][D][modbus:077]: Modbus user-defined function 45 found
[16:14:25][W][modbus:144]: Got Modbus frame from unknown address 0x0C! 
[16:14:25][D][uart_debug:114]: <<< 0C:45:00:00:00:54:00:00:15:4A
[16:14:26][D][modbus:077]: Modbus user-defined function 45 found
[16:14:26][W][modbus:144]: Got Modbus frame from unknown address 0x0D! 
[16:14:26][D][uart_debug:114]: <<< 0D:45:00:00:00:54:00:00:D4:86
[16:14:26][D][modbus:077]: Modbus user-defined function 45 found
[16:14:26][W][modbus:144]: Got Modbus frame from unknown address 0x0E! 
[16:14:26][D][uart_debug:114]: <<< 0E:45:00:00:00:54:00:00:94:93
[16:14:27][D][modbus:077]: Modbus user-defined function 45 found
[16:14:27][W][modbus:144]: Got Modbus frame from unknown address 0x0F! 
[16:14:27][D][uart_debug:114]: <<< 0F:45:00:00:00:54:00:00:55:5F
[16:14:27][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:27][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39
[16:14:27][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:27][D][modbus:077]: Modbus user-defined function 45 found
[16:14:27][W][modbus_controller:061]: Modbus device=2 back online
[16:14:27][D][modbus_controller.sensor:025]: Sensor new state: 17664.00
[16:14:27][D][sensor:094]: 'esphome-web-51a298 bank 2 total voltage': Sending state 176.64000 V with 2 decimals of accuracy
[16:14:27][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39:02:45:00:00:00:54:00:00:94:C6
[16:14:27][D][modbus:077]: Modbus user-defined function 45 found
[16:14:27][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:55:00:10:0C:E4:0C:E8:0C:E2:0C:EC:0C:E2:0C:ED:0C:E3:0C:EB:0C:E1:0C:EB:0C:E0:0C:E8:0C:E5:0C:E9:0C:E4:0C:E9:0C:ED:0C:E0:14:A3:FF:FF:FB:A1:0B:F5:0B:EB:27:10:19:0C:00:44:00:40:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:10:DC
[16:14:27][D][modbus:077]: Modbus user-defined function 45 found
[16:14:27][W][modbus:144]: Got Modbus frame from unknown address 0x03! 
[16:14:27][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:00:55:0A
[16:14:27][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:28][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:55:00:10:0C:E3:0C:EB:0C:3A:00:00:00:00:00:31:00:0C:EA:0C:E1:0C:E9:0C:E4:0C:EC:0C:E1:0C:ED:0C:E3:0C:EB:0C:ED:0C:E1:14:A4:FF:FF:FA:DB:0B:E1:0B:D7:27:10:19:E9:00:42:00:42:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:36:0B
[16:14:28][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:28][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A:04:45:00:00:00:54:00:00:14:EC
[16:14:28][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:28][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A
[16:14:28][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:28][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A:05:45:00:00:00:54:00:00:D5:20
[16:14:28][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:28][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A
[16:14:28][D][modbus_controller:040]: Modbus command to device=1 register=0x1000 countdown=0 no response received - removed from send queue
[16:14:28][D][modbus:077]: Modbus user-defined function 45 found
[16:14:28][W][modbus:144]: Got Modbus frame from unknown address 0x06! 
[16:14:29][D][uart_debug:114]: <<< 06:45:00:00:00:54:00:00:95:35
[16:14:29][D][modbus:077]: Modbus user-defined function 45 found
[16:14:29][W][modbus:144]: Got Modbus frame from unknown address 0x07! 
[16:14:29][D][uart_debug:114]: <<< 07:45:00:00:00:54:00:00:54:F9
[16:14:29][D][modbus:077]: Modbus user-defined function 45 found
[16:14:29][W][modbus:144]: Got Modbus frame from unknown address 0x08! 
[16:14:29][D][uart_debug:114]: <<< 08:45:00:00:00:54:00:00:14:B9
[16:14:30][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:30][D][modbus:077]: Modbus user-defined function 45 found
[16:14:30][W][modbus:144]: Got Modbus frame from unknown address 0x09! 
[16:14:30][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB:09:45:00:00:00:54:00:00:D5:75
[16:14:30][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:30][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB
[16:14:30][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:30][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB:0A:45:00:00:00:54:00:00:95:60
[16:14:30][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:30][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB
[16:14:30][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:31][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB:0B:45:00:00:00:54:00:00:54:AC
[16:14:31][D][modbus_controller:040]: Modbus command to device=0 register=0x1000 countdown=0 no response received - removed from send queue
[16:14:31][D][modbus:077]: Modbus user-defined function 45 found
[16:14:31][W][modbus:144]: Got Modbus frame from unknown address 0x0C! 
[16:14:31][D][uart_debug:114]: <<< 0C:45:00:00:00:54:00:00:15:4A
[16:14:31][D][modbus:077]: Modbus user-defined function 45 found
[16:14:31][W][modbus:144]: Got Modbus frame from unknown address 0x0D! 
[16:14:31][D][uart_debug:114]: <<< 0D:45:00:00:00:54:00:00:D4:86
[16:14:32][D][modbus:077]: Modbus user-defined function 45 found
[16:14:32][W][modbus:144]: Got Modbus frame from unknown address 0x0E! 
[16:14:32][D][uart_debug:114]: <<< 0E:45:00:00:00:54:00:00:94:93
[16:14:32][D][modbus:077]: Modbus user-defined function 45 found
[16:14:32][W][modbus:144]: Got Modbus frame from unknown address 0x0F! 
[16:14:32][D][uart_debug:114]: <<< 0F:45:00:00:00:54:00:00:55:5F
[16:14:33][D][modbus:077]: Modbus user-defined function 45 found
[16:14:33][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:00:94:C6
[16:14:33][D][modbus:077]: Modbus user-defined function 45 found
[16:14:33][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:55:00:10:0C:E3:0C:E8:0C:E3:0C:EC:0C:E1:0C:EC:0C:E4:0C:EB:0C:DF:0C:EB:0C:E1:0C:E8:0C:E4:0C:EA:0C:E4:0C:E9:0C:EC:0C:DF:14:A3:FF:FF:FB:BD:0B:F5:0B:F5:27:10:19:0A:00:44:00:40:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:B6:4B
[16:14:33][D][modbus:077]: Modbus user-defined function 45 found
[16:14:33][W][modbus:144]: Got Modbus frame from unknown address 0x03! 
[16:14:33][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:00:55:0A
[16:14:33][D][modbus:077]: Modbus user-defined function 45 found
[16:14:33][W][modbus:144]: Got Modbus frame from unknown address 0x03! 
[16:14:33][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:55:00:10:0C:E7:0C:E9:0C:E9:0C:E8:0C:EB:0C:E7:0C:EA:0C:E7:0C:EA:0C:E7:0C:E9:0C:E9:0C:E8:0C:EB:0C:E9:0C:E9:0C:EB:0C:E7:14:A7:FF:FF:FA:D8:0B:E1:0B:D7:27:10:19:E7:00:42:00:42:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:5B:31
[16:14:33][D][modbus:077]: Modbus user-defined function 45 found
[16:14:33][W][modbus:144]: Got Modbus frame from unknown address 0x04! 
[16:14:33][D][uart_debug:114]: <<< 04:45:00:00:00:54:00:00:14:EC
[16:14:34][D][modbus:077]: Modbus user-defined function 45 found
[16:14:34][W][modbus:144]: Got Modbus frame from unknown address 0x05! 
[16:14:34][D][uart_debug:114]: <<< 05:45:00:00:00:54:00:00:D5:20
[16:14:34][D][modbus:077]: Modbus user-defined function 45 found
[16:14:34][W][modbus:144]: Got Modbus frame from unknown address 0x06! 
[16:14:34][D][uart_debug:114]: <<< 06:45:00:00:00:54:00:00:95:35
[16:14:34][D][modbus:077]: Modbus user-defined function 45 found
[16:14:34][W][modbus:144]: Got Modbus frame from unknown address 0x07! 
[16:14:35][D][uart_debug:114]: <<< 07:45:00:00:00:54:00:00:54:F9
[16:14:35][D][modbus:077]: Modbus user-defined function 45 found
[16:14:35][W][modbus:144]: Got Modbus frame from unknown address 0x08! 
[16:14:35][D][uart_debug:114]: <<< 08:45:00:00:00:54:00:00:14:B9
[16:14:35][D][modbus:077]: Modbus user-defined function 45 found
[16:14:35][W][modbus:144]: Got Modbus frame from unknown address 0x09! 
[16:14:35][D][uart_debug:114]: <<< 09:45:00:00:00:54:00:00:D5:75
[16:14:36][D][modbus:077]: Modbus user-defined function 45 found
[16:14:36][W][modbus:144]: Got Modbus frame from unknown address 0x0A! 
[16:14:36][D][uart_debug:114]: <<< 0A:45:00:00:00:54:00:00:95:60
[16:14:36][D][modbus:077]: Modbus user-defined function 45 found
[16:14:36][W][modbus:144]: Got Modbus frame from unknown address 0x0B! 
[16:14:36][D][uart_debug:114]: <<< 0B:45:00:00:00:54:00:00:54:AC
[16:14:37][D][modbus:077]: Modbus user-defined function 45 found
[16:14:37][W][modbus:144]: Got Modbus frame from unknown address 0x0C! 
[16:14:37][D][uart_debug:114]: <<< 0C:45:00:00:00:54:00:00:15:4A
[16:14:37][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:37][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39
[16:14:37][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:37][D][modbus:077]: Modbus user-defined function 45 found
[16:14:37][W][modbus:144]: Got Modbus frame from unknown address 0x0D! 
[16:14:37][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39:0D:45:00:00:00:54:00:00:D4:86
[16:14:37][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:37][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39
[16:14:37][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:37][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39:0E:45:00:00:00:54:00:00:94:93
[16:14:38][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:38][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A
[16:14:38][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:38][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A:0F:45:00:00:00:54:00:00:55:5F
[16:14:38][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:38][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A
[16:14:38][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:38][D][uart_debug:114]: <<< 01:04:10:00:00:01:14:00:00:00:54:00:00:94:C6
[16:14:38][D][modbus:077]: Modbus user-defined function 45 found
[16:14:38][D][modbus_controller.sensor:025]: Sensor new state: 17664.00
[16:14:38][D][sensor:094]: 'esphome-web-51a298 bank 2 total voltage': Sending state 176.64000 V with 2 decimals of accuracy
[16:14:38][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:55:00:10:0C:E0:0C:E7:0C:E2:0C:EB:0C:E3:0C:EC:0C:E2:0C:EB:0C:E1:0C:EA:0C:DE:0C:E8:0C:E4:0C:E9:0C:E2:0C:E9:0C:EC:0C:DE:14:A2:FF:FF:FB:AA:0B:F5:0B:EB:27:10:19:09:00:44:00:40:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:86:67
[16:14:38][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:38][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A
[16:14:39][D][modbus:077]: Modbus user-defined function 45 found
[16:14:39][W][modbus:144]: Got Modbus frame from unknown address 0x03! 
[16:14:39][D][modbus_controller:040]: Modbus command to device=1 register=0x1000 countdown=0 no response received - removed from send queue
[16:14:39][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:00:55:0A
[16:14:39][D][modbus:077]: Modbus user-defined function 45 found
[16:14:39][W][modbus:144]: Got Modbus frame from unknown address 0x03! 
[16:14:39][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:55:00:10:0C:EB:0C:E2:0C:EA:0C:E2:0C:EC:0C:E1:0C:EB:0C:E0:0C:EB:0C:E0:0C:EA:0C:E3:0C:E9:0C:E5:0C:EA:0C:E3:0C:EC:0C:E0:14:A3:FF:FF:FA:C8:0B:E1:0B:D7:27:10:19:E5:00:42:00:42:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:0B:81
[16:14:39][D][modbus:077]: Modbus user-defined function 45 found
[16:14:39][W][modbus:144]: Got Modbus frame from unknown address 0x04! 
[16:14:39][D][uart_debug:114]: <<< 04:45:00:00:00:54:00:00:14:EC
[16:14:39][D][modbus:077]: Modbus user-defined function 45 found
[16:14:39][W][modbus:144]: Got Modbus frame from unknown address 0x05! 
[16:14:39][D][uart_debug:114]: <<< 05:45:00:00:00:54:00:00:D5:20
[16:14:40][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:40][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB:06:45:00:00:00:54:00:00:95:35
[16:14:40][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:40][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB
[16:14:40][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:40][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB:07:45:00:00:00:54:00:00:54:F9
[16:14:40][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:40][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB
[16:14:40][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:41][D][uart_debug:114]: <<< 00:04:10:00:00:00:00:08:54:00:00:14:B9
[16:14:41][D][modbus_controller:040]: Modbus command to device=0 register=0x1000 countdown=0 no response received - removed from send queue
[16:14:41][D][modbus:077]: Modbus user-defined function 45 found
[16:14:41][W][modbus:144]: Got Modbus frame from unknown address 0x09! 
[16:14:41][D][uart_debug:114]: <<< 09:45:00:00:00:54:00:00:D5:75
[16:14:41][D][modbus:077]: Modbus user-defined function 45 found
[16:14:41][W][modbus:144]: Got Modbus frame from unknown address 0x0A! 
[16:14:41][D][uart_debug:114]: <<< 0A:45:00:00:00:54:00:00:95:60
[16:14:42][D][modbus:077]: Modbus user-defined function 45 found
[16:14:42][W][modbus:144]: Got Modbus frame from unknown address 0x0B! 
[16:14:42][D][uart_debug:114]: <<< 0B:45:00:00:00:54:00:00:54:AC
[16:14:42][D][modbus:077]: Modbus user-defined function 45 found
[16:14:42][W][modbus:144]: Got Modbus frame from unknown address 0x0C! 
[16:14:42][D][uart_debug:114]: <<< 0C:45:00:00:00:54:00:00:15:4A
[16:14:43][D][modbus:077]: Modbus user-defined function 45 found
[16:14:43][W][modbus:144]: Got Modbus frame from unknown address 0x0D! 
[16:14:43][D][uart_debug:114]: <<< 0D:45:00:00:00:54:00:00:D4:86
[16:14:43][D][modbus:077]: Modbus user-defined function 45 found
[16:14:43][W][modbus:144]: Got Modbus frame from unknown address 0x0E! 
[16:14:43][D][uart_debug:114]: <<< 0E:45:00:00:00:54:00:00:94:93
[16:14:43][D][modbus:077]: Modbus user-defined function 45 found
[16:14:43][W][modbus:144]: Got Modbus frame from unknown address 0x0F! 
[16:14:43][D][uart_debug:114]: <<< 0F:45:00:00:00:54:00:00:55:5F
[16:14:44][D][modbus:077]: Modbus user-defined function 45 found
[16:14:44][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:00:94:C6
[16:14:44][D][modbus:077]: Modbus user-defined function 45 found
[16:14:44][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:55:00:10:0C:E3:0C:E7:0C:E6:0C:EB:0C:E6:0C:EC:0C:E7:0C:EA:0C:E4:0C:EA:0C:E4:0C:E7:0C:E8:0C:E9:0C:E6:0C:E8:0C:EC:0C:E3:14:A5:FF:FF:FB:AA:0B:F5:0B:EB:27:10:19:07:00:44:00:40:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:C7:F3
[16:14:44][D][modbus:077]: Modbus user-defined function 45 found
[16:14:44][W][modbus:144]: Got Modbus frame from unknown address 0x03! 
[16:14:44][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:00:55:0A
[16:14:44][D][modbus:077]: Modbus user-defined function 45 found
[16:14:44][W][modbus:144]: Got Modbus frame from unknown address 0x03! 
[16:14:44][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:55:00:10:0C:EB:0C:EA:0C:E6:0C:E8:0C:E8:0C:E8:0C:E8:0C:E8:0C:E7:0C:E8:0C:E7:0C:EA:0C:E4:0C:EB:0C:E6:0C:EA:0C:EB:0C:E4:14:A6:FF:FF:FA:AB:0B:E1:0B:D7:27:10:19:E2:00:42:00:42:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:D1:9D
[16:14:44][D][modbus:077]: Modbus user-defined function 45 found
[16:14:44][W][modbus:144]: Got Modbus frame from unknown address 0x04! 
[16:14:45][D][uart_debug:114]: <<< 04:45:00:00:00:54:00:00:14:EC
[16:14:45][D][modbus:077]: Modbus user-defined function 45 found
[16:14:45][W][modbus:144]: Got Modbus frame from unknown address 0x05! 
[16:14:45][D][uart_debug:114]: <<< 05:45:00:00:00:54:00:00:D5:20
[16:14:45][D][modbus:077]: Modbus user-defined function 45 found
[16:14:45][W][modbus:144]: Got Modbus frame from unknown address 0x06! 
[16:14:45][D][uart_debug:114]: <<< 06:45:00:00:00:54:00:00:95:35
[16:14:46][D][modbus:077]: Modbus user-defined function 45 found
[16:14:46][W][modbus:144]: Got Modbus frame from unknown address 0x07! 
[16:14:46][D][uart_debug:114]: <<< 07:45:00:00:00:54:00:00:54:F9
[16:14:46][D][modbus:077]: Modbus user-defined function 45 found
[16:14:46][W][modbus:144]: Got Modbus frame from unknown address 0x08! 
[16:14:46][D][uart_debug:114]: <<< 08:45:00:00:00:54:00:00:14:B9
[16:14:46][D][modbus:077]: Modbus user-defined function 45 found
[16:14:47][W][modbus:144]: Got Modbus frame from unknown address 0x09! 
[16:14:47][D][uart_debug:114]: <<< 09:45:00:00:00:54:00:00:D5:75
[16:14:47][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:47][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39
[16:14:47][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:47][D][modbus:077]: Modbus user-defined function 45 found
[16:14:47][W][modbus:144]: Got Modbus frame from unknown address 0x0A! 
[16:14:47][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39:0A:45:00:00:00:54:00:00:95:60
[16:14:47][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:47][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39
[16:14:47][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:47][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39:0B:45:00:00:00:54:00:00:54:AC
[16:14:48][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:48][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A
[16:14:48][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:48][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A:0C:45:00:00:00:54:00:00:15:4A
[16:14:48][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:48][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A
[16:14:48][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:48][D][uart_debug:114]: <<< 0D:45:00:00:00:54:00:00:D4:06:04:10:00:00:01:35:0A
[16:14:48][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:48][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A
[16:14:49][D][modbus:077]: Modbus user-defined function 45 found
[16:14:49][W][modbus:144]: Got Modbus frame from unknown address 0x0E! 
[16:14:49][D][modbus_controller:040]: Modbus command to device=1 register=0x1000 countdown=0 no response received - removed from send queue
[16:14:49][D][uart_debug:114]: <<< 0E:45:00:00:00:54:00:00:94:93
[16:14:49][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:49][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39
[16:14:49][W][modbus_controller:027]: Modbus device=2 set offline
[16:14:49][D][modbus_controller:040]: Modbus command to device=2 register=0x1000 countdown=0 no response received - removed from send queue
[16:14:49][D][modbus:077]: Modbus user-defined function 45 found
[16:14:49][W][modbus:144]: Got Modbus frame from unknown address 0x0F! 
[16:14:49][D][uart_debug:114]: <<< 0F:45:00:00:00:54:00:00:55:5F
[16:14:49][D][modbus:077]: Modbus user-defined function 45 found
[16:14:49][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:00:94:C6
[16:14:50][D][modbus:077]: Modbus user-defined function 45 found
[16:14:50][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:55:00:10:0C:E8:0C:E6:0C:E8:0C:EA:0C:E9:0C:EA:0C:E8:0C:E9:0C:E6:0C:E8:0C:E7:0C:E6:0C:EA:0C:E7:0C:E9:0C:E6:0C:EA:0C:E6:14:A6:FF:FF:FB:5E:0B:F5:0B:F5:27:10:19:05:00:44:00:40:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:F1:50
[16:14:50][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:50][D][modbus:077]: Modbus user-defined function 45 found
[16:14:50][W][modbus:144]: Got Modbus frame from unknown address 0x03! 
[16:14:50][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB:03:45:00:00:00:54:00:00:55:0A
[16:14:50][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:50][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:55:00:10:0C:E1:0C:EB:0C:E2:0C:E9:0C:E1:0C:04:10:00:00:01:34:81:8F:48:0C:EB:0C:E0:0C:EC:0C:E1:0C:EB:0C:EC:0C:E0:14:A2:FF:FF:FA:74:0B:E1:0B:D7:27:10:19:E0:00:42:00:42:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:BB:3A
[16:14:50][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:50][D][uart_debug:114]: <<< 04:45:00:00:00:14:00:00:00:00:01:34:DB
[16:14:50][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:50][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB
[16:14:50][D][modbus:077]: Modbus user-defined function 45 found
[16:14:50][W][modbus:144]: Got Modbus frame from unknown address 0x05! 
[16:14:50][D][uart_debug:114]: <<< 05:45:00:00:00:54:00:00:D5:20
[16:14:51][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:14:51][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB
[16:14:51][D][modbus_controller:040]: Modbus command to device=0 register=0x1000 countdown=0 no response received - removed from send queue
[16:14:51][D][modbus:077]: Modbus user-defined function 45 found
[16:14:51][W][modbus:144]: Got Modbus frame from unknown address 0x06! 
[16:14:51][D][uart_debug:114]: <<< 06:45:00:00:00:54:00:00:95:35
[16:14:51][I][safe_mode:041]: Boot seems successful; resetting boot loop counter
[16:14:51][D][esp32.preferences:114]: Saving 1 preferences to flash...
[16:14:51][D][esp32.preferences:143]: Saving 1 preferences to flash: 0 cached, 1 written, 0 failed
[16:14:51][D][modbus:077]: Modbus user-defined function 45 found
[16:14:51][W][modbus:144]: Got Modbus frame from unknown address 0x07! 
[16:14:51][D][uart_debug:114]: <<< 07:45:00:00:00:54:00:00:54:F9
[16:14:52][D][modbus:077]: Modbus user-defined function 45 found
[16:14:52][W][modbus:144]: Got Modbus frame from unknown address 0x08! 
[16:14:52][D][uart_debug:114]: <<< 08:45:00:00:00:54:00:00:14:B9
[16:14:52][D][modbus:077]: Modbus user-defined function 45 found
[16:14:52][W][modbus:144]: Got Modbus frame from unknown address 0x09! 
[16:14:52][D][uart_debug:114]: <<< 09:45:00:00:00:54:00:00:D5:75
[16:14:53][D][modbus:077]: Modbus user-defined function 45 found
[16:14:53][W][modbus:144]: Got Modbus frame from unknown address 0x0A! 
[16:14:53][D][uart_debug:114]: <<< 0A:45:00:00:00:54:00:00:95:60
[16:14:53][D][modbus:077]: Modbus user-defined function 45 found
[16:14:53][W][modbus:144]: Got Modbus frame from unknown address 0x0B! 
[16:14:53][D][uart_debug:114]: <<< 0B:45:00:00:00:54:00:00:54:AC
[16:14:53][D][modbus:077]: Modbus user-defined function 45 found
[16:14:53][W][modbus:144]: Got Modbus frame from unknown address 0x0C! 
[16:14:53][D][uart_debug:114]: <<< 0C:45:00:00:00:54:00:00:15:4A
[16:14:54][D][modbus:077]: Modbus user-defined function 45 found
[16:14:54][W][modbus:144]: Got Modbus frame from unknown address 0x0D! 
[16:14:54][D][uart_debug:114]: <<< 0D:45:00:00:00:54:00:00:D4:86
[16:14:54][D][modbus:077]: Modbus user-defined function 45 found
[16:14:54][W][modbus:144]: Got Modbus frame from unknown address 0x0E! 
[16:14:54][D][uart_debug:114]: <<< 0E:45:00:00:00:54:00:00:94:93
[16:14:55][D][modbus:077]: Modbus user-defined function 45 found
[16:14:55][W][modbus:144]: Got Modbus frame from unknown address 0x0F! 
[16:14:55][D][uart_debug:114]: <<< 0F:45:00:00:00:54:00:00:55:5F
[16:14:55][D][modbus:077]: Modbus user-defined function 45 found
[16:14:55][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:00:94:C6
[16:14:55][D][modbus:077]: Modbus user-defined function 45 found
[16:14:55][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:55:00:10:0C:E2:0C:E7:0C:E7:0C:EA:0C:E8:0C:EB:0C:E6:0C:EA:0C:E4:0C:E9:0C:E4:0C:E6:0C:E8:0C:E8:0C:E6:0C:E7:0C:EB:0C:E2:14:A4:FF:FF:FB:2F:0B:F5:0B:F5:27:10:19:03:00:44:00:40:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:78:88
[16:14:55][D][modbus:077]: Modbus user-defined function 45 found
[16:14:55][W][modbus:144]: Got Modbus frame from unknown address 0x03! 
[16:14:55][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:00:55:0A
[16:14:56][D][modbus:077]: Modbus user-defined function 45 found
[16:14:56][W][modbus:144]: Got Modbus frame from unknown address 0x03! 
[16:14:56][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:55:00:10:0C:E9:0C:E8:0C:E8:0C:E5:0C:E9:0C:E5:0C:E9:0C:E6:0C:E9:0C:E5:0C:E9:0C:E6:0C:E7:0C:E9:0C:E8:0C:E6:0C:E9:0C:E5:14:A5:FF:FF:FA:57:0B:E1:0B:D7:27:10:19:DE:00:42:00:42:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:B6:A4
[16:14:56][D][modbus:077]: Modbus user-defined function 45 found
[16:14:56][W][modbus:144]: Got Modbus frame from unknown address 0x04! 
[16:14:56][D][uart_debug:114]: <<< 04:45:00:00:00:54:00:00:14:EC
[16:14:56][D][modbus:077]: Modbus user-defined function 45 found
[16:14:56][W][modbus:144]: Got Modbus frame from unknown address 0x05! 
[16:14:56][D][uart_debug:114]: <<< 05:45:00:00:00:54:00:00:D5:20
[16:14:56][D][modbus:077]: Modbus user-defined function 45 found
[16:14:56][W][modbus:144]: Got Modbus frame from unknown address 0x06! 
[16:14:57][D][uart_debug:114]: <<< 06:45:00:00:00:54:00:00:95:35
[16:14:57][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:57][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39
[16:14:57][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:57][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39:07:45:00:00:00:54:00:00:54:F9
[16:14:57][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:57][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39
[16:14:57][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:57][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39:08:45:00:00:00:54:00:00:14:B9
[16:14:58][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:58][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A
[16:14:58][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:58][D][uart_debug:114]: <<< 09:45:00:00:00:54:00:20:00:00:01:35:0A
[16:14:58][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:58][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A
[16:14:58][D][modbus:077]: Modbus user-defined function 45 found
[16:14:58][W][modbus:144]: Got Modbus frame from unknown address 0x0A! 
[16:14:58][D][uart_debug:114]: <<< 0A:45:00:00:00:54:00:00:95:60
[16:14:58][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:58][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A
[16:14:58][D][uart_debug:114]: >>> 01:04:10:00:00:01:35:0A
[16:14:58][D][uart_debug:114]: <<< 01:04:10:00:00:01:35:0A
[16:14:59][D][modbus:077]: Modbus user-defined function 45 found
[16:14:59][W][modbus:144]: Got Modbus frame from unknown address 0x0B! 
[16:14:59][D][uart_debug:114]: <<< 0B:45:00:00:00:54:00:00:54:AC
[16:14:59][D][uart_debug:114]: >>> 02:04:10:00:00:01:35:39
[16:14:59][D][uart_debug:114]: <<< 02:04:10:00:00:01:35:39
[16:14:59][D][modbus_controller:040]: Modbus command to device=1 register=0x1000 countdown=0 no response received - removed from send queue
[16:14:59][D][modbus_controller:040]: Modbus command to device=2 register=0x1000 countdown=0 no response received - removed from send queue
[16:14:59][D][modbus:077]: Modbus user-defined function 45 found
[16:14:59][W][modbus:144]: Got Modbus frame from unknown address 0x0C! 
[16:14:59][D][uart_debug:114]: <<< 0C:45:00:00:00:54:00:00:15:4A
[16:14:59][D][modbus:077]: Modbus user-defined function 45 found
[16:14:59][W][modbus:144]: Got Modbus frame from unknown address 0x0D! 
[16:14:59][D][uart_debug:114]: <<< 0D:45:00:00:00:54:00:00:D4:86
[16:15:00][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:15:00][D][modbus:077]: Modbus user-defined function 45 found
[16:15:00][W][modbus:144]: Got Modbus frame from unknown address 0x0E! 
[16:15:00][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB:0E:45:00:00:00:54:00:00:94:93
[16:15:00][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:15:00][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB
[16:15:00][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:15:00][D][modbus:077]: Modbus user-defined function 45 found
[16:15:00][W][modbus:144]: Got Modbus frame from unknown address 0x0F! 
[16:15:00][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB:0F:45:00:00:00:54:00:00:55:5F
[16:15:00][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:15:00][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB
[16:15:01][D][uart_debug:114]: >>> 00:04:10:00:00:01:34:DB
[16:15:01][D][modbus:077]: Modbus user-defined function 45 found
[16:15:01][D][uart_debug:114]: <<< 00:04:10:00:00:01:34:DB:02:45:00:00:00:54:00:00:94:C6
[16:15:01][D][modbus_controller:040]: Modbus command to device=0 register=0x1000 countdown=0 no response received - removed from send queue
sarpba commented 1 month ago

A picture from the batterys 20240707_161947

syssi commented 1 month ago

Please reduce the YAML configuration to:

substitutions:
  name: pace-bms
  device_description: "Monitor and control a PACE BMS via RS485 (Modbus)"
  tx_pin: GPIO16
  rx_pin: GPIO17

esphome:
  name: ${name}
  comment: ${device_description}
  min_version: 2024.6.0
  project:
    name: "syssi.esphome-pace-bms"
    version: 1.0.0

esp32:
  board: wemos_d1_mini32
  framework:
    type: esp-idf

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

ota:
  platform: esphome

logger:
  level: DEBUG

# If you use Home Assistant please remove this `mqtt` section and uncomment the `api` component!
# The native API has many advantages over MQTT: https://esphome.io/components/api.html#advantages-over-mqtt
mqtt:
  broker: !secret mqtt_host
  username: !secret mqtt_username
  password: !secret mqtt_password
  id: mqtt_client

# api:

uart:
  - id: uart_0
    baud_rate: 9600
    tx_pin: ${tx_pin}
    rx_pin: ${rx_pin}
    debug:
      direction: BOTH
      dummy_receiver: true # <-- this change is super important

and provide another log. I will explain what I'm looking for afterwords.

sarpba commented 1 month ago

10 minutes log log.txt

syssi commented 1 month ago

Perfect! One BMS acts as Modbus-Master on the bus and tries to collect the data of 10 other devices on the bus. Two slaves are responding.

syssi commented 1 month ago

Could you plug the cable into the RS485 port next to the CAN bus als next step? Do you see traffic here too or is there silence as long we don't request data actively from the BMS?

sarpba commented 1 month ago

I tried, with this truncated config there is silence on that port. In the original "esp32-example.yaml" config file, both LEDs (rx, tx) blink on the modbus converter module.

syssi commented 1 month ago

I will provide an updated YAML later the day including some requests.

sarpba commented 1 month ago

I got this "battery program" from chisage. I'll try it now only. Chisage - Battery program.zip

you can change language to english on last tab.

There is a screenshot. ps

syssi commented 1 month ago

Could you provide a screenshot of every view? This will help to get an idea whats available.

syssi commented 1 month ago

Could you ask the seller about a list of the Modbus registers / protocol description?

sarpba commented 1 month ago

Need a bit time for protocoll (I hope they are give it to me), but there is some log from the program: RealTimeData_20240708110602.csv 0-1199 lines from battery 1 1200-1241 lines from battery 2 others from battery 3

I can make screensots, if realy need, but the most inportant things in CVS file.

syssi commented 1 month ago

I would be happy about screenshots nevertheless. :-)

sarpba commented 1 month ago

Képernyőfelvétel (6) Képernyőfelvétel (7) Képernyőfelvétel (8) Képernyőfelvétel (9) Képernyőfelvétel (10) Képernyőfelvétel (11) Képernyőfelvétel (12) Képernyőfelvétel (13) Képernyőfelvétel (14) Képernyőfelvétel (15) Képernyőfelvétel (16) Képernyőfelvétel (17)

syssi commented 1 month ago

Some example frames for later analysis:

>>> 02:45:00:00:00:54:00:00:94:C6
<<< 02:45:00:00:00:54:00:55:00:10:0C:D1:0C:D0:0C:D0:0C:D0:0C:D0:0C:D1:0C:D0:0C:D0:0C:CF:0C:D0:0C:D0:0C:D0:0C:D0:0C:CF:0C:D0:0C:CD:0C:D1:0C:CD:14:7F:FF:FF:FE:2B:0B:E1:0B:E1:27:10:0E:8A:00:44:00:25:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:93:B6

>>> 03:45:00:00:00:54:00:00:55:0A
<<< 03:45:00:00:00:54:00:55:00:10:0C:CD:0C:D0:0C:CE:0C:D0:0C:CD:0C:D0:0C:CD:0C:D0:0C:CD:0C:D0:0C:CE:0C:D0:0C:CE:0C:D1:0C:CE:0C:D0:0C:D1:0C:CD:14:7E:FF:FF:FE:2D:0B:CD:0B:CD:27:10:0F:58:00:42:00:27:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:F8:07

>>> 02:45:00:00:00:54:00:00:94:C6
<<< 02:45:00:00:00:54:00:55:00:10:0C:D1:0C:CD:0C:D2:0C:CE:0C:D1:0C:CE:0C:D1:0C:CE:0C:D1:0C:CF:0C:D1:0C:CE:0C:D2:0C:CE:0C:D1:0C:CC:0C:D2:0C:CC:14:7F:FF:FF:FE:29:0B:E1:0B:E1:27:10:0E:89:00:44:00:25:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:24:CB

>>> 03:45:00:00:00:54:00:00:55:0A
<<< 03:45:00:00:00:54:00:55:00:10:0C:CD:0C:D0:0C:CD:0C:D0:0C:CD:0C:D0:0C:CD:0C:D0:0C:CD:0C:D0:0C:CE:0C:D0:0C:CD:0C:D1:0C:CD:0C:CF:0C:D1:0C:CD:14:7D:FF:FF:FE:28:0B:CD:0B:CD:27:10:0F:57:00:42:00:27:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:38:56

>>> 02:45:00:00:00:54:00:00:94:C6
<<< 02:45:00:00:00:54:00:55:00:10:0C:D1:0C:CE:0C:D1:0C:CE:0C:D1:0C:CF:0C:D1:0C:CE:0C:D1:0C:CE:0C:D1:0C:CE:0C:D1:0C:CE:0C:D1:0C:CB:0C:D1:0C:CB:14:7F:FF:FF:FE:2E:0B:E1:0B:E1:27:10:0E:88:00:44:00:25:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:9E:0C

>>> 03:45:00:00:00:54:00:00:55:0A
<<< 03:45:00:00:00:54:00:55:00:10:0C:CD:0C:D0:0C:CE:0C:D0:0C:CD:0C:D0:0C:CE:0C:D0:0C:CD:0C:D0:0C:CE:0C:D1:0C:CD:0C:D1:0C:CD:0C:D0:0C:D1:0C:CD:14:7E:FF:FF:FE:28:0B:CD:0B:CD:27:10:0F:56:00:42:00:27:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:EB:B7
syssi commented 1 month ago
     0  02 device address
     1  45 function code 0x45 = custom function code
     2  00 start address high byte
     3  00 start address low byte
     4  00 number of registers to read high byte
     5  54 number of registers to read low byte
     6  00
     7  00
     8  94 CRC
     9  C6 CRC
syssi commented 1 month ago

The request above retrieve 55 registers / 2*55 bytes from the BMS:

Addr  Payload   Description

      0x02        Device address
      0x45        Custom function code
      0x00 0x00   Start address
      0x00 0x54   End address
      0x00 0x55   Data length (0x55 = 85 bytes)
  0   0x10   16 cells
  1   0x0C 0xD1   3281 = 3.281 V
  3   0x0C 0xD0   3280 = 3.280 V
  5   0x0C 0xD0   3280 = 3.280 V
  7   0x0C 0xD0   3280 = 3.280 V
  9   0x0C 0xD0   3280 = 3.280 V
 11   0x0C 0xD1   3281 = 3.281 V
 13   0x0C 0xD0   3280 = 3.280 V
 15   0x0C 0xD0   3280 = 3.280 V
 17   0x0C 0xCF   3279 = 3.279 V
 19   0x0C 0xD0   3280 = 3.280 V
 21   0x0C 0xD0   3280 = 3.280 V
 23   0x0C 0xD0   3280 = 3.280 V
 25   0x0C 0xD0   3280 = 3.280 V
 27   0x0C 0xCF   3279 = 3.270 V
 29   0x0C 0xD0   3280 = 3.280 V
 31   0x0C 0xCD   3277 = 3.277 V
 33   0x0C 0xD1   3281 = 3.281 V
 35   0x0C 0xCD   3277 = 3.277 V
 37   0x14 0x7F   5247 = 52.47 V total voltage
 39   0xFF 0xFF
 41   0xFE 0x2B   65067
 43   0x0B 0xE1   3041 = 30.41 °C?
 45   0x0B 0xE1   3041 = 30.41 °C?
 47   0x27 0x10   10000
 49   0x0E 0x8A   3722
 51   0x00 0x44   68  SOC?
 53   0x00 0x25   37  SOC?
 55   0x00 0x64   100 SOH?
 57   0x00 0x00
 59   0x00 0x00
 61   0x00 0x07    7
 63   0x00 0x00
 65   0xFF 0xFF
 67   0xFF 0xFF
 69   0xFF 0xFF
 71   0xFF 0xFF
 73   0xFF 0xFF
 75   0xFF 0xFF
 77   0xFF 0xFF
 79   0x00 0x00
 81   0x00 0x00
 83   0x00 
 84   0x93 0xB6
syssi commented 1 month ago

Please try to retrieve some data using this YAML from the RS485 port next to the CAN port:

substitutions:
  name: pace-bms
  device_description: "Monitor and control a PACE BMS via RS485 (Modbus)"
  tx_pin: GPIO16
  rx_pin: GPIO17

esphome:
  name: ${name}
  comment: ${device_description}
  project:
    name: "syssi.esphome-pace-bms"
    version: 1.0.0

esp32:
  board: wemos_d1_mini32
  framework:
    type: esp-idf

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

ota:
  platform: esphome

logger:
  level: DEBUG

# If you use Home Assistant please remove this `mqtt` section and uncomment the `api` component!
# The native API has many advantages over MQTT: https://esphome.io/components/api.html#advantages-over-mqtt
mqtt:
  broker: !secret mqtt_host
  username: !secret mqtt_username
  password: !secret mqtt_password
  id: mqtt_client

# api:

uart:
  - id: uart_0
    baud_rate: 9600
    tx_pin: ${tx_pin}
    rx_pin: ${rx_pin}
    debug:
      direction: BOTH
      dummy_receiver: false

modbus:
  - id: modbus0
    uart_id: uart_0
    send_wait_time: 200ms

modbus_controller:
  - id: bms0
    address: 0x01
    modbus_id: modbus0
    command_throttle: 200ms
    update_interval: 10s
  - id: bms1
    address: 0x02
    modbus_id: modbus0
    command_throttle: 200ms
    update_interval: 10s
  - id: bms2
    address: 0x03
    modbus_id: modbus0
    command_throttle: 200ms
    update_interval: 10s

sensor:
  - platform: modbus_controller
    modbus_controller_id: bms0
    name: "bank1 cell count"
    address: 0
    register_type: holding
    value_type: U_WORD
    accuracy_decimals: 0

  - platform: modbus_controller
    modbus_controller_id: bms0
    name: "bank2 cell count"
    address: 0
    register_type: holding
    value_type: U_WORD
    accuracy_decimals: 0

  - platform: modbus_controller
    modbus_controller_id: bms0
    name: "bank3 cell count"
    address: 0
    register_type: holding
    value_type: U_WORD
    accuracy_decimals: 0
sarpba commented 1 month ago

near can bus:

INFO ESPHome 2024.6.6
INFO Reading configuration /config/esphome/esphome-web-51a298.yaml...
INFO Starting log output from 192.168.7.109 using esphome API
INFO Successfully connected to esphome-web-51a298 @ 192.168.7.109 in 0.039s
INFO Successful handshake with esphome-web-51a298 @ 192.168.7.109 in 0.069s
[15:37:02][I][app:100]: ESPHome version 2024.6.6 compiled on Jul  8 2024, 15:34:36
[15:37:02][I][app:102]: Project syssi.esphome-pace-bms version 1.0.0
[15:37:02][C][wifi:599]: WiFi:
[15:37:02][C][wifi:427]:   Local MAC: EC:DA:3B:51:A2:98
[15:37:02][C][wifi:432]:   SSID: [redacted]
[15:37:02][C][wifi:435]:   IP Address: 192.168.7.109
[15:37:02][C][wifi:439]:   BSSID: [redacted]
[15:37:02][C][wifi:440]:   Hostname: 'esphome-web-51a298'
[15:37:02][C][wifi:442]:   Signal strength: -54 dB ▂▄▆█
[15:37:02][C][wifi:446]:   Channel: 5
[15:37:02][C][wifi:447]:   Subnet: 255.255.255.0
[15:37:02][C][wifi:448]:   Gateway: 192.168.7.1
[15:37:02][C][wifi:449]:   DNS1: 192.168.7.1
[15:37:02][C][wifi:450]:   DNS2: 0.0.0.0
[15:37:02][C][logger:185]: Logger:
[15:37:02][C][logger:186]:   Level: DEBUG
[15:37:02][C][logger:188]:   Log Baud Rate: 115200
[15:37:02][C][logger:189]:   Hardware UART: USB_SERIAL_JTAG
[15:37:02][C][uart.idf:139]: UART Bus 1:
[15:37:02][C][uart.idf:140]:   TX Pin: GPIO16
[15:37:02][C][uart.idf:141]:   RX Pin: GPIO17
[15:37:02][C][uart.idf:143]:   RX Buffer Size: 256
[15:37:02][C][uart.idf:145]:   Baud Rate: 9600 baud
[15:37:02][C][uart.idf:146]:   Data Bits: 8
[15:37:02][C][uart.idf:147]:   Parity: NONE
[15:37:02][C][uart.idf:148]:   Stop bits: 1
[15:37:02][C][modbus:152]: Modbus:
[15:37:02][C][modbus:154]:   Send Wait Time: 200 ms
[15:37:02][C][modbus:155]:   CRC Disabled: NO
[15:37:02][C][modbus_controller:341]: ModbusController:
[15:37:02][C][modbus_controller:342]:   Address: 0x01
[15:37:02][C][modbus_controller:341]: ModbusController:
[15:37:02][C][modbus_controller:342]:   Address: 0x02
[15:37:02][C][modbus_controller:341]: ModbusController:
[15:37:02][C][modbus_controller:342]:   Address: 0x03
[15:37:02][C][modbus_controller.sensor:010]: modbus_controller.sensorModbus Controller Sensor 'bank1 cell count'
[15:37:02][C][modbus_controller.sensor:010]: modbus_controller.sensor  State Class: ''
[15:37:02][C][modbus_controller.sensor:010]: modbus_controller.sensor  Unit of Measurement: ''
[15:37:02][C][modbus_controller.sensor:010]: modbus_controller.sensor  Accuracy Decimals: 0
[15:37:02][C][modbus_controller.sensor:010]: modbus_controller.sensorModbus Controller Sensor 'bank2 cell count'
[15:37:02][C][modbus_controller.sensor:010]: modbus_controller.sensor  State Class: ''
[15:37:02][C][modbus_controller.sensor:010]: modbus_controller.sensor  Unit of Measurement: ''
[15:37:02][C][modbus_controller.sensor:010]: modbus_controller.sensor  Accuracy Decimals: 0
[15:37:02][C][modbus_controller.sensor:010]: modbus_controller.sensorModbus Controller Sensor 'bank3 cell count'
[15:37:02][C][modbus_controller.sensor:010]: modbus_controller.sensor  State Class: ''
[15:37:02][C][modbus_controller.sensor:010]: modbus_controller.sensor  Unit of Measurement: ''
[15:37:02][C][modbus_controller.sensor:010]: modbus_controller.sensor  Accuracy Decimals: 0
[15:37:02][C][mdns:115]: mDNS:
[15:37:02][C][mdns:116]:   Hostname: esphome-web-51a298
[15:37:02][C][esphome.ota:073]: Over-The-Air updates:
[15:37:02][C][esphome.ota:074]:   Address: esphome-web-51a298.local:3232
[15:37:02][C][esphome.ota:075]:   Version: 2
[15:37:02][C][safe_mode:018]: Safe Mode:
[15:37:02][C][safe_mode:020]:   Boot considered successful after 60 seconds
[15:37:02][C][safe_mode:021]:   Invoke after 10 boot attempts
[15:37:02][C][safe_mode:023]:   Remain in safe mode for 300 seconds
[15:37:02][C][api:139]: API Server:
[15:37:02][C][api:140]:   Address: esphome-web-51a298.local:6053
[15:37:02][C][api:142]:   Using noise encryption: YES
[15:37:04][D][uart_debug:114]: >>> 01:03:00:00:00:01:84:0A
[15:37:04][W][modbus:114]: Modbus CRC Check failed! F020!=01
[15:37:05][D][uart_debug:114]: <<< 01:03:00:01:00:00:14:0A
[15:37:05][D][uart_debug:114]: >>> 01:03:00:00:00:01:84:0A
[15:37:05][W][modbus:114]: Modbus CRC Check failed! F020!=01
[15:37:05][D][uart_debug:114]: <<< 01:03:00:01:00:00:14:0A
[15:37:05][D][uart_debug:114]: >>> 01:03:00:00:00:01:84:0A
[15:37:05][W][modbus:114]: Modbus CRC Check failed! F020!=01
[15:37:05][D][uart_debug:114]: <<< 01:03:00:01:00:00:14:0A
[15:37:05][D][uart_debug:114]: >>> 01:03:00:00:00:01:84:0A
[15:37:05][W][modbus:114]: Modbus CRC Check failed! F020!=01
[15:37:05][D][uart_debug:114]: <<< 01:03:00:01:00:00:14:0A
[15:37:05][D][uart_debug:114]: >>> 01:03:00:00:00:01:84:0A
[15:37:05][W][modbus:114]: Modbus CRC Check failed! F020!=01
[15:37:05][D][uart_debug:114]: <<< 01:03:00:01:00:00:14:0A
[15:37:05][D][modbus_controller:040]: Modbus command to device=1 register=0x00 countdown=0 no response received - removed from send queue
[15:37:14][D][uart_debug:114]: >>> 01:03:00:00:00:01:84:0A
[15:37:14][W][modbus:114]: Modbus CRC Check failed! F020!=01
[15:37:15][D][uart_debug:114]: <<< 01:03:00:01:00:00:14:0A
[15:37:15][D][uart_debug:114]: >>> 01:03:00:00:00:01:84:0A
[15:37:15][W][modbus:114]: Modbus CRC Check failed! F020!=01
[15:37:15][D][uart_debug:114]: <<< 01:03:00:01:00:00:14:0A
[15:37:15][D][uart_debug:114]: >>> 01:03:00:00:00:01:84:0A
[15:37:15][W][modbus:114]: Modbus CRC Check failed! F020!=01
[15:37:15][D][uart_debug:114]: <<< 01:03:00:01:00:00:14:0A
[15:37:15][D][uart_debug:114]: >>> 01:03:00:00:00:01:84:0A
[15:37:15][W][modbus:114]: Modbus CRC Check failed! F020!=01
[15:37:15][D][uart_debug:114]: <<< 01:03:00:01:00:00:14:0A
[15:37:15][D][uart_debug:114]: >>> 01:03:00:00:00:01:84:0A
[15:37:15][W][modbus:114]: Modbus CRC Check failed! F020!=01
[15:37:15][D][uart_debug:114]: <<< 01:03:00:01:00:00:14:0A
[15:37:15][D][modbus_controller:040]: Modbus command to device=1 register=0x00 countdown=0 no response received - removed from send queue
syssi commented 1 month ago

It looks like the protocol isn't Modbus compatible. Let's query the data manually:

substitutions:
  name: pace-bms
  device_description: "Monitor and control a PACE BMS via RS485 (Modbus)"
  tx_pin: GPIO16
  rx_pin: GPIO17

esphome:
  name: ${name}
  comment: ${device_description}
  project:
    name: "syssi.esphome-pace-bms"
    version: 1.0.0

esp32:
  board: wemos_d1_mini32
  framework:
    type: esp-idf

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

ota:
  platform: esphome

logger:
  level: DEBUG

# If you use Home Assistant please remove this `mqtt` section and uncomment the `api` component!
# The native API has many advantages over MQTT: https://esphome.io/components/api.html#advantages-over-mqtt
mqtt:
  broker: !secret mqtt_host
  username: !secret mqtt_username
  password: !secret mqtt_password
  id: mqtt_client

# api:

uart:
  - id: uart_0
    baud_rate: 9600
    tx_pin: ${tx_pin}
    rx_pin: ${rx_pin}
    debug:
      direction: BOTH
      dummy_receiver: true

interval:
  - interval: 15s
    then:
      - uart.write: [0x01, 0x45, 0x00, 0x00, 0x00, 0x54, 0x00, 0x00, 0xD4, 0xD3]
      - delay: 1s

      - uart.write: [0x02, 0x45, 0x00, 0x00, 0x00, 0x54, 0x00, 0x00, 0x94, 0xC6]
      - delay: 1s

      - uart.write: [0x03, 0x45, 0x00, 0x00, 0x00, 0x54, 0x00, 0x00, 0x55, 0x0A]
      - delay: 1s
sarpba commented 1 month ago

INFO ESPHome 2024.6.6 INFO Reading configuration /config/esphome/esphome-web-51a298.yaml... INFO Starting log output from 192.168.7.109 using esphome API INFO Successfully connected to esphome-web-51a298 @ 192.168.7.109 in 0.101s INFO Successful handshake with esphome-web-51a298 @ 192.168.7.109 in 0.072s [17:25:14][I][app:100]: ESPHome version 2024.6.6 compiled on Jul 8 2024, 17:22:30 [17:25:14][I][app:102]: Project syssi.esphome-pace-bms version 1.0.0

[17:25:14][C][wifi:427]: Local MAC: EC:DA:3B:51:A2:98 [17:25:14][C][wifi:432]: SSID: [redacted] [17:25:14][C][wifi:435]: IP Address: 192.168.7.109 [17:25:14][C][wifi:439]: BSSID: [redacted]

[17:25:14][C][wifi:442]: Signal strength: -48 dB ▂▄▆█ [17:25:14][C][wifi:446]: Channel: 5 [17:25:14][C][wifi:447]: Subnet: 255.255.255.0 [17:25:14][C][wifi:448]: Gateway: 192.168.7.1 [17:25:14][C][wifi:449]: DNS1: 192.168.7.1 [17:25:14][C][wifi:450]: DNS2: 0.0.0.0

[17:25:14][C][logger:186]: Level: DEBUG [17:25:14][C][logger:188]: Log Baud Rate: 115200 [17:25:14][C][logger:189]: Hardware UART: USB_SERIAL_JTAG [17:25:14][C][uart.idf:139]: UART Bus 1: [17:25:14][C][uart.idf:140]: TX Pin: GPIO16 [17:25:14][C][uart.idf:141]: RX Pin: GPIO17 [17:25:14][C][uart.idf:143]: RX Buffer Size: 256 [17:25:14][C][uart.idf:145]: Baud Rate: 9600 baud [17:25:14][C][uart.idf:146]: Data Bits: 8 [17:25:14][C][uart.idf:147]: Parity: NONE [17:25:14][C][uart.idf:148]: Stop bits: 1

[17:25:15][C][mdns:116]: Hostname: esphome-web-51a298 [17:25:15][C][esphome.ota:073]: Over-The-Air updates: [17:25:15][C][esphome.ota:074]: Address: esphome-web-51a298.local:3232 [17:25:15][C][esphome.ota:075]: Version: 2 [17:25:15][C][safe_mode:018]: Safe Mode: [17:25:15][C][safe_mode:020]: Boot considered successful after 60 seconds [17:25:15][C][safe_mode:021]: Invoke after 10 boot attempts [17:25:15][C][safe_mode:023]: Remain in safe mode for 300 seconds [17:25:15][C][api:139]: API Server: [17:25:15][C][api:140]: Address: esphome-web-51a298.local:6053 [17:25:15][C][api:142]: Using noise encryption: YES [17:25:15][D][uart_debug:114]: >>> 01:45:00:00:00:54:00:00:D4:D3 [17:25:16][D][uart_debug:114]: >>> 02:45:00:00:00:54:00:00:94:C6 [17:25:17][D][uart_debug:114]: >>> 03:45:00:00:00:54:00:00:55:0A [17:25:30][D][uart_debug:114]: >>> 01:45:00:00:00:54:00:00:D4:D3 [17:25:31][D][uart_debug:114]: >>> 02:45:00:00:00:54:00:00:94:C6 [17:25:32][D][uart_debug:114]: >>> 03:45:00:00:00:54:00:00:55:0A [17:25:45][D][uart_debug:114]: >>> 01:45:00:00:00:54:00:00:D4:D3 [17:25:46][D][uart_debug:114]: >>> 02:45:00:00:00:54:00:00:94:C6 [17:25:47][D][uart_debug:114]: >>> 03:45:00:00:00:54:00:00:55:0A [17:26:00][D][uart_debug:114]: >>> 01:45:00:00:00:54:00:00:D4:D3 [17:26:01][D][uart_debug:114]: >>> 02:45:00:00:00:54:00:00:94:C6 [17:26:02][D][uart_debug:114]: >>> 03:45:00:00:00:54:00:00:55:0A [17:26:15][D][uart_debug:114]: >>> 01:45:00:00:00:54:00:00:D4:D3 [17:26:16][D][uart_debug:114]: >>> 02:45:00:00:00:54:00:00:94:C6 [17:26:17][D][uart_debug:114]: >>> 03:45:00:00:00:54:00:00:55:0A [17:26:30][D][uart_debug:114]: >>> 01:45:00:00:00:54:00:00:D4:D3 [17:26:31][D][uart_debug:114]: >>> 02:45:00:00:00:54:00:00:94:C6 [17:26:32][D][uart_debug:114]: >>> 03:45:00:00:00:54:00:00:55:0A [17:26:45][D][uart_debug:114]: >>> 01:45:00:00:00:54:00:00:D4:D3 [17:26:46][D][uart_debug:114]: >>> 02:45:00:00:00:54:00:00:94:C6 [17:26:47][D][uart_debug:114]: >>> 03:45:00:00:00:54:00:00:55:0A [17:27:00][D][uart_debug:114]: >>> 01:45:00:00:00:54:00:00:D4:D3 [17:27:01][D][uart_debug:114]: >>> 02:45:00:00:00:54:00:00:94:C6 [17:27:02][D][uart_debug:114]: >>> 03:45:00:00:00:54:00:00:55:0A [17:27:15][D][uart_debug:114]: >>> 01:45:00:00:00:54:00:00:D4:D3 [17:27:16][D][uart_debug:114]: >>> 02:45:00:00:00:54:00:00:94:C6 [17:27:17][D][uart_debug:114]: >>> 03:45:00:00:00:54:00:00:55:0A [17:27:30][D][uart_debug:114]: >>> 01:45:00:00:00:54:00:00:D4:D3 [17:27:31][D][uart_debug:114]: >>> 02:45:00:00:00:54:00:00:94:C6 [17:27:32][D][uart_debug:114]: >>> 03:45:00:00:00:54:00:00:55:0A [17:27:45][D][uart_debug:114]: >>> 01:45:00:00:00:54:00:00:D4:D3 [17:27:46][D][uart_debug:114]: >>> 02:45:00:00:00:54:00:00:94:C6 [17:27:47][D][uart_debug:114]: >>> 03:45:00:00:00:54:00:00:55:0A [17:28:00][D][uart_debug:114]: >>> 01:45:00:00:00:54:00:00:D4:D3 [17:28:01][D][uart_debug:114]: >>> 02:45:00:00:00:54:00:00:94:C6 [17:28:02][D][uart_debug:114]: >>> 03:45:00:00:00:54:00:00:55:0A [17:28:15][D][uart_debug:114]: >>> 01:45:00:00:00:54:00:00:D4:D3 [17:28:16][D][uart_debug:114]: >>> 02:45:00:00:00:54:00:00:94:C6 [17:28:17][D][uart_debug:114]: >>> 03:45:00:00:00:54:00:00:55:0A [17:28:30][D][uart_debug:114]: >>> 01:45:00:00:00:54:00:00:D4:D3

syssi commented 1 month ago
[17:25:15][D][uart_debug:114]: >>> 01:45:00:00:00:54:00:00:D4:D3
[17:25:16][D][uart_debug:114]: >>> 02:45:00:00:00:54:00:00:94:C6
[17:25:17][D][uart_debug:114]: >>> 03:45:00:00:00:54:00:00:55:0A
[17:25:30][D][uart_debug:114]: >>> 01:45:00:00:00:54:00:00:D4:D3
[17:25:31][D][uart_debug:114]: >>> 02:45:00:00:00:54:00:00:94:C6
[17:25:32][D][uart_debug:114]: >>> 03:45:00:00:00:54:00:00:55:0A

Your BMS doesn't respond anymore. Did you attach the data cable properly?

sarpba commented 1 month ago

Ok, I done a little test with offical program. If I use the rs485 port near the can plug i can monitor only one battery. if I use the plug rs485 port on right side, I can monitor paralell the another 2 battery too, but slower. Directly conected battery respond time 0,5-1s, Paralell connected another two battery rebpond time around 2-15s.

sarpba commented 1 month ago

Log from the right rs485 connector INFO ESPHome 2024.6.6 INFO Reading configuration /config/esphome/esphome-web-51a298.yaml... INFO Starting log output from 192.168.7.109 using esphome API INFO Successfully connected to esphome-web-51a298 @ 192.168.7.109 in 0.036s INFO Successful handshake with esphome-web-51a298 @ 192.168.7.109 in 0.073s [18:23:24][I][app:100]: ESPHome version 2024.6.6 compiled on Jul 8 2024, 17:22:30 [18:23:24][I][app:102]: Project syssi.esphome-pace-bms version 1.0.0

[18:23:24][C][wifi:427]: Local MAC: EC:DA:3B:51:A2:98 [18:23:24][C][wifi:432]: SSID: [redacted] [18:23:24][C][wifi:435]: IP Address: 192.168.7.109 [18:23:24][C][wifi:439]: BSSID: [redacted]

[18:23:24][C][wifi:442]: Signal strength: -56 dB ▂▄▆█ [18:23:24][C][wifi:446]: Channel: 5 [18:23:24][C][wifi:447]: Subnet: 255.255.255.0 [18:23:24][C][wifi:448]: Gateway: 192.168.7.1 [18:23:24][C][wifi:449]: DNS1: 192.168.7.1 [18:23:24][C][wifi:450]: DNS2: 0.0.0.0

[18:23:24][C][logger:186]: Level: DEBUG [18:23:24][C][logger:188]: Log Baud Rate: 115200 [18:23:24][C][logger:189]: Hardware UART: USB_SERIAL_JTAG [18:23:24][C][uart.idf:139]: UART Bus 1: [18:23:24][C][uart.idf:140]: TX Pin: GPIO16 [18:23:24][C][uart.idf:141]: RX Pin: GPIO17 [18:23:24][C][uart.idf:143]: RX Buffer Size: 256 [18:23:24][C][uart.idf:145]: Baud Rate: 9600 baud [18:23:24][C][uart.idf:146]: Data Bits: 8 [18:23:24][C][uart.idf:147]: Parity: NONE [18:23:24][C][uart.idf:148]: Stop bits: 1

[18:23:24][C][mdns:116]: Hostname: esphome-web-51a298 [18:23:24][C][esphome.ota:073]: Over-The-Air updates: [18:23:24][C][esphome.ota:074]: Address: esphome-web-51a298.local:3232 [18:23:24][C][esphome.ota:075]: Version: 2 [18:23:24][C][safe_mode:018]: Safe Mode: [18:23:24][C][safe_mode:020]: Boot considered successful after 60 seconds [18:23:24][C][safe_mode:021]: Invoke after 10 boot attempts [18:23:24][C][safe_mode:023]: Remain in safe mode for 300 seconds [18:23:24][C][api:139]: API Server: [18:23:24][C][api:140]: Address: esphome-web-51a298.local:6053 [18:23:24][C][api:142]: Using noise encryption: YES [18:23:24][D][uart_debug:114]: <<< 0F:45:00:00:00:54:00:00:55:5F [18:23:24][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:00:94:C6 [18:23:24][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:55:00:10:0C:B9:0C:BA:0C:BB:0C:BC:0C:BB:0C:BD:0C:BB:0C:BB:0C:BB:0C:BB:0C:BA:0C:BA:0C:BA:0C:BB:0C:BA:0C:B8:0C:BD:0C:B8:14:5D:FF:FF:FA:EE:0B:D7:0B:D7:27:10:0A:EC:00:44:00:1B:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:C4:58 [18:23:25][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:00:55:0A [18:23:25][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:55:00:10:0C:B7:0C:BD:0C:B5:0C:BC:0C:B4:0C:BC:0C:B5:0C:BC:0C:B5:0C:BC:0C:B5:0C:BE:0C:B2:0C:BF:0C:B4:0C:BD:0C:BF:0C:B2:14:5A:FF:FF:FB:46:0B:C3:0B:C3:27:10:0A:7C:00:42:00:1A:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:F7:5D [18:23:25][D][uart_debug:114]: <<< 04:45:00:00:00:54:00:00:14:EC [18:23:25][D][uart_debug:114]: <<< 05:45:00:00:00:54:00:00:D5:20 [18:23:26][D][uart_debug:114]: <<< 06:45:00:00:00:54:00:00:95:35 [18:23:26][D][uart_debug:114]: <<< 07:45:00:00:00:54:00:00:54:F9 [18:23:27][D][uart_debug:114]: <<< 08:45:00:00:00:54:00:00:14:B9 [18:23:27][D][uart_debug:114]: >>> 01:45:00:00:00:54:00:00:D4:D3 [18:23:27][D][uart_debug:114]: <<< 09:45:00:00:00:54:00:00:D5:75 [18:23:27][D][uart_debug:114]: <<< 0A:45:00:00:00:54:00:00:95:60 [18:23:28][D][uart_debug:114]: >>> 02:45:00:00:00:54:00:00:94:C6 [18:23:28][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:55:00:10:0C:B7:0C:BC:0C:B7:0C:BE:0C:B7:0C:BF:0C:B4:0C:BE:0B:45:00:00:00:54:00:00:54:AC:C8:63:BB:0C:BF:0C:B3:14:5B:FF:FF:FA:E2:0B:D7:0B:D7:27:10:0A:EB:00:44:00:1B:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:37:EC [18:23:28][D][uart_debug:114]: <<< 0C:45:00:00:00:54:00:00:15:4A [18:23:29][D][uart_debug:114]: <<< 0D:45:00:00:00:54:00:00:D4:86 [18:23:29][D][uart_debug:114]: >>> 03:45:00:00:00:54:00:00:55:0A [18:23:29][D][uart_debug:114]: <<< 0E:45:00:00:00:54:00:00:94:93 [18:23:30][D][uart_debug:114]: <<< 0F:45:00:00:00:54:00:00:55:5F [18:23:30][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:00:94:C6 [18:23:30][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:55:00:10:0C:BE:0C:B6:0C:BB:0C:B9:0C:BD:0C:B9:0C:BD:0C:B9:0C:BB:0C:B7:0C:BB:0C:B7:0C:BE:0C:B8:0C:BD:0C:B6:0C:BE:0C:B6:14:5C:FF:FF:FA:DD:0B:D7:0B:D7:27:10:0A:EA:00:44:00:1B:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:F1:C2 [18:23:30][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:00:55:0A [18:23:31][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:55:00:10:0C:BE:0C:B5:0C:BC:0C:B4:0C:BE:0C:B3:0C:BD:0C:B5:0C:BC:0C:B5:0C:BC:0C:B7:0C:BB:0C:B7:0C:BD:0C:B5:0C:BE:0C:B3:14:5B:FF:FF:FB:19:0B:C3:0B:C3:27:10:0A:79:00:42:00:1A:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:7F:4C [18:23:31][D][uart_debug:114]: <<< 04:45:00:00:00:54:00:00:14:EC [18:23:31][D][uart_debug:114]: <<< 05:45:00:00:00:54:00:00:D5:20 [18:23:32][D][uart_debug:114]: <<< 06:45:00:00:00:54:00:00:95:35 [18:23:32][D][uart_debug:114]: <<< 07:45:00:00:00:54:00:00:54:F9 [18:23:32][D][uart_debug:114]: <<< 08:45:00:00:00:54:00:00:14:B9 [18:23:33][D][uart_debug:114]: <<< 09:45:00:00:00:54:00:00:D5:75 [18:23:33][D][uart_debug:114]: <<< 0A:45:00:00:00:54:00:00:95:60 [18:23:34][D][uart_debug:114]: <<< 0B:45:00:00:00:54:00:00:54:AC [18:23:34][D][uart_debug:114]: <<< 0C:45:00:00:00:54:00:00:15:4A [18:23:34][D][uart_debug:114]: <<< 0D:45:00:00:00:54:00:00:D4:86 [18:23:35][D][uart_debug:114]: <<< 0E:45:00:00:00:54:00:00:94:93 [18:23:35][D][uart_debug:114]: <<< 0F:45:00:00:00:54:00:00:55:5F [18:23:36][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:00:94:C6 [18:23:36][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:55:00:10:0C:B5:0C:BD:0C:B7:0C:BE:0C:B4:0C:BF:0C:B5:0C:BE:0C:B3:0C:BE:0C:B6:0C:BD:0C:B7:0C:BD:0C:B5:0C:BB:0C:BF:0C:B3:14:5B:FF:FF:FA:D4:0B:D7:0B:D7:27:10:0A:E8:00:44:00:1B:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:97:EA [18:23:36][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:00:55:0A [18:23:36][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:55:00:10:0C:B6:0C:BD:0C:B7:0C:BC:0C:B8:0C:BB:0C:B6:0C:BB:0C:B6:0C:BC:0C:B6:0C:BE:0C:B5:0C:BE:0C:B7:0C:BD:0C:BE:0C:B5:14:5B:FF:FF:FB:27:0B:C3:0B:C3:27:10:0A:78:00:42:00:1A:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:6B:22 [18:23:36][D][uart_debug:114]: <<< 04:45:00:00:00:54:00:00:14:EC [18:23:37][D][uart_debug:114]: <<< 05:45:00:00:00:54:00:00:D5:20 [18:23:37][D][uart_debug:114]: <<< 06:45:00:00:00:54:00:00:95:35 [18:23:38][D][uart_debug:114]: <<< 07:45:00:00:00:54:00:00:54:F9 [18:23:38][D][uart_debug:114]: <<< 08:45:00:00:00:54:00:00:14:B9 [18:23:38][D][uart_debug:114]: <<< 09:45:00:00:00:54:00:00:D5:75 [18:23:39][D][uart_debug:114]: <<< 0A:45:00:00:00:54:00:00:95:60 [18:23:39][D][uart_debug:114]: <<< 0B:45:00:00:00:54:00:00:54:AC [18:23:40][D][uart_debug:114]: <<< 0C:45:00:00:00:54:00:00:15:4A [18:23:40][D][uart_debug:114]: <<< 0D:45:00:00:00:54:00:00:D4:86 [18:23:40][D][uart_debug:114]: <<< 0E:45:00:00:00:54:00:00:94:93 [18:23:41][D][uart_debug:114]: <<< 0F:45:00:00:00:54:00:00:55:5F [18:23:41][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:00:94:C6 [18:23:41][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:55:00:10:0C:BE:0C:B0:0C:BE:0C:B6:0C:BE:0C:B5:0C:BE:0C:B4:0C:BE:0C:B3:0C:BD:0C:B3:0C:BF:0C:B3:0C:BE:0C:B2:0C:BF:0C:B0:14:5A:FF:FF:FA:C8:0B:D7:0B:D7:27:10:0A:E6:00:44:00:1B:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:3F:12 [18:23:42][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:00:55:0A [18:23:42][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:55:00:10:0C:BE:0C:B8:0C:BA:0C:B7:0C:BC:0C:B7:0C:BB:0C:B7:0C:BB:0C:B7:0C:BA:0C:BA:0C:B9:0C:BA:0C:BC:0C:B9:0C:BE:0C:B7:14:5C:FF:FF [18:23:42][D][uart_debug:114]: >>> 01:45:00:00:00:54:00:00:D4:D3 [18:23:42][D][uart_debug:114]: <<< FB:2E:0B:C3:0B:C3:27:10:0A:76:00:42:00:1A:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:9B:36 [18:23:42][D][uart_debug:114]: <<< 04:45:00:00:00:54:00:00:14:EC [18:23:42][D][uart_debug:114]: <<< 05:45:00:00:00:54:00:00:D5:20 [18:23:43][D][uart_debug:114]: >>> 02:45:00:00:00:54:00:00:94:C6 [18:23:43][D][uart_debug:114]: <<< 06:45:00:00:00:54:00:00:95:35 [18:23:43][D][uart_debug:114]: <<< 07:45:00:00:00:54:00:00:54:F9 [18:23:44][D][uart_debug:114]: <<< 08:45:00:00:00:54:00:00:14:B9 [18:23:44][D][uart_debug:114]: >>> 03:45:00:00:00:54:00:00:55:0A [18:23:44][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:55:00:10:0C:BE:0C:B5:0C:BC:0C:B4:0C:BE:0C:B2:0C:BD:0C:B3:0C:BC:0C:B4:0C:BC:0C:B6:0C:BB:0C:B6:0C:BD:0C:B5:0C:BE:0C:B2:14:5A:FF:FF:FF:09:45:00:00:00:54:00:00:D5:75:1A:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:F4:96 [18:23:44][D][uart_debug:114]: <<< 0A:45:00:00:00:54:00:00:95:60 [18:23:45][D][uart_debug:114]: <<< 0B:45:00:00:00:54:00:00:54:AC [18:23:45][D][uart_debug:114]: <<< 0C:45:00:00:00:54:00:00:15:4A [18:23:46][D][uart_debug:114]: <<< 0D:45:00:00:00:54:00:00:D4:86 [18:23:46][D][uart_debug:114]: <<< 0E:45:00:00:00:54:00:00:94:93 [18:23:46][D][uart_debug:114]: <<< 0F:45:00:00:00:54:00:00:55:5F [18:23:47][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:00:94:C6 [18:23:47][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:55:00:10:0C:B3:0C:BC:0C:B4:0C:BE:0C:B6:0C:BF:0C:B6:0C:BE:0C:B4:0C:BE:0C:B4:0C:BD:0C:B5:0C:BD:0C:B3:0C:BB:0C:BF:0C:B3:14:5A:FF:FF:FA:D9:0B:D7:0B:D7:27:10:0A:E4:00:44:00:1B:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:CC:3D [18:23:47][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:00:55:0A [18:23:47][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:55:00:10:0C:BB:0C:B9:0C:BB:0C:B8:0C:BC:0C:B7:0C:BC:0C:B7:0C:BA:0C:B8:0C:BA:0C:BA:0C:B9:0C:BB:0C:BB:0C:B8:0C:BC:0C:B7:14:5C:FF:FF:FB:0D:0B:C3:0B:C3:27:10:0A:74:00:42:00:1A:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:34:A0 [18:23:48][D][uart_debug:114]: <<< 04:45:00:00:00:54:00:00:14:EC [18:23:48][D][uart_debug:114]: <<< 05:45:00:00:00:54:00:00:D5:20 [18:23:48][D][uart_debug:114]: <<< 06:45:00:00:00:54:00:00:95:35 [18:23:49][D][uart_debug:114]: <<< 07:45:00:00:00:54:00:00:54:F9 [18:23:49][D][uart_debug:114]: <<< 08:45:00:00:00:54:00:00:14:B9 [18:23:50][D][uart_debug:114]: <<< 09:45:00:00:00:54:00:00:D5:75 [18:23:50][D][uart_debug:114]: <<< 0A:45:00:00:00:54:00:00:95:60 [18:23:50][D][uart_debug:114]: <<< 0B:45:00:00:00:54:00:00:54:AC [18:23:51][D][uart_debug:114]: <<< 0C:45:00:00:00:54:00:00:15:4A [18:23:51][D][uart_debug:114]: <<< 0D:45:00:00:00:54:00:00:D4:86 [18:23:52][D][uart_debug:114]: <<< 0E:45:00:00:00:54:00:00:94:93 [18:23:52][D][api:102]: Accepted 192.168.7.34 [18:23:52][D][api.connection:1375]: Home Assistant 2024.7.1 (192.168.7.34): Connected successfully [18:23:52][D][uart_debug:114]: <<< 0F:45:00:00:00:54:00:00:55:5F [18:23:52][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:00:94:C6 [18:23:53][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:55:00:10:0C:BE:0C:B1:0C:BE:0C:B5:0C:BE:0C:B4:0C:BE:0C:B5:0C:BE:0C:B2:0C:BD:0C:B4:0C:BF:0C:B4:0C:BE:0C:B3:0C:BF:0C:B1:14:5A:FF:FF:FA:E5:0B:D7:0B:D7:27:10:0A:E2:00:44:00:1B:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:DE:F2 [18:23:53][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:00:55:0A [18:23:53][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:55:00:10:0C:B6:0C:BD:0C:B5:0C:BC:0C:B6:0C:BB:0C:B3:0C:BC:0C:B5:0C:BC:0C:B4:0C:BE:0C:B3:0C:BF:0C:B4:0C:BC:0C:BF:0C:B3:14:5A:FF:FF:FB:3A:0B:C3:0B:C3:27:10:0A:72:00:42:00:1A:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:E1:C4 [18:23:53][D][uart_debug:114]: <<< 04:45:00:00:00:54:00:00:14:EC [18:23:54][D][uart_debug:114]: <<< 05:45:00:00:00:54:00:00:D5:20 [18:23:54][D][uart_debug:114]: <<< 06:45:00:00:00:54:00:00:95:35 [18:23:54][D][uart_debug:114]: <<< 07:45:00:00:00:54:00:00:54:F9 [18:23:55][D][uart_debug:114]: <<< 08:45:00:00:00:54:00:00:14:B9 [18:23:55][D][uart_debug:114]: <<< 09:45:00:00:00:54:00:00:D5:75 [18:23:56][D][uart_debug:114]: <<< 0A:45:00:00:00:54:00:00:95:60 [18:23:56][D][uart_debug:114]: <<< 0B:45:00:00:00:54:00:00:54:AC [18:23:56][D][uart_debug:114]: <<< 0C:45:00:00:00:54:00:00:15:4A [18:23:57][D][uart_debug:114]: >>> 01:45:00:00:00:54:00:00:D4:D3 [18:23:57][D][uart_debug:114]: <<< 01:45:00:00:00:54:00:55:00:10:0C:AD:0C:BC:0C:AF:0C:BA:0C:AF:0C:B9:0C:AF:0C:BB:0C:AF:0C:BB:0C:AF:0C:BA:0C:AE:0C:BC:0C:AE:0C:BA:0C:BC:0C:AD:14:54:FF:FF:FA:76:0B:E1:0B:D7:29:76:0C:F7:00:47:00:1F:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:AA:5E:0D:45:00:00:00:54:00:00:D4:86 [18:23:57][D][uart_debug:114]: <<< 0E:45:00:00:00:54:00:00:94:93 [18:23:58][D][uart_debug:114]: >>> 02:45:00:00:00:54:00:00:94:C6 [18:23:58][D][uart_debug:114]: <<< 0F:45:00:00:00:54:00:00:55:5F [18:23:58][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:00:94:C6 [18:23:58][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:55:00:10:0C:B4:0C:BC:0C:B5:0C:BE:0C:B6:0C:BF:0C:B5:0C:BE:0C:B4:0C:BE:0C:B3:0C:BC:0C:B4:0C:BD:0C:B2:0C:BB:0C:BF:0C:B2:14:5A:FF:FF:FA:C3:0B:D7:0B:D7:27:10:0A:E0:00:44:00:1B:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:6D:3D [18:23:59][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:00:55:0A [18:23:59][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:55:00:10:0C:BE:0C:B4:0C:BC:0C:B4:0C:BD:0C:B3:0C:BC:0C:B5:0C:BC:0C:B3:0C:BC:0C:B7:0C:BB:0C:B8:0C:BD:0C:B6:0C:BE:0C:B3:14:5A:FF:FF:FB:0B:0B:C3:0B:C3:27:10:0A:70:00:42:00:1A:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:2D:80 [18:23:59][D][uart_debug:114]: >>> 03:45:00:00:00:54:00:00:55:0A [18:23:59][D][uart_debug:114]: <<< 04:45:00:00:00:54:00:00:14:EC [18:23:59][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:55:00:10:0C:BE:0C:B2:0C:BC:0C:B4:0C:BD:0C:B3:0C:BC:0C:B4:0C:BC:0C:B2:0C:BC:0C:B7:0C:BB:0C:B7:0C:BC:0C:B4:0C:BE:0C:B2:14:59:FF:FF:FB:12:0B:C3:0B:C3:27:10:0A:70:00:42:00:1A:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:0B:1D [18:23:59][D][uart_debug:114]: <<< 05:45:00:00:00:54:00:00:D5:20 [18:24:00][D][uart_debug:114]: <<< 06:45:00:00:00:54:00:00:95:35 [18:24:00][D][uart_debug:114]: <<< 07:45:00:00:00:54:00:00:54:F9 [18:24:01][D][uart_debug:114]: <<< 08:45:00:00:00:54:00:00:14:B9 [18:24:01][D][uart_debug:114]: <<< 09:45:00:00:00:54:00:00:D5:75 [18:24:01][D][uart_debug:114]: <<< 0A:45:00:00:00:54:00:00:95:60 [18:24:02][D][uart_debug:114]: <<< 0B:45:00:00:00:54:00:00:54:AC [18:24:02][D][uart_debug:114]: <<< 0C:45:00:00:00:54:00:00:15:4A [18:24:03][D][uart_debug:114]: <<< 0D:45:00:00:00:54:00:00:D4:86 [18:24:03][D][uart_debug:114]: <<< 0E:45:00:00:00:54:00:00:94:93 [18:24:03][D][uart_debug:114]: <<< 0F:45:00:00:00:54:00:00:55:5F [18:24:04][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:00:94:C6 [18:24:04][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:55:00:10:0C:BD:0C:B3:0C:BD:0C:B4:0C:BE:0C:B5:0C:BE:0C:B3:0C:BD:0C:B4:0C:BC:0C:B2:0C:BF:0C:B3:0C:BE:0C:B2:0C:BF:0C:B2:14:5A:FF:FF:FA:CF:0B:D7:0B:D7:27:10:0A:DE:00:44:00:1B:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:BA:E9 [18:24:04][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:00:55:0A [18:24:04][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:55:00:10:0C:B9:0C:BC:0C:B9:0C:BA:0C:B9:0C:B9:0C:BA:0C:BA:0C:B8:0C:BA:0C:B7:0C:BC:0C:B7:0C:BD:0C:B9:0C:BB:0C:BD:0C:B7:14:5C:FF:FF:FB:2E:0B:C3:0B:C3:27:10:0A:6E:00:42:00:1A:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:75:AD [18:24:05][D][uart_debug:114]: <<< 04:45:00:00:00:54:00:00:14:EC [18:24:05][D][uart_debug:114]: <<< 05:45:00:00:00:54:00:00:D5:20 [18:24:05][D][uart_debug:114]: <<< 06:45:00:00:00:54:00:00:95:35 [18:24:06][D][uart_debug:114]: <<< 07:45:00:00:00:54:00:00:54:F9 [18:24:06][D][uart_debug:114]: <<< 08:45:00:00:00:54:00:00:14:B9 [18:24:07][D][uart_debug:114]: <<< 09:45:00:00:00:54:00:00:D5:75 [18:24:07][D][uart_debug:114]: <<< 0A:45:00:00:00:54:00:00:95:60 [18:24:07][D][uart_debug:114]: <<< 0B:45:00:00:00:54:00:00:54:AC [18:24:08][D][uart_debug:114]: <<< 0C:45:00:00:00:54:00:00:15:4A [18:24:08][D][uart_debug:114]: <<< 0D:45:00:00:00:54:00:00:D4:86 [18:24:09][D][uart_debug:114]: <<< 0E:45:00:00:00:54:00:00:94:93 [18:24:09][D][uart_debug:114]: <<< 0F:45:00:00:00:54:00:00:55:5F [18:24:09][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:00:94:C6 [18:24:10][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:55:00:10:0C:B6:0C:BC:0C:B5:0C:BE:0C:B4:0C:BE:0C:B5:0C:BE:0C:B4:0C:BD:0C:B4:0C:BC:0C:B3:0C:BD:0C:B4:0C:BB:0C:BE:0C:B3:14:5A:FF:FF:FA:EE:0B:D7:0B:D7:27:10:0A:DB:00:44:00:1B:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:FC:F5 [18:24:10][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:00:55:0A [18:24:10][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:55:00:10:0C:BB:0C:BA:0C:B8:0C:BA:0C:B8:0C:B9:0C:B8:0C:BA:0C:B8:0C:BA:0C:B8:0C:BD:0C:B5:0C:BD:0C:B8:0C:BA:0C:BD:0C:B5:14:5B:FF:FF:FB:1B:0B:C3:0B:C3:27:10:0A:6C:00:42:00:1A:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:6D:C9 [18:24:10][D][uart_debug:114]: <<< 04:45:00:00:00:54:00:00:14:EC [18:24:11][D][uart_debug:114]: <<< 05:45:00:00:00:54:00:00:D5:20 [18:24:11][D][uart_debug:114]: <<< 06:45:00:00:00:54:00:00:95:35 [18:24:11][D][uart_debug:114]: <<< 07:45:00:00:00:54:00:00:54:F9 [18:24:12][D][uart_debug:114]: >>> 01:45:00:00:00:54:00:00:D4:D3 [18:24:12][D][uart_debug:114]: <<< 01:45:00:00:00:54:00:55:00:10:0C:BA:0C:B4:0C:B9:0C:B1:0C:B9:0C:B2:0C:B9:0C:B4:0C:B8:0C:B3:0C:B8:0C:B1:0C:B9:0C:B5:0C:B8:0C:B2:0C:BA:0C:B1:14:56:FF:FF:FA:86:0B:E1:0B:D7:29:76:0C:F1:00:47:00:1F:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:58:B8:08:45:00:00:00:54:00:00:14:B9 [18:24:12][D][uart_debug:114]: <<< 09:45:00:00:00:54:00:00:D5:75 [18:24:13][D][uart_debug:114]: >>> 02:45:00:00:00:54:00:00:94:C6 [18:24:13][D][uart_debug:114]: <<< 0A:45:00:00:00:54:00:00:95:60 [18:24:13][D][uart_debug:114]: <<< 0B:45:00:00:00:54:00:00:54:AC [18:24:14][D][uart_debug:114]: <<< 0C:45:00:00:00:54:00:00:15:4A [18:24:14][D][uart_debug:114]: >>> 03:45:00:00:00:54:00:00:55:0A [18:24:14][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:55:00:10:0C:BE:0C:B3:0C:BC:0C:B4:0C:BE:0C:B3:0C:BC:0C:B4:0C:BC:0C:B2:0C:BC:0C:B7:0C:BB:0C:B7:0C:BD:0C:B4:0C:BE:0C:B2:14:5A:FF:FF:FB:14:0B:C3:0B:C3:27:10:0A:6A:00:42:00:1A:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:87:2D:0D:45:00:00:00:54:00:00:D4:86 [18:24:14][D][uart_debug:114]: <<< 0E:45:00:00:00:54:00:00:94:93 [18:24:14][I][safe_mode:041]: Boot seems successful; resetting boot loop counter [18:24:14][D][esp32.preferences:114]: Saving 1 preferences to flash... [18:24:14][D][esp32.preferences:143]: Saving 1 preferences to flash: 0 cached, 1 written, 0 failed [18:24:15][D][uart_debug:114]: <<< 0F:45:00:00:00:54:00:00:55:5F [18:24:15][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:00:94:C6 [18:24:15][D][uart_debug:114]: <<< 02:45:00:00:00:54:00:55:00:10:0C:BC:0C:B4:0C:BD:0C:B5:0C:BE:0C:B5:0C:BD:0C:B6:0C:BC:0C:B4:0C:BC:0C:B4:0C:BE:0C:B3:0C:BD:0C:B2:0C:BE:0C:B2:14:5A:FF:FF:FA:CA:0B:D7:0B:D7:27:10:0A:D9:00:44:00:1B:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:2C:DD [18:24:16][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:00:55:0A [18:24:16][D][uart_debug:114]: <<< 03:45:00:00:00:54:00:55:00:10:0C:BD:0C:B5:0C:BC:0C:B3:0C:BD:0C:B4:0C:BC:0C:B3:0C:BC:0C:B2:0C:BC:0C:B7:0C:BB:0C:B7:0C:BD:0C:B5:0C:BD:0C:B2:14:5A:FF:FF:FB:20:0B:C3:0B:C3:27:10:0A:6A:00:42:00:1A:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:84:73 [18:24:16][D][uart_debug:114]: <<< 04:45:00:00:00:54:00:00:14:EC [18:24:16][D][uart_debug:114]: <<< 05:45:00:00:00:54:00:00:D5:20 [18:24:17][D][uart_debug:114]: <<< 06:45:00:00:00:54:00:00:95:35 [18:24:17][D][uart_debug:114]: <<< 07:45:00:00:00:54:00:00:54:F9 [18:24:18][D][uart_debug:114]: <<< 08:45:00:00:00:54:00:00:14:B9

sarpba commented 1 month ago

My modbus "hardver" for PC connection is a simple yp-05, and a cheap HW-519 modbus modul from ali (I use lots of them). I use this modbus modul for esp32 too. Maybe my cable long? I use 2-2,5m cat5e cable on rs485 side.

syssi commented 1 month ago

On the right RS485 port all systems are responding to our requests:

# Request cell infos from device 0x01
>>> 01:45:00:00:00:54:00:00:D4:D3
# Device 0x01 responds
<<< 01:45:00:00:00:54:00:55:00:10:0C:BA:0C:B4:0C:B9:0C:B1:0C:B9:0C:B2:0C:B9:0C:B4:0C:B8:0C:B3:0C:B8:0C:B1:0C:B9:0C:B5:0C:B8:0C:B2:0C:BA:0C:B1:14:56:FF:FF:FA:86:0B:E1:0B:D7:29:76:0C:F1:00:47:00:1F:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:58:B8:08:45:00:00:00:54:00:00:14:B9

# Request cell infos from device 0x02
>>> 02:45:00:00:00:54:00:00:94:C6
# Device 0x02 responds
<<< 02:45:00:00:00:54:00:55:00:10:0C:BC:0C:B4:0C:BD:0C:B5:0C:BE:0C:B5:0C:BD:0C:B6:0C:BC:0C:B4:0C:BC:0C:B4:0C:BE:0C:B3:0C:BD:0C:B2:0C:BE:0C:B2:14:5A:FF:FF:FA:CA:0B:D7:0B:D7:27:10:0A:D9:00:44:00:1B:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:2C:DD

# Request cell infos from device 0x03
>>> 03:45:00:00:00:54:00:00:55:0A
# Device 0x03 responds
<<< 03:45:00:00:00:54:00:55:00:10:0C:BE:0C:B3:0C:BC:0C:B4:0C:BE:0C:B3:0C:BC:0C:B4:0C:BC:0C:B2:0C:BC:0C:B7:0C:BB:0C:B7:0C:BD:0C:B4:0C:BE:0C:B2:14:5A:FF:FF:FB:14:0B:C3:0B:C3:27:10:0A:6A:00:42:00:1A:00:64:00:00:00:00:00:07:00:00:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:00:00:00:00:00:87:2D:0D:45:00:00:00:54:00:00:D4:86

But you are ignoring one important detail at the moment:

If this is a Modbus protocol there is just one master allowed. At the moment BMS1 (0x01) acts as master and we aren't allowed to query data using another master (the ESP!).

This is the reason why I would prefer to use the RS485 port next to the CAN bus.

sarpba commented 1 month ago

It's true.

An absolutely suitable solution for me is to read out the data one by one next to the can port. In the worst case, you need 3 esp and 3 modbus modules.

syssi commented 1 month ago

In best case you can connect a single ESP + single RS485 converter to all RS485 ports and the BMS just responds to the dedicated device address (hopefully!).

syssi commented 1 month ago

Could you try the YAML configuration with the manual requests another time on the RS485 port next to the CAN bus?

      - uart.write: [0x01, 0x45, 0x00, 0x00, 0x00, 0x54, 0x00, 0x00, 0xD4, 0xD3]
      - delay: 1s

      - uart.write: [0x02, 0x45, 0x00, 0x00, 0x00, 0x54, 0x00, 0x00, 0x94, 0xC6]
      - delay: 1s

      - uart.write: [0x03, 0x45, 0x00, 0x00, 0x00, 0x54, 0x00, 0x00, 0x55, 0x0A]
      - delay: 1s

Still silence?

sarpba commented 1 month ago

yes, unfortunatly, still silence

What do you think, does it make sense to extract data from PC serial communication with a serial port analyzer? (Reverse enginering from offical softver communication) For example with this: https://freeserialanalyzer.com/

syssi commented 1 month ago

We can use an ESP to sniff the traffic:

  1. Connect the PC using an RS485 converter to the RS485 port
  2. Attach a RS485 converter module to the ESP (as always) and connect A+/B- to the BMS too (same lines/pins as the PC dongle)
  3. Use this YAML again to dump the data: https://github.com/syssi/esphome-seplos-bms/issues/105
sarpba commented 1 month ago

Just for info SOC low alarm on 2 and 3 battrey SOC_LOW_Alarm_RealTimeData_20240708192501.csv

syssi commented 1 month ago

These are Seplos ASCII frames (protocol version 2.2):

~22014A00E0C60010A1146D100CC90CC20CC60CC40CC50CC30CC60CC30CC50CC30CC50CC30CC50CC40CC50CC301540136017C0401400136012C0136F9400000006401297611A60047000000020000000000230000000000000000000000000000000000000000000000D4AB
~22014A00E0C60010A01467100CC90CBA0CC90CB70CC90CBA0CC90CBA0CC90CB90CC90CB90CC90CB60CC90CB801540136017C0401400136012C0136F93C0000006401297611A60047000000020000000000230000000000000000000000000000000000000000000000D454
~22014A00E0C60010A0146D100CC50CC30CC70CC30CC70CC20CC70CC30CC70CC30CC60CC30CC70CC30CC60CC30154013601720401400136012C0136F9510000006401297611A50047000000020000000000230000000000000000000000000000000000000000000000D4B8
~22014A00E0C60010A01468100CB40CC90CBC0CC90CB90CC90CBC0CC90CB90CC90CBC0CC90CBB0CC90CBA0CC80154012C01720401360136012C0136F9430000006401297611A50047000000020000000000230000000000000000000000000000000000000000000000D44C
sarpba commented 1 month ago

Here is the snifed datas (allways use the rs485 near can port):

bat1.txt batery1 fromoffical RealTimeData_20240708202449.csv

bat2.txt batery_2_from_offical_RealTimeData_20240708203247.csv

bat3.txt batery_3_from_offical_RealTimeData_20240708204012.csv

I tryed read another battery (just for adresses) bat1_on_bat3_connector.txt bat2_on_bat1_connector.txt bat3_on_bat1_connector.txt

syssi commented 1 month ago
# bat1.txt
>>> 7E:32:32:30:31:34:41:34:32:45:30:30:32:30:31:46:44:32:38:0D
<<< 7E:32:32:30:31:34:41:30:30:45:30:43:36:30:30:30:35:33:44:31:34:30:37:31:30:30:43:38:34:30:43:38:35:30:43:38:35:30:43:38:34:30:43:38:35:30:43:38:35:30:43:38:35:30:43:38:35:30:43:38:35:30:43:38:35:30:43:38:34:30:43:38:34:30:43:38:35:30:43:38:35:30:43:38:34:30:43:38:34:30:31:34:41:30:31:33:36:30:31:33:36:30:34:30:31:33:36:30:31:34:30:30:31:34:30:30:31:33:36:30:30:30:30:30:30:30:30:30:30:36:34:30:31:32:39:37:36:30:35:38:46:30:30:34:37:30:30:30:30:30:30:30:30:30:30:30:30:30:30:38:30:30:30:32:33:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:44:35:38:42:0D

# hex2ascii
>>> ~22014A42E00201FD28
<<< ~22014A00E0C600053D1407100C840C850C850C840C850C850C850C850C850C850C840C840C850C850C840C84014A01360136040136014001400136000000000064012976058F0047000000000000008000230000000000000000000000000000000000000000000000D58B
# bat2.txt
>>> 7E:32:32:30:32:34:41:34:32:45:30:30:32:30:32:46:44:32:36:0D
<<< 7E:32:32:30:32:34:41:30:30:45:30:43:36:30:30:30:33:39:38:31:34:30:41:31:30:30:43:38:36:30:43:38:36:30:43:38:36:30:43:38:36:30:43:38:37:30:43:38:37:30:43:38:37:30:43:38:37:30:43:38:37:30:43:38:36:30:43:38:37:30:43:38:36:30:43:38:37:30:43:38:36:30:43:38:36:30:43:38:34:30:31:34:41:30:31:33:36:30:31:33:36:30:34:30:31:33:36:30:31:33:36:30:31:33:36:30:31:33:36:30:30:30:30:30:30:30:30:30:30:36:34:30:31:32:37:31:30:30:33:39:38:30:30:34:34:30:30:30:30:30:30:30:30:30:30:30:30:30:30:38:30:30:30:32:33:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:44:35:38:33:0D

# hex2ascii
>>> ~22024A42E00202FD26
<<< ~22024A00E0C6000398140A100C860C860C860C860C870C870C870C870C870C860C870C860C870C860C860C84014A0136013604013601360136013600000000006401271003980044000000000000008000230000000000000000000000000000000000000000000000D583
# bat3.txt
>>> 7E:32:32:30:33:34:41:34:32:45:30:30:32:30:33:46:44:32:34:0D
<<< 7E:32:32:30:33:34:41:30:30:45:30:43:36:30:30:30:33:34:35:31:34:30:39:31:30:30:43:38:36:30:43:38:36:30:43:38:36:30:43:38:36:30:43:38:36:30:43:38:35:30:43:38:36:30:43:38:36:30:43:38:36:30:43:38:36:30:43:38:36:30:43:38:37:30:43:38:35:30:43:38:37:30:43:38:36:30:43:38:35:30:31:33:36:30:31:32:32:30:31:32:43:30:34:30:31:32:32:30:31:32:32:30:31:32:32:30:31:32:32:30:30:30:30:30:30:30:30:30:30:36:34:30:31:32:37:31:30:30:33:34:35:30:30:34:33:30:30:30:30:30:30:30:30:30:30:30:30:30:30:38:30:30:30:32:33:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:44:35:42:41:0D

# hex2ascii
~22034A42E00203FD24
~22034A00E0C60003451409100C860C860C860C860C860C850C860C860C860C860C860C870C850C870C860C8501360122012C04012201220122012200000000006401271003450043000000000000008000230000000000000000000000000000000000000000000000D5BA
# bat1_on_bat3_connector.txt
<<< 7E:32:32:30:31:34:41:34:32:45:30:30:32:30:31:46:44:32:38:0D
<<< 7E:32:32:30:31:34:41:35:31:30:30:30:30:46:44:41:30:0D
<<< 7E:32:32:30:31:34:41:42:30:36:30:30:41:30:31:30:31:30:33:46:46:30:30:46:42:36:43:0D
<<< 7E:32:32:30:31:34:41:34:44:30:30:30:30:46:44:38:45:0D
<<< 7E:32:32:30:31:34:41:34:32:45:30:30:32:30:31:46:44:32:38:0D

# hex2ascii
~22014A42E00201FD28
~22014A510000FDA0
~22014AB0600A010103FF00FB6C
~22014A4D0000FD8E
~22014A42E00201FD28
# bat2_on_bat1_connector.txt
<<< 7E:32:32:30:32:34:41:35:31:30:30:30:30:46:44:39:46:0D
<<< 7E:32:32:30:32:34:41:42:30:36:30:30:41:30:32:30:31:30:33:46:46:30:30:46:42:36:41:0D
<<< 7E:32:32:30:32:34:41:34:44:30:30:30:30:46:44:38:44:0D
<<< 7E:32:32:30:32:34:41:34:32:45:30:30:32:30:32:46:44:32:36:0D
<<< 7E:32:32:30:32:34:41:34:32:45:30:30:32:30:32:46:44:32:36:0D
<<< 7E:32:32:30:32:34:41:34:32:45:30:30:32:30:32:46:44:32:36:0D
<<< 7E:32:32:30:32:34:41:34:32:45:30:30:32:30:32:46:44:32:36:0D

# hex2ascii
~22024A510000FD9F
~22024AB0600A020103FF00FB6A
~22024A4D0000FD8D
~22024A42E00202FD26
~22024A42E00202FD26
~22024A42E00202FD26
~22024A42E00202FD26
# bat3_on_bat1_connector.txt
<<< 7E:32:32:30:33:34:41:34:32:45:30:30:32:30:33:46:44:32:34:0D
<<< 7E:32:32:30:33:34:41:35:31:30:30:30:30:46:44:39:45:0D
<<< 7E:32:32:30:33:34:41:42:30:36:30:30:41:30:33:30:31:30:33:46:46:30:30:46:42:36:38:0D
<<< 7E:32:32:30:33:34:41:34:44:30:30:30:30:46:44:38:43:0D
<<< 7E:32:32:30:33:34:41:34:32:45:30:30:32:30:33:46:44:32:34:0D
<<< 7E:32:32:30:33:34:41:34:32:45:30:30:32:30:33:46:44:32:34:0D
<<< 7E:32:32:30:33:34:41:34:32:45:30:30:32:30:33:46:44:32:34:0D

# hex2ascii 
~22034A42E00203FD24
~22034A510000FD9E
~22034AB0600A030103FF00FB68
~22034A4D0000FD8C
~22034A42E00203FD24
~22034A42E00203FD24
~22034A42E00203FD24
sarpba commented 1 month ago

The request above retrieve 55 registers / 2*55 bytes from the BMS:

Addr  Payload   Description

      0x02        Device address
      0x45        Custom function code
      0x00 0x00   Start address
      0x00 0x54   End address
      0x00 0x55   Data length (0x55 = 85 bytes)
  0   0x10   16 cells
  1   0x0C 0xD1   3281 = 3.281 V
  3   0x0C 0xD0   3280 = 3.280 V
  5   0x0C 0xD0   3280 = 3.280 V
  7   0x0C 0xD0   3280 = 3.280 V
  9   0x0C 0xD0   3280 = 3.280 V
 11   0x0C 0xD1   3281 = 3.281 V
 13   0x0C 0xD0   3280 = 3.280 V
 15   0x0C 0xD0   3280 = 3.280 V
 17   0x0C 0xCF   3279 = 3.279 V
 19   0x0C 0xD0   3280 = 3.280 V
 21   0x0C 0xD0   3280 = 3.280 V
 23   0x0C 0xD0   3280 = 3.280 V
 25   0x0C 0xD0   3280 = 3.280 V
 27   0x0C 0xCF   3279 = 3.270 V
 29   0x0C 0xD0   3280 = 3.280 V
 31   0x0C 0xCD   3277 = 3.277 V
 33   0x0C 0xD1   3281 = 3.281 V
 35   0x0C 0xCD   3277 = 3.277 V
 37   0x14 0x7F   5247 = 52.47 V total voltage
 39   0xFF 0xFF
 41   0xFE 0x2B   65067
 43   0x0B 0xE1   3041 = 30.41 °C?
 45   0x0B 0xE1   3041 = 30.41 °C?
 47   0x27 0x10   10000
 49   0x0E 0x8A   3722
 51   0x00 0x44   68  SOC?
 53   0x00 0x25   37  SOC?
 55   0x00 0x64   100 SOH?
 57   0x00 0x00
 59   0x00 0x00
 61   0x00 0x07    7
 63   0x00 0x00
 65   0xFF 0xFF
 67   0xFF 0xFF
 69   0xFF 0xFF
 71   0xFF 0xFF
 73   0xFF 0xFF
 75   0xFF 0xFF
 77   0xFF 0xFF
 79   0x00 0x00
 81   0x00 0x00
 83   0x00 
 84   0x93 0xB6

43 temperature 45 temperature 51 chargeing cycles 53 SOC 55 SOH

sarpba commented 1 month ago

Not sure, but I got a tip from the reseller. (Pylontech) https://github.com/Frankkkkk/python-pylontech/blob/master/RS485-protocol-pylon-low-voltage-V3.3-20180821.pdf

sarpba commented 1 month ago

With a modified slepos esp32-example.yaml substitutions: name: esphome-web-51a298 friendly_name: bms device_description: "Monitor a Seplos BMS via RS485" external_components_source: github://syssi/esphome-seplos-bms@main tx_pin: GPIO16 rx_pin: GPIO17

esphome: name: ${name} comment: ${device_description} min_version: 2024.6.0 project: name: "syssi.esphome-seplos-bms" version: 1.1.0

esp32: board: esp32-s3-devkitc-1 variant: esp32s3 framework: type: esp-idf

external_components:

wifi: ssid: !secret wifi_ssid password: !secret wifi_password

ota: platform: esphome

logger: level: VERBOSE #makes uart stream available in esphome logstream baud_rate: 0 #disable logging over uart

api: reboot_timeout: 10min encryption: key: "PkyF/o6kVkQDEbltsQMMEuVk9wII7LKYz0qxXhEwmC5="

uart: id: uart_0

Please set the default baudrate of your Seplos BMS model here. It's sometimes 19200 baud instead of 9600.

baud_rate: 9600 tx_pin: ${tx_pin} rx_pin: ${rx_pin}

The increased RX buffer size is important because

the full BMS response must fit into the buffer

rx_buffer_size: 384 debug: direction: BOTH dummy_receiver: false

seplos_modbus: id: modbus0 uart_id: uart_0 rx_timeout: 150ms

seplos_bms: id: bms0

Dip switch configuration of a single pack setup / address 0x0

8 7 6 5 4 3 2 1

off, off, off, off, off, off, off, off

address: 0x01

Known protocol versions: 0x20 (Seplos), 0x26 (Boqiang)

protocol_version: 0x22 seplos_modbus_id: modbus0 update_interval: 10s

sensor:

some kind of communication started (adress 0x01, protocoll 0x22):

7E:32:32:30:31:34:36:34:32:45:30:30:32:30:31:46:44:33:33:0D [01:56:02][D][uart_debug:114]: <<< 7E:32:32:30:31:34:41:30:30:45:30:43:36:30:30:30:35:37:39:31:33:46:41:31:30:30:43:37:43:30:43:37:45:30:43:37:45:30:43:37:43:30:43:37:44:30:43:37:44:30:43:37:44:30:43:37:44:30:43:37:43:30:43:37:44:30:43:37:43:30:43:37:43:30:43:37:44:30:43:37:44:30:43:37:43:30:43:37:43:30:31:34:30:30:31:32:43:30:31:32:43:30:34:30:31:32:43:30:31:32:43:30:31:32:43:30:31:32:43:30:30:30:30:30:30:30:30:30:30:36:34:30:31:32:39:37:36:30:35:43:46:30:30:34:38:30:30:30:30:30 [01:56:02][W][seplos_bms:022]: Unhandled data received (data_len: 0xC6): 22.01.4A.00.E0.C6.00.05.79.13.FA.10.0C.7C.0C.7E.0C.7E.0C.7C.0C.7D.0C.7D.0C.7D.0C.7D.0C.7C.0C.7D.0C.7C.0C.7C.0C.7D.0C.7D.0C.7C.0C.7C.01.40.01.2C.01.2C.04.01.2C.01.2C.01.2C.01.2C.00.00.00.00.00.64.01.29.76.05.CF.00.48.00.00.00.00.00.00.00.80.00.23.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00 (105) [01:56:02][D][uart_debug:114]: <<< 30:30:30:30:30:30:30:30:30:38:30:30:30:32:33:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:44:34:34:35:0D

[01:56:12][D][uart_debug:114]: >>> 7E:32:32:30:31:34:36:34:32:45:30:30:32:30:31:46:44:33:33:0D [01:56:12][D][uart_debug:114]: <<< 7E:32:32:30:31:34:41:30:30:45:30:43:36:30:30:30:35:37:39:31:33:46:41:31:30:30:43:37:43:30:43:37:44:30:43:37:44:30:43:37:43:30:43:37:44:30:43:37:43:30:43:37:44:30:43:37:44:30:43:37:43:30:43:37:44:30:43:37:43:30:43:37:43:30:43:37:44:30:43:37:44:30:43:37:43:30:43:37:43:30:31:34:30:30:31:32:43:30:31:32:43:30:34:30:31:32:43:30:31:32:43:30:31:32:43:30:31:32:43:30:30:30:30:30:30:30:30:30:30:36:34:30:31:32:39:37:36:30:35:43:46:30:30:34:38:30:30:30:30:30 [01:56:12][W][seplos_bms:022]: Unhandled data received (data_len: 0xC6): 22.01.4A.00.E0.C6.00.05.79.13.FA.10.0C.7C.0C.7D.0C.7D.0C.7C.0C.7D.0C.7C.0C.7D.0C.7D.0C.7C.0C.7D.0C.7C.0C.7C.0C.7D.0C.7D.0C.7C.0C.7C.01.40.01.2C.01.2C.04.01.2C.01.2C.01.2C.01.2C.00.00.00.00.00.64.01.29.76.05.CF.00.48.00.00.00.00.00.00.00.80.00.23.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00 (105) [01:56:12][D][uart_debug:114]: <<< 30:30:30:30:30:30:30:30:30:38:30:30:30:32:33:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:30:44:34:34:38:0D

syssi commented 1 month ago

I did the same already. The Seplos component isn't compatible.

sarpba commented 1 month ago

It's growing slowly, we need those crazy registers, but give the data back to the homeassistant already, the data is just not in the right place. :) I modified slepos_bms.ccp a little. https://github.com/sarpba/esphome-seplos-bms/blob/main/components/seplos_bms/seplos_bms.cpp Képernyőkép 2024-07-10 110110

sarpba commented 1 month ago

This is how I stand now. It takes time to find out 1-2 things. Képernyőkép 2024-07-10 163807

syssi commented 1 month ago

Good job! Let's summarize our findings:

  1. The right RS485 ports are used the chain the battery packs. The first battery pack acts as mater (0x01) and queries up to 15 slaves (0x02, 0x03, ..., 0x0f) periodically. The protocol looks like Modbus but a custom function code (0x45) is used.
  2. The right RS485 ports can be used to sniff data of the slaves. If some data from the master (0x01) is requested it does respond but a second masters on the same bus isn't a good idea. Transmissions on the right RS485 ports should be avoided therefore.
  3. The left ports doesn't respond to requests with the custom function code (0x45). The configuration tool of the manufacturer uses a Seplos/Pylontech like protocol:
    "~2203 ... \n"
    | | |
    | | Device address
    | Protocol version 2.2
    ^ Preamble / Start of frame

TODOs:

Compare the different CID2 bytes with a Pylontech implementation. Does the BMS supports the same CID2s/commands as a Pylontech battery pack?

syssi commented 1 month ago

Let's move this discussion to the Seplos BMS project because of the Seplos like protocol.