Begriffe wie „Sensor Template“ und „Template Sensor“ sowie „Sensor File“ und „Sensor Folder“ tauchen bei der Suche in Verbindung mit Home Assistant immer wieder auf. In diesem Beitrag zeige ich, was bei meinen Recherchen zu diesem Thema und bei der Verwendung von diesen Sensoren in Home Assistant herausgekommen ist.
Sensoren sind ein Grundbestandteil in Home Assistant und sie zeigen den aktuellen Status oder den Wert von Entitäten bzw. Geräten. Es gibt sie in den verschiedensten Varianten und sie werden zum Teil von Home Assistant, zum Teil mit Integrationen und auch manuell angelegt.
Das manuelle Anlegen von Sensoren wird mittels YAML Code hauptsächlich in der „configuration.yaml“ Datei durchgeführt. Der Stil in dem dieser Sensor programmiert wird, bzw. die Schreibweise wird als Template bzw. Templating bezeichnet.
Die offizielle Beschreibung von Home Assistant Templates findest du hier:
Um jetzt einen Sensor in Home Assistant anzulegen gibt es verschiedene Möglichkeiten. Grundsätzlich unterscheidet man in
- Sensor Template
- Template Sensor
Worin liegt hier der Unterschied?
SENSOR TEMPLATE
# Eintrag in der configuration.yaml sensor: - platform: template sensors: mein-sensor-name: friendly_name: "Mein Sensor Name"
Der klassische Sensor Template wird, wie hier im Beispiel angelegt. Dies ist allerdings ein älterer Stil welcher nicht mehr empfohlen wird.
TEMPLATE SENSOR
# Eintrag in der configuration.yaml template: - sensor: - name: mein-sensor-name
Dieses ist der empfohlene Stil. Der Vorteil ist, dass dieser „Template Sensor“ in der Reaktionsfähigkeit und Abfragegeschwindigkeit wesentlich schneller und zuverlässiger ist.
Wenn durch das Erstellen vieler Template Sensoren, die „configuration.yaml“ Datei überfüllt und unübersichtlich werden sollte, gibt es Alternativen.
Sensor File
Die erste und gängigste Variante ist das „Sensor File“ bzw. das „Template File“.
Dazu muss in der Home Assistant „config“ eine Datei (File) angelegt werde. Diese Datei trägt den Namen der Art mit welchem der Sensor angelegt werden soll.
Also: „sensor.yaml“ und „template.yaml„
Nachdem diese Datein angelegt sind, muss in der „configuration.yaml“ eine Weiterleitung zu diesen Dateien eingerichtet werden.
Diese sieht so aus:
# Eintrag in der configuration.yaml sensor: !include sensor.yaml template: !include template.yaml
Wenn diese Zeilen in der „configuration.yaml“ eingetragen sind und Home Assistant neu gestartet wurde, können Sensoren nun in den jeweiligen Dateien geschrieben werden.
Als Beispiel nehme ich einen hier einen einfachen „Wochentag, Datum“ Sensor für eine deutsche Anzeige.

