OpenZwave 1.6 - Zwave2Mqtt - JMQTT

Tags: #<Tag:0x00007f283674daa0> #<Tag:0x00007f283674d9d8>

Bonjour à tous,
Je dispose de certains périphériques Zwave qui ne sont pas compatibles (Aeotec Doorbell 6 notamment)) avec le plugin OpenZwave actuel qui utilise le OpenZwave 1.4.
J’ai lu le du post d’@Akenad ([Présentation] akenad) qui traite des évolutions du plugin nécessaires.
J’ai vu sur le Github d’Openzwave qu’ils ont également un projet Zwave2Mqtt .

Je me demandais donc si nous pouvions utiliser le projet Zwave2Mqtt d’OpenZwave et le plugin Jeedom jMQTT pour bénéficier de l’OpenZwave 1.6.
Cela éviterai d’avoir à développer un plugin spécifique OpenZwave ?

Qu’en pensez-vous ?

Bien à vous,
Caelion

OpenZwave c’est bien mais le problème c’est que cela n’utilise pas le SDK officiel de Silicon Labs avec tous ce que cela veut dire derrière, bricolage pour les intégrations de périphériques, pas de mode sécurisé fonctionnel, pas de smart, pas de backup, …

Donc le top cela serait que Jeedom SAS utilise officiellement le SDK de Silicon labs (maintenant qu’il est libre de fees) mais cela demanderait de réécrire entièrement un plugin dédié et ça doit être un gros gros boulot. La question est donc : ont-ils les ressources en interne pour développer cela ?techniquement surement, mais assez de ressource disponible sans délaisser tous le reste ? C’est donc une question de choix stratégique et de priorité roadmap par rapport à leurs ressources.

D’ailleurs sur la roadmap 2020 il parle de réflexion globale sur le sujet …

En attendant leur réflexion, la question est de savoir si Jeedom compte mettre à jour son plugin OpenZwave existant (1.4) avec les librairies manquantes que l’on trouve sur OpenZwave 1.6 pour éviter d’avoir un trou dans la raquette le temps d’un hypothétique développement d’un plugin basé sur le SDK de Silicon Labs. Et ca il n’y a que eux qui peuvent nous le dire !

4 J'aimes

Merci pour cette belle analyse. :sunglasses:

Merci mortyre pour ton retour et la clarification.
En attente d’une réponse de Jeedom SAS du coup.
A défaut, penses tu que mon idée est jouable ? Ou pas du tout ?

Tu peux toujours essayer ça ne mange pas de pain. Avant le plugin officiel Zigbee avec la clé Conbee j’utilisais bien une version de Zigbee to JMQTT avec une clé de chez TI. Donc ca mérite de voir ce que cela donne.

Mais tu devras tout basculer ton réseau zwave sur cette version. Tu devrais faire un test juste sur la sirene pour commencer voir comment cela réagit.

Pour avoir bosser pas mal sur le sujet depuis 3 4j, j’ai quand même de meilleur résultat qu’avec le plugin zwave officiel de Jeedom.

  • Bcp moins de drop command
  • Rapidité dans la réception des commandes sur les modules (alors que j’avais réguliérement des lenteurs avec le plugin zwave)
  • Des outils de debug
  • Une IHM
  • Une compatibilité multibox en simultanée grâce à MQTT.

Après je te cache pas que j’ai eu quelques déboire au début :stuck_out_tongue:

A savoir qu’il n’y a plus de support sur la v1.4 et que la v1.6 as encore quelques bug…

2 J'aimes

@m4dm4rtig4n
Pourrais tu détailler un peu la procédure ? Je n’ai pas encore eu le temps de m’y pencher, j’ai l’impression d’avoir plus de taf qu’avant le confinement, vive le télétravail ><

J’ai fait un retour d’XP sur un autre post si ça t’interesse :

1er message :

2eme message :

Perso je bascule tt sur MQTT, je viens de finir mon enocean2mqtt today :slight_smile:

Voici un peu la gueule de mon jMQTT :

image

1 J'aime

Merci, j’étais justement en train de regarder tes posts en me disant que tu en avais peut être parlé ailleurs.
Je ne maîtrise pas du tout MQTT : j’avais installé les 2 plugin qui existe sur une beta mais je n’avais pas réussi à installer zwave2mqtt.
Mon Jeedom est sur une VM sur Proxmox.
Sais-tu la démarche à effectuer ? Nouvelle VM ? Est-ce possible déjà d’être dans une VM ? ou il me faut un rasp à côté pour mettre le Zwave2MQTT ?
Merci pour ton aide.
Je m’en vais tout lire :slight_smile:

Je suis également sous proxmox :slight_smile:

Passe sur mon discord c plus simple et tu fera connaissance de plein de gens sympa et fan de domotique :stuck_out_tongue:

Ah coool, merci

Bonjour à tous,

Je suis cette discussion pour le futur du plugin zwave qui n’a plus subit d’evolution depuis des lustres.

4 mois de 2020 sont déjà passés sans avoir un espoir de travaux sur cette année :frowning:

Plutôt de bonnes nouvelles, si je trouves du temps j’essaierai de faire un test.

J’avais demandé à Jeedom il y a quelque temps s’il comptait migrer en 1.6 et ils m’ont répondu que non car notamment il y a de la régression entre la version 1.4 et 1.6 ce qui obligerait à désinclure et réinclure certains modules zwave.

Je re-prend un com que j’ai fait sur un autre fil de discutions au sujet des soucis zwave :

Bonjour,

