| .. | ||
| klima.conf | ||
| openwb.conf | ||
| README.md | ||
| satellites.conf | ||
Telegraf - Telemetrie-Ingestion (CT143 "Raspi-Broker")
Versionierte Kopie der produktiven Telegraf-Konfiguration. Laufort:
CT143 (pve-mu-3), Verzeichnis /etc/telegraf/telegraf.d/.
Quelle der Wahrheit ist die LIVE-Config auf CT143 (/etc/telegraf/telegraf.d/,
Grafana: /etc/grafana/provisioning/dashboards/). Diese Git-Dateien sind ein
automatischer Spiegel (Richtung nur live->git) via telegraf-git-mirror.sh
(Cron auf pve-mu-3, taeglich 05:15). => IMMER live auf CT143 editieren; der Mirror
zieht die Aenderung automatisch ins Git (kein manuelles Nachziehen mehr noetig,
kein Drift). Die Deploy-Befehle unten dienen nur der Wiederherstellung (git->live).
Architektur (Stand 21.06.2026)
MQTT-Broker = dedizierter mosquitto 2.0.21 auf CT143 192.168.178.36:1883.
Telegraf ist der alleinige MQTT->InfluxDB-Ingest (die alten Python-Bruecken
mqtt-influx-bridge.py / mqtt-rewrite-holzvergaser.py sind gestoppt + disabled).
Zwei InfluxDB-Datenbanken:
sensors- sauberes, aktives Schema (siehesatellites.conf).iobroker- eingefrorenes Archiv (Alt-Historie) + weiterhin openWB/PV (sieheopenwb.conf).
Routing (wichtig, damit nichts doppelt landet)
Beide Configs definieren je einen outputs.influxdb. Telegraf schickt jede Metrik
an alle Outputs, daher wird per name-Filter getrennt:
satellites.conf-> DBsensors, namepass =temperature,io_state,poweropenwb.conf-> DBiobroker, namedrop =temperature,io_state,power
So schreibt der Satelliten-/Heizraum-Ingest ausschliesslich nach sensors,
und openWB/PV ausschliesslich nach iobroker - keine Dopplung.
Schema in DB sensors
| Measurement | Tags | Wert | Quelle |
|---|---|---|---|
temperature |
node + optional sensor |
float Grad C | <raum>/temp, heizraum/<ROM>, oelknoten/<rolle>, shellies/.../ext_temperature → garage_decke |
io_state |
node=heizraum, signal (pumpe1-4/brenner/kessel) |
int 0/1 | heizraum/io/+, heizraum/state/kessel |
power |
node (klima_flur_oben/unten), geraet |
float W/Wh | Shelly */status/pm1:0 |
Globaler Tag host=Raspi-Broker (Telegraf-Default).
Deploy / Wiederherstellung
# auf CT143 (pve-mu-3):
pct push 143 satellites.conf /etc/telegraf/telegraf.d/satellites.conf
pct push 143 openwb.conf /etc/telegraf/telegraf.d/openwb.conf
pct push 143 klima.conf /etc/telegraf/telegraf.d/klima.conf
pct exec 143 -- systemctl restart telegraf
# Verifikation:
pct exec 143 -- influx -database sensors -execute 'SHOW MEASUREMENTS'
klima.conf (ab 24.06.2026)
Shelly PM Mini Gen3 Leistungsmessung der Klimaanlagen -> DB sensors, Measurement power.
| Tag | Bedeutung |
|---|---|
node |
klima_flur_oben (Split oben), klima_flur_unten (Panasonic, vorbereitet) |
geraet |
split_ac / panasonic |
MQTT-Topics (Shelly Prefix):
klima_flur_oben/status/pm1:0klima_flur_unten/status/pm1:0
Felder: watt (apower), voltage, current, energy_wh_total (Wh kumuliert).
Grafana-Dashboard: Klimatisierung (UID klima-bewertung) unter /d/klima-bewertung/klimatisierung
Deploy:
pct push 143 klima.conf /etc/telegraf/telegraf.d/klima.conf
# satellites.conf + openwb.conf namepass/namedrop aktualisieren (power)
pct exec 143 -- systemctl restart telegraf
pct push 143 klima-bewertung.json /etc/grafana/provisioning/dashboards/klima-bewertung.json
garage_decke (ab 26.06.2026)
Garage-Deckentemperaturen: 5x DS18B20 an 2x Shelly 1 (Gen1) → DB sensors, Measurement temperature.
| Tag | Bedeutung |
|---|---|
node |
garage_decke (nicht garage — das ist der Raum-Satellit) |
sensor |
rl_klimadecke, vl_kaeltedecke, vl_brunnen, rl_brunnen, pwt |
MQTT-Topics (Shelly Gen1, plain float °C):
| Shelly | IP | Topics |
|---|---|---|
| shelly1-F4CFA2D3B444 | 192.168.178.86 | shellies/shelly1-F4CFA2D3B444/ext_temperature/0..2 |
| shelly1-8CAAB55D9A15 | 192.168.178.78 | shellies/shelly1-8CAAB55D9A15/ext_temperature/0..1 |
Konfiguration: 5 feste [[inputs.mqtt_consumer]] in satellites.conf (je Topic + feste Tags).
Grafana-Dashboard: Garage Decke (UID garage_decke) → /d/garage_decke/garage-decke
Panels (ab 27.06.2026):
- Temperaturen:
rl_klimadecke,pwt,vl_kaeltedecke,vl_brunnen,rl_brunnen - ΔT KaelteDecke = RL − VL KaelteDecke (Effektivitaet, kein Durchfluss)
- ΔT Brunnen = RL − VL Brunnen; Leistung [kW] =
brunnen_durchfluss[l/min, 3–4,5] × ΔT × 0,0698
Ausführliche Doku: docs/projekte/garage-decke-monitoring.md (Spiegel: CT999 /root/docs/projekte/)
Shelly Gen1: MQTT aktiv → Shelly-App zeigt offline (Cloud vs. MQTT).
Deploy:
pct push 143 satellites.conf /etc/telegraf/telegraf.d/satellites.conf
pct exec 143 -- systemctl restart telegraf
pct push 143 garage_decke.json /etc/grafana/provisioning/dashboards/garage_decke.json
pct exec 143 -- systemctl restart grafana-server
Grafana-Dashboards (versioniert)
Provisionierte Boards liegen unter infra/grafana/ (Quelle der Wahrheit). Laufort: CT143 /etc/grafana/provisioning/dashboards/.
| Datei | UID | URL |
|---|---|---|
klima-bewertung.json |
klima-bewertung | /d/klima-bewertung/klimatisierung |
oelknoten.json |
oelknoten | /d/oelknoten/oelknoten |
garage_decke.json |
garage_decke | /d/garage_decke/garage-decke |
Deploy:
pct push 143 infra/grafana/<board>.json /etc/grafana/provisioning/dashboards/<board>.json
pct exec 143 -- systemctl restart grafana-server
aussen (Aussenfuehler, ab 26.06.2026)
ESP8266-Satellit publiziert weiterhin oelraum/temp (historischer MQTT-Topic-Name).
Telegraf mappt per processors.override auf node=aussen in DB sensors.
| Wert | |
|---|---|
| MQTT | oelraum/temp, oelraum/status |
| InfluxDB | node=aussen, measurement temperature |
| Hardware | ESP8266 Aussenfuehler (ehem. „Ölraum“-Label) |