Home Assistant 2
Posted on Mo 07 Dezember 2020 in Computer & Electronics
Letztes mal hatte ich mich ordentlich aufgeregt, dass Home Assistant auf diesen blöden Appliance Modus fokussiert. Heute habe ich mich wieder abreagiert und versuche, erstmal die Espressomaschine zum Laufen zu kriegen. Wie wir uns erinnern, hängt selbige an einer Sonoff S20 WLAN-Steckdose mit TASMOTA Firmware.
Nützliche Moskitos
Um mit der reden zu können, brauchen wir den MQTT-Broker Mosquitto
auf dem Server.
MQTT steht für Message Queuing Telemetry Transport und ist sowas wie das
Haus- und Hof-Protokoll im IoT-Bereich. Wer mehr dazu wissen will sei auf
diesen Blog-Post verwiesen.
Aber weiter im Text:
sudo apt-get install mosquitto
Und schon haben wir unseren Broker. Und der will nun konfiguriert werden. Zuerst legen wir ein password File und den ersten User an:
sudo mosquitto_passwd -c /etc/mosquitto/passwd phil
Als nächstes brauchen wir ein lokales config file:
vim /etc/mosquitto/conf.d/default.conf
Und da schreiben wir dies rein:
allow_anonymous false
password_file /etc/mosquitto/passwd
Damit Mosquitto die neue config auch liest, müssen wir den Demon neu starten:
sudo systemctl restart mosquitto
Nun sollte es laufen. Aber tut es das auch? Besser testen! Und dazu brauchen wir noch die clients:
sudo apt-get install mosquitto_clients
Nun haben wir zwei Client-Applikationen, mit denen wir das mal testen können. Dazu machen wir zwei Terminals auf. In meinem Fall mache ich das auf meinem Laptop – Mosquitto hingegen läuft auf meinem Server.
Im einen Terminal starten wir einen subscriber client – also einen der lauscht:
mosquitto_sub -h hal -t test -u phil -P TopSecret
Und im zweiten senden wir eine Message an den MQTT-Broker:
mosquitto_pub -h hal -t test -u phil -P TopSecret -m 'Hi there!'
Und siehe da – im ersten Terminal sehen wir:
Hi there!
Kurz – der MQTT-Broker funktioniert!
Tasmota Steckdose konfigurieren
Nun muss noch die Sonoff Steckdose konfiguriert werden. Also rein ins
Web-Interface. Dort gehen wir nach nach Configuration/Configure other
und
setzen einen Haken bei MQTT enable
. Dann MQTT einrichten:
Configuration/Configure MQTT
und dort die Zugangsdaten und den Server
eintragen:
Um zu testen, ob das funktioniert hat wenden wir wieder den sub-client an.
Diesmal subscriben wir alle topics, die mit home
anfangen. Dann im
Tasmota-Web-Interface mal an/aus schalten und schauen, was wir empfangen:
❯ mosquitto_sub -v -h hal -t 'home/#' -u phil -P TopSecret
home/espresso/tele/LWT Online
home/espresso/stat/RESULT {"POWER":"ON"}
home/espresso/stat/POWER ON
home/espresso/stat/RESULT {"POWER":"OFF"}
home/espresso/stat/POWER OFF
Einrichtung in Home Assistant
Nun und wir können das in Home Assistant konfigurieren:
Configuration/Integrations/Add Integration/
und dort nach mqtt
suchen und
das auswählen. In das Formular geben wir nun den Namen unseres Servers und die
oben festgelegten Zugangsdaten ein:
Sobald wir das eingerichtet haben, findet Home Assistant von selbst eine weitere Integration – TASMOTA:
Und auch das ist schnell eingerichtet:
Zunächst ist die Steckdose noch namenlos:
Aber das kann man ja konfigurieren und so bekommt man dies:
Und auch im Dashboard ist nun ein Schalter zu sehen:
Das erfordert sofortige Ausprobierung! Schalter anklicken und Ohren spitzen: Und es macht "click" in der Küche und die Maschine ist an – Hurra!