Diese Integration liest Energie- und Gaszählerdaten direkt vom Emlog-Gerät und macht sie in Home Assistant verfügbar. Sie bietet vollständige Automatisierung zur Datenerfassung mit erweiterten Konfigurationsoptionen für Tarifberechnungen.
📌 Hinweis: Dies ist meine erste HACS Integration. Sie wurde mit der Unterstützung von GitHub Copilot entwickelt, um Transparenz zu schaffen und zu demonstrieren, wie KI-Coding-Tools bei der Integration-Entwicklung helfen können. Die Architektur-Entscheidungen, Design-Pattern und Begründungen sind im
.github/-Verzeichnis dokumentiert.
⚠️ Inoffizielle Integration: Diese Integration ist ein privates Projekt und nicht offiziell von Weidmann Elektronik (Hersteller von Emlog) unterstützt. Das Emlog-Gerät ist ein Produkt von Weidmann Elektronik – diese Integration wurde von der Community entwickelt.
- 📡 Automatisches Daten-Polling - Regelmäßiges Auslesen der Emlog-API
- 🌐 Dynamische Währungserkennung - Währung wird automatisch von der API ausgelesen
- 🕐 Automatische Timezone-Nutzung - Verwendet die konfigurierte HA-Timezone statt UTC
- 🔄 Utility Meter Integration - Erstellt automatisch tägliche/monatliche/jährliche Verbrauchsmesser
- 🎯 Flexible Helfer-Integration - Nutze
input_numberEntities für dynamische Werte (Preise, Faktoren) - ⚡ Multi-Meter Support - Unterstütze mehrere Emlog-Geräte gleichzeitig
Währung: Die Integration erkennt die Währung automatisch von Ihrem Emlog-Gerät. Sie müssen keine Währung manuell eintragen. Die Unit-of-Measurement wird dynamisch basierend auf der API-Response gesetzt (z.B. EUR, CHF, etc.).
Timezone: Alle Zeitstempel nutzen die in Home Assistant konfigurierte Timezone - nicht UTC. Dies stellt sicher, dass Ihre Kostenberechnungen und Utility-Meter mit Ihrer lokalen Zeit synchronisiert sind.
- Zählerstände (in kWh / m³) - Gesamtverbrauch mit verschiedenen Tarifen
- Leistungssensoren (in W) - Aktuelle Leistung in Echtzeit
- Betrag-Sensoren - Tagesaktuelle Kosten von der Emlog API
- Preis-Sensoren - Konfigurierbare kWh-Preise
- Utility Meter - Automatische tägliche/monatliche/jährliche Aggregationen
- Status-Sensoren - API-Verbindungsstatus und letzte Fehlermeldung
- 🏷️ Basis-Preise (Grundpreis) - Monatliche Grundgebühren für Strom & Gas
- 💳 Monatliche Abschläge (Voraus) - Vorkonfigurierte Abschlagszahlungen
- 📆 Abrechnung Monat - Flexibles Abrechnungsdatum für Kostenberechnungen
- 🔗 Dynamische Helfer - Verlinke Entities für:
- Strom-/Gaspreise (kWh)
- Gasbrennwert (Brennwert)
- Gaszustandszahl
- Basis-Preise (Grundgebühren)
- Abschlagszahlungen
ℹ️ Status: Diese Integration befindet sich derzeit im Prozess der HACS-Katalog-Genehmigung. Bis zur vollständigen Aufnahme im HACS-Verzeichnis kann die Integration als Custom Repository installiert werden.
- Öffne Einstellungen → Geräte & Dienste → Integrationen
- Klicke auf Neue Integration erstellen (Knopf rechts unten)
- Suche nach "Emlog"
- Klicke auf die Integration und folge dem Setup-Dialog
Falls die Integration nicht angezeigt wird:
- HACS → Integrationen
- Klicke auf das Menü (⋮) → Custom Repositories
- Trage die URL ein:
https://github.com/strausmann/hacs_emlog - Kategorie: Integration
- Speichern → Installieren
- Home Assistant neu starten
Nach dem Neustart öffne wieder Einstellungen → Geräte & Dienste → Integration hinzufügen → Emlog
Du musst folgende Angaben machen:
| Feld | Beschreibung | Beispiel |
|---|---|---|
| Host | IP-Adresse deines Emlog-Geräts (ohne http://) |
192.168.1.50 |
| Zähler-Index | Meterindex für diesen Zähler (1-4) | 1 (für Strom), 2 (für Gas) |
| Zähler-Typ | Messertyp (Strom oder Gas) | Strom |
| Scan-Intervall | Wie oft Daten abgefragt werden (Sekunden) | 30 |
Nach der Einrichtung kannst du erweiterte Optionen im Zahnrad-Icon (⚙️) der Integration setzen:
| Option | Beschreibung | Standard | Format |
|---|---|---|---|
| Preis pro kWh | Strompreis für Kostenberechnung | 0,00 |
EUR/kWh mit bis zu 4 Dezimalstellen (z.B. 0,3854) |
| Basis-Preis (€/Monat) | Monatliche Grundgebühr | 0,00 |
EUR |
| Monatlicher Abschlag | Vorkonfigurierte monatliche Zahlung | 0,00 |
EUR |
| Option | Beschreibung | Standard |
|---|---|---|
| Gasbrennwert | Umrechnung m³ → kWh | 10,88 |
| Gaszustandszahl | Zusatzfaktor für Gasberechnung | 1,0 |
| Option | Beschreibung |
|---|---|
| Abrechnung Monat | Monat (1-12) für jährliche Kostenberechnung |
| Dynamische Helfer | Verlinke input_number oder andere Entities für dynamische Werte |
💡 Tipp: Statt feste Werte einzustellen, kannst du dynamische Helfer verwenden:
- Erstelle
input_numberEntities in der UI - Wähle diese in den Integrations-Optionen aus
- Ändere Werte jederzeit ohne Integration neu zu laden!
Beispiel:
# Erstelle diese Eingabe-Entities (Input > Number)
input_number:
strompreis:
min: 0
max: 1
step: 0.0001
unit_of_measurement: 'EUR/kWh'
gasbrennwert:
min: 5
max: 15
step: 0.01Nach der Konfiguration werden automatisch Sensoren für deinen Zähler erstellt. Die Entity-Namen folgen dem Pattern:
sensor.emlog_{meter_type}_{meter_index}_{sensor_key}
Beispiele: sensor.emlog_strom_1_zaehlerstand_kwh, sensor.emlog_gas_2_wirkleistung_w
| Entity-Name | Name | Unit | Beschreibung |
|---|---|---|---|
emlog_strom_1_product |
Produkt | — | Produktbezeichnung vom Emlog-Gerät (z.B. "Emlog - Electronic Meter Log") |
emlog_strom_1_version |
Software Version | — | Firmware-Version des Emlog-Geräts (z.B. 1.16) |
| Entity-Name | Name | Unit | Device Class | Beschreibung |
|---|---|---|---|---|
emlog_strom_1_zaehlerstand_kwh |
Zählerstand (kWh) | kWh | energy |
Gesamter Stromverbrauch seit Inbetriebnahme (kumulativ, nur steigend) |
emlog_strom_1_wirkleistung_w |
Wirkleistung (W) | W | power |
Aktuelle Stromleistung in Echtzeit (Messwert alle 30 Sekunden) |
emlog_strom_1_verbrauch_tag_kwh |
Verbrauch Heute (kWh) | kWh | energy |
Heutiger Stromverbrauch (setzt sich täglich zurück) |
emlog_strom_1_betrag_tag_eur |
Betrag Heute | [Währung] | monetary |
Heutige Stromkosten aus Emlog-API (berechneter Tagesbetrag) |
emlog_strom_1_preis_eur_kwh |
Preis (kWh) | [Währung]/kWh | monetary |
Konfigurierter Strompreis (nutzt Helfer wenn verlinkt) |
Diese Sensoren sind optional und können in den Integrations-Optionen aktiviert werden (nur für Stromzähler). Sie sind nützlich, wenn du eine Solaranlage mit Rückspeisung hast:
| Entity-Name | Name | Unit | Device Class | Beschreibung |
|---|---|---|---|---|
emlog_strom_1_zaehlerstand_lieferung_kwh |
Zählerstand Lieferung (kWh) | kWh | energy |
Gesamter Strom eingespeist ins Netz seit Inbetriebnahme |
emlog_strom_1_wirkleistung_lieferung_w |
Wirkleistung Lieferung (W) | W | power |
Aktuelle Einspeiseleistung (Strom vom Dach ins Netz) |
emlog_strom_1_einspeitung_heute_kwh |
Einspeitung Heute (kWh) | kWh | energy |
Heute eingespiesener Strom (setzt sich täglich zurück) |
emlog_strom_1_betrag_lieferung_eur |
Betrag Lieferung Heute | [Währung] | monetary |
Heutige Einspeisevergütung aus Emlog-API (berechneter Betrag) |
🔧 So aktivierst du Feed-in Sensoren:
- Öffne die Integration: Einstellungen → Geräte & Dienste → Emlog → Zahnrad-Icon (⚙️)
- Aktiviere: "Feed-in Sensoren für Solaranlagen (kWh)"
- Speichern → Neue Sensoren erscheinen automatisch
| Entity-Name | Name | Unit | Device Class | Beschreibung |
|---|---|---|---|---|
emlog_gas_2_zaehlerstand_m3 |
Zählerstand (m³) | m³ | gas |
Gesamter Gasverbrauch in Kubikmetern seit Inbetriebnahme |
emlog_gas_2_zaehlerstand_kwh |
Zählerstand (kWh) | kWh | energy |
Gesamter Gasverbrauch in kWh (konvertiert mit Brennwert/Zustandszahl) |
emlog_gas_2_wirkleistung_w |
Wirkleistung (W) | W | power |
Aktuelle Gasleistung |
emlog_gas_2_verbrauch_tag_kwh |
Verbrauch Heute (kWh) | kWh | energy |
Heutiger Gasverbrauch in kWh |
emlog_gas_2_betrag_tag_eur |
Betrag Heute | [Währung] | monetary |
Heutige Gaskosten |
emlog_gas_2_preis_eur_kwh |
Preis (kWh) | [Währung]/kWh | monetary |
Konfigurierter Gaspreis |
emlog_gas_2_brennwert |
Brennwert | — | — | Brennwert für Gas-Umrechnung (m³ → kWh) |
emlog_gas_2_zustandszahl |
Zustandszahl | — | — | Zustandszahl für Gas-Umrechnung |
| Entity-Name | Name | Unit | Beschreibung |
|---|---|---|---|
emlog_strom_1_api_status / emlog_gas_2_api_status |
API Status | — | API-Verbindungsstatus ("connected", "failed", "initializing") |
emlog_strom_1_letzte_fehlermeldung / emlog_gas_2_letzte_fehlermeldung |
Letzte Fehlermeldung | — | Letzter Fehler bei API-Abfrage (leer wenn OK) |
emlog_strom_1_letztes_update / emlog_gas_2_letztes_update |
Letztes Update | — | Zeitstempel des letzten erfolgreichen Updates |
Die Integration erstellt automatisch für jeden Meter-Typ (Strom/Gas) drei Utility Meter:
| Entity-Name | Name | Period | Beschreibung |
|---|---|---|---|
sensor.emlog_strom_1_verbrauch_tag |
Emlog Strom 1 Verbrauch Tag | Täglich | Täglicher Stromverbrauch (Referenz-Entity: sensor.emlog_strom_1_zaehlerstand_kwh) |
sensor.emlog_strom_1_verbrauch_monat |
Emlog Strom 1 Verbrauch Monat | Monatlich | Monatlicher Stromverbrauch (setzt sich am 1. des Monats zurück) |
sensor.emlog_strom_1_verbrauch_jahr |
Emlog Strom 1 Verbrauch Jahr | Jährlich | Jährlicher Stromverbrauch (setzt sich am 1. Januar zurück) |
sensor.emlog_gas_2_verbrauch_tag |
Emlog Gas 2 Verbrauch Tag | Täglich | Täglicher Gasverbrauch (Referenz-Entity: sensor.emlog_gas_2_zaehlerstand_kwh) |
sensor.emlog_gas_2_verbrauch_monat |
Emlog Gas 2 Verbrauch Monat | Monatlich | Monatlicher Gasverbrauch |
sensor.emlog_gas_2_verbrauch_jahr |
Emlog Gas 2 Verbrauch Jahr | Jährlich | Jährlicher Gasverbrauch |
Hinweis: Die Nummer in der Entity (z.B. "1" bei "emlog_strom_1") ist der Meter-Index aus der Konfiguration.
type: glance
title: Stromverbrauch aktuell
entities:
- entity: sensor.emlog_strom_1_zaehlerstand_kwh
name: Gesamtverbrauch
- entity: sensor.emlog_strom_1_wirkleistung_w
name: Aktuelle Leistung
- entity: sensor.emlog_strom_1_verbrauch_tag
name: Heute
- entity: sensor.emlog_strom_1_verbrauch_monat
name: Dieser MonatDas Energie Dashboard in Home Assistant kann direkt mit den Emlog-Sensoren verknüpft werden für eine vollständige Energie-Übersicht.
-
Öffne das Energie Dashboard:
- Gehe zu: Übersicht → Energie
-
Strom hinzufügen (Electricity):
- Klicke auf "Verbrauch hinzufügen"
- Wähle:
sensor.emlog_strom_1_zaehlerstand_kwh - Die Entity wird automatisch erkannt (Device Class: Energy, State Class: Total Increasing)
-
Gas hinzufügen (Gas):
- Klicke auf "Verbrauch hinzufügen"
- Wähle eine der beiden Optionen:
sensor.emlog_gas_2_zaehlerstand_m3(Verbrauch in Kubikmetern)sensor.emlog_gas_2_zaehlerstand_kwh(Verbrauch in kWh mit Brennwert-Umrechnung) ← Empfohlen
-
Speichern ✅
Beispiel Entity-Namen basierend auf Ihrer Konfiguration:
| Meter-Typ | Meter-Index | Empfohlene Entity | Einheit | Beschreibung |
|---|---|---|---|---|
| Strom | 1 | sensor.emlog_strom_1_zaehlerstand_kwh |
kWh | Elektrizität (ganz) |
| Gas | 2 | sensor.emlog_gas_2_zaehlerstand_kwh |
kWh | Gas in kWh (mit Brennwert-Umrechnung) |
| Gas | 2 | sensor.emlog_gas_2_zaehlerstand_m3 |
m³ | Gas in Kubikmetern (alternativ) |
💡 Hinweis: Die Nummern (1, 2, etc.) entsprechen den Meter-Indizes aus der Integration-Konfiguration.
Sensoren werden im Dashboard nicht angeboten?
- Überprüfe, ob die Sensoren in Einstellungen → Geräte & Dienste → Emlog Integration sichtbar sind
- Stelle sicher, dass mindestens ein Wert vom Emlog-Gerät abgerufen wurde (check
Letztes Update) - Starte Home Assistant neu: Einstellungen → System → Herunterfahren → Neu starten
Falsche Werte im Dashboard?
- Überprüfe die Brennwert und Zustandszahl Einstellungen in den Integrations-Optionen
- Für Gas in kWh wird automatisch umgerechnet:
Verbrauch (m³) × Brennwert × Zustandszahl
Das Energie Dashboard ermöglicht automatische Auswertungen:
# Beispiel: Tägliche Benachrichtigung mit Energieverbrauch
automation:
- alias: 'Täglicher Energiebericht'
trigger:
platform: time
at: '22:00:00'
action:
- service: notify.notify
data:
title: '📊 Heute verbrauchte Energie'
message: |
Strom: {{ states('sensor.emlog_strom_1_verbrauch_tag') }} kWh
Gas: {{ states('sensor.emlog_gas_2_verbrauch_tag') }} m³automation:
- alias: 'Stromverbrauch zu hoch'
trigger:
platform: numeric_state
entity_id: sensor.emlog_strom_1_wirkleistung_w
above: 3000
action:
- service: persistent_notification.create
data:
title: '⚠️ Hoher Stromverbrauch'
message: "Leistung über 3000W: {{ states('sensor.emlog_strom_1_wirkleistung_w') }}W"script:
tagesverbrauch_bericht:
sequence:
- service: notify.notify
data:
title: '📊 Stromverbrauch heute'
message: |
Verbrauch: {{ states('sensor.emlog_strom_1_verbrauch_tag') }} kWh
Kosten: {{ (states('sensor.emlog_strom_1_verbrauch_tag') | float(0) * 0.35) | round(2) }} EURDie Integration bietet automatische Kostenberechnungen basierend auf konfigurierten Preisen und Grundgebühren.
Nach der Konfiguration von Preisen und Abschlägen werden automatisch folgende Kosten-Sensoren erstellt:
| Sensor-Name | Entity-Name | Berechnung | Beschreibung |
|---|---|---|---|
Emlog Strom 1 Kosten Tag |
sensor.emlog_strom_1_kosten_tag |
(Verbrauch × kWh-Preis) + (Grundpreis ÷ 30) | Heute anfallende Kosten (ohne Abschlag) |
Emlog Strom 1 Kosten Monat |
sensor.emlog_strom_1_kosten_monat |
(Verbrauch × kWh-Preis) + Grundpreis | Diesen Monat anfallende Kosten |
Emlog Strom 1 Kosten Jahr |
sensor.emlog_strom_1_kosten_jahr |
(Verbrauch × kWh-Preis) + (Grundpreis × 12) | Dieses Jahr anfallende Kosten |
Emlog Gas 2 Kosten Tag |
sensor.emlog_gas_2_kosten_tag |
Wie Strom, für Gas | Tägliche Gas-Kosten |
Emlog Gas 2 Kosten Monat |
sensor.emlog_gas_2_kosten_monat |
Wie Strom, für Gas | Monatliche Gas-Kosten |
Emlog Gas 2 Kosten Jahr |
sensor.emlog_gas_2_kosten_jahr |
Wie Strom, für Gas | Jährliche Gas-Kosten |
| Sensor-Name | Entity-Name | Berechnung | Beschreibung |
|---|---|---|---|
Emlog Strom 1 Abschlag Jahresgesamt |
sensor.emlog_strom_1_advance_total |
Monatlicher Abschlag × 12 | Gesamte Abschlagszahlung pro Jahr |
Emlog Strom 1 Abschlag Differenz |
sensor.emlog_strom_1_advance_difference |
Jährliche Kosten - Abschlag Jahresgesamt | Differenz zwischen Kosten und Abschlägen |
Emlog Gas 2 Abschlag Jahresgesamt |
sensor.emlog_gas_2_advance_total |
Monatlicher Abschlag × 12 | Gesamte Gas-Abschlagszahlung pro Jahr |
Emlog Gas 2 Abschlag Differenz |
sensor.emlog_gas_2_advance_difference |
Jährliche Kosten - Abschlag Jahresgesamt | Differenz: negativ = Nachzahlung, positiv = Rückerstattung |
Beispiel Strom mit 0,35 EUR/kWh und 50 EUR/Monat Grundgebühr:
-
Tagesverbrauch: 20 kWh
-
Tägliche Kosten = (20 × 0,35) + (50 ÷ 30) = 7,00 + 1,67 = 8,67 EUR
-
Monatsverbrauch (300 kWh):
-
Monatliche Kosten = (300 × 0,35) + 50 = 105,00 + 50 = 155,00 EUR
-
Jahresverbrauch (3.600 kWh) mit monatlichem Abschlag von 140 EUR:
-
Jährliche Kosten = (3.600 × 0,35) + (50 × 12) = 1.260,00 + 600 = 1.860,00 EUR
-
Abschlag Jahresgesamt = 140 × 12 = 1.680,00 EUR
-
Abschlag Differenz = 1.860,00 - 1.680,00 = 180,00 EUR (Nachzahlung fällig!)
- Positive Differenz (z.B. +180 EUR) → Verbrauch war höher als Abschläge → Nachzahlung notwendig ❌
- Negative Differenz (z.B. -200 EUR) → Abschläge waren höher → Rückerstattung zu erwarten ✅
- Differenz ≈ 0 → Abschläge stimmen sehr gut mit Verbrauch überein ✅
Die Integration verwendet den konfigurierten Abrechnungsmonat für Jahresberechnungen. Normalerweise ist das Dezember (Monat 12). Sie können dies in den Integrations-Optionen anpassen.
- Home Assistant neu starten (Einstellungen → System → Neu starten oben rechts)
- HACS Cache leeren: HACS-Seite mit
Strg+Shift+Rneu laden
- "HTTP 404 Not Found" → Meterindex prüfen (meist
1für Strom,2für Gas) - "Timeout" → Scan-Intervall erhöhen (z.B. auf
60Sekunden), oder Emlog-IP-Adresse prüfen - "Connection refused" → Prüfe ob Emlog online ist:
ping 192.168.x.x
- Gehe in die Optionen der Integration (Zahnrad-Icon)
- Prüfe dass Helfer-Entities korrekt verlinkt sind
- Führe einen Integration Reload durch: Einstellungen → Geräte & Dienste → Emlog → ⋮ (Menü) → Neu laden
- Prüfe ob Strompreis und Grundpreis konfiguriert sind (Optionen der Integration)
- Ohne diese Werte können keine Kostenberechnungen erfolgen
- Nach Konfiguration: Integration Reload durchführen
- Stelle sicher dass die
input_numberEntity existiert - Prüfe die Entity-ID in den Integrations-Optionen
- Entity-ID muss exakt passen (z.B.
input_number.strompreis_kwh) - Nach Helfer-Änderung: Integration Reload durchführen
- Architektur-Details - Technischer Aufbau
- API-Referenz - Emlog JSON-Format
- Entwicklungs-Guide - Für Contributor
- GitHub Issues - Bug Reports & Feature Requests
- GitHub Discussions - Fragen & Austausch
- Home Assistant Forum - Community Support
Möchtest du zur Integration beitragen?
- 🐛 Bug melden - Im Issue-Tracker
- 💡 Feature vorschlagen - Mit detaillierter Beschreibung
- 📝 Dokumentation verbessern - Pull Request mit Verbesserungen
- 💻 Code beitragen - Schaue CONTRIBUTING.md
Diese Integration ist unter der MIT Lizenz lizenziert.