-
-
Save vladyspavlov/5ac21cb58923482eff8e7bbb2d0854b3 to your computer and use it in GitHub Desktop.
| # More info and the latest version of the config are now in the repo: https://github.com/vladyspavlov/esphome-must-inverter | |
| substitutions: | |
| inverter_id: inverter | |
| updates: 5s | |
| api_key: xxx | |
| ota_password: xxx | |
| esphome: | |
| name: inverter-monitor | |
| comment: "Inverter monitor" | |
| esp32: | |
| board: esp32dev | |
| framework: | |
| type: esp-idf | |
| wifi: | |
| ssid: !secret wifi_ssid | |
| password: !secret wifi_password | |
| captive_portal: | |
| logger: | |
| level: DEBUG | |
| api: | |
| encryption: | |
| key: ${api_key} | |
| ota: | |
| password: ${ota_password} | |
| uart: | |
| - id: uart_inverter | |
| baud_rate: 19200 | |
| tx_pin: GPIO19 | |
| rx_pin: GPIO18 | |
| stop_bits: 1 | |
| parity: NONE | |
| data_bits: 8 | |
| debug: | |
| direction: BOTH | |
| dummy_receiver: false | |
| modbus: | |
| - id: modbus_inverter | |
| uart_id: uart_inverter | |
| send_wait_time: 200ms | |
| modbus_controller: | |
| - id: must_inverter | |
| address: 0x04 | |
| modbus_id: modbus_inverter | |
| command_throttle: 200ms | |
| setup_priority: -10 | |
| update_interval: ${updates} | |
| sensor: | |
| # charger sensors | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 15201 | |
| name: "PV Charger Workstate" | |
| register_type: holding | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 15202 | |
| name: "PV Charger MPPT state" | |
| register_type: holding | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 15203 | |
| name: "PV Charger Charging state" | |
| register_type: holding | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 15205 | |
| name: "PV Charger Voltage" | |
| register_type: holding | |
| unit_of_measurement: "V" | |
| accuracy_decimals: 1 | |
| icon: mdi:sine-wave | |
| filters: | |
| multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 15206 | |
| name: "PV Charger Battery voltage" | |
| register_type: holding | |
| unit_of_measurement: "V" | |
| accuracy_decimals: 1 | |
| icon: mdi:sine-wave | |
| filters: | |
| multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 15207 | |
| name: "PV Charger Current" | |
| register_type: holding | |
| unit_of_measurement: "A" | |
| accuracy_decimals: 1 | |
| icon: mdi:current-dc | |
| filters: | |
| multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 15208 | |
| register_type: holding | |
| name: "PV Charger power" | |
| unit_of_measurement: "W" | |
| accuracy_decimals: 1 | |
| icon: mdi:flash | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 15209 | |
| register_type: holding | |
| name: "PV Charger Radiator temp" | |
| unit_of_measurement: "°C" | |
| accuracy_decimals: 1 | |
| icon: mdi:temperature-celsius | |
| # - platform: modbus_controller | |
| # modbus_controller_id: must_inverter | |
| # address: 15210 | |
| # register_type: holding | |
| # name: "PV Charger External temp" | |
| # unit_of_measurement: "°C" | |
| # accuracy_decimals: 1 | |
| # icon: mdi:temperature-celsius | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 15212 | |
| register_type: holding | |
| name: "PV Relay" | |
| icon: mdi:electric-switch | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 15217 | |
| register_type: holding | |
| id: charger_total_mwh | |
| internal: true | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 15218 | |
| register_type: holding | |
| id: charger_total_kwh | |
| internal: true | |
| filters: | |
| multiply: 0.1 | |
| - platform: template | |
| name: "PV Charger Accumulated charger power" | |
| unit_of_measurement: kWh | |
| lambda: !lambda 'return (id(charger_total_mwh).state * 1000.0 + id(charger_total_kwh).state );' | |
| accuracy_decimals: 1 | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 15219 | |
| register_type: holding | |
| name: "PV Charger Accumulated day" | |
| unit_of_measurement: "W" | |
| accuracy_decimals: 1 | |
| icon: mdi:flash | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 15220 | |
| register_type: holding | |
| name: "PV Charger Accumulated hour" | |
| unit_of_measurement: "W" | |
| accuracy_decimals: 1 | |
| icon: mdi:flash | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 15221 | |
| register_type: holding | |
| name: "PV Charger Accumulated minute" | |
| unit_of_measurement: "W" | |
| accuracy_decimals: 1 | |
| icon: mdi:flash | |
| # inverter sensors | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25201 | |
| register_type: holding | |
| name: "Inverter Work state" | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25205 | |
| name: "Inverter Battery Voltage" | |
| register_type: holding | |
| unit_of_measurement: "V" | |
| accuracy_decimals: 1 | |
| icon: mdi:sine-wave | |
| filters: | |
| multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25206 | |
| name: "Inverter Voltage" | |
| register_type: holding | |
| unit_of_measurement: "V" | |
| accuracy_decimals: 1 | |
| icon: mdi:sine-wave | |
| filters: | |
| multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25207 | |
| name: "Inverter Grid voltage" | |
| register_type: holding | |
| unit_of_measurement: "V" | |
| accuracy_decimals: 1 | |
| icon: mdi:sine-wave | |
| filters: | |
| multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25207 | |
| name: "Inverter Grid voltage" | |
| register_type: holding | |
| unit_of_measurement: "V" | |
| accuracy_decimals: 1 | |
| icon: mdi:sine-wave | |
| filters: | |
| multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25208 | |
| name: "Inverter BUS Voltage" | |
| register_type: holding | |
| unit_of_measurement: "V" | |
| accuracy_decimals: 1 | |
| icon: mdi:sine-wave | |
| filters: | |
| multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25209 | |
| name: "Inverter Control current" | |
| register_type: holding | |
| unit_of_measurement: "A" | |
| accuracy_decimals: 1 | |
| icon: mdi:current-dc | |
| filters: | |
| multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25210 | |
| name: "Inverter Current" | |
| register_type: holding | |
| unit_of_measurement: "A" | |
| accuracy_decimals: 1 | |
| icon: mdi:current-dc | |
| filters: | |
| multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25211 | |
| name: "Inverter Grid current" | |
| register_type: holding | |
| unit_of_measurement: "A" | |
| accuracy_decimals: 1 | |
| icon: mdi:current-ac | |
| filters: | |
| multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25212 | |
| name: "Inverter Load current" | |
| register_type: holding | |
| unit_of_measurement: "A" | |
| accuracy_decimals: 1 | |
| icon: mdi:current-ac | |
| filters: | |
| multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25213 | |
| name: "Inverter Power" | |
| register_type: holding | |
| unit_of_measurement: "W" | |
| accuracy_decimals: 1 | |
| icon: mdi:flash | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25214 | |
| name: "Inverter Grid power" | |
| register_type: holding | |
| unit_of_measurement: "W" | |
| accuracy_decimals: 1 | |
| value_type: S_WORD | |
| icon: mdi:flash | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25215 | |
| name: "Inverter Load power" | |
| register_type: holding | |
| unit_of_measurement: "W" | |
| accuracy_decimals: 1 | |
| icon: mdi:flash | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25216 | |
| name: "Inverter System load" | |
| register_type: holding | |
| unit_of_measurement: "%" | |
| accuracy_decimals: 1 | |
| icon: mdi:flash | |
| # MOST INFO | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25233 | |
| register_type: holding | |
| name: "Inverter AC radiator temp" | |
| accuracy_decimals: 1 | |
| unit_of_measurement: "°C" | |
| icon: mdi:temperature-celsius | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25234 | |
| register_type: holding | |
| name: "Inverter Transformer temp" | |
| unit_of_measurement: "°C" | |
| accuracy_decimals: 1 | |
| icon: mdi:temperature-celsius | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25235 | |
| register_type: holding | |
| name: "Inverter DC Radiator temp" | |
| unit_of_measurement: "°C" | |
| accuracy_decimals: 1 | |
| icon: mdi:temperature-celsius | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25237 | |
| register_type: holding | |
| name: "Inverter Relay state" | |
| icon: mdi:electric-switch | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25238 | |
| register_type: holding | |
| name: "Inverter Relay state Grid" | |
| icon: mdi:electric-switch | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25239 | |
| register_type: holding | |
| name: "Inverter Relay state Load" | |
| icon: mdi:electric-switch | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25240 | |
| register_type: holding | |
| name: "Inverter Relay state NLine" | |
| icon: mdi:electric-switch | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25241 | |
| register_type: holding | |
| name: "Inverter Relay state DC" | |
| icon: mdi:electric-switch | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25242 | |
| register_type: holding | |
| name: "Inverter Relay state Earth" | |
| icon: mdi:electric-switch | |
| # Inverter Accumulated discharge power | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25247 | |
| register_type: holding | |
| id: discharger_total_mwh | |
| internal: true | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25248 | |
| register_type: holding | |
| id: discharger_total_kwh | |
| internal: true | |
| filters: | |
| multiply: 0.1 | |
| - platform: template | |
| name: "Accumulated discharger power" | |
| unit_of_measurement: kWh | |
| accuracy_decimals: 1 | |
| lambda: !lambda 'return (id(discharger_total_mwh).state * 1000.0 + id(discharger_total_kwh).state);' | |
| # Inverter Accumulated buy power | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25249 | |
| register_type: holding | |
| id: buy_mwh | |
| internal: true | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25250 | |
| register_type: holding | |
| id: buy_kwh | |
| internal: true | |
| filters: | |
| multiply: 0.1 | |
| - platform: template | |
| name: "Accumulated buy power" | |
| unit_of_measurement: kWh | |
| lambda: |- | |
| return (id(buy_mwh).state * 1000.0 + id(buy_kwh).state); | |
| accuracy_decimals: 1 | |
| # Inverter Accumulated sell power | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25251 | |
| register_type: holding | |
| id: sell_mwh | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25252 | |
| register_type: holding | |
| id: sell_kwh | |
| filters: | |
| multiply: 0.1 | |
| - platform: template | |
| name: "Accumulated sell power" | |
| unit_of_measurement: kWh | |
| accuracy_decimals: 1 | |
| lambda: !lambda return (id(sell_mwh).state * 1000.0 + id(sell_kwh).state); | |
| # Inverter Accumulated load power | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25253 | |
| register_type: holding | |
| id: load_mwh | |
| internal: True | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25254 | |
| register_type: holding | |
| id: load_kwh | |
| internal: True | |
| filters: | |
| multiply: 0.1 | |
| - platform: template | |
| name: "Accumulated load power" | |
| unit_of_measurement: kWh | |
| accuracy_decimals: 1 | |
| lambda: !lambda return (id(load_mwh).state * 1000.0 + id(load_kwh).state); | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25273 | |
| register_type: holding | |
| value_type: S_WORD | |
| name: "Inverter Battery power" | |
| unit_of_measurement: "W" | |
| accuracy_decimals: 1 | |
| icon: mdi:flash | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25274 | |
| register_type: holding | |
| value_type: S_WORD | |
| name: "Inverter Battery current" | |
| unit_of_measurement: "A" | |
| accuracy_decimals: 1 | |
| icon: mdi:current-dc | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25275 | |
| register_type: holding | |
| value_type: S_WORD | |
| name: "Inverter Battery grade" | |
| unit_of_measurement: "V" | |
| icon: mdi:alpha-V | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 25277 | |
| register_type: holding | |
| name: "Inverter Rated power" | |
| unit_of_measurement: "W" | |
| accuracy_decimals: 1 | |
| icon: mdi:flash | |
| select: | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| id: energy_use_mode | |
| name: "Inverter Energy use mode (parameter 00)" | |
| address: 20109 | |
| optionsmap: | |
| "SBU (Solar/battery/utility)": 1 | |
| "SUB (Solar/utility/battery)": 2 | |
| "UTI (Utility only)": 3 | |
| "SOL (Solar only)": 4 | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| id: charger_source_priority | |
| name: "Inverter Charger source priority (parameter 10)" | |
| address: 20143 | |
| optionsmap: | |
| "CSO (Solar first)": 0 | |
| "SNU (Solar and utility)": 2 | |
| "OSO (Solar only)": 3 | |
| - platform: modbus_controller | |
| modbus_controller_id: must_inverter | |
| address: 20111 | |
| id: inverter_ac_input_voltage_range | |
| name: "Inverter AC input voltage range (02)" | |
| optionsmap: | |
| "VDE (184-253VAC)": 0 | |
| "UPS (170-280VAC)": 1 | |
| "APL (90-280VAC)": 2 | |
| "GEN (Generator)": 3 | |
| number: | |
| - platform: modbus_controller | |
| id: batt_float_voltage | |
| name: "PV Charger Float voltage" | |
| unit_of_measurement: "V" | |
| address: 10103 | |
| value_type: U_WORD | |
| multiply: 10 | |
| - platform: modbus_controller | |
| id: batt_absorb_voltage | |
| name: "PV Charger Absorb voltage" | |
| unit_of_measurement: "V" | |
| address: 10104 | |
| value_type: U_WORD | |
| multiply: 10 | |
| - platform: modbus_controller | |
| id: batt_stop_dischg | |
| name: "Inverter Battery stop discharging voltage" | |
| unit_of_measurement: "V" | |
| address: 20118 | |
| value_type: U_WORD | |
| lambda: "return x * 0.1; " | |
| write_lambda: |- | |
| return x * 10 ; | |
| - platform: modbus_controller | |
| id: batt_stop_chg | |
| name: "Inverter Battery stop charging voltage" | |
| unit_of_measurement: "V" | |
| address: 20119 | |
| value_type: U_WORD | |
| multiply: 10 | |
| - platform: modbus_controller | |
| id: batt_low_voltage | |
| name: "Inverter Battery low voltage" | |
| unit_of_measurement: "V" | |
| address: 20127 | |
| value_type: U_WORD | |
| multiply: 10 | |
| - platform: modbus_controller | |
| id: batt_high_voltage | |
| name: "Inverter Battery high voltage" | |
| unit_of_measurement: "V" | |
| address: 20128 | |
| value_type: U_WORD | |
| multiply: 10 | |
| - platform: modbus_controller | |
| id: solar_charger_current | |
| name: "Inverter Charger current" | |
| unit_of_measurement: "A" | |
| address: 20132 | |
| value_type: U_WORD | |
| multiply: 10 |
uart->rs в термоусадку ще засунув, що б ніде не коротнув
uart->rs в термоусадку ще засунув, що б ніде не коротнув
Він на скотчі. Не коротне )
Виявляється вся основна проблема якраз в цих конверторах USB-RS485/TTL-RS485, а саме в способі генерування сигналу "TXEnable" на мікросхемі MAX485 (чи її аналог).
Гляньте сюди, можливо допоможе вам. vladyspavlov/esphome-must-inverter#9
Конкретно той варіант не допоміг, не працює і все... Хоча як я зрозумів, то там із відмінностей тільки flow_control_pin:
У мене все запрацювало в порту USB WiFi. Згідно опису https://github.com/vladyspavlov/esphome-must-inverter
Нюанси:
1. Між USB та RS485-TTL залишив тільки A+ і B-. GND прибрав. 2. Переробив шнурок між інвертором і батареєю - там був повний патчкод з відведеною парою orange-white, orange (TIA/EIA568B). Зробив новий шнурок, в якому залишив лише GND (green-white), CANH (blue) та CANL(blue-white). _В документації на батарею нічого не сказано про інші контакти в RJ45 для CAN, але є підозра, що щось там є і це щось потрапляло в RS485, що давало численні CRC error та Timeout в D+ і D- в порту USB WiFi_Конфигурація ESPHome для ESP32 NodeMCU - моя з https://github.com/vladyspavlov/esphome-must-inverter
Все працює штатно.
PS: Залишилось знайти рішення для корпусу, в який можна охайно розташувати esp32, rs485-ttl та USB-A male, і який буде не дуже колгоспно виглядати :)
Ну, в мене батарея проста, ніяк не спілкується з інвертором, тож і перешкод немає ніяких від неї...
Гадаю, що все ж косяк із модулями 8266 в моєму випадку..
А для звязку по RS485 якраз тільки а+ і в- потрібно... GND то для живлення (ну і +5в)
Всім привіт! А поясніть будь-ласка (може де не побачив чи пропустив) чому на всіх схемах і фото бачу що підключаються і знімають дані із USB-A (куди зазвичай включається рідний Wi-Fi свисток). А чим не підходить USB-B порт, що поряд із COM-виходом?
Всім привіт! А поясніть будь-ласка (може де не побачив чи пропустив) чому на всіх схемах і фото бачу що підключаються і знімають дані із USB-A (куди зазвичай включається рідний Wi-Fi свисток). А чим не підходить USB-B порт, що поряд із COM-виходом?
Вітаю!
Та підходить і він, але тільки для прямого підєднання до хоста (ПК) через ЮСБ-кабель, а це до 5м пасивним і 10-15м активним кабелем. Додатково ще захист від перешкод та імпульсних наводок...
Таким чином він підходить якщо сервер НА поряд біля інвертора, ну і доповнення потрібно інше (не ЕСПХоме)...
Там один і той же інтерфейс, що й СОМ чи Вай-Фай, просто через конвертер на СН340. Якось так...
Ага, зрозумів. Просто в основний USB-A порт в мене підключений нативний Wi-Fi свисток. Нехай вже там і буде, у хмарі малює якісь дані. А от для себе (по інженерськи:-)) хотілося б більше даних витягувати (і у Grafana дивитись), тому в USB-B порт чи COM порт підключу якусь ESP через конвертер і буду пробувати вичитати дані.
Ага, зрозумів. Просто в основний USB-A порт в мене підключений нативний Wi-Fi свисток. Нехай вже там і буде, у хмарі малює якісь дані. А от для себе (по інженерськи:-)) хотілося б більше даних витягувати (і у Grafana дивитись), тому в USB-B порт чи COM порт підключу якусь ESP через конвертер і буду пробувати вичитати дані.
Задумка хороша, але мені здається. що так не вийде...
Справа в тому. що обмін даними на всіх трьох портах дублюється (на скільки я визначив, принаймні в моєму випадку саме так). Таким чином потрібно обирати щось одне, бо інакше вони заважатимуть одне одному - вони зєднані одним і тим же UART процесора. Можна хіба що моніторити, тобто прослуховувати в режимі R/O що "відбувається" на лінії, коли йде обмін між адаптером і інвертором...
Спробую.... Якщо таки не вийде - тоді доведеться рідний Wi-Fi модуль зняти...:( Жаль що прямо через нього не можна якось знімати якісь дані (наскільки я зрозумів).
Ага, зрозумів. Просто в основний USB-A порт в мене підключений нативний Wi-Fi свисток. Нехай вже там і буде, у хмарі малює якісь дані. А от для себе (по інженерськи:-)) хотілося б більше даних витягувати (і у Grafana дивитись), тому в USB-B порт чи COM порт підключу якусь ESP через конвертер і буду пробувати вичитати дані.
Якщо Ви готові посеред ночі прокидатися від істерики в телефоні про 100500 помилок (в т.ч. і критичних) - то пробуйте )
Одна шина rs485 - один майстер. При паралельному опитуванні шини конфлікти будуть. Періодично, не дуже часто (бо логгер опитує шину досить розслаблено і оновлює дані раз на 5 хвилин, якщо я не помиляюсь), але гарантовано. І якщо в процесі опитування шини щось не склалося, то починається істерика з генерацією 10-15 повідомлень в телефон.
Тому я просто замінив логгер на свій свисток з потрібною мені фунціональністю і вирішив одразу декілька проблем.
- Локальність моніторингу і управління поза будь-якою залежністю від чужих сервісів та інтернета взагалі.
- Гнучкість налаштувань і повна підконтрольність мого обладнання мені, а не якимсь невідомим китайцям.
- Легкість вирішення будь-яких проблем (opensource код і швидка адаптація під потреби, що можуть змінюватись з часом і обставинами.
Так що - рішення Ваше, але я після півроку експлуатації геть не бачу жодної причини триматись за їхній логгер, що працює з їхньою хмарою. Він у порівнянні з можливостями esphome+HA - повне лайно.
Всім привіт! А поясніть будь-ласка (може де не побачив чи пропустив) чому на всіх схемах і фото бачу що підключаються і знімають дані із USB-A (куди зазвичай включається рідний Wi-Fi свисток). А чим не підходить USB-B порт, що поряд із COM-виходом?
Тому що в USB-B немає +5V та GND (принаймні в моєму Must PV19 6248 EXP). А хочеться ж живлення брати із порта, а не тягнути окремий шнурок від БЖ в розетці ))
Всім привіт! А поясніть будь-ласка (може де не побачив чи пропустив) чому на всіх схемах і фото бачу що підключаються і знімають дані із USB-A (куди зазвичай включається рідний Wi-Fi свисток). А чим не підходить USB-B порт, що поряд із COM-виходом?
Тому що в USB-B немає +5V та GND (принаймні в моєму Must PV19 6248 EXP). А хочеться ж живлення брати із порта, а не тягнути окремий шнурок від БЖ в розетці ))
Це вже я теж зрозумів, дякую:)
Ага, зрозумів. Просто в основний USB-A порт в мене підключений нативний Wi-Fi свисток. Нехай вже там і буде, у хмарі малює якісь дані. А от для себе (по інженерськи:-)) хотілося б більше даних витягувати (і у Grafana дивитись), тому в USB-B порт чи COM порт підключу якусь ESP через конвертер і буду пробувати вичитати дані.
Якщо Ви готові посеред ночі прокидатися від істерики в телефоні про 100500 помилок (в т.ч. і критичних) - то пробуйте ) Одна шина rs485 - один майстер. При паралельному опитуванні шини конфлікти будуть. Періодично, не дуже часто (бо логгер опитує шину досить розслаблено і оновлює дані раз на 5 хвилин, якщо я не помиляюсь), але гарантовано. І якщо в процесі опитування шини щось не склалося, то починається істерика з генерацією 10-15 повідомлень в телефон.
Тому я просто замінив логгер на свій свисток з потрібною мені фунціональністю і вирішив одразу декілька проблем.
- Локальність моніторингу і управління поза будь-якою залежністю від чужих сервісів та інтернета взагалі.
- Гнучкість налаштувань і повна підконтрольність мого обладнання мені, а не якимсь невідомим китайцям.
- Легкість вирішення будь-яких проблем (opensource код і швидка адаптація під потреби, що можуть змінюватись з часом і обставинами.
Так що - рішення Ваше, але я після півроку експлуатації геть не бачу жодної причини триматись за їхній логгер, що працює з їхньою хмарою. Він у порівнянні з можливостями esphome+HA - повне лайно.
Дякую за розширену відповідь. Поспішив я з покупкою Wi-Fi модуля.... Ну ладно, нехай буде в запасі:)
Привіт !
Хочу поділитися інформацією. Мені вдалось знайти регістр SOC батареї.
Я використовую : MUST PH18 5448 pro + jk bms JK-PB2A16S20P Інвертор спілкується з батарею по протоколу CAN Pylontech.
Відсотки SOC батареї що відображаються на інверторі можна знайти у регістрі 44180 - це пряме значення.
Для додавання датчика використана конфігурація:
- platform: modbus_controller # Battery SOC MUST PH18 5448 PRO + CAN battery PYLON tech
name: "Battery SOC"
register_type: holding
address: 44180
unit_of_measurement: "%"
accuracy_decimals: 0
device_class: battery
value_type: U_WORD
PS: Я думаю що це буде стосуватися інверторів серії PH18 PV18 може хто підтвердить ЩЕ ?
Доброго дня всем. Кто сталкивался со сменой ID ? PC1800 3 шт - 3 ESP . Хочу оставить одну запаралелив порт modbus.
Плата для паралельного підключення наче сама комунікує між інвериорами і тоді достатньо вичитувати пвраметри тільки з 1. Це в теорії. Як воно насправді не знаю.
общался по тел указаному выше . Китайцы крутят, на вопрос толком не отвечают. А менять регистры вслепую страшно.
pv18 есть таблица .как добавить ?
pv18 есть таблица .как добавить ?
https://github.com/vladyspavlov/esphome-must-inverter
Тут може вже є, те що ви шукали.
Якщо у вас щось новеньке, то додайте пул реквест, будь ласка
добавить нечего , все есть.
может кому надо
text_sensor:
- platform: modbus_controller
modbus_controller_id: d
id: Charger_workstate_d
name: "Charger workstate"
address: 15201
register_type: holding
raw_encode: HEXBYTES
lambda: |-
uint16_t value = modbus_controller::word_from_hex_str(x, 0);
switch (value) {
case 0: return std::string("Initialization Mode");
case 1: return std::string("Selftest Mode");
case 2: return std::string("Work Mode");
case 3: return std::string("Stop Mode");
default: return std::string("Unknown");
}
return x;
Hello! Sorry for offtop, I'm not using ESPHome, just trying to get values from PV18 inverter using arduino UNO (with ESP8266 onboard), MAX RS485 to TTL adapter, but i'm unable to get it to work. I'm using ModbusMaster library, anytime I try to read registers, it throws Modbus error: 226 (which means Timeout). Help please. Much appreciated.
#include <SoftwareSerial.h>
#include <ModbusMaster.h>
#define RS485_DIR 4 // DE, RE
SoftwareSerial rs485(2, 3); // RX, TX (RO, DI)
ModbusMaster node;
void preTransmission()
{
digitalWrite(RS485_DIR, HIGH); // Sending mode
}
void postTransmission()
{
digitalWrite(RS485_DIR, LOW); // Receiving mode
}
void setup()
{
Serial.begin(9600);
rs485.begin(9600); // Modbus baud
pinMode(RS485_DIR, OUTPUT);
digitalWrite(RS485_DIR, LOW);
node.begin(1, rs485); // slave ID = 1?
node.preTransmission(preTransmission);
node.postTransmission(postTransmission);
Serial.println("Starting Modbus polling...");
delay(1000);
}
void loop()
{
// 15206: PV Voltage, 15207: PV Current, 15208: Battery Voltage
uint8_t result = node.readHoldingRegisters(15206, 3); // 1 arg - register, 2 arg - count
if (result == node.ku8MBSuccess)
{
float pvVoltage = node.getResponseBuffer(0) * 0.1;
float pvCurrent = node.getResponseBuffer(1) * 0.1;
float battVoltage = node.getResponseBuffer(2) * 0.1;
Serial.print("PV Voltage: ");
Serial.print(pvVoltage);
Serial.print(" V | PV Current: ");
Serial.print(pvCurrent);
Serial.print(" A | Battery Voltage: ");
Serial.print(battVoltage);
Serial.println(" V");
}
else
{
Serial.print("Modbus error: ");
Serial.println(result);
}
delay(2000);
}Вітаю!
Хочу підключити Must 5248 Pro
Зібрав на таких модулях :
https://www.aliexpress.com/item/1005009233985760.html
https://www.aliexpress.com/item/1005007196524179.html
Но HA не бачить данних. В esp такий лог:
INFO ESPHome 2025.12.2 INFO Reading configuration /config/esphome/esp8266-pv19.yaml... WARNING 'pv19_6248_exp': Using the '_' (underscore) character in the hostname is discouraged as it can cause problems with some DHCP and local name services. For more information, see https://esphome.io/guides/faq/#why-shouldnt-i-use-underscores-in-my-device-name WARNING The minimum WiFi authentication mode (wifi -> min_auth_mode) is not set. This controls the weakest encryption your device will accept when connecting to WiFi. Currently defaults to WPA (less secure), but will change to WPA2 (more secure) in 2026.6.0. WPA uses TKIP encryption which has known security vulnerabilities and should be avoided. WPA2 uses AES encryption which is significantly more secure. To silence this warning, explicitly set min_auth_mode under 'wifi:'. If your router supports WPA2 or WPA3, set 'min_auth_mode: WPA2'. If your router only supports WPA, set 'min_auth_mode: WPA'. INFO Starting log output from pv19_6248_exp.local using esphome API INFO Successfully resolved pv19_6248_exp.local in 0.052s INFO Successfully connected to pv19_6248_exp @ 192.168.2.37 in 0.006s INFO Successful handshake with pv19_6248_exp @ 192.168.2.37 in 2.349s [10:35:03.572][I][app:194]: ESPHome version 2025.12.2 compiled on Dec 29 2025, 08:56:19 [10:35:03.619][C][logger:261]: Logger: [10:35:03.619][C][logger:261]: Max Level: DEBUG [10:35:03.619][C][logger:261]: Initial Level: DEBUG [10:35:03.619][C][logger:267]: Log Baud Rate: 0 [10:35:03.619][C][logger:267]: Hardware UART: UART0 [10:35:03.620][C][uart.arduino_esp8266:131]: UART Bus: [10:35:03.620][C][uart.arduino_esp8266:132]: TX Pin: GPIO13 [10:35:03.620][C][uart.arduino_esp8266:133]: RX Pin: GPIO12 [10:35:03.621][C][uart.arduino_esp8266:135]: RX Buffer Size: 256 [10:35:03.621][C][uart.arduino_esp8266:137]: Baud Rate: 19200 baud [10:35:03.621][C][uart.arduino_esp8266:137]: Data Bits: 8 [10:35:03.621][C][uart.arduino_esp8266:137]: Parity: NONE [10:35:03.621][C][uart.arduino_esp8266:137]: Stop bits: 1 [10:35:03.622][C][uart.arduino_esp8266:146]: Using software serial [10:35:03.622][C][modbus:196]: Modbus: [10:35:03.623][C][modbus:198]: Send Wait Time: 350 ms [10:35:03.623][C][modbus:198]: CRC Disabled: NO [10:35:03.623][C][template.sensor:017]: Template Sensor 'Accumulated charger power' [10:35:03.623][C][template.sensor:017]: State Class: 'total_increasing' [10:35:03.623][C][template.sensor:017]: Unit of Measurement: 'kWh' [10:35:03.623][C][template.sensor:017]: Accuracy Decimals: 1 [10:35:03.624][C][template.sensor:027]: Device Class: 'energy' [10:35:03.624][C][template.sensor:399]: Update Interval: 60.0s [10:35:03.634][C][template.sensor:017]: Template Sensor 'Accumulated discharger power' [10:35:03.634][C][template.sensor:017]: State Class: 'total_increasing' [10:35:03.634][C][template.sensor:017]: Unit of Measurement: 'kWh' [10:35:03.634][C][template.sensor:017]: Accuracy Decimals: 1 [10:35:03.641][C][template.sensor:027]: Device Class: 'energy' [10:35:03.642][C][template.sensor:399]: Update Interval: 60.0s [10:35:03.642][C][template.sensor:017]: Template Sensor 'Accumulated INV charger power' [10:35:03.642][C][template.sensor:017]: State Class: 'total_increasing' [10:35:03.642][C][template.sensor:017]: Unit of Measurement: 'kWh' [10:35:03.642][C][template.sensor:017]: Accuracy Decimals: 1 [10:35:03.644][C][template.sensor:027]: Device Class: 'energy' [10:35:03.644][C][template.sensor:399]: Update Interval: 60.0s [10:35:03.652][C][template.sensor:017]: Template Sensor 'Accumulated buy power' [10:35:03.652][C][template.sensor:017]: State Class: 'total_increasing' [10:35:03.652][C][template.sensor:017]: Unit of Measurement: 'kWh' [10:35:03.652][C][template.sensor:017]: Accuracy Decimals: 1 [10:35:03.656][C][template.sensor:027]: Device Class: 'energy' [10:35:03.656][C][template.sensor:399]: Update Interval: 60.0s [10:35:03.664][C][template.sensor:017]: Template Sensor 'Accumulated sell power' [10:35:03.664][C][template.sensor:017]: State Class: 'total_increasing' [10:35:03.664][C][template.sensor:017]: Unit of Measurement: 'kWh' [10:35:03.664][C][template.sensor:017]: Accuracy Decimals: 1 [10:35:03.667][C][template.sensor:027]: Device Class: 'energy' [10:35:03.668][C][template.sensor:399]: Update Interval: 60.0s [10:35:03.676][C][template.sensor:017]: Template Sensor 'Accumulated load power' [10:35:03.676][C][template.sensor:017]: State Class: 'total_increasing' [10:35:03.676][C][template.sensor:017]: Unit of Measurement: 'kWh' [10:35:03.676][C][template.sensor:017]: Accuracy Decimals: 1 [10:35:03.680][C][template.sensor:027]: Device Class: 'energy' [10:35:03.680][C][template.sensor:399]: Update Interval: 60.0s [10:35:03.688][C][template.sensor:017]: Template Sensor 'Accumulated grid charge power' [10:35:03.688][C][template.sensor:017]: State Class: 'total_increasing' [10:35:03.688][C][template.sensor:017]: Unit of Measurement: 'kWh' [10:35:03.688][C][template.sensor:017]: Accuracy Decimals: 1 [10:35:03.689][C][template.sensor:027]: Device Class: 'energy' [10:35:03.689][C][template.sensor:399]: Update Interval: 60.0s [10:35:03.700][C][template.number:016]: Template Number 'INV Enable grid charge' [10:35:03.705][C][template.number:023]: Unit of Measurement: 'V' [10:35:03.705][C][template.number:027]: Device Class: 'voltage' [10:35:03.705][C][template.number:049]: Optimistic: YES [10:35:03.706][C][template.number:399]: Update Interval: 60.0s [10:35:03.712][C][template.number:016]: Template Number 'INV Disable grid charge' [10:35:03.712][C][template.number:023]: Unit of Measurement: 'V' [10:35:03.713][C][template.number:027]: Device Class: 'voltage' [10:35:03.713][C][template.number:049]: Optimistic: YES [10:35:03.713][C][template.number:399]: Update Interval: 60.0s [10:35:03.720][C][modbus.number:016]: modbus.numberModbus Number 'Float voltage' [10:35:03.723][C][modbus.number:023]: modbus.number Unit of Measurement: 'V' [10:35:03.735][C][modbus.number:016]: modbus.numberModbus Number 'Absorb voltage' [10:35:03.741][C][modbus.number:023]: modbus.number Unit of Measurement: 'V' [10:35:03.741][C][modbus.number:016]: modbus.numberModbus Number 'Battery stop discharging voltage' [10:35:03.742][C][modbus.number:023]: modbus.number Unit of Measurement: 'V' [10:35:03.753][C][modbus.number:016]: modbus.numberModbus Number 'Battery stop charging voltage' [10:35:03.756][C][modbus.number:023]: modbus.number Unit of Measurement: 'V' [10:35:03.760][C][modbus.number:016]: modbus.numberModbus Number 'Battery low voltage' [10:35:03.761][C][modbus.number:023]: modbus.number Unit of Measurement: 'V' [10:35:03.765][D][modbus_controller:039]: Modbus command to device=4 register=0x4EAF no response received - removed from send queue [10:35:03.773][C][modbus.number:016]: modbus.numberModbus Number 'Battery high voltage' [10:35:03.779][C][modbus.number:023]: modbus.number Unit of Measurement: 'V' [10:35:03.784][C][modbus.number:016]: modbus.numberModbus Number 'Max Grid Charger current' [10:35:03.784][C][modbus.number:023]: modbus.number Unit of Measurement: 'A' [10:35:03.798][C][modbus.number:016]: modbus.numberModbus Number 'Max Combine Charger current' [10:35:03.801][C][modbus.number:023]: modbus.number Unit of Measurement: 'A' [10:35:03.818][C][restart:092]: Restart Switch 'pv19_6248_exp restart' [10:35:03.818][C][restart:092]: Restore Mode: always OFF [10:35:03.823][C][restart:100]: Icon: 'mdi:restart' [10:35:03.823][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'State of Charge' [10:35:03.823]modbus_controller.sensor State Class: '' [10:35:03.823]modbus_controller.sensor Unit of Measurement: '%' [10:35:03.823]modbus_controller.sensor Accuracy Decimals: 0 [10:35:03.839][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'State of Health' [10:35:03.839]modbus_controller.sensor State Class: '' [10:35:03.839]modbus_controller.sensor Unit of Measurement: '%' [10:35:03.839]modbus_controller.sensor Accuracy Decimals: 0 [10:35:03.844][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'Charger workstate' [10:35:03.844]modbus_controller.sensor State Class: '' [10:35:03.844]modbus_controller.sensor Unit of Measurement: '' [10:35:03.844]modbus_controller.sensor Accuracy Decimals: 0 [10:35:03.845][C][modbus_controller.sensor:031]: modbus_controller.sensor Icon: 'mdi:battery-charging-50' [10:35:03.858][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'MPPT state' [10:35:03.858]modbus_controller.sensor State Class: '' [10:35:03.858]modbus_controller.sensor Unit of Measurement: '' [10:35:03.858]modbus_controller.sensor Accuracy Decimals: 0 [10:35:03.865][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'Charging state' [10:35:03.865]modbus_controller.sensor State Class: '' [10:35:03.865]modbus_controller.sensor Unit of Measurement: '' [10:35:03.865]modbus_controller.sensor Accuracy Decimals: 0 [10:35:03.879][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'Inverter Error message 1' [10:35:03.879]modbus_controller.sensor State Class: '' [10:35:03.879]modbus_controller.sensor Unit of Measurement: '' [10:35:03.879]modbus_controller.sensor Accuracy Decimals: 0 [10:35:03.886][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'Inverter Error message 2' [10:35:03.886]modbus_controller.sensor State Class: '' [10:35:03.886]modbus_controller.sensor Unit of Measurement: '' [10:35:03.886]modbus_controller.sensor Accuracy Decimals: 0 [10:35:03.898][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'Inverter Error message 3' [10:35:03.898]modbus_controller.sensor State Class: '' [10:35:03.898]modbus_controller.sensor Unit of Measurement: '' [10:35:03.898]modbus_controller.sensor Accuracy Decimals: 0 [10:35:03.906][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'Inverter Warning message 1' [10:35:03.906]modbus_controller.sensor State Class: '' [10:35:03.906]modbus_controller.sensor Unit of Measurement: '' [10:35:03.906]modbus_controller.sensor Accuracy Decimals: 0 [10:35:03.918][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'Inverter Warning message 2' [10:35:03.918]modbus_controller.sensor State Class: '' [10:35:03.918]modbus_controller.sensor Unit of Measurement: '' [10:35:03.918]modbus_controller.sensor Accuracy Decimals: 0 [10:35:03.925][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'Charger Error message' [10:35:03.925]modbus_controller.sensor State Class: '' [10:35:03.925]modbus_controller.sensor Unit of Measurement: '' [10:35:03.925]modbus_controller.sensor Accuracy Decimals: 0 [10:35:03.941][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'Charger Warning message' [10:35:03.941]modbus_controller.sensor State Class: '' [10:35:03.941]modbus_controller.sensor Unit of Measurement: '' [10:35:03.941]modbus_controller.sensor Accuracy Decimals: 0 [10:35:03.948][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'PV1 voltage' [10:35:03.948]modbus_controller.sensor State Class: '' [10:35:03.948]modbus_controller.sensor Unit of Measurement: 'V' [10:35:03.948]modbus_controller.sensor Accuracy Decimals: 1 [10:35:03.953][C][modbus_controller.sensor:031]: modbus_controller.sensor Icon: 'mdi:sine-wave' [10:35:03.961][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'PV2 voltage' [10:35:03.961]modbus_controller.sensor State Class: '' [10:35:03.961]modbus_controller.sensor Unit of Measurement: 'V' [10:35:03.961]modbus_controller.sensor Accuracy Decimals: 1 [10:35:03.962][C][modbus_controller.sensor:031]: modbus_controller.sensor Icon: 'mdi:sine-wave' [10:35:03.968][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'Battery voltage (charger side)' [10:35:03.968]modbus_controller.sensor State Class: '' [10:35:03.968]modbus_controller.sensor Unit of Measurement: 'V' [10:35:03.968]modbus_controller.sensor Accuracy Decimals: 1 [10:35:03.972][C][modbus_controller.sensor:031]: modbus_controller.sensor Icon: 'mdi:sine-wave' [10:35:03.981][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'PV1 Charger Current' [10:35:03.981]modbus_controller.sensor State Class: '' [10:35:03.981]modbus_controller.sensor Unit of Measurement: 'A' [10:35:03.981]modbus_controller.sensor Accuracy Decimals: 1 [10:35:03.985][C][modbus_controller.sensor:031]: modbus_controller.sensor Icon: 'mdi:current-dc' [10:35:03.990][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'PV2 Charger Current' [10:35:03.990]modbus_controller.sensor State Class: '' [10:35:03.990]modbus_controller.sensor Unit of Measurement: 'A' [10:35:03.990]modbus_controller.sensor Accuracy Decimals: 1 [10:35:03.991][C][modbus_controller.sensor:031]: modbus_controller.sensor Icon: 'mdi:current-dc' [10:35:04.004][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'PV1 Charger power' [10:35:04.004]modbus_controller.sensor State Class: '' [10:35:04.004]modbus_controller.sensor Unit of Measurement: 'W' [10:35:04.004]modbus_controller.sensor Accuracy Decimals: 1 [10:35:04.007][C][modbus_controller.sensor:027]: modbus_controller.sensor Device Class: 'power' [10:35:04.008][C][modbus_controller.sensor:031]: modbus_controller.sensor Icon: 'mdi:flash' [10:35:04.013][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'PV2 Charger power' [10:35:04.013]modbus_controller.sensor State Class: '' [10:35:04.013]modbus_controller.sensor Unit of Measurement: 'W' [10:35:04.013]modbus_controller.sensor Accuracy Decimals: 1 [10:35:04.014][C][modbus_controller.sensor:027]: modbus_controller.sensor Device Class: 'power' [10:35:04.014][C][modbus_controller.sensor:031]: modbus_controller.sensor Icon: 'mdi:flash' [10:35:04.023][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'Battery Relay' [10:35:04.023]modbus_controller.sensor State Class: '' [10:35:04.023]modbus_controller.sensor Unit of Measurement: '' [10:35:04.023]modbus_controller.sensor Accuracy Decimals: 0 [10:35:04.032][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'charger_total_mwh' [10:35:04.032]modbus_controller.sensor State Class: '' [10:35:04.032]modbus_controller.sensor Unit of Measurement: '' [10:35:04.032]modbus_controller.sensor Accuracy Decimals: 0 [10:35:04.043][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'charger_total_kwh' [10:35:04.043]modbus_controller.sensor State Class: '' [10:35:04.043]modbus_controller.sensor Unit of Measurement: '' [10:35:04.043]modbus_controller.sensor Accuracy Decimals: 0 [10:35:04.053][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'Inverter Work state' [10:35:04.053]modbus_controller.sensor State Class: '' [10:35:04.053]modbus_controller.sensor Unit of Measurement: '' [10:35:04.053]modbus_controller.sensor Accuracy Decimals: 0 [10:35:04.065][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'Battery voltage' [10:35:04.065]modbus_controller.sensor State Class: '' [10:35:04.065]modbus_controller.sensor Unit of Measurement: 'V' [10:35:04.065]modbus_controller.sensor Accuracy Decimals: 1 [10:35:04.068][C][modbus_controller.sensor:031]: modbus_controller.sensor Icon: 'mdi:sine-wave' [10:35:04.074][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'Inverter voltage' [10:35:04.074]modbus_controller.sensor State Class: '' [10:35:04.074]modbus_controller.sensor Unit of Measurement: 'V' [10:35:04.074]modbus_controller.sensor Accuracy Decimals: 1 [10:35:04.075][C][modbus_controller.sensor:031]: modbus_controller.sensor Icon: 'mdi:sine-wave' [10:35:04.087][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'Grid voltage' [10:35:04.087]modbus_controller.sensor State Class: '' [10:35:04.087]modbus_controller.sensor Unit of Measurement: 'V' [10:35:04.087]modbus_controller.sensor Accuracy Decimals: 1 [10:35:04.091][C][modbus_controller.sensor:031]: modbus_controller.sensor Icon: 'mdi:sine-wave' [10:35:04.096][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'Inverter power' [10:35:04.096]modbus_controller.sensor State Class: '' [10:35:04.096]modbus_controller.sensor Unit of Measurement: 'W' [10:35:04.096]modbus_controller.sensor Accuracy Decimals: 1 [10:35:04.097][C][modbus_controller.sensor:031]: modbus_controller.sensor Icon: 'mdi:flash' [10:35:04.107][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'Grid power' [10:35:04.107]modbus_controller.sensor State Class: '' [10:35:04.107]modbus_controller.sensor Unit of Measurement: 'W' [10:35:04.107]modbus_controller.sensor Accuracy Decimals: 1 [10:35:04.112][C][modbus_controller.sensor:031]: modbus_controller.sensor Icon: 'mdi:flash' [10:35:04.117][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'Load power' [10:35:04.117]modbus_controller.sensor State Class: '' [10:35:04.117]modbus_controller.sensor Unit of Measurement: 'W' [10:35:04.117]modbus_controller.sensor Accuracy Decimals: 1 [10:35:04.118][C][modbus_controller.sensor:031]: modbus_controller.sensor Icon: 'mdi:flash' [10:35:04.128][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'System load' [10:35:04.128]modbus_controller.sensor State Class: '' [10:35:04.128]modbus_controller.sensor Unit of Measurement: '%' [10:35:04.128]modbus_controller.sensor Accuracy Decimals: 1 [10:35:04.131][C][modbus_controller.sensor:031]: modbus_controller.sensor Icon: 'mdi:flash' [10:35:04.138][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'AC radiator temp' [10:35:04.138]modbus_controller.sensor State Class: '' [10:35:04.138]modbus_controller.sensor Unit of Measurement: '°C' [10:35:04.138]modbus_controller.sensor Accuracy Decimals: 1 [10:35:04.147][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'Transformer temp' [10:35:04.147]modbus_controller.sensor State Class: '' [10:35:04.147]modbus_controller.sensor Unit of Measurement: '°C' [10:35:04.147]modbus_controller.sensor Accuracy Decimals: 1 [10:35:04.162][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'DC Radiator temp' [10:35:04.162]modbus_controller.sensor State Class: '' [10:35:04.162]modbus_controller.sensor Unit of Measurement: '°C' [10:35:04.162]modbus_controller.sensor Accuracy Decimals: 1 [10:35:04.168][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'discharger_total_mwh' [10:35:04.168]modbus_controller.sensor State Class: '' [10:35:04.168]modbus_controller.sensor Unit of Measurement: '' [10:35:04.168]modbus_controller.sensor Accuracy Decimals: 0 [10:35:04.181][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'discharger_total_kwh' [10:35:04.181]modbus_controller.sensor State Class: '' [10:35:04.181]modbus_controller.sensor Unit of Measurement: '' [10:35:04.181]modbus_controller.sensor Accuracy Decimals: 0 [10:35:04.188][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'inv_charger_total_mwh' [10:35:04.188]modbus_controller.sensor State Class: '' [10:35:04.188]modbus_controller.sensor Unit of Measurement: '' [10:35:04.188]modbus_controller.sensor Accuracy Decimals: 0 [10:35:04.202][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'inv_charger_total_kwh' [10:35:04.202]modbus_controller.sensor State Class: '' [10:35:04.202]modbus_controller.sensor Unit of Measurement: '' [10:35:04.202]modbus_controller.sensor Accuracy Decimals: 0 [10:35:04.208][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'buy_mwh' [10:35:04.208]modbus_controller.sensor State Class: '' [10:35:04.208]modbus_controller.sensor Unit of Measurement: '' [10:35:04.208]modbus_controller.sensor Accuracy Decimals: 0 [10:35:04.222][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'buy_kwh' [10:35:04.222]modbus_controller.sensor State Class: '' [10:35:04.222]modbus_controller.sensor Unit of Measurement: '' [10:35:04.222]modbus_controller.sensor Accuracy Decimals: 0 [10:35:04.229][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'sell_mwh' [10:35:04.229]modbus_controller.sensor State Class: '' [10:35:04.229]modbus_controller.sensor Unit of Measurement: '' [10:35:04.229]modbus_controller.sensor Accuracy Decimals: 0 [10:35:04.240][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'sell_kwh' [10:35:04.240]modbus_controller.sensor State Class: '' [10:35:04.240]modbus_controller.sensor Unit of Measurement: '' [10:35:04.240]modbus_controller.sensor Accuracy Decimals: 0 [10:35:04.248][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'load_mwh' [10:35:04.248]modbus_controller.sensor State Class: '' [10:35:04.248]modbus_controller.sensor Unit of Measurement: '' [10:35:04.248]modbus_controller.sensor Accuracy Decimals: 0 [10:35:04.261][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'load_kwh' [10:35:04.261]modbus_controller.sensor State Class: '' [10:35:04.261]modbus_controller.sensor Unit of Measurement: '' [10:35:04.261]modbus_controller.sensor Accuracy Decimals: 0 [10:35:04.269][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'grid_charge_mwh' [10:35:04.269]modbus_controller.sensor State Class: '' [10:35:04.269]modbus_controller.sensor Unit of Measurement: '' [10:35:04.269]modbus_controller.sensor Accuracy Decimals: 0 [10:35:04.281][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'grid_charge_kwh' [10:35:04.281]modbus_controller.sensor State Class: '' [10:35:04.281]modbus_controller.sensor Unit of Measurement: '' [10:35:04.281]modbus_controller.sensor Accuracy Decimals: 0 [10:35:04.290][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'Battery power' [10:35:04.290]modbus_controller.sensor State Class: '' [10:35:04.290]modbus_controller.sensor Unit of Measurement: 'W' [10:35:04.290]modbus_controller.sensor Accuracy Decimals: 1 [10:35:04.293][C][modbus_controller.sensor:031]: modbus_controller.sensor Icon: 'mdi:flash' [10:35:04.302][C][modbus_controller.sensor:017]: modbus_controller.sensorModbus Controller Sensor 'Battery current' [10:35:04.302]modbus_controller.sensor State Class: '' [10:35:04.302]modbus_controller.sensor Unit of Measurement: 'A' [10:35:04.302]modbus_controller.sensor Accuracy Decimals: 1 [10:35:04.306][C][modbus_controller.sensor:031]: modbus_controller.sensor Icon: 'mdi:current-dc' [10:35:04.309][C][modbus_controller.select:009]: modbus_controller.selectModbus Controller Select 'Energy use mode (parameter 00)' [10:35:04.321][C][modbus_controller.select:009]: modbus_controller.selectModbus Controller Select 'Charger source priority (parameter 10)' [10:35:04.329][C][modbus_controller.select:009]: modbus_controller.selectModbus Controller Select 'Solar Use Aim' [10:35:04.349][C][captive_portal:118]: Captive Portal: [10:35:04.361][C][wifi:1132]: WiFi: [10:35:04.361][C][wifi:1132]: Connected: YES [10:35:04.365][C][wifi:897]: Local MAC: D8:BF:C0:05:FF:11 [10:35:04.366][C][wifi:904]: IP Address: 192.168.2.37 [10:35:04.366][C][wifi:908]: SSID: [redacted] [10:35:04.366][C][wifi:908]: BSSID: [redacted] [10:35:04.366][C][wifi:908]: Hostname: 'pv19_6248_exp' [10:35:04.366][C][wifi:908]: Signal strength: -66 dB ▂▄▆█ [10:35:04.366][C][wifi:908]: Channel: 10 [10:35:04.366][C][wifi:908]: Subnet: 255.255.255.0 [10:35:04.366][C][wifi:908]: Gateway: 192.168.2.1 [10:35:04.366][C][wifi:908]: DNS1: 192.168.2.1 [10:35:04.366][C][wifi:908]: DNS2: 0.0.0.0 [10:35:04.372][C][web_server:335]: Web Server: [10:35:04.372][C][web_server:335]: Address: pv19_6248_exp.local:80 [10:35:04.382][C][esphome.ota:092]: Over-The-Air updates: [10:35:04.382][C][esphome.ota:092]: Address: pv19_6248_exp.local:8266 [10:35:04.382][C][esphome.ota:092]: Version: 2 [10:35:04.386][C][esphome.ota:099]: Password configured [10:35:04.387][C][safe_mode:018]: Safe Mode: [10:35:04.387][C][safe_mode:018]: Successful after: 60s [10:35:04.387][C][safe_mode:018]: Invoke after: 10 attempts [10:35:04.387][C][safe_mode:018]: Duration: 300s [10:35:04.401][C][web_server.ota:241]: Web Server OTA [10:35:04.407][C][api:211]: Server: [10:35:04.407][C][api:211]: Address: pv19_6248_exp.local:6053 [10:35:04.407][C][api:211]: Listen backlog: 1 [10:35:04.407][C][api:211]: Max connections: 4 [10:35:04.408][C][api:218]: Noise encryption: YES [10:35:04.420][C][mdns:177]: mDNS: [10:35:04.420][C][mdns:177]: Hostname: pv19_6248_exp [10:35:04.427][C][modbus_controller:448]: ModbusController: [10:35:04.427][C][modbus_controller:448]: Address: 0x04 [10:35:04.427][C][modbus_controller:448]: Max Command Retries: 4 [10:35:04.427][C][modbus_controller:448]: Offline Skip Updates: 0 [10:35:04.427][C][modbus_controller:448]: Server Courtesy Response: [10:35:04.427][C][modbus_controller:448]: Enabled: false [10:35:04.427][C][modbus_controller:448]: Register Last Address: 0xFFFF [10:35:04.427][C][modbus_controller:448]: Register Value: 0 [10:35:05.602][D][modbus_controller:039]: Modbus command to device=4 register=0x6271 no response received - removed from send queue [10:35:06.066][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=113 count=2 [10:35:06.069][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=10103 count=2 [10:35:06.069][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=15201 count=3 [10:35:06.070][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=15205 count=4 [10:35:06.070][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=15211 count=1 [10:35:06.071][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=15213 count=2 [10:35:06.071][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=15217 count=2 [10:35:06.071][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=16205 count=1 [10:35:06.072][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=25205 count=3 [10:35:06.072][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=25245 count=10 [10:35:06.073][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=25259 count=5 [10:35:06.073][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=25265 count=2 [10:35:06.074][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=25273 count=2 [10:35:07.451][D][modbus_controller:039]: Modbus command to device=4 register=0x629D no response received - removed from send queue [10:35:09.288][D][modbus_controller:039]: Modbus command to device=4 register=0x62AB no response received - removed from send queue [10:35:11.136][D][modbus_controller:039]: Modbus command to device=4 register=0x71 no response received - removed from send queue [10:35:12.974][D][modbus_controller:039]: Modbus command to device=4 register=0x2777 no response received - removed from send queue [10:35:14.821][D][modbus_controller:039]: Modbus command to device=4 register=0x3B61 no response received - removed from send queue [10:35:16.650][D][modbus_controller:039]: Modbus command to device=4 register=0x3B65 no response received - removed from send queue [10:35:18.483][D][modbus_controller:039]: Modbus command to device=4 register=0x3B6B no response received - removed from send queue [10:35:20.316][D][modbus_controller:039]: Modbus command to device=4 register=0x3B6D no response received - removed from send queue [10:35:22.163][D][modbus_controller:039]: Modbus command to device=4 register=0x3B71 no response received - removed from send queue [10:35:24.003][D][modbus_controller:039]: Modbus command to device=4 register=0x3F4D no response received - removed from send queue [10:35:25.847][D][modbus_controller:039]: Modbus command to device=4 register=0x6275 no response received - removed from send queue [10:35:26.068][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=16207 count=2 [10:35:26.074][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=20109 count=1 [10:35:26.075][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=20112 count=1 [10:35:26.076][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=20118 count=2 [10:35:26.076][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=20125 count=1 [10:35:26.077][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=20127 count=2 [10:35:26.077][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=20132 count=1 [10:35:26.078][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=20143 count=1 [10:35:26.079][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=25201 count=1 [10:35:26.079][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=25213 count=4 [10:35:26.080][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=25233 count=3 [10:35:26.080][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=25265 count=2 [10:35:26.081][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=25273 count=2 [10:35:27.681][D][modbus_controller:039]: Modbus command to device=4 register=0x62B1 no response received - removed from send queue [10:35:29.527][D][modbus_controller:039]: Modbus command to device=4 register=0x62B9 no response received - removed from send queue [10:35:31.372][D][modbus_controller:039]: Modbus command to device=4 register=0x3F4F no response received - removed from send queue [10:35:33.201][D][modbus_controller:039]: Modbus command to device=4 register=0x4E8D no response received - removed from send queue [10:35:35.048][D][modbus_controller:039]: Modbus command to device=4 register=0x4E90 no response received - removed from send queue [10:35:36.882][D][modbus_controller:039]: Modbus command to device=4 register=0x4E96 no response received - removed from send queue [10:35:38.775][D][modbus_controller:039]: Modbus command to device=4 register=0x4E9D no response received - removed from send queue [10:35:40.571][D][modbus_controller:039]: Modbus command to device=4 register=0x4E9F no response received - removed from send queue [10:35:42.420][D][modbus_controller:039]: Modbus command to device=4 register=0x4EA4 no response received - removed from send queue [10:35:44.143][D][sensor:135]: 'Accumulated buy power': Sending state nan kWh with 1 decimals of accuracy [10:35:44.261][D][modbus_controller:039]: Modbus command to device=4 register=0x4EAF no response received - removed from send queue [10:35:44.809][D][sensor:135]: 'Accumulated INV charger power': Sending state nan kWh with 1 decimals of accuracy [10:35:46.011][D][sensor:135]: 'Accumulated discharger power': Sending state nan kWh with 1 decimals of accuracy [10:35:46.067][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=113 count=2 [10:35:46.071][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=10103 count=2 [10:35:46.071][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=15201 count=3 [10:35:46.072][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=15205 count=4 [10:35:46.072][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=15211 count=1 [10:35:46.072][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=15213 count=2 [10:35:46.073][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=15217 count=2 [10:35:46.074][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=16205 count=1 [10:35:46.074][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=25201 count=1 [10:35:46.075][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=25205 count=3 [10:35:46.075][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=25213 count=4 [10:35:46.076][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=25233 count=3 [10:35:46.076][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=25245 count=10 [10:35:46.077][W][modbus_controller:284]: Duplicate modbus command found: type=0x3 address=25259 count=5 [10:35:46.088][D][modbus_controller:039]: Modbus command to device=4 register=0x6271 no response received - removed from send queue [10:35:47.111][D][sensor:135]: 'Accumulated sell power': Sending state nan kWh with 1 decimals of accuracy [10:35:47.449][D][sensor:135]: 'Accumulated load power': Sending state nan kWh with 1 decimals of accuracy [10:35:47.478][D][sensor:135]: 'Accumulated grid charge power': Sending state nan kWh with 1 decimals of accuracy [10:35:47.572][D][sensor:135]: 'Accumulated charger power': Sending state nan kWh with 1 decimals of accuracy [10:35:47.938][D][modbus_controller:039]: Modbus command to device=4 register=0x627D no response received - removed from send queue [10:35:49.781][D][modbus_controller:039]: Modbus command to device=4 register=0x6291 no response received - removed from send queue [10:35:51.618][D][modbus_controller:039]: Modbus command to device=4 register=0x71 no response received - removed from send queue [10:35:53.467][D][modbus_controller:039]: Modbus command to device=4 register=0x2777 no response received - removed from send queue [10:35:55.302][D][modbus_controller:039]: Modbus command to device=4 register=0x3B61 no response received - removed from send queue [10:35:57.140][D][modbus_controller:039]: Modbus command to device=4 register=0x3B65 no response received - removed from send queue [10:35:58.980][D][modbus_controller:039]: Modbus command to device=4 register=0x3B6B no response received - removed from send queue [10:36:00.818][D][modbus_controller:039]: Modbus command to device=4 register=0x3B6D no response received - removed from send queue
Піни RX/TX міняв місцями в прошивці, не допомагає.
Що можна ще спробувати зробити?
@Alexandrmv
Ще можна спробувати:
- поміняти місцями піни на rs-485 адаптері
- Поміняти піни на esp, на esp8266 не всі піни можна використовувати
- спробувати змінити rs-485 на той що рекомендує автор
- Прозвонити всі зєднання
- Переконатися що rs-485 адаптер має правильне живлення, той що ви прислали має живлення 5В, esp8266 має живлення 3.3В
- Додати схему чи фото того що Ви зібрали







Тіктак рулить :)