Als ich das erste Mal auf Tools wie Home Assistant1 (HA) gestoßen bin, dachte ich mir: Ja, so eine gemeinsame Oberfläche für meinen Smarthome-Geräte-Zoo ist ja an sich ganz nett. Aber so wirklich brauche ich das nicht. Der zweite Gedanke war dann jedoch, damit kann ich meine Geräte ja vermutlich untereinander in einer Art und Weise verknüpfen, die vorher nicht möglich erschien. Und richtig. Home Assistant bildet eine Umgebung, in der Geräte verschiedenster Hersteller ihre Statusinformationen austauschen und auf diese reagieren können. Das klingt banal, eröffnet aber wirklich ganz neue Sichtweisen.

Der Markt für smarte Steckdosen ist riesig. Viele Produkte sind jedoch kurzlebig und natürlich setzt jeder Hersteller auf eine eigene App, meistens inkl. Cloudanbindung. Das ist nicht nur aus Datenschutzgründen unschön, es nervt auch einfach, denn meistens sind die Apps nicht besonders gut gemacht. Und allein sich zu merken, welche Steckdose welche App nutzt ist schon Grund genug es anders machen zu wollen.

Nachdem wir die Datenerfassung mit Prometheus bewerkstelligt haben, ist es nun natürlich sinnvoll auch eine Datenvisualisierung einzurichten. Hier kommt Grafana1 ins Spiel.

Prometheus1 sammelt Metriken von verschiedenen Quellen und bietet leistungsstarke Funktionen zur Analyse und Visualisierung dieser Metriken. Prometheus ermöglicht das Erkennen von Anomalien, das Überwachen von Service-Level-Agreements (SLAs) und das Generieren von Warnungen bei Abweichungen. Es bietet eine flexible Abfragesprache namens PromQL, zur Abfrage von Metriken und zur Durchführung komplexer Auswertungen. Es ist in der Cloud-Native- und DevOps-Welt weit verbreitet und wird häufig mit anderen Tools wie Grafana zur Visualisierung verwendet.

Um den Einstieg in ein Selbstbau-SmartHome zu machen, bieten sich ESP82661 oder ESP322 Mikrocontroller an. Sie sind klein, günstig, brauchen wenig Strom und sind leicht zu programmieren. Ein sehr einfaches Gerät, könnte ein Raumthermometer sein. So etwas kann man sich sehr einfach mit einem ESP8266, einem 4,7 kOhm Widerstand, einem DHT223 Sensor und ein paar Kabeln basteln. Programmiert werden kann so ein ESP8266 z.B. über die Arduino Entwicklungsumgebung4, die kostenlos heruntergeladen werden kann.

Mosquitto1 ist ein MQTT-Broker. MQTT2 ist ein Protokoll über das sehr viele smarte Geräte Statusinformationen senden und Steuerbefehle erhalten können. Der MQTT-Broker ist quasi eine Zustandsdatenbank für die angeschlossenen MQTT-Clients.