Wie im Post über die Architektur schon dargestellt, wird in HaPy Mosquitto, die Kommunikationszentrale verwendet. Mosquitto ist ein MQTT- Broker, der für die schnelle und reibungslose Verteilung der Nachrichten zwischen den einzelnen Komponenten sorgt.
Wie funktioniert MQTT?
MQTT steht für Message Queuing Telemetry Transport und ist ein Protokoll, um schnell Nachrichten zwischen Beteiligten an einem Kommunikationsprozess auszutauschen. Dabei kann jeder Teilnehmer Nachrichten veröffentlichen. Jede Nachricht besteht aus einem „Betreff“ (topic) und dem Nachrichteninhalt (payload). Die Teilnehmer können auch auf bestimmte Betreffzeilen lauschen, werden also informiert, wenn eine neue Nachricht mit diesem Betreff vorhanden ist.
Wie sieht eine Nachricht aus?
Eine Betreff sieht dabei beispielhaft so aus : stat/Wohnzimmer/GrosseLampe. Der Nachrichteninhalt dazu könnte „eingeschaltet“ lauten. Schauen wir uns den Betreff näher an. Er besteht aus drei Teilen, die durch einen Slash getrennt sind. Der erste Teil „stat“ steht in diesem Fall für status, mit diesem Anfang werden also alle Nachrichten gesendet, die einen Status mitteilen. Der zweite und dritte Teil sagen uns welcher Status veröffentlicht wurde, der für die GroßeLampe im Wohnzimmer. Wenn uns diese Nachricht interessiert haben wir den Betreff stat/Wohnzimmer/GrosseLampe abonniert und erhalten umgehend diese Mitteilung. Ein Blick in den Nachrichteninhalt sagt uns: die Lampe ist eingeschaltet. Der Empfänger kann bspw. diese Lampe dann als eingeschaltet darstellen, z.B. in einer App auf dem Smartphone.
Mosquitto, die Kommunikationszentrale
Genau für diese Aufgabe und man glaubt gar nicht wie schnell sehr viele Nachrichten bei einer Hausautomation zusammen kommen, verwendet HaPy den MQTT-Broker Mosquitto, als Kommunikationszentrale. Mosquitto wird mit allen gängigen Linux-Distributionen ausgeliefert und kann dort als Paket installiert werden.
Mosquitto sollte auf einem Rechner betrieben werden, der durchgängig eingeschaltet ist. Daher eignet sich aus meiner Sicht z.B. ein Raspberry Pi dafür wunderbar. Bei Elektronik Kompendium findet sich eine sehr gute Installationsanleitung dazu.
Hat man Mosquitto in Betrieb, kann man auch direkt mit der Hausautomation loslegen. Mit einer kostenlosen App und einer WLAN-Steckdose für ca. 15 Euro (z.B. delock 11826) ist es möglich sich leicht eine per Smartphone steuerbare Steckdose im Eigenheim zu installieren. Wie das geht, beschreibe ich im nächsten Beitrag.