ZigBee2MQTT vs. ZHA: Inbetriebnahme und Übersiedelung

Preview ZigBee2MQTT vs. ZHA: Inbetriebnahme und Übersiedelung

Zuerst Phoscon, dann Zigbee2MQTT (Z2M) und zuletzt Zigbee Home Automation (ZHA): Ich habe alle drei ZigBee-Gateway-Softwarelösungen mit Home-Assistant ausgiebig getestet und verwende jetzt ZHA, was auch das primĂ€re Thema dieses Artikels ist. Der Wechsel von einer Gateway-Lösung zur anderen kann abhĂ€ngig von der Anzahl an verbundenen GerĂ€ten durchaus etwas anstrengend sein. Als Beispiel musste ich beim Umstieg von Phoscon auf ZigBee2MQTT alle GerĂ€te neu verbinden, was speziell bei den Unterputzdimmern nicht wirklich lustig ist. Der Umstieg von Zigbee2MQTT zu ZHA ist wesentlich einfacher verlaufen, da die sich die GerĂ€te großteils von selbst in ZHA gemeldet haben. Zigbee2MQTT hat bei mir ĂŒber ein Jahr ohne Probleme funktioniert, daher wĂ€re der Umstieg eigentlich gar nicht notwendig gewesen. Der Grund fĂŒr den Umstieg war mehr die Neugierde und um die unterschiedlichen Lösungen vergleichen zu können.  

Was ist ZHA?

ZHA (Zigbee Home Automation) ist eine Home Assistant Integration fĂŒr die direkte Verbindung von Zigbee-GerĂ€ten in Home Assistant. FĂŒr die Kommunikation verwendet ZHA eine Open-Source-Python-Bibliothek zigpy, welche einen hardwareunabhĂ€ngigen Zigbee-Stack implementiert. Alle mit zigpy kompatiblen Koordinatoren können mit ZHA verwendet werden.

Wechsel von Zigbee2MQTT zu ZHA: Schritt fĂŒr Schritt

Backup

Als Erstes sollte fĂŒr den Wechsel in Zigbee2MQTT ein Backup erstellt werden. An dieser Stelle musste ich feststellen, dass das Backup des Conbee II -Stick kein Coordinator-Backup enthĂ€lt, siehe: www.zigbee2mqtt.io/guide/adapters/#notes. Beim Backup eines Zigbee-Coordinator mit einem Chip von Texas Instruments (CC2530/CC2531/CC2538/CC2652/CC1352) wird in der ZIP-Datei ein File mit dem Namen: coordinator_backup.json angelegt. FĂŒr den Conbee-Stick kann zwar auch ein Backup erstellt werden, eben aber ohne der coordinator_backup.json-Datei. Die Datei kann, oder in meinem Fall könnte, fĂŒr einen Restore in Home Assistant verwendet werden. Zum Erstellen des Backups existiert in Zigbee2MQTT unter "Einstellungen", "Tools" der Button: "download_z2m_backup":

Zugriff auf den Zigbee-Coordinator anpassen

Ich betreibe Home Assistant als Container in Docker. Die docker-compose-Datei beinhaltet alle notwendigen Container fĂŒr den Betrieb von Home Assistant und dessen benötigter Services, siehe: Home-Assistant Docker Conbee 2: ZHA,Zigbee2MQTT,deCONZ.

Vor der Umstellung auf ZHA habe ich fĂŒr Zigbee2MQTT zusĂ€tzlich zum eigentlichen Home Assistant Container diese beiden Container gestartet: 

  • Mosquitto (MQTT-Broker) und
  • Zigbee2MQTT

Der Container Zigbee2MQTT hat den Conbee-Stick ĂŒber "devices" in den Container gemappt. Nachdem die Kommunikation mit dem ZigbeeCoordinator von Home Assistant mit ZHA direkt ĂŒbernommen wird, kann das Device vom Container zigbee2mqtt entfernt und zum Home Assistant Container hinzugefĂŒgt werden:

=>

