[RTEX] migration d'une Smart ZWave avec plugin-openzwave vers une Atlas avec ZStick5 et plugin-zwavejs

Bonjour à tous, c’est akenad :slight_smile: ,

Aujourd’hui un petit retour d’expérience sur la migration d’une Smart Z-Wave avec plugin-openzwave vers une Atlas avec ZStick5 et plugin-zwavejs.
L’intérêt de la méthode est de ne pas avoir à refaire les inclusions des équipements.

Pré-requis, contexte :

Smart Z-Wave (achetée en 2017) :
-Debian 10, Jeedom 4.3.20
-plugin-openzwave version 2022-02-08
-controleur Z-Wave intégré (Sigma Designs, SDK 6.51.3)
-les modules Z-Wave ont été inclus en mode non sécurisé

Atlas (achetée en 2021) :
-Jeedom 4.3.20
-plugin-zwavejs version 2023-11-14 (zwave-js-ui 8.26.0)
-clé USB Aeotec Z-Stick Gen5 (acheté en 2018, FW 1.1/SDK 6.51.10)

Opération en 3 étapes :

  1. Sauvegarde du contrôleur Z-Wave de la Smart avec le plugin-openzwave
  2. Restauration sur ZStick5 avec le plugin-openzwave
  3. Atlas avec ZStick5 et plugin-zwavejs

1) Sauvegarde du contrôleur Z-Wave de la Smart avec le plugin-openzwave

(Nota : Depuis Jeedom, le plugin-openzwave (Gratuit) n’est plus accessible par défaut sur le Market, parce qu’il est Obsolète.
Pour y accéder, Aller dans :
Plugins > Gestion des Plugins > Market
Saisir « &certification=Obsolète&cost=free » dans le champ « Rechercher » (le tout sans les guillemets).
(/!\ ATTENTION : il n’y a plus d’assistance de l’équipe Jeedom sur les plugins Obsolète.)

(Il n’est pas nécessaire que le démon soit ok.)

Dans la configuration du plugin, cliquer le bouton « Backups Réseau » :

Saisir le nom du backup, sélectionner le port /dev/ttyS1, cliquer sur le bouton « Lancer une sauvegarde » :

(Nota : en installant le plugin-zwavejs sur la Smart, zwavejs-ui permet de voir la marque et la version du contrôleur Zwave intégré)

(Nota : la Smart Z-Wave et l’Atlas Z-Wave semblent avoir le même contrôleur Zwave, à savoir Sigma Designs SDK 6.51.3)

2) Restauration sur ZStick5 avec le plugin-openzwave

(/!\ ATTENTION : si le ZStick5 est antérieur à 2018 ou s’il n’est pas en FW 1.1/SDK 6.51.10, la restauration ne se fera pas correctement.)

Brancher la ZStick5 sur un port USB de la Smart.

(Il n’est pas nécessaire que le démon soit ok.)

Dans la configuration du plugin, cliquer le bouton « Backups Réseau » :
Séléctionner le port /dev/ttyACM0, séléctionner le fichier de sauvegarde généré précédemment, cliquer sur le bouton « Restaurer la sauvegarde » :

A ce stade la configuration réseau contenu dans le controleur Z-Wave intégré de la Smart et la ZStick5 est identique.
Désactiver le plugin openzwave.
Débrancher la ZStick5.

3) Atlas avec ZStick5 et plugin-zwavejs

Brancher la ZStick5 sur un port USB2 (noir) de l’Atlas.
A ce stade tout les modules zwave qui étaient pilotables depuis la Smart vont pouvoir l’être depuis l’Atlas.
Pour plus de détails sur la mise en oeuvre du plugin zwavejs avec le ZStick5 sur l’Atlas, voir un autre RTEX ici : [RTEX] Box Jeedom Atlas - plugin MQTT Manager (mqtt2) Mode Broker local - avec plugins abonnés Z-Wave JS (zwavejs) et JeeZigbee (z2m)

Autre méthode d’installation du plugin Z-Wave :

Il se trouve dans GitHub - jeedom/plugin-openzwave at master

Pour l’installer dans Jeedom :

Aller dans :
Réglages > Système > Configuration > Mise à jour/Market > Github > Activer Github
Cliquer bouton « Sauvegarder »

Aller dans :
Plugins > Gestion des plugins > Plugins

Type de source : Github

ID logique du plugin : openzwave
Utilisateur ou organisation du dépôt : jeedom
Nom du dépôt : plugin-openzwave
Branche : master

Cliquer bouton « Sauvegarder »

le plugin Z-Wave apparait dans Plugins > Gestion des plugins

Voila j’espère que ce retour d’expérience sera utile aux membres Jeedom.

akenad :slight_smile:

5 « J'aime »

Bonjour,

Merci pour cette info cependant, je trouve que ce serait à jeedom de fournir une solution de migration beaucoup plus simple. Ce serait tout benef pour eux car ils vendraient beaucoup plus de matériel.
En plus cette méthode oblige à passer par un plugin qui n’est plus sur le market, c’est quand même un comble de ne pouvoir le faire avec le plugin qu’on nous a tous conseillé d’installer, zwavejs

Bonjour,

pas très convaincu que ce soit à Jeedom de coder et/ou documenter tous les nombreux cas d’usages existants de migration.
La solution la plus simple, si ont veut éviter de réinclure les modules, et de débrancher la carte Zwave de la Smart et de la brancher sur l’Atlas.

