JMQTT Partage de Template

Bonjour,
J’ouvre un sujet sur le partage de template pour JMQTT.
J’ai cherché sur community s’il y avait un sujet d’ouvert, je n’ai pas trouvé.
Les commentaires sont les bienvenue pour pouvoir faire évoluer ma pratique mais aussi celle des autres.
edit @olive :
Pour les commentaires utilisez ce sujet

Mon premier partage:
image

Community ne permet pas de telecharger des fichiers json, j’ai donc ajouter un « .txt » à la fin du fichier, donc pour pouvoir l’utiliser, supprimer le « .txt » a la fin du nom de fichier.
Lidl_HG06338.json.txt (11,6 Ko)

Contenu du fichier json:

{
    "Lidl HG06338": {
        "name": "Lidl HG06338",
        "eqType_name": "jMQTT",
        "configuration": {
            "type": "eqpt",
            "createtime": "2021-10-28 14:42:45",
            "auto_add_cmd": "1",
            "Qos": "1",
            "battery_type": "Secteur",
            "commentaire": "HG06338",
            "icone": "power-plug",
            "mqttPubStatus": "1",
            "mqttTls": "0",
            "mqttTlsCheck": "public",
            "api": "disable",
            "updatetime": "2021-10-28 14:44:01"
        },
        "category": {
            "heating": "0",
            "security": "0",
            "energy": "1",
            "light": "0",
            "opening": "0",
            "automatism": "0",
            "multimedia": "0",
            "default": "0"
        },
        "status": {
            "lastCommunication": "2021-10-19 17:45:04"
        },
        "logicalId": "%s\/#",
        "commands": [
            {
                "eqType": "jMQTT",
                "name": "get",
                "type": "info",
                "subType": "string",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s\/get"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "display": {
                    "invertBinary": "0"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "linkquality",
                "type": "info",
                "subType": "string",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s{linkquality}"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "display": {
                    "invertBinary": "0"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "Lidl HG06338",
                "type": "info",
                "subType": "string",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "display": {
                    "invertBinary": "0"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "state_l1",
                "type": "info",
                "subType": "string",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s{state_l1}"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "display": {
                    "invertBinary": "0"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "state_l2",
                "type": "info",
                "subType": "string",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s{state_l2}"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "display": {
                    "invertBinary": "0"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "state_l3",
                "type": "info",
                "subType": "string",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s{state_l3}"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "display": {
                    "invertBinary": "0"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "On I1",
                "type": "action",
                "subType": "other",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s\/set",
                    "request": "{\"state_l1\":\"ON\"}",
                    "retain": "0",
                    "Qos": "2"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "Off I1",
                "type": "action",
                "subType": "other",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s\/set",
                    "request": "{\"state_l1\":\"OFF\"}",
                    "retain": "0",
                    "Qos": "2"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "Toggle I1",
                "type": "action",
                "subType": "other",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s\/set",
                    "request": "{\"state_l1\":\"TOGGLE\"}",
                    "retain": "0",
                    "Qos": "2"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "Get I1",
                "type": "action",
                "subType": "other",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s\/get",
                    "request": "{\"state_l1\": \"\"}",
                    "retain": "0",
                    "Qos": "1"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "On I2",
                "type": "action",
                "subType": "other",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s\/set",
                    "request": "{\"state_l2\":\"ON\"}",
                    "retain": "0",
                    "Qos": "2"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "Off I2",
                "type": "action",
                "subType": "other",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s\/set",
                    "request": "{\"state_l2\":\"OFF\"}",
                    "retain": "0",
                    "Qos": "2"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "Toggle I2",
                "type": "action",
                "subType": "other",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s\/set",
                    "request": "{\"state_l2\":\"TOGGLE\"}",
                    "retain": "0",
                    "Qos": "2"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "Get I2",
                "type": "action",
                "subType": "other",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s\/get",
                    "request": "{\"state_l2\": \"\"}",
                    "retain": "0",
                    "Qos": "1"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "On I3",
                "type": "action",
                "subType": "other",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s\/set",
                    "request": "{\"state_l3\":\"ON\"}",
                    "retain": "0",
                    "Qos": "2"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "Off I3",
                "type": "action",
                "subType": "other",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s\/set",
                    "request": "{\"state_l3\":\"OFF\"}",
                    "retain": "0",
                    "Qos": "2"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "Toggle I3",
                "type": "action",
                "subType": "other",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s\/set",
                    "request": "{\"state_l3\":\"TOGGLE\"}",
                    "retain": "0",
                    "Qos": "2"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "Get I3",
                "type": "action",
                "subType": "other",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s\/get",
                    "request": "{\"state_l3\": \"\"}",
                    "retain": "0",
                    "Qos": "1"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "isVisible": "1",
                "alert": []
            }
        ]
    }
}
5 « J'aime »

15 messages ont été fusionnés à un sujet existant : JMQTT Partage de Tamplate Discutions

Le module suivant:


Le fichier:
Lidl_HG06337.json.txt (5,1 Ko)
Contenue du fichier:

{
    "Lidl HG06337": {
        "name": "Lidl HG06337",
        "eqType_name": "jMQTT",
        "configuration": {
            "type": "eqpt",
            "createtime": "2021-10-28 14:56:24",
            "auto_add_cmd": "1",
            "Qos": "1",
            "battery_type": "Secteur",
            "commentaire": "HG06337",
            "icone": "prise",
            "mqttPubStatus": "1",
            "mqttTls": "0",
            "mqttTlsCheck": "public",
            "api": "disable",
            "updatetime": "2021-10-28 14:57:07"
        },
        "category": {
            "heating": "0",
            "security": "0",
            "energy": "0",
            "light": "0",
            "opening": "0",
            "automatism": "1",
            "multimedia": "0",
            "default": "0"
        },
        "status": {
            "lastCommunication": "2021-10-19 17:45:04"
        },
        "logicalId": "%s\/#",
        "commands": [
            {
                "eqType": "jMQTT",
                "name": "linkquality",
                "type": "info",
                "subType": "numeric",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s{linkquality}",
                    "minValue": "0",
                    "maxValue": "255"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "display": {
                    "invertBinary": "0"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "Lidl HG06337",
                "type": "info",
                "subType": "string",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "display": {
                    "invertBinary": "0"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "state",
                "type": "info",
                "subType": "binary",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s{state}"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "display": {
                    "invertBinary": "0"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "On",
                "type": "action",
                "subType": "other",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s\/set",
                    "request": "{\"state\":\"ON\"}",
                    "retain": "0",
                    "Qos": "2"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "Off",
                "type": "action",
                "subType": "other",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s\/set",
                    "request": "{\"state\":\"OFF\"}",
                    "retain": "0",
                    "Qos": "2"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "Toggle",
                "type": "action",
                "subType": "other",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s\/set",
                    "request": "{\"state\":\"TOGGLE\"}",
                    "retain": "0",
                    "Qos": "2"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "Get State",
                "type": "action",
                "subType": "other",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s\/set",
                    "request": "{\"state\":\"\"}",
                    "retain": "0",
                    "Qos": "1"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "isVisible": "1",
                "alert": []
            }
        ]
    }
}
2 « J'aime »

le dernier pour aujourd’hui:
image
Le fichier:
HEIMAN_HS1CA.json.txt (5,3 Ko)
Contenue du fichier:

{
    "HEIMAN HS1CA": {
        "name": "HEIMAN HS1CA",
        "eqType_name": "jMQTT",
        "configuration": {
            "type": "eqpt",
            "createtime": "2021-10-28 12:37:14",
            "auto_add_cmd": "0",
            "Qos": "1",
            "battery_type": "1xCR123A",
            "commentaire": "HS1CA",
            "icone": "molecule-co",
            "mqttPubStatus": "1",
            "mqttTls": "0",
            "mqttTlsCheck": "public",
            "api": "disable",
            "updatetime": "2021-10-28 13:08:56"
        },
        "category": {
            "heating": "0",
            "security": "1",
            "energy": "0",
            "light": "0",
            "opening": "0",
            "automatism": "0",
            "multimedia": "0",
            "default": "0"
        },
        "status": {
            "lastCommunication": "2021-10-19 17:45:04"
        },
        "logicalId": "%s\/#",
        "commands": [
            {
                "eqType": "jMQTT",
                "name": "battery",
                "type": "info",
                "subType": "numeric",
                "isHistorized": "0",
                "unite": "%",
                "configuration": {
                    "topic": "%s{battery}",
                    "minValue": "0",
                    "maxValue": "100"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "display": {
                    "invertBinary": "0"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "battery_low",
                "type": "info",
                "subType": "binary",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s{battery_low}"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "display": {
                    "invertBinary": "0"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "carbon_monoxide",
                "type": "info",
                "subType": "binary",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s{carbon_monoxide}"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "display": {
                    "invertBinary": "0"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "HEIMAN HS1CA",
                "type": "info",
                "subType": "string",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "display": {
                    "invertBinary": "0"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "linkquality",
                "type": "info",
                "subType": "numeric",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s{linkquality}",
                    "minValue": "0",
                    "maxValue": "255"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "display": {
                    "invertBinary": "0"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "tamper",
                "type": "info",
                "subType": "binary",
                "isHistorized": "0",
                "configuration": {
                    "topic": "%s{tamper}"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "display": {
                    "invertBinary": "0"
                },
                "isVisible": "1",
                "alert": []
            },
            {
                "eqType": "jMQTT",
                "name": "voltage",
                "type": "info",
                "subType": "numeric",
                "isHistorized": "0",
                "unite": "V",
                "configuration": {
                    "topic": "%s{voltage}",
                    "minValue": "0",
                    "maxValue": "3500"
                },
                "template": {
                    "dashboard": "default",
                    "mobile": "default"
                },
                "display": {
                    "invertBinary": "0"
                },
                "isVisible": "1",
                "alert": []
            }
        ]
    }
}
2 « J'aime »

Un autre: SONOFF 4CH R2 TASMOTA
image
Flashé avec le Firmware Tasmota

Le fichier:
SONOFF_4CH_R2_TASMOTA.json.txt (35,9 Ko)

Contenu du fichier:
Trop de caractères, impossible de le publier d’un seul tenant.

2 « J'aime »

:arrow_right: Un template zwavejs2mqtt pour Fibaro Wall Plug FGWPE102ZW5

image
Fibaro_Wall_Plug_FGWPE102ZW5.json.txt (4,3 Ko)
Note : supprimer l’extension .txt pour importer le fichier .json

:arrow_right: Un template zwavejs2mqtt pour Fibaro FGD-212 Dimmer 2

image
Fibaro_FGD212_Dimmer_2.json.txt (6,0 Ko)
Note : supprimer l’extension .txt pour importer le fichier .json

Dans ce template se trouve 2 commandes pour définir une intensité à 10% et 20%

:arrow_right: Un template zwavejs2mqtt pour Aeotec ZW100 MultiSensor6

image
Aeotec_ZW100_MultiSensor6.json.txt (5,1 Ko)
Note : supprimer l’extension .txt pour importer le fichier .json

:arrow_right: Un template zwavejs2mqtt pour Fibaro FGR-223 Roller Shutter 3

image
Fibaro_FGR223_Roller_Shutter_3.json.txt (12,5 Ko)
Note : supprimer l’extension .txt pour importer le fichier .json

Attention, ce template est assez complet voir trop pour une utilisation classique.
Il contient plusieurs position intermédiaire dont les valeurs sont à adapter pour les pourcentages d’ouvertures qui concernent vos volets.
J’ai également ajouter des commandes pour bloquer les commandes locales et RF

image

:arrow_right: Un template zwavejs2mqtt pour Fibaro FGSD-002-ZW5 Smoke Sensor 2

image
Fibaro_FGSD002ZW5_Smoke_Sensor_2.json.txt (4,2 Ko)
Note : supprimer l’extension .txt pour importer le fichier .json

:arrow_right: Un template zwavejs2mqtt pour Remotec ZXT-600

image
Remotec_ZXT600.json.txt (11,5 Ko)
Note : supprimer l’extension .txt pour importer le fichier .json

:arrow_right: Un template zwavejs2mqtt pour Fibaro FGS-222 Switch 2x1

image
Fibaro_FGS222_Switch_2x1.json.txt (4,8 Ko)
Note : supprimer l’extension .txt pour importer le fichier .json

4 « J'aime »

7 messages ont été scindés en un nouveau sujet : JMQTT Partage de Template Discussions

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 »