Initiale Konfiguration
ESPHome-Configs für Growatt MIC 1500 TL-X und SPH 5000 TL3-BH-UP mit Modbus-RTU Integration über den Growatt SuniStick. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,183 @@
|
||||
esphome:
|
||||
name: growatt-mic-1500
|
||||
friendly_name: Growatt MIC 1500 TL-X
|
||||
|
||||
esp8266:
|
||||
board: esp07s
|
||||
|
||||
logger:
|
||||
|
||||
api:
|
||||
encryption:
|
||||
key: "HIER_API_KEY_EINTRAGEN" # 32-Byte Base64-Key, wird in der ESPHome-UI automatisch generiert
|
||||
|
||||
ota:
|
||||
- platform: esphome
|
||||
password: "HIER_OTA_PASSWORT_EINTRAGEN" # Beliebiges Passwort für Over-the-Air Updates
|
||||
|
||||
wifi:
|
||||
ssid: "HIER_WLAN_NAME_EINTRAGEN" # Name deines WLANs (SSID)
|
||||
password: "HIER_WLAN_PASSWORT_EINTRAGEN" # Passwort deines WLANs
|
||||
ap:
|
||||
ssid: "Growatt MIC 1500 TL-X Fallback Hotspot"
|
||||
password: "HIER_HOTSPOT_PASSWORT_EINTRAGEN" # Passwort für den Notfall-Hotspot (min. 8 Zeichen)
|
||||
|
||||
captive_portal:
|
||||
|
||||
time:
|
||||
- platform: homeassistant
|
||||
id: homeassistant_time
|
||||
|
||||
output:
|
||||
# Blue Led
|
||||
- id: light_bl
|
||||
platform: gpio
|
||||
pin: 16
|
||||
# Green Led
|
||||
- id: light_gr
|
||||
platform: gpio
|
||||
pin: 0
|
||||
# Red Led
|
||||
- id: light_rd
|
||||
platform: gpio
|
||||
pin: 2
|
||||
|
||||
uart:
|
||||
id: mod_bus
|
||||
tx_pin: 1
|
||||
rx_pin: 3
|
||||
baud_rate: 115200
|
||||
|
||||
modbus:
|
||||
id: modbus1
|
||||
uart_id: mod_bus
|
||||
|
||||
modbus_controller:
|
||||
- id: growatt
|
||||
# the Modbus device addr
|
||||
address: 0x1
|
||||
modbus_id: modbus1
|
||||
setup_priority: -10
|
||||
|
||||
|
||||
sensor:
|
||||
- platform: modbus_controller
|
||||
name: "DcPower"
|
||||
address: 5
|
||||
register_type: "read"
|
||||
unit_of_measurement: W
|
||||
device_class: power
|
||||
icon: mdi:flash
|
||||
value_type: U_DWORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "DcVoltage"
|
||||
address: 3
|
||||
register_type: "read"
|
||||
unit_of_measurement: V
|
||||
device_class: voltage
|
||||
icon: mdi:flash
|
||||
value_type: U_WORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "DcInputCurrent"
|
||||
address: 4
|
||||
register_type: "read"
|
||||
unit_of_measurement: A
|
||||
device_class: current
|
||||
icon: mdi:flash
|
||||
value_type: U_WORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "AcFrequency"
|
||||
address: 37
|
||||
register_type: "read"
|
||||
unit_of_measurement: Hz
|
||||
icon: mdi:flash
|
||||
value_type: U_WORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.01
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "AcVoltage"
|
||||
address: 38
|
||||
register_type: "read"
|
||||
unit_of_measurement: V
|
||||
device_class: voltage
|
||||
icon: mdi:flash
|
||||
value_type: U_WORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "AcOutputCurrent"
|
||||
address: 39
|
||||
register_type: "read"
|
||||
unit_of_measurement: A
|
||||
device_class: current
|
||||
icon: mdi:flash
|
||||
value_type: U_WORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "AcPower"
|
||||
address: 40
|
||||
register_type: "read"
|
||||
unit_of_measurement: W
|
||||
device_class: power
|
||||
icon: mdi:flash
|
||||
value_type: U_DWORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "EnergyToday"
|
||||
address: 53
|
||||
register_type: "read"
|
||||
unit_of_measurement: kWh
|
||||
device_class: energy
|
||||
icon: mdi:flash
|
||||
value_type: U_DWORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "EnergyTotal"
|
||||
address: 55
|
||||
register_type: "read"
|
||||
unit_of_measurement: kWh
|
||||
state_class: total_increasing
|
||||
device_class: energy
|
||||
icon: mdi:flash
|
||||
value_type: U_DWORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "Temperature"
|
||||
address: 93
|
||||
register_type: "read"
|
||||
unit_of_measurement: C
|
||||
device_class: temperature
|
||||
icon: mdi:thermometer
|
||||
value_type: U_WORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
@@ -0,0 +1,387 @@
|
||||
esphome:
|
||||
name: growatt-sph5000
|
||||
friendly_name: Growatt SPH 5000 TL3-BH-UP
|
||||
|
||||
esp8266:
|
||||
board: esp07s
|
||||
|
||||
logger:
|
||||
|
||||
api:
|
||||
encryption:
|
||||
key: "HIER_API_KEY_EINTRAGEN" # 32-Byte Base64-Key, wird in der ESPHome-UI automatisch generiert
|
||||
|
||||
ota:
|
||||
- platform: esphome
|
||||
password: "HIER_OTA_PASSWORT_EINTRAGEN" # Beliebiges Passwort für Over-the-Air Updates
|
||||
|
||||
wifi:
|
||||
ssid: "HIER_WLAN_NAME_EINTRAGEN" # Name deines WLANs (SSID)
|
||||
password: "HIER_WLAN_PASSWORT_EINTRAGEN" # Passwort deines WLANs
|
||||
ap:
|
||||
ssid: "Growatt-SPH5000 Fallback Hotspot"
|
||||
password: "HIER_HOTSPOT_PASSWORT_EINTRAGEN" # Passwort für den Notfall-Hotspot (min. 8 Zeichen)
|
||||
|
||||
captive_portal:
|
||||
|
||||
time:
|
||||
- platform: homeassistant
|
||||
id: homeassistant_time
|
||||
|
||||
output:
|
||||
- id: light_bl
|
||||
platform: gpio
|
||||
pin: 16
|
||||
- id: light_gr
|
||||
platform: gpio
|
||||
pin: 0
|
||||
- id: light_rd
|
||||
platform: gpio
|
||||
pin: 2
|
||||
|
||||
uart:
|
||||
id: mod_bus
|
||||
tx_pin: 1
|
||||
rx_pin: 3
|
||||
baud_rate: 115200
|
||||
|
||||
modbus:
|
||||
id: modbus1
|
||||
uart_id: mod_bus
|
||||
|
||||
modbus_controller:
|
||||
- id: growatt
|
||||
address: 1
|
||||
modbus_id: modbus1
|
||||
setup_priority: -10
|
||||
|
||||
sensor:
|
||||
# --- PV Eingang ---
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "PV1 Voltage"
|
||||
address: 3
|
||||
register_type: "read"
|
||||
unit_of_measurement: V
|
||||
device_class: voltage
|
||||
icon: mdi:solar-panel
|
||||
value_type: U_WORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "PV1 Current"
|
||||
address: 4
|
||||
register_type: "read"
|
||||
unit_of_measurement: A
|
||||
device_class: current
|
||||
icon: mdi:solar-panel
|
||||
value_type: U_WORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "PV1 Power"
|
||||
address: 5
|
||||
register_type: "read"
|
||||
unit_of_measurement: W
|
||||
device_class: power
|
||||
icon: mdi:solar-panel
|
||||
value_type: U_DWORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "PV2 Voltage"
|
||||
address: 7
|
||||
register_type: "read"
|
||||
unit_of_measurement: V
|
||||
device_class: voltage
|
||||
icon: mdi:solar-panel
|
||||
value_type: U_WORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "PV2 Current"
|
||||
address: 8
|
||||
register_type: "read"
|
||||
unit_of_measurement: A
|
||||
device_class: current
|
||||
icon: mdi:solar-panel
|
||||
value_type: U_WORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "PV2 Power"
|
||||
address: 9
|
||||
register_type: "read"
|
||||
unit_of_measurement: W
|
||||
device_class: power
|
||||
icon: mdi:solar-panel
|
||||
value_type: U_DWORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
# --- AC Ausgang / Netz ---
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "AC Output Power Total"
|
||||
address: 35
|
||||
register_type: "read"
|
||||
unit_of_measurement: W
|
||||
device_class: power
|
||||
icon: mdi:flash
|
||||
value_type: U_DWORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "Grid Frequency"
|
||||
address: 37
|
||||
register_type: "read"
|
||||
unit_of_measurement: Hz
|
||||
device_class: frequency
|
||||
icon: mdi:sine-wave
|
||||
value_type: U_WORD
|
||||
accuracy_decimals: 2
|
||||
filters:
|
||||
- multiply: 0.01
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "Grid Voltage L1"
|
||||
address: 38
|
||||
register_type: "read"
|
||||
unit_of_measurement: V
|
||||
device_class: voltage
|
||||
icon: mdi:flash
|
||||
value_type: U_WORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "Grid Current L1"
|
||||
address: 39
|
||||
register_type: "read"
|
||||
unit_of_measurement: A
|
||||
device_class: current
|
||||
icon: mdi:flash
|
||||
value_type: U_WORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "Grid Voltage L2"
|
||||
address: 42
|
||||
register_type: "read"
|
||||
unit_of_measurement: V
|
||||
device_class: voltage
|
||||
icon: mdi:flash
|
||||
value_type: U_WORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "Grid Current L2"
|
||||
address: 43
|
||||
register_type: "read"
|
||||
unit_of_measurement: A
|
||||
device_class: current
|
||||
icon: mdi:flash
|
||||
value_type: U_WORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "Grid Voltage L3"
|
||||
address: 46
|
||||
register_type: "read"
|
||||
unit_of_measurement: V
|
||||
device_class: voltage
|
||||
icon: mdi:flash
|
||||
value_type: U_WORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "Grid Current L3"
|
||||
address: 47
|
||||
register_type: "read"
|
||||
unit_of_measurement: A
|
||||
device_class: current
|
||||
icon: mdi:flash
|
||||
value_type: U_WORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
# --- Energie (PV Erzeugung) ---
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "Energy Today"
|
||||
address: 53
|
||||
register_type: "read"
|
||||
unit_of_measurement: kWh
|
||||
device_class: energy
|
||||
state_class: total_increasing
|
||||
icon: mdi:solar-power
|
||||
value_type: U_DWORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "Energy Total"
|
||||
address: 55
|
||||
register_type: "read"
|
||||
unit_of_measurement: kWh
|
||||
device_class: energy
|
||||
state_class: total_increasing
|
||||
icon: mdi:solar-power
|
||||
value_type: U_DWORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
# --- Temperatur ---
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "Inverter Temperature"
|
||||
address: 93
|
||||
register_type: "read"
|
||||
unit_of_measurement: "°C"
|
||||
device_class: temperature
|
||||
icon: mdi:thermometer
|
||||
value_type: U_WORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
# --- Batterie ---
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "Battery Discharge Power"
|
||||
address: 1009
|
||||
register_type: "read"
|
||||
unit_of_measurement: W
|
||||
device_class: power
|
||||
icon: mdi:battery-minus
|
||||
value_type: U_DWORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "Battery Charge Power"
|
||||
address: 1011
|
||||
register_type: "read"
|
||||
unit_of_measurement: W
|
||||
device_class: power
|
||||
icon: mdi:battery-plus
|
||||
value_type: U_DWORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "Battery Voltage"
|
||||
address: 1013
|
||||
register_type: "read"
|
||||
unit_of_measurement: V
|
||||
device_class: voltage
|
||||
icon: mdi:battery
|
||||
value_type: U_WORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "Battery State of Charge"
|
||||
address: 1014
|
||||
register_type: "read"
|
||||
unit_of_measurement: "%"
|
||||
device_class: battery
|
||||
icon: mdi:battery
|
||||
value_type: U_WORD
|
||||
accuracy_decimals: 0
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "Battery Temperature"
|
||||
address: 1040
|
||||
register_type: "read"
|
||||
unit_of_measurement: "°C"
|
||||
device_class: temperature
|
||||
icon: mdi:thermometer
|
||||
value_type: U_WORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
# --- Batterie Energie (kWh Zähler für Energie-Dashboard) ---
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "Battery Discharge Total"
|
||||
address: 1054
|
||||
register_type: "read"
|
||||
unit_of_measurement: kWh
|
||||
device_class: energy
|
||||
state_class: total_increasing
|
||||
icon: mdi:battery-minus
|
||||
value_type: U_DWORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "Battery Charge Total"
|
||||
address: 1058
|
||||
register_type: "read"
|
||||
unit_of_measurement: kWh
|
||||
device_class: energy
|
||||
state_class: total_increasing
|
||||
icon: mdi:battery-plus
|
||||
value_type: U_DWORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
# --- Netzenergie Import / Export (kWh Zähler für Energie-Dashboard) ---
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "Energy Import Total"
|
||||
address: 1046
|
||||
register_type: "read"
|
||||
unit_of_measurement: kWh
|
||||
device_class: energy
|
||||
state_class: total_increasing
|
||||
icon: mdi:transmission-tower-import
|
||||
value_type: U_DWORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
|
||||
- platform: modbus_controller
|
||||
name: "Energy Export Total"
|
||||
address: 1050
|
||||
register_type: "read"
|
||||
unit_of_measurement: kWh
|
||||
device_class: energy
|
||||
state_class: total_increasing
|
||||
icon: mdi:transmission-tower-export
|
||||
value_type: U_DWORD
|
||||
accuracy_decimals: 1
|
||||
filters:
|
||||
- multiply: 0.1
|
||||
@@ -0,0 +1,83 @@
|
||||
# Growatt SPH 5000 TL3-BH-UP — ESPHome Konfiguration
|
||||
|
||||
Modbus-RTU Integration des Growatt SPH 5000 TL3-BH-UP (3-phasiger Hybrid-Wechselrichter mit Batterie) über einen Growatt SuniStick mit ESPHome-Firmware.
|
||||
|
||||
---
|
||||
|
||||
## Modbus-Register Übersicht
|
||||
|
||||
Alle Register sind **Input Register** (Modbus Funktionscode 04, `register_type: "read"`).
|
||||
Modbus-Adresse des Geräts: `0x01`
|
||||
|
||||
### PV Eingang
|
||||
|
||||
| Name | Adresse | Typ | Multiplikator | Einheit |
|
||||
|------|---------|-----|---------------|---------|
|
||||
| PV1 Voltage | 3 | U_WORD | 0.1 | V |
|
||||
| PV1 Current | 4 | U_WORD | 0.1 | A |
|
||||
| PV1 Power | 5 | U_DWORD | 0.1 | W |
|
||||
| PV2 Voltage | 7 | U_WORD | 0.1 | V |
|
||||
| PV2 Current | 8 | U_WORD | 0.1 | A |
|
||||
| PV2 Power | 9 | U_DWORD | 0.1 | W |
|
||||
|
||||
### AC Ausgang / Netz
|
||||
|
||||
| Name | Adresse | Typ | Multiplikator | Einheit |
|
||||
|------|---------|-----|---------------|---------|
|
||||
| AC Output Power Total | 35 | U_DWORD | 0.1 | W |
|
||||
| Grid Frequency | 37 | U_WORD | **0.01** | Hz |
|
||||
| Grid Voltage L1 | 38 | U_WORD | 0.1 | V |
|
||||
| Grid Current L1 | 39 | U_WORD | 0.1 | A |
|
||||
| Grid Voltage L2 | 42 | U_WORD | 0.1 | V |
|
||||
| Grid Current L2 | 43 | U_WORD | 0.1 | A |
|
||||
| Grid Voltage L3 | 46 | U_WORD | 0.1 | V |
|
||||
| Grid Current L3 | 47 | U_WORD | 0.1 | A |
|
||||
|
||||
> **Wichtig:** Grid Frequency hat Multiplikator `0.01` — der Rohwert ist z.B. `5000` = 50,00 Hz.
|
||||
|
||||
### Energie (PV Erzeugung)
|
||||
|
||||
| Name | Adresse | Typ | Multiplikator | Einheit |
|
||||
|------|---------|-----|---------------|---------|
|
||||
| Energy Today | 53 | U_DWORD | 0.1 | kWh |
|
||||
| Energy Total | 55 | U_DWORD | 0.1 | kWh |
|
||||
|
||||
### Temperatur
|
||||
|
||||
| Name | Adresse | Typ | Multiplikator | Einheit |
|
||||
|------|---------|-----|---------------|---------|
|
||||
| Inverter Temperature | 93 | U_WORD | 0.1 | °C |
|
||||
|
||||
### Batterie — Momentanleistung
|
||||
|
||||
| Name | Adresse | Typ | Multiplikator | Einheit |
|
||||
|------|---------|-----|---------------|---------|
|
||||
| Battery Discharge Power | 1009 | U_DWORD | 0.1 | W |
|
||||
| Battery Charge Power | 1011 | U_DWORD | 0.1 | W |
|
||||
| Battery Voltage | 1013 | U_WORD | 0.1 | V |
|
||||
| Battery State of Charge | 1014 | U_WORD | 1 | % |
|
||||
| Battery Temperature | 1040 | U_WORD | 0.1 | °C |
|
||||
|
||||
### Batterie — Energie (für Energie-Dashboard)
|
||||
|
||||
| Name | Adresse | Typ | Multiplikator | Einheit |
|
||||
|------|---------|-----|---------------|---------|
|
||||
| Battery Discharge Total | 1054 | U_DWORD | 0.1 | kWh |
|
||||
| Battery Charge Total | 1058 | U_DWORD | 0.1 | kWh |
|
||||
|
||||
> **Wichtig:** 1009/1011 = Momentanleistung in **Watt**. 1054/1058 = kumulierte Energie in **kWh** für das HA Energie-Dashboard.
|
||||
|
||||
### Netzenergie Import / Export (für Energie-Dashboard)
|
||||
|
||||
| Name | Adresse | Typ | Multiplikator | Einheit |
|
||||
|------|---------|-----|---------------|---------|
|
||||
| Energy Import Total | 1046 | U_DWORD | 0.1 | kWh |
|
||||
| Energy Export Total | 1050 | U_DWORD | 0.1 | kWh |
|
||||
|
||||
---
|
||||
|
||||
## Hinweise
|
||||
|
||||
- **U_DWORD** = 32-Bit-Wert über 2 aufeinanderfolgende Register. ESPHome liest diese automatisch korrekt, wenn `value_type: U_DWORD` gesetzt ist.
|
||||
- Passwörter und API-Keys sind durch `#` ersetzt und müssen vor dem Einsatz angepasst werden.
|
||||
- Diese Config wurde für den SPH 5000 TL3-BH-UP verifiziert. Andere SPH-Modelle (SPH 3000, SPH 6000 usw.) verwenden dieselbe Registerstruktur.
|
||||
@@ -0,0 +1,169 @@
|
||||
# Growatt Wechselrichter → Home Assistant (ohne Cloud)
|
||||
|
||||
Dieses Repository enthält ESPHome-Konfigurationen für Growatt Wechselrichter, die über den **Growatt SuniStick** (ESP8266) per Modbus RTU direkt in Home Assistant OS integriert werden — vollständig ohne die Growatt-App oder Cloud.
|
||||
|
||||
---
|
||||
|
||||
## Funktionsprinzip
|
||||
|
||||
```
|
||||
PV-Anlage
|
||||
│
|
||||
[Growatt Wechselrichter]
|
||||
│ RS485 / Modbus RTU
|
||||
[Growatt SuniStick] ← ESP8266 mit ESPHome-Firmware
|
||||
│ Wi-Fi
|
||||
[Home Assistant OS]
|
||||
```
|
||||
|
||||
Der SuniStick steckt im RS485-Port des Wechselrichters und kommuniziert per **Modbus RTU** (115200 Baud). ESPHome liest die Register aus und stellt sie als Sensoren in HAOS bereit. Keine Cloud, keine App, kein Intermediär.
|
||||
|
||||
---
|
||||
|
||||
## Unterstützte Modelle
|
||||
|
||||
| Modell | Typ | Phasen | Batterie | Status |
|
||||
|--------|-----|--------|----------|--------|
|
||||
| [Growatt MIC 1500 TL-X](./Growatt%20MIC%201500%20TL-X/) | String-WR | 1-phasig | Nein | Getestet ✓ |
|
||||
| [Growatt SPH 5000 TL3-BH-UP](./Growatt%20SPH%205000%20TL3/) | Hybrid-WR | 3-phasig | Ja | Getestet ✓ |
|
||||
|
||||
Andere Growatt-Modelle verwenden teilweise dieselben Register — die Konfigurationen können als Ausgangsbasis dienen, die Adressen müssen aber anhand des jeweiligen Datenblatts geprüft werden.
|
||||
|
||||
---
|
||||
|
||||
## Hardware: Growatt SuniStick
|
||||
|
||||
Der SuniStick ist ein offizielles Growatt-Zubehör und enthält einen **ESP8266-Chip** (Board: `esp07s`). Er wird direkt in den RS485-Port des Wechselrichters gesteckt.
|
||||
|
||||
**UART-Pinbelegung (intern):**
|
||||
- TX: GPIO 1
|
||||
- RX: GPIO 3
|
||||
- Baud: 115200
|
||||
|
||||
**LED-Pinbelegung:**
|
||||
- Blau: GPIO 16
|
||||
- Grün: GPIO 0
|
||||
- Rot: GPIO 2
|
||||
|
||||
---
|
||||
|
||||
## SuniStick flashen
|
||||
|
||||
> Der SuniStick muss einmalig mit ESPHome-Firmware geflasht werden. Danach sind OTA-Updates möglich.
|
||||
|
||||
### Voraussetzungen
|
||||
|
||||
- [ESPHome](https://esphome.io) installiert (z.B. als HAOS Add-on oder per pip)
|
||||
- USB-zu-Serial-Adapter (3,3 V!) zum erstmaligen Flashen
|
||||
- SuniStick geöffnet (4 Schrauben) und mit dem Adapter verbunden
|
||||
|
||||
### Verkabelung zum Flashen
|
||||
|
||||
| SuniStick | USB-Serial-Adapter |
|
||||
|-----------|--------------------|
|
||||
| TX | RX |
|
||||
| RX | TX |
|
||||
| GND | GND |
|
||||
| 3,3 V | 3,3 V |
|
||||
|
||||
GPIO 0 muss beim Start auf GND gezogen werden (Flash-Modus).
|
||||
|
||||
### YAML vorbereiten
|
||||
|
||||
1. Passende YAML aus diesem Repository kopieren
|
||||
2. Die vier markierten Platzhalter durch eigene Werte ersetzen:
|
||||
|
||||
```yaml
|
||||
api:
|
||||
encryption:
|
||||
key: "HIER_API_KEY_EINTRAGEN" # In der ESPHome-UI auf "Generate" klicken → Key kopieren
|
||||
|
||||
ota:
|
||||
- platform: esphome
|
||||
password: "HIER_OTA_PASSWORT_EINTRAGEN" # Frei wählbar, z.B. "meinOTApasswort123"
|
||||
|
||||
wifi:
|
||||
ssid: "HIER_WLAN_NAME_EINTRAGEN" # Genauer WLAN-Name (Groß-/Kleinschreibung beachten)
|
||||
password: "HIER_WLAN_PASSWORT_EINTRAGEN" # WLAN-Passwort
|
||||
ap:
|
||||
password: "HIER_HOTSPOT_PASSWORT_EINTRAGEN" # Min. 8 Zeichen — für den Notfall-Hotspot
|
||||
```
|
||||
|
||||
> Der API-Key wird in der ESPHome-UI automatisch generiert, wenn man eine neue Config anlegt. Alternativ kann man einen beliebigen 32-Byte Base64-String verwenden.
|
||||
|
||||
### Flashen (Erstinstallation)
|
||||
|
||||
```bash
|
||||
esphome run growatt-mic-1500.yaml
|
||||
```
|
||||
|
||||
oder über die ESPHome-Web-UI im HAOS Add-on.
|
||||
|
||||
Nach dem ersten Flash sind alle weiteren Updates per **OTA über Wi-Fi** möglich — kein Aufschrauben mehr nötig.
|
||||
|
||||
---
|
||||
|
||||
## Integration in Home Assistant
|
||||
|
||||
Nach dem ersten Start verbindet sich ESPHome automatisch mit HAOS. Home Assistant erkennt das Gerät per mDNS und zeigt eine Benachrichtigung zur Integration an.
|
||||
|
||||
**Einstellungen → Geräte & Dienste → ESPHome → Gerät hinzufügen**
|
||||
|
||||
Alle konfigurierten Sensoren erscheinen danach automatisch als Entitäten.
|
||||
|
||||
### Energie-Dashboard
|
||||
|
||||
Für das HA Energie-Dashboard werden kumulative kWh-Sensoren benötigt (`state_class: total_increasing`). Diese sind in den Konfigurationen bereits korrekt gesetzt.
|
||||
|
||||
**Einstellungen → Energie → Konfigurieren:**
|
||||
|
||||
| Dashboard-Feld | Sensor (SPH) | Sensor (MIC) |
|
||||
|----------------|-------------|--------------|
|
||||
| Solar-Erzeugung | `Energy Total` | `EnergyTotal` |
|
||||
| Netzbezug | `Energy Import Total` | — |
|
||||
| Netzeinspeisung | `Energy Export Total` | — |
|
||||
| Batterie laden | `Battery Charge Total` | — |
|
||||
| Batterie entladen | `Battery Discharge Total` | — |
|
||||
|
||||
---
|
||||
|
||||
## Modbus-Adressen: Modellunterschiede
|
||||
|
||||
Growatt verwendet je nach Wechselrichter-Serie unterschiedliche Register-Maps. Die Adressen aus einer Config lassen sich **nicht 1:1 auf andere Modelle übertragen**.
|
||||
|
||||
| Serie | Typische Modelle | Besonderheit |
|
||||
|-------|-----------------|--------------|
|
||||
| MIC | MIC 600–2000 TL-X | 1-phasig, kein Batterie-Bereich |
|
||||
| MIN | MIN 2500–6000 TL-XH | 1-phasig, Hybrid |
|
||||
| SPH | SPH 3000–6000 TL3-BH | 3-phasig, Hybrid, Batterie im 1000er-Bereich |
|
||||
| MOD | MOD 5000–15000 TL3-XH | 3-phasig, Hybrid, abweichende Map |
|
||||
|
||||
---
|
||||
|
||||
## Struktur des Repositories
|
||||
|
||||
```
|
||||
.
|
||||
├── README.md ← Diese Datei
|
||||
├── Growatt MIC 1500 TL-X/
|
||||
│ └── Growatt MIC 1500 TL-X.yaml ← ESPHome Config
|
||||
└── Growatt SPH 5000 TL3/
|
||||
├── Growatt SPH 5000 TL3-BH-UP.yaml
|
||||
└── README.md ← Modbus-Registertabelle
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Beitragen
|
||||
|
||||
Wer eine eigene Growatt-Config ergänzen möchte:
|
||||
|
||||
1. Neuen Ordner nach Schema `Growatt MODELL/` anlegen
|
||||
2. YAML-Config mit korrekten Modbus-Adressen (aus dem offiziellen Datenblatt oder verifiziert) einfügen
|
||||
3. README mit Registertabelle dazulegen (Vorlage: [Growatt SPH 5000 TL3/README.md](./Growatt%20SPH%205000%20TL3/README.md))
|
||||
|
||||
---
|
||||
|
||||
## Lizenz
|
||||
|
||||
Frei verwendbar und anpassbar. Passwörter, API-Keys und WLAN-Daten sind in allen Configs durch sprechende Platzhalter (`HIER_..._EINTRAGEN`) markiert — diese müssen vor dem Einsatz individuell gesetzt werden.
|
||||
Reference in New Issue
Block a user