La nécessité de la méthode de migration est liée à la technologie Z-Wave, qui n’a pas été développée par Jeedom.
Le retour d’expérience que j’ai décrit est la méthode la plus simple, si ont veut éviter de réinclure les modules, dans le cas d’usage particulier pour passer d’une carte contrôleur Z-Wave intégré à la Smart à une clé USB Aeotec Z-Stick Gen5.

Le plugin openzwave est déjà installé sur les Smart Z-Wave. Ce n’est donc pas génant s’il n’est plus sur le market.
Le plugin openzwave n’est plus accessible par défaut sur le Market parce qu’il est obsolète, remplacé par le plugin ZwaveJS, pour éviter de sélectionner un plugin Zwave obsolète car développé en python2, qui n’est plus supporté à partir de Debian 11 bullseye.
Ce qui n’exclut pas de pouvoir encore installer le plugin openzwave (Obsolète, gratuit) directement depuis github, ou le Market moyennant la recherche appropriée (voir la procédure dans le premier post).

Le plugin zwavejs s’appuie sur Zigbee2Mqtt qui propose une fonctionnalité de sauvegarde/restauration qui fonctionne bien pour des controleurs Zwave ayant un SDK posterieur à v6.61, ce qui n’est pas le cas pour la carte controleur Z-Wave intégré à la Smart, qui est antérieur à 2018.
voir plus de détails ici : [RTEX] Box Jeedom Atlas - plugin MQTT Manager (mqtt2) Mode Broker local - avec plugins abonnés Z-Wave JS (zwavejs) et JeeZigbee (z2m)
Nous parlons donc d’un hardware qui a plus de 5 ans. Pas très convaincu qu’un programme (qui plus est gratuit) se doivent de conserver une compatibilité de reprise de données avec d’anciennes versions.

akenad :slight_smile:

Bonsoir Akenad,

Merci pour cette réponse exhaustive.
Concernant la migration facilitée par Jeedom, je ne parlais bien sûr que des box créées par jeedom comme la smart que j’utilise (je viens encore de galérer avec la dernière MAJ zwavejs)
J’ai le zwave et rfxcom intégrés et un dongle BT UD100
Le logiciel est gratuit mais pas les box, donc tout l’intérêt de Jeedom se trouve bien dans une migration facile du matériel (windows aussi est gratuit quand on achète un PC).

Bonjour,

Je tiens à te remercier @akenad pour ce retour d’expérience qui m’a été d’une grande aide.
Je l’ai utilisé pour migrer de la smart vers une VM sous proxmox.

Je partage donc aussi ici mon retour d’expérience avec un cas légèrement différent, si cela peut être utile à d’autres.

Source :

  • Box SMART
  • Debian 10
  • openzwave (36 modules)

Cible :

  • VM Proxmox
  • Debian 11
  • zwaveJS
  • Contrôleur AETOC Z-stick gen5 (FW1.1)

Mode opératoire :

  • Sauvegarde du contrôleur Z-Wave de la Smart avec le plugin-openzwave
  • Branchement du z-stick gen5 sur la Smart
  • Restauration sur ZStick5 avec le plugin-openzwave :
    • Arrêt du démon openzwave
    • Changement du port pour correspondre au z-stick
    • Restauration
    • Arrêt démon
    • Reparamétrage du port sur le contrôleur interne
    • Redémarrage démon
  • Démarrage du plugin zwaveJS côte à côte du plugin openzwave
  • (Attente de la création des équipement dans zwaveJS)
  • Migration des 36 modules un par un en utilisant l’outil remplacer de jeedom
    • aucune ré-inclusion physique n’a été nécessaire
    • l’opération à pris plusieurs jours, les deux plugin se côtoyant sans impact et sans soucis
    • désactivation des modules
    • désactivation du plugin openzwave
  • Installation d’une VM Proxmox
    • Installation de jeedom suivant les instructions de la doc
    • Restauration de la sauvegarde jeedom de ma Smart
    • (réinstallation de toutes les dépendances de tous les plugins le nécessitant)
    • Débranchement du z-stick gen5 de la Smart
    • Branchement sur la machine proxmox
    • Ajout du périphériques USB correspondant au contrôleur sur le VM
    • Paramétrage des ports sur le plugin zwaveJS
    • Démarrage du plugin
  • Remise à zéro du contrôleur de la smart
  • Arrêt de la Smart
  • Enjoy !

L’opération s’est globalement très bien déroulée sauf 2 points :

  • Mauvaise intégration du module FGWREU-111 - Fibaro Walli Roller Shutter par jeedom (je dis bien jeedom, pas openzwave : les commandes créées par jeedom ne sont pas les bonnes, j’ai du les modifier manuellement)
  • Outil remplacer de jeedom, très utile, mais aussi peu fiable dans les scénarios : j’ai du effectuer pas mal d’opérations de remplacement de commandes manuellement dans mes scénario (malgré cela l’outil est indispensable car il m’a fait gagner du temps et surtout permis la reprise des historiques simplement)

PS : J’ai aussi mis à jour le firmware du z-stick gen 5 :
FW: v1.2
SDK: v6.81.6

Le firmware en lui même n’apporte rien, mais je pense qu’a l’avenir la version supérieure du SDK me permettra de faciliter la migration vers un contrôleur plus récent.

Si quelqu’un à besoin de précision sur un des points abordés, n’hésitez pas !

1 « J'aime »