syssi / esphome-jk-bms

ESPHome component to monitor and control a Jikong Battery Management System (JK-BMS) via UART-TTL or BLE
Apache License 2.0
485 stars 165 forks source link

Component jk_modbus took a long time for an operation #623

Open fastvd opened 3 weeks ago

fastvd commented 3 weeks ago

hello. recently I noticed that several times a day the data from my JK BMS + esp32 via UART is lost...searching on the Internet says that this is possible after updating ESPhome itself... here is my log:

INFO ESPHome 2024.10.2 INFO Reading configuration /config/esphome/bms-uart-v2.yaml... INFO Updating https://github.com/syssi/esphome-jk-bms.git@main INFO Starting log output from jk-bms/debug INFO Connected to MQTT broker! [10:30:04][W][component:238]: Components should block for at most 30 ms. [10:30:09][I][jk_bms:071]: Status frame received [10:30:09][W][component:237]: Component jk_modbus took a long time for an operation (195 ms). [10:30:09][W][component:238]: Components should block for at most 30 ms. [10:30:19][I][jk_bms:071]: Status frame received [10:30:20][W][component:237]: Component jk_modbus took a long time for an operation (190 ms). [10:30:20][W][component:238]: Components should block for at most 30 ms.

and my YAML: substitutions: name: jk-bms device_description: "Monitor a JK-BMS using the GPS port (UART-TTL)" external_components_source: github://syssi/esphome-jk-bms@main tx_pin: GPIO16 rx_pin: GPIO17

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

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

external_components:

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

ota: platform: esphome

logger: level: INFO

mqtt: broker: 10.12.17.31 username: !secret mqtt_username password: !secret mqtt_password id: mqtt_client

uart:

jk_modbus:

jk_bms:

binary_sensor:

sensor:

switch:

text_sensor:

is it just me? what are my actions

syssi commented 3 weeks ago

This warning is unrelated an can be ignored:

10:30:20][W][component:237]: Component jk_modbus took a long time for an operation (190 ms).

Are you able to record the log using a serial connection? Retrieving the log per network isn't enough because we would like to record the crash too.

fastvd commented 3 weeks ago

I can, but I don't fully understand what I should do)

fastvd commented 2 weeks ago

?

syssi commented 2 weeks ago

Please write the output of GPIO1/GPIO3 into a file. If the ESP crashs the exception is printed to the serial log and should be part of the file. Please provide the content of the log file here. This will help to identify the root cause of the crash.

fastvd commented 2 weeks ago

can you show an example?

fastvd commented 1 week ago

?

syssi commented 1 week ago

Do you have a computer with Linux installed? You know how to execute some commands on a shell/linux terminal?