ZunĂ€chst habe ich die beiden Container zigbee2mqtt und mosquitto noch nicht entfernt, damit ich in Zigbee2MQTT noch nachsehen kann, wie die GerĂ€te darin verbunden sind. Nachdem bei meinem Setup bestimmte andere GerĂ€te MQTT fĂŒr die Kommunikation verwenden, werde ich den MQTT-Broker vorerst ohnehin noch behalten. Zigbee2MQTT werde ich in Zukunft nicht mehr benötigen und daher nach dem Übersiedeln der ZigbeegerĂ€te aus der Konfiguration entfernen. Wer an dieser Stelle ein neues Betriebssystem verwendet, muss die Rechte fĂŒr den Zugriff auf /dev/ttyACM0 im OS anpassen: 

 sudo gpasswd -a $USER dialout

Die Änderungen können ĂŒber den docker-compose-Befehl aktiviert werden:

docker compose up -d

Integration hinzufĂŒgen

ZHA kann in den Einstellungen und mit "Integration hinzufĂŒgen" aktiviert werden: Zigbee Home Automation:

Durch das Mapping auf den Home Assistant Container meldet sich der ConBee II Stick an dieser Stelle:

Im Anschluss könnte das zuvor erstellte Backup eingespielt werden. Wie bereits erwĂ€hnt aber nicht fĂŒr den ConBee II:

Etwas verzweifelt habe ich den MenĂŒpunkt: "Radio-Einstellungen beibehalten"  ausgewĂ€hlt:

Und siehe da, die GerÀte tauchen nach und nach in Home Assistant auf: 

Zwar haben sich nicht alle GerĂ€te wieder gemeldet, dennoch musste ich keinen der Unterputz-Aktoren zurĂŒcksetzen, was schon mal einen wesentlichen Gewinn zu meinem ersten Umstieg von Phoscon zu Zigbee2MQTT darstellt. Die meisten Aquara Temperatursensoren tauchten nach mehrmaligen DrĂŒcken auf dem Verbindungsknopf auf, einige musste ich aber dennoch neu einlernen.

GerÀte neu benennen

Leider haben alle GerĂ€te einen neuen Namen in Home-Assistant bekommen, was mir dennoch einiges an Arbeit beschert hat. Damit ich alle bestehenden Lovelace-Cards ohne Anpassung weiterverwenden kann, habe ich allen GerĂ€ten dessen ursprĂŒnglichen Namen wieder gegeben. Dazu musste ich das alte MQTT-GerĂ€t jeweils als Erstes löschen:

Die neuen Verbindungen tauchen jetzt unter Zigbee Home Automation auf:

Das GerĂ€t selbst kann ĂŒber "Einstellungen bearbeiten" umbenannt werden:

Die EntitÀten wurden bei dieser Aktion leider nicht geÀndert und mussten von mir gesondert bearbeitet werden:

Aus den neuen Namen konnte ich zudem nicht ableiten um welches GerĂ€t es sich handelt, daher habe ich in der MQTT-Integration ein Diagnostic-File heruntergeladen. Die Datei enthĂ€lt die ursprĂŒnglichen Namen und IDs der GerĂ€te, wodurch ich diese nachschlagen konnte. 

Die ID kann unter "GerÀteinformation" und Zigbee Info angezeigt werden:

 

In den Diagnostik-Informationen der ursprĂŒngliche Name und die ID ohne ":" gelistet.

Wie kann ein neues Zigbee-GerĂ€t zu Home Assistant hinzugefĂŒgt werden?

Neue GerĂ€te können ĂŒber Einstellungen / GerĂ€t hinzufĂŒgen / Zigbee-GerĂ€t hinzufĂŒgen mit Home Assistant gepaart werden.

GerÀte direkt binden

Damit die Zigbee-GerÀte direkt von einem Schalter per Funk gesteuert werden können, gibt es die Möglichkeit diese direkt zu binden. Dazu habe ich zunÀchst eine Gruppe erstellt:

Gruppe fĂŒr die GerĂ€te erstellen die geschaltet werden sollen:

Schalter: Zigbee-GerÀt verwalten:

Und die zuvor erstellte Gruppe binden:

