[Anleitung] - Shelly mit FHEM und MQTT2
Vorwort: Es gibt mehrere Wege um Shelly´s in FHEM einzubinden. Hier wird der Weg über den FHEM internen MQTT2 Server genutzt und beschrieben. In dieser Anleitung gehe ich davon aus, dass ein gewisses FHEM Grundwissen vorhanden ist. Hinzu ist diese Anleitung für die originale Firmware von Shelly. Mit Tasmota z.B. wäre der Weg allerdings fast der gleiche.
Übersicht (Praxis Beispiele - LINK)
1. MQTT2 Server anlegen
2. MQTT im Shelly aktivieren und einstellen
3. FHEM - neuen Shelly speichern
4. FHEM - attr wählen
- Infos zu den Templates
1. MQTT2 Server in FHEM einrichten (FHEM MQTT2 Commandref)
Kurz, ohne irgendwelche speziellen Einstellungen:
define MQTT2_FHEM_Server MQTT2_SERVER 1883 global
Info: Ich selber würde den MQTT2 Server auf JEDEN FALL mit einem User/Passwort versehen.
2. MQTT im Shelly aktivieren und einstellen
Nachdem ein beliebiger Shelly erfolgreich in dein Netzwerk verbunden wurde (via App oder Webinterface), müssen wir dem Shelly nun den MQTT Server mitteilen. Diese Option findest du im Webinterface (http://IPdesShellys/) unter: Internet & Security -> Advanced – Developer Settings -> Enable action execution via MQTT. Sobald dieses Häckchen gesetzt ist, gibt es neue Optionen im gleichen Menü. Hier müssen eigentlich nur folgende Einstellungen gesetzt werden:
- Username (Benutzer zum authentifizieren am MQTT2 Server von FHEM)
- Password (Passwort zum authentifizieren am MQTT2 Server von FHEM)
- Server (IP-Adresse:PORT deines MQTT2 Servers/Fhem Servers)
Der Rest kann so bleiben wie er ist. Man kann natürlich noch Optionen verändert, dies ist aber nicht notwendig.
Anbei ein paar Bilder:
Capture+_2019-07-16-10-33-35.png Capture+_2019-07-16-10-34-44.png Capture+_2019-07-16-10-35-10.png
3. FHEM - neuen Shelly speichern
Nun gehst du in deine FHEM Web Oberfläche. Der Shelly sollte sich nach kurzer Zeit oder einem Neustart, direkt melden. Zu sehen ist dies am „?“ bei „Save config“. Hier nun speichern und die Seite aktualisieren.
4. FHEM - attr wählen
Nun siehst du in FHEM den Punkt „MQTT“ in deiner Raumleiste, auf der linken Seite. Dort befindet sich auch das neue Gerät. Ein Shelly meldet sich immer mit Namen wie: „shelly1pm-B1D951“. Anschließend gehst du einfach in das neue DEVICE hinein und wählst das entsprechende Template. In diesem Beispiel ist das ein Shelly1PM. Dies wäre dann das Template „A_10b_shelly1_w_energy_meassuring“. Nach der Wahl des Templates nur noch auf set und der Shelly ist eingerichtet.
Am Ende kann er kann so oder so ähnlich in FHEM aussehen. Das ist abhängig von der Version des aktuellen Templates. Du kannst das natürlich auch selber noch auf deine Bedürfnisse anpassen.
Wenn du ein paar Geräte gesammelt hast, könnte es so aussehen. In Verbindung mit alexa-fhem ist es auch möglich alle Geräte zu steuern. "Alexa, färbe Wohnzimmer türkis", würde alle meine LED Stripes im Wohnzimmer einschalten und entsprechen einstellen.
INFOS zu den Templates:
- Es gibt für jeden (mir bekannten) Shelly ein fertiges Template. Man muss diese nicht nutzen. Jeder der sich ein wenig mit FHEM auskennt, kann es natürlich manuell machen. Ich persönlich nutze gerne die Templates, da diese alles einstellen, wie ich das gerne hätte. Der kleine grüne Punkt z.B. neben der Lampe, leitet einen bei einem Klick, direkt auf das jeweilige Webinterface des Shellys. Hinzu würde der Punkt rot sein, wenn der Shelly offline wäre.
- Diese Templates gibt es aktuell:
A_10_shelly1
A_10b_shelly1_w_energy_meassuring
A_10a_shellyplug
A_11b_shelly2_roller
A_11b1a_shelly25_roller_invert_0
A_11b1b_shelly25_roller_invert_1
A_11a_shelly2_split
A_14a_shelly4pro_split
A_14b_shelly4pro_unified
A_15_shellybulb
A_16_shellyht
A_17_shelly2rgbw_color
A_17a_shelly2rgbw_4w_split
Bei Fragen einfach an mich wenden. Ich werde versuchen, diese Anleitung nach und nach weiter aus zu bauen und ein FAQ zu erstellen. Das lebt natürlich von Euren Fragen
Gruß,
Kai