Eine Home Assistant Integration für die dynamischen Stromtarife smartTIMES (drei Preiszonen mit monatlicher Preisanpassung), smartCONTROL (an den Spot-Börsenpreis gekoppelt) und smartNIGHT (zwei Preiszonen, Peak von 07:00 bis 23:00 Uhr) von smartENERGY, die viertelstündliche Tarifpreise als Sensoren bereitstellt – ideal zum automatischen Schalten von Verbrauchern in günstige Tarifzonen. Der Tarif wird bei der Einrichtung gewählt.
Note
Diese Integration ist ein Community-Projekt und steht in keiner Verbindung zu smartENERGY oder der Energie Steiermark Kunden GmbH.
- ⚡ Tarifwahl smartTIMES, smartCONTROL oder smartNIGHT – bei smartCONTROL wird die Abwicklungsgebühr (1,2 ct/kWh netto / 1,44 ct/kWh brutto) auf den Börsenpreis aufgeschlagen; bei smartNIGHT liegt der Arbeitspreis von 07:00 bis 23:00 Uhr 30 % über dem Off-Peak-Preis (die übrigen Tarife haben keinen solchen Aufschlag)
- 🔌 Arbeitspreis der laufenden Tarifzone (EUR/kWh)
- 💶 Gesamtpreis in EUR/kWh inkl. aller variablen Nebenkosten – fürs Energie-Dashboard
- 📐 Einheitlich EUR/kWh für alle Preissensoren – direkt vergleichbar, ohne Template-Sensor
- 🧾 Variable Nebenkosten automatisch eingerechnet: Elektrizitätsabgabe, Erneuerbaren-Förderbeitrag und netzgebietsabhängige Netzentgelte inkl. Sommer-Nieder-Arbeitspreis (SNAP) für Netzebene 7 und ab Oktober 2027 der Winter-Nieder-Arbeitspreis (WiNAP)
- 🟢 Günstige Stunde als Binary-Sensor –
onin den günstigsten Stunden des Tages (nach Gesamtkosten), ideal zum Schalten von Boiler & Co. Wahlweise als günstigste Einzelstunden (dürfen über den Tag verteilt sein) oder als zusammenhängender Block „am Stück“ für Geräte mit fester Laufzeit (Waschmaschine, Geschirrspüler) - 📊 Tageskennzahlen: Durchschnitts-, Niedrigst- und Höchst-Gesamtpreis von heute
- 💰 Grundgebühr (Monatspauschale) als eigener Sensor
- 🗓️ Vollständige Preisvorschau für heute und morgen als Attribute
- 💶 Umschaltbar zwischen Brutto (inkl. 20 % USt.) und Netto
- ⚙️ Komplette Einrichtung über die Benutzeroberfläche (kein YAML, kein API-Schlüssel)
Tip
📖 Ausführliche Dokumentation (Datenschutz, Netzentgelte, vollständige Sensor-Attribute, Automatisierungsbeispiele, Fehlerbehebung) steht im Wiki.
Die Integration verwendet die öffentlichen Preis-APIs von smartENERGY – je nach gewähltem Tarif (API-Dokumentation: smartTIMES, smartCONTROL):
smartTIMES: https://apis.smartenergy.at/tariffs/v1/Tariffs/smartTIMES/prices
smartCONTROL: https://apis.smartenergy.at/market/v1/price
smartNIGHT: https://apis.smartenergy.at/tariffs/v1/Tariffs/smartTIMES/prices
Für smartNIGHT gibt es keine eigene API. Sein Off-Peak-Preis ist der Off-Peak-Preis von smartTIMES, deshalb wird der Tarif aus derselben Antwort berechnet: Off-Peak übernimmt den günstigsten Preis des Tages, von 07:00 bis 23:00 Uhr kommen 30 % darauf. So folgt der Preis der monatlichen Anpassung von smartENERGY automatisch, und es entsteht kein zusätzlicher Abruf.
Warning
Da die API lokale Zeitstempel liefert, sollte die Zeitzone in Home Assistant auf Europe/Vienna eingestellt sein.
- HACS öffnen → Integrationen.
- Nach smartENERGY Strompreishelfer suchen, herunterladen und Home Assistant neu starten.
- Den Ordner
custom_components/smartenergyin dascustom_components-Verzeichnis deiner Home-Assistant-Konfiguration kopieren. - Home Assistant neu starten.
- Einstellungen → Geräte & Dienste → Integration hinzufügen öffnen.
- Nach smartENERGY Strompreishelfer suchen.
- Das Tarifmodell wählen: smartTIMES (zeitabhängig), smartCONTROL (börsengekoppelt) oder smartNIGHT (Nachttarif).
- Auswählen, ob die Preise inkl. USt. (brutto) angezeigt werden sollen.
- Das Netzgebiet wählen (für die Netzentgelte im Gesamtpreis). „Kein Netzgebiet“ lässt die Netzentgelte weg. Das Netzgebiet steht im Netzzugangsvertrag des Netzbetreibers.
Diese Einstellungen sind über Konfigurieren jederzeit änderbar.
Hast du mehrere Zähler – etwa Haushalt und Wärmepumpe, auch mit unterschiedlichem Tarif oder Netzgebiet –, richte die Integration einfach für jeden Zähler erneut über Integration hinzufügen ein. Jeder Eintrag hat seine eigenen Sensoren, Einstellungen und „Günstige Stunde“-Untereinträge und ruft die Preise selbst ab.
Die Entitäts-IDs leiten sich aus dem Tarif ab. Teilen sich zwei Einträge
denselben Tarif, hängt Home Assistant an die des zweiten ein _2 an
(sensor.smarttimes_strompreishelfer_gesamtpreis_2). Zur besseren
Unterscheidung lässt sich das Gerät auf seiner Geräteseite umbenennen, Home
Assistant bietet dabei an, die Entitäts-IDs mitzuziehen.
Die Binary-Sensoren „Günstige Stunde“ werden als Untereinträge angelegt – so kannst du pro Verbraucher einen eigenen Sensor mit eigener Stundenzahl erstellen (z. B. Boiler 4 h, Wallbox 8 h):
- Bei der Integration unter smartENERGY Strompreishelfer auf Untereintrag hinzufügen (bzw. Günstige-Stunde-Sensor hinzufügen) klicken.
- Einen Namen (z. B. „Boiler“) und die günstigen Stunden pro Tag angeben.
- Die Logik der günstigen Stunden wählen:
- Günstigste Einzelstunden (Standard): die billigsten Viertelstunden des Tages – sie dürfen über den Tag verteilt (zerteilt) sein. Ideal für Verbraucher ohne feste Laufzeit (Boiler, Wallbox).
- Zusammenhängender Block: ein einziges günstigstes Zeitfenster „am Stück“. Wichtig für Geräte mit fester, ununterbrochener Laufzeit (Waschmaschine, Geschirrspüler). Der Block wird je Zeitraum von 20 Uhr bis 20 Uhr gewählt, nicht je Kalendertag – so kann er auch über Mitternacht reichen (z. B. 23:00–05:00).
- Stundenzahl exakt einhalten (Vorgabe: ein) entscheidet, was bei Preisgleichstand passiert. Eingeschaltet liefert der Sensor exakt die eingestellte Stundenzahl. Ausgeschaltet werden alle Zeiten mitmarkiert, die genau so viel kosten wie die teuerste ausgewählte – der Sensor ist dann länger an als eingestellt, aber nie zu einem höheren Preis. Ausschalten lohnt für selbstbegrenzende Verbraucher (Boiler mit Thermostat, Wallbox mit Ziel-Ladestand), die eine Gelegenheit zum selben Preis mitnehmen können. Bei smartTIMES ist der Unterschied groß: Der Tarif kennt nur drei Preisstufen zu je 8 Stunden, ausgeschaltet liefert dort jede Einstellung zwischen 0,25 h und 8 h dieselben 8 Stunden. Bei smartNIGHT gilt dasselbe für seine 8 Off-Peak-Stunden (23:00–07:00). Beides gilt ohne gewähltes Netzgebiet – mit Netzgebiet entscheidet der Gesamtpreis, und das SNAP-Fenster (10:00–16:00 Uhr) kann die günstigsten Stunden im Sommer verschieben. Die Option wirkt nur bei „Günstigste Einzelstunden“; beim zusammenhängenden Block gilt die eingestellte Länge ohnehin immer exakt.
- Beliebig viele weitere Sensoren auf dieselbe Weise hinzufügen.
Jeder Untereintrag erscheint als eigenes Gerät und lässt sich einzeln bearbeiten oder entfernen.
Note
Der Sensor schaltet absichtlich nicht auf die Sekunde genau. Damit nicht
alle Haushalte gleichzeitig eine große Last zuschalten, verschiebt jeder
Sensor seine Schaltflanken um bis zu 10 Minuten – nach innen: eingeschaltet
wird etwas später, ausgeschaltet entsprechend früher. Der Versatz ist aus der
ID des Untereintrags abgeleitet, also je Sensor konstant, und steht im Attribut
jitter_offset_seconds.
- Einstellungen → Geräte & Dienste öffnen und die Integration smartENERGY Strompreishelfer auswählen.
- Beim Eintrag auf das Drei-Punkte-Menü → Löschen klicken. Damit werden der Eintrag, alle seine Sensoren und die „Günstige Stunde“-Untereinträge (samt ihrer Geräte) entfernt. Bei mehreren Zählern jeden Eintrag einzeln löschen.
- Optional, um auch die Dateien zu entfernen: in HACS die Integration
smartENERGY Strompreishelfer öffnen → Entfernen. Bei manueller
Installation stattdessen den Ordner
custom_components/smartenergylöschen. Anschließend Home Assistant neu starten.
Die Integration legt keine Daten außerhalb des Config-Eintrags an; nach dem Löschen bleiben keine Konfigurationsreste zurück.
Entitäts-IDs beginnen mit dem gewählten Tarif (
smarttimes_…,smartcontrol_…bzw.smartnight_…), unten verkürzt als….
| Sensor | Beschreibung |
|---|---|
…_arbeitspreis |
Arbeitspreis der aktuellen Tarifzone (EUR/kWh) |
…_gesamtpreis |
Gesamtpreis inkl. Nebenkosten (EUR/kWh) – fürs Energie-Dashboard |
binary_sensor.<name>_gunstige_stunde |
Günstige Stunden; ein Sensor je Untereintrag |
sensor.<name>_nachster_gunstiger_start |
Beginn des nächsten günstigen Fensters; ein Sensor je Untereintrag |
…_durchschnittlicher_gesamtpreis_heute |
Ø-Gesamtpreis heute (EUR/kWh) |
…_niedrigster_gesamtpreis_heute |
Niedrigster Gesamtpreis heute (EUR/kWh) |
…_hochster_gesamtpreis_heute |
Höchster Gesamtpreis heute (EUR/kWh) |
…_preisquantil_heute |
Einordnung des laufenden Intervalls in den Tag, 0–100 % (je niedriger, desto günstiger) |
…_grundgebuhr |
Grundgebühr (EUR/month) |
binary_sensor.…_preise_fur_morgen_verfugbar |
Ob die Preise für den Folgetag vorliegen (Diagnose) |
Der Gesamtpreis-Sensor enthält alle Nebenkosten (Steuern, Abgaben, Netzentgelte inkl. SNAP) und ist die richtige Wahl fürs Energie-Dashboard und zum Schalten; Tageskennzahlen und der Günstige-Stunde-Sensor beziehen sich ebenfalls darauf.
Das Preisquantil ordnet den laufenden Preis in den heutigen Tag ein.
Näheres im Wiki.
Tip
Preise für morgen verfügbar schaltet auf on, sobald die Preise des
Folgetags eingetroffen sind, und ist der passende Auslöser, um den Tagesplan
neu zu rechnen. Beispiele stehen im Wiki unter
Automatisierungsbeispiele.
Details zu den Nebenkosten und die vollständige Attribut-Referenz stehen im Wiki.
Siehe LICENSE.
Inspiriert von EPEX-Spot