In diesem Artikel beschreibe ich kurz, wie wir ein vorhandenes Zigbee-Netzwerk auf einen neuen Stick migrieren können. Für diesen Vorgang brauchen wir die Coordinator-ID von dem alten Stick. Diese können wir in einem Backup wiederfinden, oder durch den Zugriff auf den Stick selbst, auslesen.
Durchführung
Um diese Migration durchzuführen, brauchen wir einen Computer mit einem Linux Betriebssystem. Ich verwende hier Debian.
Wir schließen im ersten Schritt einmal den alten Stick an den Computer an und finden mit dem folgenden Befehl einmal den USB-Port heraus, an dem sich der Stick befindet.
ls -l /dev/tty*
dmesg | grep ttySobald wir diese ID haben, notieren wir uns diese parallel einmal. Diese benötigen wir gleich.
Jetzt erstellen wir uns eine Python-Umgebung, damit wir ein Backup des vorhandenen Sticks uns runterziehen können. Dazu führen wir die folgenden Befehle nacheinander aus.
apt update
apt install python3-venv python3-pip -y
python3 -m venv ~/zigbee-tools
source ~/zigbee-tools/bin/activate
pip install zigpy-cliIm nächsten Schritt erstellen wir ein Backup des vorhandenen Netzwerks von dem Stick. Dieses benötigen wir, um den neuen Stick mit diesem Backup zu flashen. Um das Backup zu erstellen, verwenden wir den folgenden Befehl:
Wichtig: Bitte den USB-Port Pfad anpassen und ggf. hinter radio den anderen Typ angeben. Ich habe hier zwei SiliconLabs Sticks im Einsatz, und hier ist es in der Regel ezsp.
zigpy radio ezsp /dev/ttyACM0 backup backup_oldstick.jsonWir prüfen jetzt einmal kurz, ob das Backup erfolgreich erstellt wurde. Dazu lassen wir uns das Backup einmal anzeigen. Dort müssen wir einen Wert hinter dem Key coordinator_ieee stehen haben. Wenn dies der Fall ist, wurde das Backup erfolgreich erstellt.
cat backup_oldstick.jsonJetzt schließen wir den alten Stick ab und stecken den neuen Stick an das System. Hier müssen wir auch einmal wieder den USB-Port herausfinden.
ls -l /dev/ttyUSB* /dev/ttyACM*Sobald wir den Pfad haben, können wir mit dem folgenden Befehl das Backup auf den neuen Stick einspielen. Wichtig ist hierbei, dass auch wieder der Pfad und ggf. der Typ angepasst wird.
zigpy radio ezsp /dev/ttyUSB0 restore backup_oldstick.jsonDer Restore-Vorgang kann einige Sekunden in Anspruch nehmen. Sobald der Vorgang abgeschlossen ist, können wir prüfen, ob die Migration erfolgreich war. Dazu verwenden wir den folgenden Befehl:
zigpy radio ezsp /dev/ttyUSB0 infoHier müsste dann die gleiche Coordinator-ID zu sehen sein, wie in dem Backup. Wenn dies der Fall ist, können wir den Stick an unser System anschließen. Die Zigbee-Geräte verbinden sich jetzt mit dem neuen Stick.