JMQTT Partage de Template

Salut à tous,

Merci pour ces premiers templates. Vous m’avez motivé à basculer sur zwavejs2mqtt et partager les miens !

Voici pour commencer le module volets roulants de chez Qubino, en mode BSO : ZMNHCDx_Flush_Shutter_venetian_mode.txt (20,1 Ko). J’ai essayé de soigner le widget standard.

Et voici les modules auxquels j’ai prévu de m’attaquer ces prochains jours :

  • Qubino contact sec / ZMNHNDx
  • Qubino din dimmer / ZMNHSDx
  • Qubino mini dimmer / ZMNHHDx
  • Nodon soft remote
  • Prise Neo Coolcam / NAS-WR01ZE

Je vais aussi en tester quelques autres pour vérifier qu’ils fonctionnent comme prévu. Je posterai tout ici.

Je serais plutôt favorable à créer un fil dédié pour les templates zwave. Je n’utilise personnellement que ce protocole, et n’ai pas d’intérêt pour des modules zigbee ou wifi.

Bonne soirée,

2 « J'aime »

Salut,

Voici les templates que j’ai réalisé. Avec un peu de pratique, cela va finalement assez vite…

J’ai essayé qu’ils soient les plus complets et les plus propres possibles, pour obtenir le même résultat qu’avec le plugin ZWave. J’ai renseigné toutes les commandes de chaque module, sauf celles que je ne pouvais tester, sans ajouter de commandes personnelles. J’ai aussi veillé à les configurer complètement, en précisant les valeurs possibles et les unités, le genericType, le widget… J’ai reprise de cette façon quelques templates déjà partagés. Il reste à vérifier si le résultat est satisfaisant : je suis preneur de tous les retours !

Il manque la commande de température sur l’ensemble des modules Qubino. Sur tous les modules Qubino, il manque la sonde de température, normalement mappée en 49/1/1. Elle n’apparaît pas dans zwavejs2mqtt, sans doute car aucune sonde n’est connectée à mes modules, qui n’ont pas activé le mode meter lors de l’inclusion. Si quelqu’un veut m’en offrir une pour tester, je suis preneur aussi :blush:

J’ai renseigné les puissances maximum admissibles par les modules avec mesure de la consommation, mais comme elles dépendent beaucoup du type de charge, et qu’il est parfois recommandé de s’en tenir assez loin, les valeurs n’ont pas beaucoup de sens. Je pense au mini Dimmer par exemple, qui supporte officiellement 150 W avec des ampoules à LED, alors qu’il est recommandé de ne pas dépasser 40…

Qubino DIN Dimmer / ZMNHSDx : RAS
Qubino_DIN_Dimmer__ZMNHSDx.txt (10,7 Ko)

Qubino mini Dimmer / ZMNHHDx : RAS
Qubino_mini_Dimmer__ZMNHHDx.txt (11,4 Ko)

Fibaro Dimmer 2 / FGD-212 : Je n’ai pas testé l’activation de scènes.
Fibaro_Dimmer_2__FGD212.txt (11,9 Ko)

Neo Coolcam Smart Power Plug / NAS-WR01ZE : RAS
Neo_Coolcam_Smart_Power_Plug__NASWR01ZE.txt (12,1 Ko)

Nodon Soft Remote (mode Scene Activation) : Les commandes sont valides avec le paramètre 13-112-0-3 réglé sur 1 (mode Scene Activation). S’il est réglé sur 0, en mode Central Scene, les pressions sur les boutons sont rapportées dans 4 topics différents, et on ne peut utiliser les doubles clics ou les appuis longs.
Nodon_Soft_Remote.txt (3,8 Ko)

Aeoteoc MultiSensor 6 / ZW100 : Il manquait le détecteur de vibrations, même si sa fiabilité semble un peu douteuse.
Aeoteoc_MultiSensor_6__ZW100.txt (11,3 Ko)

Qubino Flush 1D relay / ZMNHNDx : Les commandes de puissance, consommation et intensité ne sont pas renseignées car elles n’apparaissent pas sur zwavejs2mqtt, sans doute car mon module est câblé en contact sec plutôt qu’en interrupteur. Elles semblent mappées de la même façon sur tous les modules Qubino, donc elles sont faciles à deviner, mais je préfère m’abstenir sans pouvoir les tester.
Qubino_Flush_1D_relay__ZMNHNDx.txt (5,0 Ko)

