In diesem Blogbeitrag werden wir in die Details des Sonoff 3.0 USB Dongle Plus E eintauchen und das volle Potenzial des Koordinators aktivieren. Der Sonoff Dongle Plus E ist die neuere Variante des Sonoff Dongle Plus P. Eine Gegenüberstellung der beiden Varianten findest du im entsprechenden Abschnitt. In meinem letzten Beitrag zum Sonoff Dongle Plus E habe ich beschrieben, wie dieser in Home Assistant mit zigbee2mqtt und dem Mosquitto Broker eingerichtet wird. Das Gateway kann aber mehr als nur ein Zigbee Koordinator sein!
Da der Sonoff Dongle Plus E auf dem Multiprotokoll-SoC-Chip EFR32MG21 basiert, ist er dank der Funkfunktion des Moduls sowohl Zigbee als auch Thread fähig. Allerdings wird der Stick ausschließlich als Zigbee Dongle. Das bedeutet, dass die installierte Firmware nur das Zigbee Protokoll bereitstellt. Leider gibt es derzeit keinen offiziellen Thread Support. Ob Sonoff beabsichtigt ein Update zu veröffentlichen, dass das Gerät als Thread Border Router fungieren lässt, ist derzeit noch offen.
Glücklicherweise lässt sich der Dongle Plus E mit einer alternativen Firmware flashen und in Home Assistant sowohl als Zigbee und Thread Koordinator als auch als Thread Border Router verwenden. Das flashen an sich ist nicht schwierig. Es erfordert jedoch einige zusätzliche Konfigurations- und Einrichtungsschritte, nachdem der Stick geflasht wurde.
- Zigbee Dongle plus vorgeflasht mit...
- Zigbee hub SMA-Schnittstelle externe...
- Der Zigbee USB Stick unterstützt Smart Home...
- Based on EFR32MG21 + CP2102N +20dBm...
- Zigbee 3.0 USB Dongle Plus kann mit den folgenden...
Vergleich Sonoff Dongle Plus P und Dongle Plus E
Die unterschiedlichen Bezeichnungen des Dongle können sehr verwirrend sein insbesondere im Unterschied der beiden Varianten. Der Dongle E wird auch als Sonoff Zigbee 3.0 USB Dongle Plus V2 geführt. Daher ist die Namensgebung seitens Sonoff nicht ganz glücklich. Öfters habe ich schon gelesen, dass Anwender die ein oder andere falsche Variante gekauft haben.
Hier nun die Gegenüberstellung der beiden Dongles:
Unterschied Firmware
Bevor es im nächsten Abschnitt um das flashen des Dongle-E geht möchte ich noch auf die Unterschiede in der Firmware eingehen.
Zigbee Koordinatoren einschließlich des Dongle-E basieren auf einer sogenannten Network Co-Processor (NCP)Firmware. Die Zigbee Anwendung sowie der Netzwerkprotokoll-Stack werden auf dem Dongle selbst gespeichert, der den Großteil des Zigbee Netzwerks verwaltet. Die verwendete Zigbee Integration bezogen auf Home Assistant, wie ZHA oder zigbee2mqtt, kommuniziert mit dem Dongle, um Befehle zu senden und zu empfangen um die Geräte zu steuern.
Nun gibt es für SoC-Module eine auf Remote Co-Processor (RCP) basierende Firmware, die es ermöglicht, die Zigbee Anwendung vollständig auf einem Server, wie Home Assistant, auszulagern. Anschließend wird primär die Funkverbindung des Dongles auf Hardwareebene genutzt.
Bei Verwendung des RCP können die Hardwarefunktionen des Dongles zum Erstellen separater Zigbee und Thread Netzwerke durch Flashen der MultiPAN RCP-Firmware genutzt werden.
Genau damit geht es im folgenden Abschnitt weiter!
Sonoff Dongle Plus E flashen
In diesem Abschnitt geht es um das flashen der Firmware, um anschließend sowohl ein Zigbee als auch Thread Netzwerk aufbauen zu können.
Los gehts!
Treiber installieren
Bevor der Dongle geflasht werden kann sollte sichergestellt sein, dass die notwendigen Treiber installiert sind damit der Stick korrekt erkannt wird. Über den folgenden Link können die Treiber direkt bei Silicon Labs geladen werden.
https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers?tab=downloads
Dongle-E mit Computer verbinden
Das flashen geht direkt über den Browser. Ich verwende dazu den Chrome Browser und den Web Flasher von darkxst. Der Entwickler darkxst entwickelt ebenfalls die Firmware für Home Assistant Yellow und Sky Connect, die den gleichen Silicon Labs Chip verwenden.
https://darkxst.github.io/silabs-firmware-builder/
Auf der Webseite nun einfach den Connect Button klicken sobald der Dongle mit dem Computer verbunden ist.
Sobald die Verbindung steht muss der Port ausgewählt werden und Verbinden auf Verbinden klicken.
Firmware flashen
Es öffnet sich ein Dialog welcher die aktuell installierte Firmware und Version anzeigt. Als nächstes auf Change Firmware klicken, um die Multi-PAN RCP Firmware RCP auswählen
Das flashen dauert nicht länger als 1. Minute!
Zum Schluss und nach erfolgreicher Installation ist die neue Firmware Version zu sehen und der Dongle kann aus dem Computer ausgesteckt und mit Home Assistant verbunden werden.
- Zigbee Dongle plus vorgeflasht mit...
- Zigbee hub SMA-Schnittstelle externe...
- Der Zigbee USB Stick unterstützt Smart Home...
- Based on EFR32MG21 + CP2102N +20dBm...
- Zigbee 3.0 USB Dongle Plus kann mit den folgenden...
Home Assistant Konfiguration
Ein unerlässliches Add-On für den Betrieb von Zigbee und Thread-Netzwerken mit einem einzigen Sonoff Dongle ist das Silicon Labs Multiprotocol Add-On. Dieses Add-On fungiert als Gateway zwischen Home Assistant und dem Sonoff-Dongle und ermöglicht im Wesentlichen die Erstellung separater Netzwerke durch Verwendung der RCP Multi-PAN-Firmware auf dem Dongle.
Die ZHA, zigbee2mqtt oder Thread Integration wird nach der Einrichtung des Silicon Labs Add-On über das Multiprotokoll mit dem Dongle kommunizieren und nicht, wie zuvor, direkt mit dem Dongle.
Silicon Labs Multiprotokoll Add-On installieren
Das Silicon Labs Multiprotokoll Add-On wird über den Add-on Store installiert. Das geht über
Einstellungen > Add-On Store > Silicon Labs Multiprotokoll Add-On
Nach der Installation muss im Register Konfiguration der Dongle als auch die Baudraute eingestellt werden. Im Weiteren Hardware Flow Control und Automatische Firmware Updates deaktiviert werden.
Anschließend kann das Add-On gestartet werden.
zigbee2mqtt konfigurieren
Damit zigbee2mqtt zwei Protokolle und Netzwerk aufbauen kann muss der Port in der Konfiguration angepasst werden. Das geht unter:
Einstellungen > Add-On Store > zigbee2mqtt > Konfiguration
Im Bereich Serial nun diesen Einstellungen einfügen:
port: tcp://core-silabs-multiprotocol:9999
adapter: ezsp
Zuletzt noch die Einstellung speichern und das Add-On starten. Das Log sollte in etwa so aussehen. Im Log steht unter anderem die neue Firmware version des Dongle. Am Ende sollte die Meldung stehen, dass zigbee2mqtt erfolgreich gestartet wurde!
Thread Integration
Thread sollte als Integration automatisch erkannt werden. Ist das nicht der Fall kann die Integration einfach hinzugefügt werden über:
Einstellungen > Geräte und Dienste > Integration hinzufügen > Thread
Über Home Assistant und das Silicon Labs Multiprotokoll Add-On steht nun ein eigener Border Router zur Verfügung.
Fazit
Die Aktivierung von Thread-, Zigbee- und Matter mit dem Sonoff Dongle Plus E verwandelt Home Assistant in ein Multiprotokoll fähiges System! Thread und Matter sind zwar neue Protokolle aber die Möglcihkeiten stehen bereits zur Verfügung und laufen inzwischen stabil. Warum diese also nicht nutzen?
Falls du noch Fragen hast hinterlasse gerne einen Kommentar?!
Den kompletten Vorgang habe ich ebenfalls in einem Youtube Video festgehalten.
kann man eine bereits geflashte fimware auch updaten? also ohne verlust??
Insofern du nicht das Protokoll änderst sollte ein Update auf eine neuere Version kein Problem sein.
Lässt sich statt ezsp auuch ember nutzen?
Ja, das geht. Schau dir dazu gerne mal dieses Video an: https://youtu.be/fhT83Vqtbhg
Gibt es schon eine Info, wie das mit der Umstellung auf Ember funktioniert? Die Anleitung hier nutzt noch ezsp.
Ja, hier das Video zur EMBER Umstellung: https://youtu.be/fhT83Vqtbhg
Hallo Udo,
erstmal Danke für das Video und die tolle Erläuterungen. Aber eine Frage habe ich da noch. Welche Einstellungen muss ich in der Konfiguration von Zigbee2Mqtt vornehmen, wenn ich zwei Sticks verwenden..
1.) ConBee II von Dresden-Elektronik (Zigbee)
2.) Sonoff Zigbee 3.0 USB DongleE mit Open Thread
==> wenn ich auf open Thread upgedated haeb, muss ich dann auch auf Ember updaten?
kannst du da noch was zu schreiben?
Danke für dein Support
Gruß
Dieter
Hallo Dieter,
in Z2M kann immer nur ein Stick als Koordinator eingetragen werden. Für einen zweiten Zigbee Stick müsstest du eine zweite zigbee2mqtt Instanz aufsetzten.
Ein Thread Stick muss du nicht in die zigbee2mqtt Konfiguration eintragen. Dafür brauchst du die Thread und Open Border Router Integrationen.
VG,
Udo