Prepare Home Assistant weather export to InfluxDB
Prepare Home Assistant weather export to InfluxDB
This commit is contained in:
@@ -0,0 +1,112 @@
|
||||
# Home Assistant -> InfluxDB 3 -> Grafana
|
||||
|
||||
Ziel: Home Assistant schreibt ausgewaehlte Ecowitt- und Energiesensoren nach InfluxDB 3 Core. Grafana bleibt das Langzeit-Dashboard, Home Assistant bleibt die Automationszentrale.
|
||||
|
||||
## 1. InfluxDB fuer Home Assistant erreichbar machen
|
||||
|
||||
Der Stack haelt InfluxDB bewusst ohne Traefik-Route. Fuer Home Assistant wird nur der HTTP-Port `8181` auf einer internen LAN-Adresse veroeffentlicht.
|
||||
|
||||
In Komodo/Stack-Environment fuer `ops/grafana-influxdb` setzen:
|
||||
|
||||
```env
|
||||
INFLUXDB_BIND_IP=192.168.178.X
|
||||
```
|
||||
|
||||
`192.168.178.X` ist die LAN-IP des Docker-Hosts, auf dem `influxdb3-core` laeuft. Nicht `0.0.0.0` verwenden, wenn es nicht notwendig ist.
|
||||
|
||||
Danach den Stack neu deployen und von Home Assistant aus pruefen:
|
||||
|
||||
```bash
|
||||
curl -I http://192.168.178.X:8181/health
|
||||
```
|
||||
|
||||
## 2. Token fuer Home Assistant
|
||||
|
||||
Am besten einen eigenen Write-Token fuer Home Assistant verwenden. Fuer den ersten Test kann der bestehende Admin-Token funktionieren; langfristig sollte der HA-Token nur in die Datenbank `homelab` schreiben duerfen.
|
||||
|
||||
Den Token in Home Assistant eintragen:
|
||||
|
||||
```yaml
|
||||
# /homeassistant/secrets.yaml
|
||||
influxdb3_homeassistant_token: "apiv3_REPLACE_WITH_WRITE_TOKEN"
|
||||
```
|
||||
|
||||
## 3. Home Assistant konfigurieren
|
||||
|
||||
Minimaler Startblock fuer `/homeassistant/configuration.yaml`:
|
||||
|
||||
```yaml
|
||||
influxdb:
|
||||
api_version: 2
|
||||
ssl: false
|
||||
host: 192.168.178.X
|
||||
port: 8181
|
||||
token: !secret influxdb3_homeassistant_token
|
||||
organization: homelab
|
||||
bucket: homelab
|
||||
max_retries: 3
|
||||
default_measurement: state
|
||||
include:
|
||||
entity_globs:
|
||||
- sensor.*ecowitt*
|
||||
- sensor.*gw*
|
||||
- sensor.netzbezug_live
|
||||
- sensor.ins_netz_live
|
||||
- sensor.ins_haus_live
|
||||
- sensor.pv_ueberschuss_live
|
||||
- sensor.batterie_soc_live
|
||||
- sensor.wallbox_leistung_live
|
||||
- sensor.pv_produktion_heute
|
||||
- sensor.wallbox_energie_heute
|
||||
```
|
||||
|
||||
Die `sensor.*gw*`-Regel ist nur ein Startpunkt, weil Ecowitt-Gateways haeufig `gw...` im Entity-Namen haben. Nach dem ersten Export in Grafana pruefen und die Liste enger machen.
|
||||
|
||||
Nach dem Edit:
|
||||
|
||||
```bash
|
||||
ha core check
|
||||
ha core restart
|
||||
```
|
||||
|
||||
## 4. Grafana Smoke-Test
|
||||
|
||||
In Grafana mit der bestehenden Datenquelle `InfluxDB 3 Core` eine SQL-Abfrage testen:
|
||||
|
||||
```sql
|
||||
SHOW TABLES
|
||||
```
|
||||
|
||||
Danach eine konkrete Tabelle pruefen. Home Assistant schreibt Measurements je nach Konfiguration und Entity-Typ; typische Tabellen sind `state`, `degC`, `%`, `W`, `kWh` oder aehnliche Measurement-Namen.
|
||||
|
||||
Beispiel fuer die ersten Werte:
|
||||
|
||||
```sql
|
||||
SELECT *
|
||||
FROM state
|
||||
ORDER BY time DESC
|
||||
LIMIT 20
|
||||
```
|
||||
|
||||
## 5. Dashboard-Kandidaten
|
||||
|
||||
Sinnvolle Panels fuer das erste Wetter-Dashboard:
|
||||
|
||||
- Aussentemperatur und Luftfeuchte
|
||||
- Luftdruck
|
||||
- Windgeschwindigkeit und Boeen
|
||||
- Regenrate und Regen heute
|
||||
- UV und Solarstrahlung
|
||||
- Batterielevel der Ecowitt-Sensoren
|
||||
- PV-Ueberschuss vs. Wetter
|
||||
- Wallbox-Leistung vs. PV-Ueberschuss
|
||||
|
||||
## 6. Erste Automationen
|
||||
|
||||
Home Assistant bleibt fuer Reaktionen zustaendig:
|
||||
|
||||
- Regen startet -> Dachfenster/Fenster pruefen
|
||||
- Windboee ueber Grenzwert -> Markise/Rolllaeden schuetzen
|
||||
- Frostwarnung -> Garten/Wasser/Auto-Hinweis
|
||||
- Genug Regen heute -> Bewaesserung ueberspringen
|
||||
- Ecowitt-Batterie niedrig -> ntfy/HA-Benachrichtigung
|
||||
Reference in New Issue
Block a user