Après 2 semaines d’utilisation de zwave2mqtt, je vous fait un petit retour d’XP :slight_smile:

J’ai juste envie de dire une chose, c’est la meilleur évolution que j’ai pu faire sur mon installation depuis le début !

Pour moi la conclusion est des plus simple, j’ai gagné en :

  • Stabilité
  • Rapidité
  • Fonctionnalité

J’en suis arrivé à ce que j’ai également basculer la totalité de mes protocoles en MQTT :

Pour avoir ceci :

image

Alors j’ai eu quelques déboire au début que j’ai fini par résoudre assez rapidement, et à priori la ré-inclusion des modules en openzwave 1.6 et parfois nécessaire sur certains modules.

J’ai juste envie de vous dire go zwave2mqtt pour les gens qui ont des soucis :slight_smile:

1 J'aime

Je réponds de nouveau ici.

Peux-tu expliquer cette conclusion ? Tu rajoutes une surcouche ?

J’ai déjà explosé mon capital temps 2020 pour la domotique avec cette version 1.4 d’openzwave :wink:

Perso je tourne sous Proxmox à la maison donc je me faire des machines virtuelles assez facilement.
Mais un raspberry peut largement suffire.

Pour faire simple, je me suis monter un service d’échanges de messages (un broker pour les initier) avec du Mosquitto afin de faire du MQTT.

Sur ce serveur je suis venu ajouter des conteneur docker qui s’occupe de faire la conversion entre les protocole (zwave, enocean,…) et MQTT.

[root@Broker ~ ]$ docker ps                   
CONTAINER ID        IMAGE                            COMMAND                  CREATED             STATUS              PORTS                    NAMES
866db1d886df        monster1025/yeelight-mqtt        "/usr/bin/dumb-init …"   8 days ago          Up 2 days                                    yeelight
315f34350c44        flopon/enocean-mqtt:latest       "python /usr/local/b…"   10 days ago         Up 2 days                                    enocean
37f8163c409c        robertslando/zwave2mqtt:latest   "docker-entrypoint.s…"   2 weeks ago         Up 2 days           0.0.0.0:8091->8091/tcp   zwave2mqtt

Si on prend zwave2mqtt, quand ton contrôleur reçoit une commande/valeur d’un de tes capteurs par exemple, il publie dans une « queue » MQTT cette valeur à un endroit bien précis.
Ensuite Jeedom via jMQTT scrutte cette « queue » et absorbe le message dés qu’il est publié.
Et bien sûr ça fonctionne dans les 2 sens :slight_smile:

Dans ses conditions, en fin de compte Jeedom ne sais même pas qu’il communique avec du Z-Wave.

Exemple d’une conf d’un capteur de température/humidité sur Jeedom :
image

Ce que j’ai entouré c’est le nom de la « queue » dans MQTT.
La valeur à droite et le dernier message reçu sur celle-ci.

Bonjour,
Pour info, moi aussi je viens d’installer zwave2Mqtt.
Mon objectif principal était de pourvoir enfin piloter mon Doorbell 6.

Ce que j’ai fait :

  • dans une VM Debian 9, installation du broker mqtt, OpenZwave 1.6 et Zwav2mqtt
  • connexion d’une 2ème clef Zwave (Z-stick gen5)
  • association Doorbell (et deux prises pour le test)
  • utilisation du plugin jMqtt

Résultat : depuis jeedom je peux enfin piloter mon doorbell, je peux le configurer (son volume par exemple etc…), je suis notifié si quelqu’un sonne à la porte etc…

Ne connaissant pas grand chose à mqtt et Node j’ai pris un peu de temps pour le faire mais au final le résultat est là.

Vous aller me dire c’est un peu riche comme solution, oui c’est vrai mais comme j’avais tout sous la main cela ne m’a rien coûté et puis maintenant je sais que si je souhaite acheter des éléments zwave « récents » j’ai toujours la possibilité de les utiliser avec ce deuxième réseau si ils ne sont pas supportés par jeedom.

ken@vo
Phil

Pour info ci-joint les traces de mon installation …

Zwav2Mqtt.txt (1,5 Ko)

ken@vo
Phil

Bonjour à tous,
Merci pour vos retours très intéressant. Il faut vraiment que je m’y mette.

@Phil56 : mon besoin est identique : j’ai 2 Doorbell 6 dans de magnifiques boîtes toutes neuves depuis presque 1 an et plus de sonettes xD.
As tu la possibilité de régler le volume à la volée : quelqu’un sonne : volume pour sonnette / alarme déclenchée : volume à fond (c’est le design que j’avais imaginé lors de l’achat).

@m4dm4rtig4n @Phil56 : niveau organisation : si ma clé Zwave est utilisée actuellement en direct par ma VM Jeedom, je dois la désactiver au niveau de cette VM pour la mettre à disposition sur la VM Mosquitto, c’est bien cela ?

Bonne journée

Alors tu ne peut pas utiliser un bus USB sur 2 VM en même temps.

Et 2 choix s’offre à toi :

  • Comme @Phil56, acheter un second contrôleur zwave.
  • Comme moi, migrer tt tes périph zwave actuelle sur MQTT et ne plus passer que par MQTT

Tu doit la mettre à dispo de la VM où il y a ton zwave2mqtt car c’est lui qui va communiquer directement avec ton dongle en /dev/ttyACM0.
Après le Mosquitto, c’est juste des identifiants de connexion à renseigner (comme une bdd mysql) sur zwave2mqtt, donc tu l’héberge où tu veut.