Bei MQTT handelt es sich um ein Messaging-Protokoll, welches speziell fรผr schwรคchere Gerรคte, instabile und/oder langsame Netzwerke entwickelt wurde. Aus diesem Grund eignet sich MQTT perfekt fรผr die Nutzung im Smarthome, da mittels MQTT eigentlich jedes Gerรคt an das Smarthome angebunden werden kann (sofern es natรผrlich MQTT beherrscht).
Konkret steht MQTT fรผr Message Queuing Telemetry Transport. MQTT wird insbesondere fรผr die „Machine to Machine“-Kommunikation genutzt – also so wie im Smarthome. Als MQTT (https://mqtt.org/) allerdings erfunden wurde (1999 von Arlen Nipper und Andy Stanford-Clark), sollte es den Datenverkehr 6zwischen zwei Gerรคten ermรถglichen und hierbei besonders stromsparsam sein – an das Smarthome hat damals wohl niemand gedacht! ๐
2Funktionsweise MQTT
MQTT funktioniert nach dem sogenannten Client-Server-Prinzip. Der Server wird bei MQTT auch als Broker bezeichnet und dient als zentrale Stelle fรผr den Datenempfang, die Datenhaltung und die Datenweitergabe in einem MQTT-Netzwerk.
Du magst Home Assistant? Dann abonniere kostenlos meine Beitrรคge mit Tipps, Tricks und Anleitungen rund um Home Assistant:
Follow Home Assistant
Garantiert kein Spam, keine Werbung und immer mit Abmelde-Link, solltest du es dir anders รผberlegen!
Clients wiederum kรถnnen unterschiedlich mit dem Broker (Server) agieren:
- MQTT-Clients kรถnnen als Publisher Daten an den Broker รผbermitteln (also beispielsweise die aktuelle Temperatur,) und diese Information als Topic somit im MQTT-Netzwerk publishen.
- MQTT-Clients kรถnnen aber auch als Subscriber solche Topics anderer Clients abonnieren (subscriben) um dann vom Broker รผber รnderungen (also beispielsweise eine neue Temperaturmessung) informiert zu werden.
Clients eines MQTT-Netzwerkes sind nicht direkt miteinander verbunden, sondern kommunizieren einzig รผber den Broker miteinander. Das Prinzip ist mit dem klassischen Fernsehen oder Radio vergleichbar: Ein Gerรคt sendet Informationen aus und andere Gerรคte kรถnnen diese empfangen, wenn der richtige Sender/Kanal ausgewรคhlt wird.
MQTT Topics und Payloads
Als Topics (Themen) werden letztlich die Ordnungsbegriffe bezeichnet, unter welchen die Vom Publisher bereitgestellten Daten/Informationen vom Subscriber abrufbar sind. Wenn wir bei dem Temperaturbeispiel bleiben, kรถnnte ein Topic „Keller/Waschkรผche/Temperatur“ heiรen.
Die Namensvergabe ist hier relativ beliebig mรถglich, es empfiehlt sich aber eine mรถglichst selbsterklรคrende Benamung zu wรคhlen. Das Beispiel „Keller/Waschkรผche/Temperatur“ ist hierfรผr ein gutes Beispiel, da aus dem Topic eindeutig hervorgeht, worum es sich bei dem Topic handelt. Je mehr Topics man im MQTT-Netzwerk mit der Zeit hat, desto dankbarer wird man um solche eindeutigen Namen sein! :)2
Die eigentliche Information, welche mittels MQTT verteilt werden soll, nennt man Payload. Auch der Payload werden quasi keine Grenzen oder Vorgaben gesetzt. Im Einfachsten Fall wird ein Zustand, wie eine Temperatur, รผbermittelt. Eine Payload kann aber auch ein komplexer JSON-String sein und somit zahlreiche Informationen beinhalten!
MQTT in Home Assistant nutzen
Fรผr Home Assistant gibt es eine MQTT-Integration, so dass Home Assistant selbst als MQTT-Broker agieren kann. Einfacher kรถnnte es kaum sein ๐
Bevor ich mich intensiver mit ESPHome beschรคftigt habe, hatte ich einige selbst gebastelte ESP-Sensoren รผber MQTT an mein Home Assistant angebunden. Aktuell hingegen habe ich lediglich meine Valetudos รผber MQTT an mein Smarthome angebunden.
Hierfรผr musste ich nichts weiter machen, als in meinen Valetudos die MQTT-Daten (also IP-Adresse, Port, MQTT-Zugangsdaten sowie Topic-Name und Struktur) zu hinterlegen. Ab diesem Augenblick kommuniziert der Valetudo mit dem MQTT-Broker, so dass die รผbermittelten Daten in Home Assistant zur Verfรผgung stehen.
Nutzt du MQTT in Home Assistant und wenn ja, wofรผr? Welche Gerรคte hat du mittels MQTT an dein Smarthome angebunden?
Produktempfehlungen