Difficultés pour la configuration des infos zwave

Bonjour,

J’ai commencé la migration du plugin Zwave vers Zwave2MQTT et je rencontre quelque soucis pour remettre en place les modules zwave dans JMQTT.
J’utilise jMQTT en béta.

Mon premier souci, je possède un thermostat MH7H, j’envoie dessus tous les jours la date et l’heure à jour pour etre sur qu’il soit toujours à l’heure,
sauf que maintenant cette info est remontée sous ce format:

{« time »:1628156708696}

Avant il y avait dans le plugin zwave:

2 actions

Set Time: 139/1/2 type=buttonaction&action=press
Get Time: 139/1/3 type=buttonaction&action=press

1 Info

Time 139/1/2

Dans le json de Zwave2MQTT

{
« id »: « 93-139-0-dateAndTime »,
« nodeId »: 93,
« commandClass »: 139,
« commandClassName »: « Time Parameters »,
« endpoint »: 0,
« property »: « dateAndTime »,
« propertyName »: « dateAndTime »,
« type »: « any »,
« readable »: true,
« writeable »: true,
« label »: « dateAndTime (property) »,
« stateless »: false,
« list »: false,
« lastUpdate »: 1628156708696
}
Comment dois-je configurer les infos et actions dans JMQTT pour pouvoir agir sur cette fonction?

-Je possède des têtes thermostatiques Popp, il y avait une info « Consigne Pending » pour afficher la consigne en attente de transmission, je ne retrouve pas où remonte cette info pour la récupérer.
Quelqu’un saurait il ou ça se trouve?

-Quelqu’un aurait il le template ou une capture d’écran pour le détecteur de fumées Fibaro, car il y a plusieurs état hardware status/Sensor status/Status et je ne trouve pas la correspondance de chaque.

Merci

Salut,

As-tu regardé sur le bouton JSON dans les commandes de l’équipement voir si tu trouves du 139/0/dateAndTime ?

Pour le smoke sensor j’ai juste recrée Température, Fumée, Chaleur, Sabotage, Batterie. Je ne vois pas trop et n’utilisait pas autre chose en utilisant le plugin Zwave.

Pour le POPP je n’ai pas il faudrait mettre plus d’informations (json notamment).

Bonjour jlra2fael,

Avant tout, je ne connais pas Zwave2MQTT, mais après quelques recherches…

Le contenu de « time » ressemble étrangement à epoch en millisecondes, qui est équivalent à « #timestamp#*1000 » (pour l’heure actuelle).

Pour ce qui est de SetTime et GetTime, as-tu essayé de te connecter sur http://[IP-jeedon]:8091 ?
Les commandes sont peut-être présentes et fonctionnelles ?
De là, il est peut-être possible de retrouver ce qu’il faut envoyer en MQTT pour arriver au même résultat.

Bon weekend,
Bad

Bonjour,
En effet apres un peu de recherche j’ai vu que c’est le temps en millisecondes.

l’info 139/0/dateAndTime existe et remonte donc en millisecondes
j’ai tenté 139/0/dateAndTime/set pour faire la mise à l’heure en envoyant l’heure en millisecondes et cela semble correspondre à la commande mais il doit y avoir une subtilité car lors de l’envoi le log zwave2mqtt affiche:

Controller status: Driver: Time Parameters: « dateAndTime » must be of type « date », received « number »
Unable to write 1628331397159 on 93-139-0-dateAndTime

J’ai fait une recherche google avec ce message d’erreur je n’ai pas trouvé d’info sur comment passer cela au format date.

Dans zwave2mqtt il y a bien un champ pour changer l’heure, malheureusement rien n’est précisé sur comment doit être formaté le temps.

J’ai aussi une 2eme difficulté avec ce thermostat, il remonte des valeurs sous forme de chiffre au lieu de texte.
Par exemple pour indiquer dans quel mode il est la valeur remontée est un chiffre:

dans le json on retrouve:

