Zigbee2Tasmota-MQTT

Aus FHEMWiki
Version vom 7. August 2020, 19:04 Uhr von Beta-User (Diskussion | Beiträge) (Forenlink betr. Hardwareaufbau aufgenommen)


Clock - Under Construction.svg An dieser Seite wird momentan noch gearbeitet.


Einführung

zigbee2tasmota ist ein Gateway um Zigbee-Geräte in ein Heimnetzwerk zu bringen, ähnlich dem zigbee2mqtt Gateway. Vorteil von zigbee2tasmota ist die freie Platzierung im WLAN des Betreibers, da es anders als zigbee2Mqtt keinen Raspberry Pi oder ähnliches braucht. Das Gateway muss lediglich mit Strom versorgt werden. Außerdem sollte erwähnt werden, das sich das Projekt noch in einem frühen Stadium befindet und die Anzahl der unterstützten Geräte geringer ist als bei z.Bsp. zigbee2mqtt. Ein guter Anlaufpunkt um herauszufinden ob und von welcher Plattform (nicht nur ZigBee) ein Gerät unterstützt wird sind die Seiten: https://blakadder.com/. Hier kann man entweder generell nach Geräten suchen, welche von Tasmota unterstützt werden oder nach ZigBee Geräten und welches Gateway sie unterstützt.

Installation

Der Aufbau und die Inbetriebnahme des zigbee2tasmota Gateway ist der Tasmota Dokumentation zu entnehmen, eine Anleitung zum Hardwareaufbau und flashen der Coordinator-firmware ist hier zu finden. Bei der Inbetriebnahme, speziell im MQTT Bereich, wird man viele Parallelen zur Inbetriebnahme von klassischen Tasmota geflashten Geräten finden. So gilt das dort geschriebene bezüglich Topic Parameter auch hier. Als MQTT Broker sollte vorzugsweise MQTT2_SERVER zum Einsatz kommen, welcher die Inbetriebnahme neuer Geräte in FHEM stark vereinfacht. Aufgrund der sehr verschachtelten JSON-Strukturen, die das Gateway verwendet, ist in jedem Fall dringend anzuraten, MQTT2_DEVICE als Client-Modul zu verwenden.

Define eines MQTT2-Devices als "Bridge"

Nach Eingabe der MQTT Daten in die entsprechende Maske am zigbee2mqtt-Gateway wird das Gateway automatisch neu gestartet und wenn alles korrekt ist, wird vom MQTT2_Server ein neues MQTT2_DEVICE-Device im Raum MQTT2_DEVICE angelegt. Ähnlich wie bei zigbee2mqtt wird auf dieses Device das tasmota_zigbee2tasmota_bridge Template angewendet

set [Zigbee2tasmota] attrTemplate  tasmota_zigbee2tasmota_bridge

Dadurch werden mittels SetOption einige Einstellungen im Gateway gesetzt und die notwendigen Readings etc. erstellt. Um die neuen Einstellungen zu übernehmen erfolgt automatisch ein Neustart des Gateway. Außerdem wird die Liste der in FHEM zur Verfügung stehenden attrTemplates erweitert.

Vereinzeln der Geräte

Nachdem der Neustart abgeschlossen ist kann man per Auswahlliste den Befehl permit_join aktivieren um neue Geräte an das Gateway und somit FHEM anzulernen. Jedes neu angelernte Gerät erzeugt in FHEM ein neues Device im Raum MQTT2_DEVICE. Auf dieses Device dann wieder das passende attrTemplate auswählen und ausführen. z.Bsp.:

set [MQTT2_z2t_WXYZ] attrTemplate tasmota_zigbee2tasmota_light_dimmer

Grundlegende Informationen zu attrTemplate im MQTT2-Kontext sind bei MQTT2_DEVICE zu finden, die Namenskonvention für verschiedene Leuchtmitteltypen orientiert sich an den Gepflogenheiten bei zigbee2mqtt. Im Idealfall war das alles und das neu angelegte Gerät sollte über FHEM steuerbar sein bzw. Werte empfangen. (tbd: Sensoren und Fernbedienungen)

Sollte per autocreate kein Gerät automatisch angelegt werden bitte als erstes überprüfen ob autocreate in FHEM auf active steht. Ansonsten bitte die hier genannten Punkte überprüfen. Da jetzt jedoch kein neues Gerät in die Datenbank des zigbee2tasmota mehr eingetragen wird bzw. es schon eingetragen ist, muss das Anlegen eines Devices in FHEM entweder von Hand angestoßen werden (bei Geräten die nicht zyklisch senden) oder es muss abgewartet werden bis ein Sensor oder ein ähnliches Gerät, (welches zyklisch Werte sendet) wieder Werte sendet.

Hierbei kann es hilfreich sein in FHEM den Event Monitor zu beobachten. Das Anlegen eines Devices von Hand anzustoßen funktioniert bei Schaltern meistens durch Drücken einer beliebigen Taste. Ansonsten muss das Webinterface des zibee2tasmota Gateways durch z.b. Eingabe der IP-Adresse aufgerufen werden. Im Hauptmenü dann Konsole auswählen. In die Zeile Befehl eingeben folgenden Befehl eingeben:

ZbStatus2

Jetzt werden im Terminalfenster alle bereits im Gateway angelegten Devices angezeigt:

13:55:15 MQT: stat/zb2tasmota/RESULT = {"ZbStatus2":[{"Device":"0x0187","IEEEAddr":"0xEEEE0302010374FD","ModelId":"tint Smart Switch","Manufacturer":"MLI","Endpoints":["0x01","0xF2"]},"Device":"0xA5A6","IEEEAddr":"0x588E81FFFE144884","ModelId":"TRADFRI on/off switch","Manufacturer":"IKEA of Sweden","Endpoints":["0x01"]},{"Device":"0x1469","IEEEAddr":"0x0000000000000000","Endpoints":[]},{"Device":"0xF6F8","IEEEAddr":"0x00158D0002CA4CA7","ModelId":"ZBT-ColorTemperature","Manufacturer":"MLI","Endpoints":["0x01","0xF2"]}]}


Hierbei ist die Zahlen/Buchstaben Kombi hinter dem Wort Device von Interesse. Im obigen Beispiel die 0x0187 als sogenannte Short adresse des Tint Smart switches. Dieses Device schaltet man mithilfe des Befehls

ZbSend { "device":"0x1234", "send":{"Power":"ON"} }

bzw.

ZbSend { "device":"0x1234", "send":{"Power":"OFF"} }

einmal ein und wieder aus. Wobei 0x1234 der jeweiligen Short Adresse des Zigbee Gerätes entsprechen muss (also 0x0187 lauten würde für den Smart Switch und 0xF6F8 für die MLI-Leuchte). Jetzt sollte in FHEM per autocreate ein neues Device im Raum MQTT2-Devices angelegt worden sein.

zigbee2tasmota Gruppen

tbd


Verschiedenes

tbd


Links

Hinweise