substitutions: name: smg-iii device_description: "Monitor and control a ISolar/EASUN SMG II inverter via RS232" tx_pin: GPIO16 rx_pin: GPIO17 esphome: name: ${name} comment: ${device_description} project: name: "syssi.esphome-smg-ii" version: 1.1.0 esp32: board: wemos_d1_mini32 framework: type: esp-idf wifi: ssid: TP-Link_A67A password: robert1969 manual_ip: static_ip: 192.168.0.115 gateway: 192.168.0.1 subnet: 255.255.255.0 ota: 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: smg0 address: 0x01 modbus_id: modbus0 command_throttle: 200ms update_interval: 10s time: - platform: sntp sensor: - platform: total_daily_energy name: "${name} PV energy today" restore: true icon: mdi:counter power_id: smg0_pv_average_power filters: # Multiplication factor from W to kW is 0.001 - multiply: 0.001 unit_of_measurement: kWh # Fault code ULong 100 2 R - platform: modbus_controller modbus_controller_id: smg0 name: "${name} fault code" address: 100 register_type: holding value_type: U_DWORD accuracy_decimals: 0 # Warning code ULong 108 2 R - platform: modbus_controller modbus_controller_id: smg0 name: "${name} warning code" address: 108 register_type: holding value_type: U_DWORD accuracy_decimals: 0 # Operation Mode UInt 201 1 R 0: Power On # 1: Standby # 2: Mains # 3: Off-Grid # 4: Bypass # 5: Charging # 6: Fault - platform: modbus_controller modbus_controller_id: smg0 name: "${name} operation mode id" address: 201 register_type: holding value_type: U_WORD accuracy_decimals: 0 # Effective mains voltage 0.1V Int 202 1 R - platform: modbus_controller modbus_controller_id: smg0 name: "${name} ac voltage" address: 202 register_type: holding value_type: S_WORD unit_of_measurement: "V" device_class: voltage state_class: measurement accuracy_decimals: 1 filters: - multiply: 0.1 # Mains Frequency 0.01Hz Int 203 1 R - platform: modbus_controller modbus_controller_id: smg0 name: "${name} ac frequency" address: 203 register_type: holding value_type: S_WORD unit_of_measurement: "Hz" device_class: frequency state_class: measurement accuracy_decimals: 2 filters: - multiply: 0.01 # Average mains power 1W Int 204 1 R - platform: modbus_controller modbus_controller_id: smg0 name: "${name} average mains power" address: 204 register_type: holding value_type: S_WORD unit_of_measurement: "W" device_class: power state_class: measurement accuracy_decimals: 0 # Effective inverter voltage 0.1V Int 205 1 R - platform: modbus_controller modbus_controller_id: smg0 name: "${name} effective inverter voltage" address: 205 register_type: holding value_type: S_WORD unit_of_measurement: "V" device_class: voltage state_class: measurement accuracy_decimals: 1 filters: - multiply: 0.1 # Effective inverter current 0.1A Int 206 1 R - platform: modbus_controller modbus_controller_id: smg0 name: "${name} effective inverter current" address: 206 register_type: holding value_type: S_WORD unit_of_measurement: "A" device_class: current state_class: measurement accuracy_decimals: 1 filters: - multiply: 0.1 # Inverter frequency 0.01Hz Int 207 1 R - platform: modbus_controller modbus_controller_id: smg0 name: "${name} inverter frequency" address: 207 register_type: holding value_type: S_WORD unit_of_measurement: "Hz" device_class: frequency state_class: measurement accuracy_decimals: 2 filters: - multiply: 0.01 # Average inverter power 1W Int 208 1 R Positive numbers indicate inverter output, negative numbers indicate inverter input - platform: modbus_controller modbus_controller_id: smg0 name: "${name} average inverter power" address: 208 register_type: holding value_type: S_WORD unit_of_measurement: "W" device_class: power state_class: measurement accuracy_decimals: 0 # Inverter charging power 1W Int 209 1 R - platform: modbus_controller modbus_controller_id: smg0 name: "${name} inverter charging power" address: 209 register_type: holding value_type: S_WORD unit_of_measurement: "W" device_class: power state_class: measurement accuracy_decimals: 0 # Output effective voltage 0.1V Int 210 1 R - platform: modbus_controller modbus_controller_id: smg0 name: "${name} output effective voltage" address: 210 register_type: holding value_type: S_WORD unit_of_measurement: "V" device_class: voltage state_class: measurement accuracy_decimals: 1 filters: - multiply: 0.1 # Output effective Current 0.1A Int 211 1 R - platform: modbus_controller modbus_controller_id: smg0 name: "${name} output effective Current" address: 211 register_type: holding value_type: S_WORD unit_of_measurement: "A" device_class: current state_class: measurement accuracy_decimals: 1 filters: - multiply: 0.1 # Output frequency 0.01Hz Int 212 1 R - platform: modbus_controller modbus_controller_id: smg0 name: "${name} output frequency" address: 212 register_type: holding value_type: S_WORD unit_of_measurement: "Hz" device_class: frequency state_class: measurement accuracy_decimals: 2 filters: - multiply: 0.01 # Output active power 1W Int 213 1 R - platform: modbus_controller modbus_controller_id: smg0 name: "${name} output active power" address: 213 register_type: holding value_type: S_WORD unit_of_measurement: "W" device_class: power state_class: measurement accuracy_decimals: 0 # Output apparent power 1VA Int 214 1 R - platform: modbus_controller modbus_controller_id: smg0 name: "${name} output apparent power" address: 214 register_type: holding value_type: S_WORD unit_of_measurement: "VA" device_class: apparent_power state_class: measurement accuracy_decimals: 0 # Battery average voltage 0.1V Int 215 1 R - platform: modbus_controller modbus_controller_id: smg0 name: "${name} battery average voltage" address: 215 register_type: holding value_type: S_WORD unit_of_measurement: "V" device_class: voltage state_class: measurement accuracy_decimals: 1 filters: - multiply: 0.1 # Battery average Current 0.1A Int 216 1 R - platform: modbus_controller modbus_controller_id: smg0 name: "${name} battery average Current" address: 216 register_type: holding value_type: S_WORD unit_of_measurement: "A" device_class: current state_class: measurement accuracy_decimals: 1 filters: - multiply: 0.1 # Battery average power 1W Int 217 1 R - platform: modbus_controller modbus_controller_id: smg0 name: "${name} battery average power" address: 217 register_type: holding value_type: S_WORD unit_of_measurement: "W" device_class: power state_class: measurement accuracy_decimals: 0 # PV average voltage 0.1V Int 219 1 R - platform: modbus_controller modbus_controller_id: smg0 name: "${name} pv average voltage" address: 219 register_type: holding value_type: S_WORD unit_of_measurement: "V" device_class: voltage state_class: measurement accuracy_decimals: 1 filters: - multiply: 0.1 # PV average current ...
majormaj6