Alte Version – Eintrag in sensor.yaml
- platform: template sensors: mein_datum: friendly_name: "Mein Datum" icon_template: mdi:calendar-today value_template: > {% set months = ["Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"] %} {% set days = ["Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag", "Sonntag"] %} {{ days[now().weekday()] + ', ' + now().day | string + '.' + months[now().month-1] + ' ' + now().year | string }}
Neue Version – Eintrag in template.yaml
- sensor: - name: Mein Datum unique_id: mein_datum icon: mdi:calendar-today state: > {% set months = ["Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"] %} {% set days = ["Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag", "Sonntag"] %} {{ days[now().weekday()] + ', ' + now().day | string + '.' + months[now().month-1] + ' ' + now().year | string }}
Man sieht die unterschiedlichen Codes mit denen der im Grunde gleiche Sensor geschrieben wurde.
Sensor Folder
Eine zweite, weniger gängige aber übersichtlichere Variante ist der „Sensor Folder“ bzw. „Template Folder“. Hierbei handelt es sich um Ordner welche in der Home Assistant „config“ angelegt werden.
Zur Weiterleitung aus der „configuration.yaml“ Datei muss man anstatt wie vorhin eine Datei freizugeben nun den Ordner freigeben.
Dies sieht so aus:
# Eintrag in der configuration.yaml homeassistant: allowlist_external_dirs: - /config/sensor - /config/template sensor: !include_dir_list sensor template: !include_dir_list template
Auch in diesem Fall ist nach dem Neustart von Home Assistant die Weiterleitung auf den Ordner gegeben. Wenn nun Sensoren angelegt bzw. geschrieben werden, sind diese in ein jeweils separates File in diesen Ordner zu speichern. Der Dateiname für diese File spielt hierbei keine Rolle. Er kann mit Lehrzeichen und Umlauten geschrieben werden, jedoch die Endung ist mit „.yaml“ immer gleich.
Auch die Schreibweise des Codes unterscheidet sich kaum vom „Sensor File“ bzw. „Template File“. Einzig der Bindestrich am Anfang entfällt inklusive der Lehrzeichen Einrückung.
Als Beispiel wieder „Mein Datum“ Sensor in beiden Varianten.
Sensor Folder mit „Sensor Template“
# Datei im Ordner "sensor" mit dem Namen "Mein persönlicher Datum Sensor.yaml" (Beispiel) platform: template sensors: mein_datum: friendly_name: "Mein Datum" icon_template: mdi:calendar-today value_template: > {% set months = ["Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"] %} {% set days = ["Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag", "Sonntag"] %} {{ days[now().weekday()] + ', ' + now().day | string + '.' + months[now().month-1] + ' ' + now().year | string }}
Template Folder mit „Template Sensor“
# Datei im Ordner "template" mit dem Namen "Mein persönlicher Datum Sensor.yaml" (Beispiel) sensor: - name: Aktuelles Datum unique_id: mein_datum icon: mdi:calendar-today state: > {% set months = ["Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"] %} {% set days = ["Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag", "Sonntag"] %} {{ days[now().weekday()] + ', ' + now().day | string + '.' + months[now().month-1] + ' ' + now().year | string }}
Passend zu den Sensoren sieh dir diesen Beitrag an:
Dieser Beitrag hat 14 Kommentare
Deine Beschreibung finde ich etwas verwirrend, da ich nicht genau daraus ableiten kann, ob sensors.yaml nun gar nicht mehr genutzt werden sollte, und alles über die template.yaml gemacht werden soll.
Laut einleitender Erklärung zu Sensor-Template und Template-Sensors ist Sensor-Template veraltet und sollte nicht mehr genutzt werden.
Doch direkt im folgenden Abschnitt „Sensors“ schreibst du, dass man sowohl die Sensors als auch die Template anlegen soll.
In der jetzigen Version ist es (für mich als HA-Einsteiger) nicht nachvollziehbar warum am Anfang ein Unterschied zwischen Sensor-Template und Template-Sensor definiert wird, aber im laufenden Text dann im Wording beide als Synonyme genutzt werden.
*Beispiel:*
> Die erste und gängigste Variante ist das „Sensor File“ bzw. das „Template File“.
Laut eingangs erwähnte Definition sollten genau diese beiden absolut gegensätzlich sein (veraltet vs. empfohlen)
Wäre nice, wenn du den Artikel nochmal dahingehend etwas optimieren könntest.
Hallo Maxx,
auch ich möchte zahlreiche Sensoren, die von meiner Heizung über BSB-LAN per mqtt kommen, in Home Assistant verwenden. Ich vermute, es wurde hier schon oft die Lösung dafür beschrieben, aber leider immer nur privat.
Deshalb frage ich nun auch danach.
Gruß Cornelius
Hallo
Tolle Arbeit die Du da machst wo finde ich die Exel Datei für den Müllkalender?
Gruß Benjamin
Hallo, Danke für das Lob. Die EXCEL Datei bekommst du per Mail auf Anfrage unter youtube@smarthomebastler.at
Grüße, Maxx
Ich möchte auch Daten, die per MQTT reinkommen im HA verwurschteln. Es wäre super, wenn ihr die Lösung hier für alle schreiben würdet und nicht in einem Chat..
Hi,
was ist aus den mqtt Fragen oben geworden? Gibt es eine Lösung dazu? 🙂
Habe das gleiche Problem. Danke dir!
Beste Grüße, S
Hallo Maxx,
diese Struktur gefällt mir sehr gut.
Habe damit angefangen es umzustellen. Ich bin durch dein Video zu der neuen Abfall Entsorgung dazu gekommen und wollte es nachbauen, dass hat aber nicht funktioniert.
Die Umstellung mit „template: !include_dir_list template“ hat geklappt aber ich hatte da auch noch nichts drin jetzt dein Besipiel mit dem Datum.
die template.yaml habe ich jetzt gelöscht
Bei der sensors.yaml hat das bisher noch nicht geklappt da ich reichlich Sensoren habe und da bekomme ich Fehler von HA.
Ich weiß eben noch nicht wie ich dies machen muss.
Wann ich Sensor Folder mit „Sensor Template“ und wann ich Template Folder mit „Template Sensor“
nutzen sollte.
Ich habe es mal mit ein paar Sensoren versucht, hat aber nicht funktioniert.
Hast du ein Tipp wie ich da am besten anfange mit einem meiner Sensoren..?
Ich würde sehr gern die neue Müllentsorgung einbauen.
So sehe ich das auch, Danke für den tollen Artikel.
Moin,
ich bin noch recht neu in Home Assistant. Wie genau kann ich denn jetzt die Template/Sensoren verwenden?
ich finde die nirgens (weder in Integrations,Devices, Entities, Helpers)
Hintergrund, ich benötige einen einfachen Sensor, der einen Wert aus einem Gerät (Energy Meter) invertiert:
hier noch die config.yaml
template:
sensor:
– name: „Grid Negative“
unique_id: grid_negative
state: {{ -1 * states(’sensor.power_meter_active_power‘) | float(0) }}
unit_of_measurement: W
device_class: grid
state_class: measurement
Hallo Felix,
auch bei deinem Problem kann ich versuchen behilflich zu sein.
Allerdings würde ich auch dir eine andere Platform zur Kommunikation vorschlagen.
Bitte nimm mit mir entweder per Mail, Discord oder WhatsApp Kontakt auf.
Die Links dazu findest du hier: https://linktr.ee/smarthomebastler
Ich würde gern einen Sensor erstellen der mir über MQTT gesendete Daten bereitstellt! Hast du da ein How do?
Also über iobrocker mit ( mqtt) werden Werte eines Ofens gesendet ( pelletverbrauch) , die würde ich gern Visualisieren in HA.
Grüße
Hallo,
könntest du mich per Mail youtube@smarthomebastler.at kontaktieren.
Auf diesem Weg ist es einfacher zu helfen.
Grüße, Maxx
Hallo Max,
klasse Übersicht. Ich habe das gleiche Problem wie der Kollege oben. Aber mit Daten aus meinem Smartshunt im Wohnmobil. Der soll über eine MQTT Service Daten an HA liefern. Da muss ich die Sensoren wahrscheinlich selbst als YAML erstellen, oder wie bekommt man die Werte?
Gruß Hannes
Hallo Hannes,
gerne helfe ich dir bei deinem Problem.
Allerdings würde ich eine andere Platform zur Kommunikation vorschlagen.
Bitte nimm mit mir entweder per Mail, Discord oder WhatsApp Kontakt auf.
Die Links dazu findest du hier: https://linktr.ee/smarthomebastler
Kommentare sind geschlossen.