Qubino Flush Shutter / ZMNHCDx (venetian mode) : pour le pilotage des BSO. Je n’ai pas mis les templates en shutter car je les trouve peu lisibles.
Qubino_Flush_Shutter__ZMNHCDx_venetian_mode.txt (20,1 Ko)

3 « J'aime »

Voici mes templates, je viens de finir la migration de mes modules zwave vers mqtt :

image
Zwavejs2mqtt_Qubino_ZMNHJD1_fil_pilote.json.txt (9,7 Ko)
C’est la version avec sonde de température, elle a fini par marcher au bout d’un moment. J’imagine qu’il faut attendre que la tempérture change assez pour qu’il renvoie une nouvelle valeur…

image
Zwavejs2mqtt_Coolcam_Light_Switch_2CH.json.txt (9,1 Ko)
Interrupteur mural 2 canaux

image
Zwavejs2mqtt_Coolcam_Light_Switch_3CH.json.txt (13,0 Ko)
Le même avec 3 canaux

image
Zwavejs2mqtt_Qubino_ZMNHTD_Smartmeter.json.txt (24,9 Ko)
Le smartmeter, avec 2 relais + mesure de puissance / tension / intensité / consommation, le widget que j’ai appliqué sur ce module est plutôt brouillon il donne trop d’information je pense, ça mériterait de faire un virtuel pour n’afficher que le nécessaire:
image

ça serait trop bien si on pouvait récupérer les visuels des modules (ils sont tous dans le plugin openzwave) pour les afficher dans la config jqmtt :slight_smile:

3 « J'aime »

Bonjour

2 nouveaux templates et une mise à jour.
FGR-222 avec les entrées pour gérer les BSO et aussi les scènes (13 = appui long haut, 14 = 2 appuis cours, le 15 n’existe pas, 16 = 1 appui cours; 23 = appui long bas, 24 = 2 appuis cours, 25 = 3 x appuis cours, 26 = 1 appui cours). Pour les BSO, je n’ai pas réussi à avoir des boutons pour incliner/décliner les lames comme sur le plugin officiel. On ne peut donc que gérer avec le slider position.
ZWavejs2mqtt_Fibaro_FGR222_BSO_Scene_.json.txt (23,7 Ko)

Pour le FRGGRBW: je n’ai pas testé la gestion de lumière, je l’utilise pour une sonde 0-10V:
ZWavejs2mqtt_Fibaro_FGRGRBW-441_.json.txt (28,7 Ko)

Multiprise Greenwave:
ZWavejs2mqtt_Greenwave_NP240_242_.json.txt (41,8 Ko)

Antoine

1 « J'aime »

@Bison

Pour info la commande refresh que tu as mise dans Fibaro_FGR223_Roller_Shutter_3.json.txt
et que l’on retrouve dans les templates fournis avec le plugin est totalement erronée.

Tu as prévu la commande :

zwave/_CLIENTS/ZWAVE_GATEWAY-zwavejs2mqtt/api/RefreshValues(46)

Déjà les topic MQTT sont CASE sensitive et donc en toute logique le topic pour attaquer l’API et la commande refreshValues s’écrivent :

zwave/_CLIENTS/ZWAVE_GATEWAY-Zwavejs2Mqtt/api/refreshValues

A adapter en fonction de l’installation de chacun, tout le monde n’a pas forcément « zwave » en topic de base évidement

Et de plus la syntaxe exacte à utiliser dans la commande jmqtt est :

zwave/_CLIENTS/ZWAVE_GATEWAY-Zwavejs2Mqtt/api/refreshValues/set

Avec dans le champ valeur :

{"args": [92]}

Où 92 est le nodeId

Et là le refresh est correctement transmis à l’API et fonctionne.

Même si la commande avait été correctement implémentée ça serait pas mal aussi de ne pas inclure ce genre de commande dans des Templates distribués avec le plugin car l’utilisateur lambda ne va pas forcément comprendre tout de suite qu’il doit modifier lui-même le nodeId …
De plus si on réapplique le template pour updater un équipement le nodeId sera écrasé, donc pour moi ce genre de commande n’a pas sa place dans un template.

Edit :