« action_map »: {
« 0 »: « idle »,
« 1 »: « heating »,
« 2 »: « cooling »,
« 3 »: « fan »,
« 4 »: « idle »,
« 5 »: « idle »,
« 6 »: « fan »,
« 7 »: « heating »,
« 8 »: « heating »,
« 9 »: « cooling »,
« 10 »: « heating »,
« 11 »: « heating »
},

et dans zwave2mqtt les modes sont affichés en texte comme ce qui remontait dans le plugin zwave.

Il y a t’il un moyen de récupérer l’info au format texte au lieu du chiffre?

Sans grand conviction, essaye de lui envoyer sur le topic …/139/0/dateAndTime/set :
{"value": 1628355300000}
ou
{"year": 2021, "month": 8, "day": 7, "hour": 16, "minute": 55, "second": 0}

Vérifie ce qui est reçu par ton broker (avec MQTT Explorer) et surtout que le json n’est pas modifié par le core au passage (on a déjà vu des choses bizarres se passer).

le 1er renvoie le meme message d’erreur qu’au dessus, le 2ème:
2021-08-07 17:03:14.554 INFO ZWAVE: Controller status: Driver: Time Parameters: « dateAndTime » must be of type « date », received « object »
2021-08-07 17:03:14.555 ERROR ZWAVE: Unable to write { year: 2021, month: 8, day: 7, hour: 16, minute: 55, second: 0 } on 93-139-0-dateAndTime

J’ai aussi tenté 'time" ou « date » a la place de tout ça mais ça sort toujours l’erreur « object »

et dans le topic 139/2/dateAndTime/set ?

Tiens en passant, tu peux confirmer si tu es sur Zwave2MQTT ou ZWaveJs2MQTT ?
Le premier n’est plus maintenu…

Je suis sous ZWaveJs2MQTT.
le 139/2/dateAndTime/set ne retourne pas d’erreur:

2021-08-07 18:36:09.977 INFO MQTT: Message received on zwave/Apartment_Bathroom/Thermostat/139/2/dateAndTime/set, <Buffer 31 36 31 38 33 35 35 33 30 30 30 30 30>

Je n’ai malheureusement pas accès au thermostat physiquement en ce moment pour voir si l’heure est juste, mais la valeur correspondant à l’heure s’ajuste avec la valeur envoyée et correspond à l’heure actuelle.

Hello @jlra2fael, je reviens aux nouvelles.

As-tu trouvé la solution ?
Peux-tu la détailler au cas où quelqu’un d’autre rencontre le même problème ?

Bonjour,
je n’avais pas vu ton dernier message, depuis cela fonctionne, j’ai un scenario qui appelle chaque jour la commande suivante pour synchroniser l’heure du thermostat:
/139/2/dateAndTime/set
avec comme valeur: round(microtime(true) * 1000)

Bonjour.

as tu trouvé la solution pour afficher le texte plutôt que la valeur ?
et pourrais tu partager ton template ? :smiley:

Merci d’avance !

Biensur, voici les fichiers.
Pour afficher le texte plutôt qu’une valeur j’ai fait un virtuel avec un widget personnalisé sur l’info virtuelle qui reprend celle du mode et donc qui affiche le texte en fonction de l’info remontée.

Par contre une chose auquel faire attention, quand on change de mode, le thermostat rebascule en automatique et dedans il y a une programmation horaire.
Dans mon cas en pleine nuit il cherchait à chauffer à 28°C, j’ai tout remis sur 00:00 et une température basse mais il semble que seul il bascule toujours à 00:00 sur la température que j’ai programmé.
Je n’ai pas eut le temps de voir avec le fabricant si il est possible de désactiver la programmation interne, à défaut je l’ai réglé sur la température correspondant à Eco.
Pour les fichiers joints, enlever le .txt à la fin du nom pour garder que le .json
template_MCO_Home_Thermostat_MH7H.json.txt (17,9 Ko) widget Heating Mode MCO.json.txt (526 Octets)

1 « J'aime »