Je nachdem welche GerÀte sich in der Gruppe befinden, funktionierte das direkte Binden bei mir nicht immer. Als Beispiel konnte meine Innr LED-Stripe nur gepaart werden, indem ich in die Gruppe zuerst eine Hue Bulb gegeben habe, damit den Taster gebunden und die Bulb mit der LED-Stripe ausgetauscht habe.

Visualisieren

In Einstellungen / Integration kann mit Konfigurieren und Visualisieren das Zigbee-Netzwerk und dessen Verbindungen angezeigt werden.

Netzwerkeinstellungen: Backup in Home Assistant

In Home Assistant kann ĂŒber die ZHA Integration ein Backup der Netzwerkeinstellungen erstellt werden.

Zudem wĂ€re es möglich die Einstellungen auf einen anderen Koordinator zu ĂŒbertragen.

Vergleich Zigbee Home Automation und Zigbee2MQTT 

Was sind die Vorteile von ZHA im Vergleich zu Zigbee2MQTT?

  • Das ZHA-Setup ist im Vergleich zu Zigbee2MQTT schlanker. Durch das Verwenden von MQTT als Netzwerkprotokoll sind beim Einsatz von Zigbee2MQTT zusĂ€tzliche Services fĂŒr die Kommunikation notwendig. Die Daten werden nicht direkt, sondern von Zigbee2MQTT an einen MQTT-Broker ĂŒbertragen, welcher die Daten an Home Assistant kommuniziert.

Was sind die Vorteile von Zigbee2MQTT im Vergleich zu ZHA ?

  • MQTT ist ein offenes Netzwerkprotokoll und kann auch außerhalb von Home Assistant eingesetzt werden.
  • Nachdem ZigBee2MQTT in einem eigenen Docker-Container betrieben werden kann, lĂ€uft die Verbindung zu den GerĂ€ten weiter, auch wenn Home-Assistant neu gestartet wird.

Welche Zigbee Gateway Software unterstĂŒtzt mehr GerĂ€te: Zigbee2MQTT oder ZHA?

  • Zigbee2MQTT listet eine Anzahl an offiziell unterstĂŒtzten GerĂ€ten: 4797 von 529 Herstellern, siehe: www.zigbee2mqtt.io/supported-devices/. FĂŒr ZHA gibt es keine offizielle Aussage, dennoch ist davon auszugehen, dass die Anzahl Ă€hnlich hoch sein dĂŒrfte. Funktionen abseits des Zigbee-Standards werden in ZHA ĂŒber entsprechende Anpassungen (Quirks) zur VerfĂŒgung gestellt, siehe: https://github.com/zigpy/zha-device-handlers. Zigbee-GerĂ€te, die sich an den offiziellen Standard halten funktionieren ohne einer Anpassung (Quirks). Aus diesem Grund werden mehr GerĂ€te unterstĂŒtzt als in dem Projekt angefĂŒhrt. Das Konzept der benutzerdefinierten Quirks-Implementierungen ist Ă€hnlich dem Konzept der Zigbee-Herdsman-Umsetzer, wie sie von Zigbee2MQTT verwendet werden.

Fazit

Wer seine ZigBee-GerĂ€te in Home Assistant einbinden möchte, findet mit ZHA eine einfache und solide Lösung. Die Alternative Zigbee2MQTT hingegen basiert auf einem offenen Netzwerkprotokoll, was beim Einsatz mit Home Assistant ein etwas aufwendigeres Setup voraussetzt. Obwohl beide Systeme wunderbar funktionieren, wĂŒrde ich - speziell fĂŒr eine Neuinstallation - ZHA empfehlen. 

positive Bewertung({{pro_count}})
Beitrag bewerten:
{{percentage}} % positiv
negative Bewertung({{con_count}})

DANKE fĂŒr deine Bewertung!

Beitrag erstellt von Bernhard | Veröffentlicht: 13.03.2023 | Aktualisiert: 02.02.2025 | Translation English |🔔 | Kommentare:0

Fragen / Kommentare

 
Durch die weitere Nutzung der Seite stimmst du der Verwendung von Cookies zu Mehr Details