configs/sthome-ut11.yaml

263 lines
6.2 KiB
YAML

packages:
- !include common/wifi.yaml
- !include common/felicityinverter.yaml
substitutions:
name: sthome-ut11
friendly_name: "sthome-ut11"
esphome:
name: "${name}"
friendly_name: "${friendly_name}"
external_components:
- source: github://pr#8103
components: [uart]
- source: github://pr#8032
components: [modbus, modbus_controller, growatt_solar]
refresh: 1h
esp32:
board: esp32dev
framework:
type: esp-idf
# Enable logging
logger:
level: VERY_VERBOSE
initial_level: DEBUG
logs:
uart: VERY_VERBOSE
modbus: VERY_VERBOSE
modbus_controller: VERY_VERBOSE
# Enable Home Assistant API
api:
encryption:
key: "00DjAYGOMycWGWLC8J8XbOzwFcptjKQxOtzh+jKY8SQ="
ota:
- platform: esphome
password: "b9ce27902daee1bc1dda748d0c8c68ef"
wifi:
manual_ip:
static_ip: 10.0.2.11
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "${name} Fallback Hotspot"
password: "CUcx85qCyekn"
captive_portal:
uart:
- id: inv_uart1
rx_pin: GPIO16
tx_pin: GPIO17
baud_rate: 2400
stop_bits: 1
parity: NONE
debug:
direction: BOTH
dummy_receiver: false
after:
delimiter: "\r"
sequence:
- lambda: UARTDebug::log_hex(direction, bytes, ',');
sun:
id: sun_sensor
latitude: !secret latitude
longitude: !secret longitude
time:
- platform: homeassistant
id: time_source
switch:
- platform: restart
name: "${name} Restart"
id: "restart_switch"
modbus:
- id: modbus1
uart_id: inv_uart1
flow_control_pin: GPIO4
send_wait_time: 1000ms #250ms
disable_crc: false
role: client
modbus_controller:
- id: modbus_device1
modbus_id: modbus1
address: 0x01
allow_duplicate_commands: False
command_throttle: 0ms
update_interval: 4s #30s
offline_skip_updates: 2
max_cmd_retries: 0
setup_priority: -10
sensor:
- platform: modbus_controller
modbus_controller_id: modbus_device1
name: "Inverter1 Type"
register_type: holding
address: ${Felicity_Inv_Type} # 0xF800
value_type: U_DWORD
register_count: 1
- platform: modbus_controller
modbus_controller_id: modbus_device1
name: "Inverter1 Sub Type"
register_type: holding
address: ${Felicity_Inv_SubType} # 0xF801
value_type: U_DWORD
register_count: 3
- platform: modbus_controller
modbus_controller_id: modbus_device1
name: "Inverter1 CPU1 F/W Version"
register_type: holding
address: ${Felicity_Inv_CPU1_FW_Version} # 0xF80B
value_type: U_DWORD
register_count: 1
- platform: modbus_controller
modbus_controller_id: modbus_device1
name: "Inverter1 CPU2 F/W Version"
register_type: holding
address: ${Felicity_Inv_CPU2_FW_Version} # 0xF80C
value_type: U_DWORD
register_count: 3
- platform: modbus_controller
modbus_controller_id: modbus_device1
name: "Inverter1 Working Mode"
register_type: holding
address: ${Felicity_Inv_WorkingMode} # 0x1101
value_type: U_WORD
register_count: 1
- platform: modbus_controller
modbus_controller_id: modbus_device1
name: "Inverter1 Charge Mode"
register_type: holding
address: ${Felicity_Inv_BatteryChargingStage} # 0x1102
value_type: U_WORD
register_count: 1
- platform: modbus_controller
modbus_controller_id: modbus_device1
name: "Inverter1 Fault Code"
register_type: holding
address: ${Felicity_Inv_FaultCode} # 0x1103
value_type: U_WORD
register_count: 1
- platform: modbus_controller
modbus_controller_id: modbus_device1
name: "Inverter1 Power Flow"
register_type: holding
address: ${Felicity_Inv_PowerFlowMsg} # 0x1104
value_type: U_WORD
register_count: 4
- platform: modbus_controller
modbus_controller_id: modbus_device1
name: "Inverter1 Battery Voltage"
register_type: holding
address: ${Felicity_Inv_BatteryVoltage} # 0x1108
value_type: U_WORD
register_count: 1
- platform: modbus_controller
modbus_controller_id: modbus_device1
name: "Inverter1 Battery Current"
register_type: holding
address: ${Felicity_Inv_BatteryCurrent} # 0x1109
value_type: U_WORD
register_count: 1
- platform: modbus_controller
modbus_controller_id: modbus_device1
name: "Inverter1 BatteryPower"
register_type: holding
address: ${Felicity_Inv_BatteryPower} # 0x110A
value_type: U_WORD
register_count: 7
- platform: modbus_controller
modbus_controller_id: modbus_device1
name: "Inverter1 AC Output Voltage"
register_type: holding
address: ${Felicity_Inv_ACOutputVoltage} # 0x1111
value_type: U_WORD
register_count: 6
- platform: modbus_controller
modbus_controller_id: modbus_device1
name: "Inverter1 AC Input Voltage"
register_type: holding
address: ${Felicity_Inv_ACInputVoltage} # 0x1117
value_type: U_WORD
register_count: 2
- platform: modbus_controller
modbus_controller_id: modbus_device1
name: "Inverter1 AC Input Frequency"
register_type: holding
address: ${Felicity_Inv_ACInputFrequency} # 0x1119
value_type: U_WORD
register_count: 5
- platform: modbus_controller
modbus_controller_id: modbus_device1
name: "Inverter1 AC Output Active Power"
register_type: holding
address: ${Felicity_Inv_ACOutputActivePower} # 0x111E
value_type: U_WORD
register_count: 1
- platform: modbus_controller
modbus_controller_id: modbus_device1
name: "Inverter1 AC Output Apparent Power"
register_type: holding
address: ${Felicity_Inv_ACOutputApparentPower} # 0x111F
value_type: U_WORD
register_count: 1
- platform: modbus_controller
modbus_controller_id: modbus_device1
name: "Inverter1 Load Percentage"
register_type: holding
address: ${Felicity_Inv_LoadPercentage} # 0x1120
value_type: U_WORD
register_count: 6
- platform: modbus_controller
modbus_controller_id: modbus_device1
name: "Inverter1 PV Input Voltage"
register_type: holding
address: ${Felicity_Inv_PVInputVoltage} # 0x1126
value_type: U_WORD
register_count: 4
- platform: modbus_controller
modbus_controller_id: modbus_device1
name: "Inverter1 PV Input Power"
register_type: holding
address: ${Felicity_Inv_PVInputPower} # 0x112A
value_type: U_WORD
register_count: 1
text_sensor:
- platform: modbus_controller
modbus_controller_id: modbus_device1
name: "Inverter1 SerialNo"
register_type: holding
address: ${Felicity_Inv_SerialNo} # 0xF804
response_size: 14
register_count: 7
raw_encode: HEXBYTES