Et la méthode la plus clean pour faire ça c’est d’ajouter une commande info « nodeId » à l’équipement qui récupère le nodeId, par exemple sur un de mes équipements :

zwave/Sejour/Sonde/status{nodeId}

Et ensuite d’utiliser cette info dans la valeur de la commande refresh, comme ceci :

{"args": [#[Séjour][Sonde (zw2mq)][nodeId]#]}

En plus connaitre le nodeId du côté jeedom peut toujours être utile aussi à d’autres fins et ça mériterait donc de faire partie de tous les templates zwavejs2mqtt …

reEdit :

Le status « Alive » est aussi très utile côté jeedom pour tous les équipements afin de pouvoir réagir en cas de perte d’un nœud, ça peut être fait en ajoutant encore une commande Info « Status » binaire sur le topic :

zwave/Sejour/Sonde/status{value}
2 « J'aime »

Bonjour,

En vrai, dans cette syntaxe:

Le ZWAVE_GATEWAY-Zwavejs2Mqttest construit avec la constante ZWAVE_GATEWAY et la valeur qu’on peut paramétrer dans les settings:
image

Le tuto de @Bison préconise:

Perso j’ai fait l’install via docker et j’ai laissé la valeur par défaut qui est Zwavejs2Mqtt
Je m’en étais pas rendu compte mais … C’est très ennuyeux pour le partage de templates si l’on n’a pas tous la même valeur :confused:

Pour le status des noeuds je me suis fait un équipement spécifique avec comme topic:
zwave/+/+/status et création automatique des commandes:
image

(et il faudrait déplacer les commentaires dans ce sujet)

1 « J'aime »

Petite astuce complémentaire,

si vous voulez que votre commande « Rafraichir » soit présentée sous la forme de la « roue de rafraichissement » standard en haut à droite de votre widget au lieu d’avoir un bouton « Rafraichir » sur votre widget il suffit d’éditer votre template et d’ajouter dans la commande :

"logicalId": "refresh",

Donc en gros ça donne ça :

"eqType": "jMQTT",
"logicalId": "refresh",
"name": "Rafraichir",
"type": "action",
"subType": "other",
4 « J'aime »

Oui, c’est pour ça que ces commandes n’ont pas vraiment leur place dans le template « officiel ». La configuration de chacun peut-être différente.

Néanmoins la commande « refreshValues » n’est de toute façon pas bonne niveau CASE et de surcroit mal implémentée.

Pas con pour le Alive, mais pour moi c’est plus structuré d’avoir cette info directement dans l’équipement concerné, ça simplifie beaucoup de choses derrière en cas de changement de nom d’équipement ou de nom de topic. Et l’avoir au format binaire est aussi plus simple pour son utilisation.

@meute @pifou, ok je retirerais le refresh du template, ce soir sûrement.

Les commandes de positionnement spécifiques des volets ainsi que les blocages RF sont tellement spécifiques qu’elles n’ont pas non plus leur place dans un template officiel.

Oui enfin ce n’est pas le sujet pour moi.

Mon idée était aussi et surtout de montrer ce que l’on pouvait en faire parce qu’il n’est pas évident de trouver certainez commande et notamment le blocage RF.

Loin de moi l’idée d’en faire un template officiel puisque je ne suis pas le développeur du plugin ni le constructeur du module :wink:.

A un moment donné j’avais en revanche donné l’idée que le pseudo de la personne qui propose le template puisse apparaître dans jMQTT.

Libre à d’autres de proposer un autre template pour le même module.

Les template « officiel » donc fournis directement avec le plugin se doivent d’être exemplaire et le plus universel possible … et il en faut un seul par équipement ou alors les variantes doivent être clairement identifiables dans le nom.

Si on commence à inclure en standard 50 templates pour le même device dans le plugin avec le nom de M. Michu pour les différencier ça va très vite être le boxon … et les utilisateurs non « expert » vont très vite s’y perdre …

Et je n’ai pas dit que la décision d’en faire un template officiel te revenait et que tu en étais le responsable … toujours est-il que c’est ce template qui est fourni en standard … et c’est à mon avis pas judicieux.

Et vu la croissance actuelle des protocoles domotiques vers le MQTT ça serait dommage que jmqtt rate le virage car il inclus d’office des templates « bancales ».
Et par bancale j’entends :

  • Pas d’efforts de mise en forme du widget
  • Commandes erronées
  • Commandes ou infos utiles à 0.01% des utilisateurs
  • Commandes basiques manquantes

Il est possible de configurer les « passerelles » (ex : zwavejs2mqtt) de différentes manière ce qui influe sur la structure des topics.
Ce qui fait qu’un template fonctionnera pour un utilisateur et pas un autre.
Il n’y a donc pas de solution miracle et/ou exhaustive. La perfection n’existe pas :smiley: .

Nous (@Bad et moi) n’avons pas le temps ni le matériel pour revérifier tous les template qui nous sont proposées. On compte donc sur vous pour bichonner les templates que vous nous envoyez (en général, ce sont ceux que vous utilisez vous-même au quotidien).
Si vous vous êtes trompé, n’hesitez pas à remonter les versions corrigées.
L’idéal est bien entendu de faire des PR sur le Github ( Pull requests · Domochip/jMQTT (github.com))

1 « J'aime »

Ma contribution :

Edit du 22/01/2021 : Ajout du Fibaro FGS-224 en mode « switch »

Tous ces templates vous donneront en plus les informations, les commandes et les fonctionnalités suivantes :

  • Info « Status » : 1 ou 0 (Online ou non)
  • Info « nodeId » : l’ID du nœud ZWave
  • Action « Rafraichir » : avec support de la roue de rafraichissement standard des widgets (coin supérieur droite)
  • Info « Puissance » et « Conso » quand disponible mais pas forcément affichés d’office sur le widget
  • Info binaire d’état d’un volet (0 fermé complètement ou 1 dans les autres cas) en plus de l’info de position (0 à 99)
  • Info binaire d’état d’une lampe sur dimmer en plus de la luminosité (0 à 99)
  • Les types génériques pour chaque info ou commande compatible sont déjà renseignés.
  • Le widget de base sera mis en forme pour être déjà exploitable dans l’état.

Attention : pour que le rafraichissement soit fonctionnel il faut impérativement après avoir appliqué le template aller adapter la valeur de l’action « Rafraichir ».
de base elle sera comme ceci :

{"args": []}

Et il faut y ajouter entre les « [] » l’info « nodeId » de l’équipement en cours comme ceci par exemple :

{"args": [#[Atelier][Prise Chaudière (zw2mq)][nodeId]#]}

Malheureusement le principe des templates issu du core jeedom ne permet pas de le faire automatiquement. Ca serait possible mais il faudrait modifier le plugin ou le core pour supporter cela.

Pour info, pour que le nodeId soit mis à jour au moins une fois le plus simple c’est après avoir appliqué les templates de relancer votre zwavejs2mqtt pour que tous les topic de status subissent un update et progressivement les nodeId vont se compléter.

De plus la commande de rafraichissement suppose que vous avez une installation standard de zwavejs2mqtt comme le docker officiel par exemple et donc le topic permettant d’attaquer l’API est celui-ci ( CASE sensitive ! ) :

zwave/_CLIENTS/ZWAVE_GATEWAY-Zwavejs2Mqtt/api/

Si ce n’est pas le cas il faut adapter les templates pour que ce topic corresponde à votre installation.

Pour que ces templates fonctionnent il faut au minimum que votre zwavejs2mqtt soit configuré comme ceci :
image

Et finalement il faut retirer l’extension « .txt » des fichiers avant de les importer dans jmqtt

  • Fibaro FGR-222 et FGR-223
    Fibaro_FGR-222.json.txt (13,8 Ko)
    Fibaro_FGR-223.json.txt (13,8 Ko)
    Capture d’écran 2022-01-14 155934

  • Fibaro FGD-212
    Fibaro_FGD-212.json.txt (12,3 Ko)
    Capture d’écran 2022-01-14 153310

  • Fibaro FGS-212 Light
    Fibaro_FGS-212_Light.json.txt (6,6 Ko)
    Capture d’écran 2022-01-14 150457

  • Fibaro FGS-222 Light
    En version « light » si ce sont des éclairages qui y sont raccordés
    Fibaro_FGS-222_Light.json.txt (11,3 Ko)
    Capture d’écran 2022-01-14 145532

  • Fibaro FGS-222 Switch
    En version « switch » ou « relais » si c’est autre chose qu’une lampe qui y est raccordé, les types génériques ne sont pas préremplis dans ce cas et le widget et l’icone jmqtt sont différents.
    Fibaro_FGS-222_Switch.json.txt (11,2 Ko)
    Capture d’écran 2022-01-14 145750

  • Fibaro FGS-224 Switch
    Fibaro_FGS-224_Switch.json.txt (11,2 Ko)
    image

  • Fibaro FGWPE
    Fibaro_FGWPE.json.txt (8,7 Ko)
    Capture d’écran 2022-01-14 144757

  • Eurotronic Spirit
    Vous y trouverez le paramètre d’offset de la mesure de température interne à la vanne qui est très utile si vous n’avez pas de sonde externe couplée à la vanne.
    Chez moi j’ai un scenario qui ajuste l’offset de chaque vanne en « temps réèl » pour que ce qu’elle mesure en interne soit toujours au plus proche de la sonde de « référence » qui se trouve ailleurs dans la pièce, ca évite d’avoir des sondes externes compatibles réellement couplées aux vannes et le résultat est le même, donc mes vannes mesurent toutes une température identique à la sonde de référence car leur offset est corrigé automatiquement à chaque fois que c’est nécessaire.
    Evidement avec une tolérance de ±0.5° afin de ne pas les corriger trop souvent.
    Eurotronic_Spirit.json.txt (24,1 Ko)
    Capture d’écran 2022-01-14 134932

  • Eurotronic Air Quality Sensor
    Eurotronic_Air_Quality_Sensor.json.txt (11,0 Ko)
    Capture d’écran 2022-01-14 163858

4 « J'aime »

ShellyPlus1pm.json.txt (15,5 Ko)

Bonjour,

Après avoir passé plusieurs heures à galérer… voici le template que j’ai créé pour utiliser un ShellyPlus 1pm (Firmware Gen2)

A mon avis, pour les Gen2, ça doit ressembler pas mal à ça donc chez moi, ça fonctionne.

1 « J'aime »

Bonjour à tous,
Un nouveau template zigbeetomqtt pour le détecteur de fumée Frient:
Frient_SMSZB120
template:
Frient_SMSZB120.json.txt (16,0 Ko)
ne pas oublier de supprimer le .txt à la fin du fichier.
Ce template comprends les reglages suivant:
temperature_precision_set → nombre de chiffre apres la virgule, valeur de 0 à 3.
temperature_calibration_set → offset de la valeur de température retournée.
Max_duration_set → durée de l’alarme, valeur comprise entre 0 et 600 en seconde.
Alarm_set_on → déclenchement manuel de l’alarme.
Alarm_set_off → arrêt manuel de l’alarme.
:wink:

Hello

Template du LIXEE Module tic ( teleinfo )

J’ai donc fait le Template
LIXEE__Module_TIC.json.txt (70,2 Ko)


tic2

3 « J'aime »

Bonjour
quelqu’un pourrait m’aider a faire des template car je n’y arrive pas.
c’est pour le FIBARO Détecteur d’inondation Flood Sensor FGFS101
voila ce que j’ai dans mqtt explorer


image
et voila mon essai de template mais cela ne semble pas fonctionner

D’avance merci

Salut

Les commandes tu les as créées a la main ? ou par l’ajout automatique de jmqtt?

Normalement il faut souscrire l’équipement jmqtt au topic de l’appareils avec ajout automatique. a l’incusion il detecte les infos, et comme il est sur pile il faut faire un reveil.

Laisser jmqtt recevoir les infos. puis decocher ajout auto.

Ensuite dis nous ce que tu obtiens.

ok je vais faire comme ca ce soir et je te tiens au courant.
autre point j’ai des fdg 212 et ils fonctionnent tous mais je viens d’en rajouter 2 autres et je n’arrive pas à les piloter. sur jmqtt j’ai bien les infos mais quand je clique sur on ou off rien ne ce passe.
j’ai ouvert mqtt explorer et si je compare les topic avec d’aure fdg 212 je me rend compte qu’il manque le topic targetvalue. Il apparait dans LUM _entré_couloir-parent mais pas dans LUM rdc 1 (mon nouveau fgd)


du coup impossible de lui dire de faire un target value en 99 pour on ou 0 pour off.

quelqu’un à une idée

1 « J'aime »