Evolution du service Z-Wave JS UI

Volet Roulant

Tu as un deviceClass 17-7. Il s’agit d’un device qui connait la position exacte du volet à priori (nettement mieux que ce que j’utilise :smile: !). Je ne sais pas si cela a un lien ou pas. Je vais simplement inverser la gestion des valeurs dans le code. Mon installation est atypique, je vais m’en dépatouiller (en inversant les branchements ou en demandant à zWave d’inverser de son côté).

Merci pour ton fichier utile !

Radiateur

Juste pour être bien sûr du coup : changer le DIMMER pour une valeur différente de 0 ne va pas impacter le Binary Switch ? (même si tu cliques sur REFRESH dans ZwaveJS UI ?). Impossible par contre pour nous de savoir qu’entre 0-10 : cela veut dire OFF… D’un point de vu générique je suis obligé de me baser sur du > 0. (je vais contrôler ton fichier, il y a peut-être un truc qui m’indique ce point).

Merci pour ces précisions ça va m’aider à traiter. Ce que j’en comprends : c’est qu’il suffit de masquer le Binary Switch dans ton cas. Mais est-ce une généralité ? J’ai pas d’avis tranché sur la question. On peut se dire que par simplicité utilisateur : on va limiter le nombre de fonctionnalités affichées.

Je vais prendre en compte ceci cet aprem’. Tu auras donc 3 fonctions sur ton device :

  1. Dimmer
  2. ON/OFF Max
  3. ON/OFF Restore

Cela reste compatible avec ton cas d’utilisation ainsi qu’un dimmer plus classique de lumière (comme ceux que je teste). Cela te paraît ok ?

Je te fais signe quand la PR est à jour.

Merci encore @_Will_71 pour tes retours :+1:

Alors si je change le binary switch 8.37 cela change bien l’état du dimmer au valeur extreme donc soit 0 où 99.
Par contre si je change le dimmer cela ne change pas l’état de ce binary switch.

Concernant le 2ème binary switch lui est égal à true si le dimmer est supérieur à 0.

Après pour connaître la valeur et la correspondance, tout est indiqué dans la doc du device. Donc pour moi pas la peine de traduire dans Gladys.

J’ai l’impression qu’avec le zwave c’est difficile de définir quelque-chose qui est applicable pour tous les constructeur.

1 Like

Très clair merci.

Je vois quoi changer. Je te fais signe dans l’aprem

Merci :+1:

@_Will_71 la PR est à jour.

Tu dois normalement maintenant avoir le comportement suivant :

  • Avoir le bon sens pour tes volets roulants
  • Voir 3 fonctionnalités pour ton radiateur :
    • 1 variateur (currentvalue:position)
    • 1 commutateur (currentvalue:state) : il agit en tant que ON/OFF positionnant à 0 - 99
    • 1 commutateur (restorePrevious) : il agit en tant que ON/OFF positionnant à 0 sur OFF et « dernière valeur » sur ON

Je vais essayé :+1:

@Sescandell ,

Je viens d’essayé. Ok pour le sens du volet.
Pour le radiateur c’est bon aussi.

Mais il y a encore quelque-chose qui me dérange, tu peux dire que je suis chiant :joy:
Cela concerne le commutateur restorePrevious que tu as ajouté. Déjà pourquoi le mettre uniquement pour le radiateur alors qu’il est présent aussi sur le volet?
Et est-ce vraiment un commutateur OFF/ON? Dans l’interface zwave js ui j’ai pas l’impression.
Après je comprends car il n’y a pas encore la fonctionnalité adapté dans Gladys. Il faudrait la créer.

J’explique avec un exemple car du coup le fonctionnement est différent entre Gladys et Zwave JS UI.
Dans Zwave JS UI, j’ai le dimmer à 30.


Si j’appui sur le bouton RESTORE, le dimmer va à la valeur précédente 99.

Dans Gladys, j’ai aussi le dimmer à 30
image
J’appui sur le bouton RESTORE il passe à FALSE et le dimmer aussi.
image
Si je veux aller à la valeur d’avant je suis obligé d’appuyer de nouveau sur le bouton.
image
Je ne suis pas sûr que tout le monde comprenne d’appuyer 2 fois pour rétablir la précédente valeur!
Sachant qu’en plus que le switch revient à TRUE dès que le dimmer change d’état.

1 Like

On a échangé en direct avec @_Will_71 plutôt que de polluer ici. La conclusion est la suivante : tout est OK.

  • Niveau volets roulants : c’est OK
  • Niveau restorePrevious du radiateur : le comportement est OK. C’est juste que son device ne le gère pas réellement. Il est exposé, mais il n’en fait rien (il agit comme un simple ON/OFF). Pour autant, pour d’autres devices : ce restorePrevious a tout son sens.

Donc en soit c’est OK.

On pourrait ne pas exposer le restorePrevious dans le cas précis de ce ProductId. Je n’ai pas d’avis tranché si on doit, ou pas, se mettre à gérer des cas spécifiques par device. Dans ce cas précis, ce n’est pas grand chose à faire, et ça pourrait être fait dans un second temps.

Autre possibilité : on pourrait prendre le parti pris de ne pas exposer explicitement 2 ON/OFF. On fait systématiquement du restorePrevious dans le cas d’un ON (qui au pire des cas agit comme un ON basique). Pour rappel, la différence entre le ON classique et le restorePrevious (visible typiquement dans le cas d’un variateur de lumière) :

  • un bouton ON/OFF qui permet d’éteindre / allumer au max’
  • un bouton ON/OFF qui permet d’éteindre / allumer selon la dernière intensité qu’il y avait (comme le font les interrupteurs physiques)

Je trouve pour ma part qu’avoir le choix est intéressant.

@pierre-gilles n’hésite pas à donner ton avis sur ce dernier point. Sinon en soit : ready to merge.

Merci encore à @_Will_71 pour les tests !

3 Likes

Salut @Sescandell @_Will_71,

Merci beaucoup pour le travail sur cette PR ! J’ai vu qu’il y avait beaucoup de messages, et pas mal de changements sur la PR, c’est très chouette :slight_smile: Fonctionnellement ça a l’air très cool.

J’ai beaucoup de questions pour vous, je pense qu’il est plus sage de ne pas inclure cette PR dans la release d’aujourd’hui, on aura pas le temps de voir les points ensemble avant la release.

Je m’occupe du forum et de la release et ensuite je pense que je vais passer une ou deux heures sur la PR pour vous faire des retours !

De toute façon les releases sont tellement fréquentes sur Gladys ça partira dans la prochaine :wink:

Merci encore !!

2 Likes

Salut @Sescandell,

En relisant la PR, je me rend compte que j’ai vraiment énormément de question, est-ce qu’on peut se faire un petit call dans la semaine quand tu es dispo ? :slight_smile:

Si non, je peux tout coucher à l’écrit mais ça économiserait du temps à tout le monde si tu pouvais m’expliquer les changements à l’oral en partage d’écran ^^

Je suis dispo:

  • demain soir (20h?)
  • mercredi soir (20h?)
  • jeudi et vendredi toute la journée quand tu veux :slight_smile:

Dis moi !

Merci pour l’appel @Sescandell !

Je viens de tester ta PR avec mon capteur d’ouverture Fibaro et ça marche toujours nickel donc beau boulot :slight_smile:

Je t’ai mis quelques remarques de style de code sur la PR, rien de très grave :

1 Like

J’ai mis à jour la PR selon les remarques.

C’est poussé, testé.

Veux tu que je teste de mon côté ?

Il n’y a pas de changement fonctionnel par rapport à notre dernier échange. Mais en soit tout test est toujours bon à prendre.

@Sescandell Merci pour les correctifs :slight_smile:

Quand tu dis testé, de ton côté tu as testé en réel après les correctifs ?

Si oui, c’est bon pour moi !

Si non, je veux bien des tests :slight_smile:

De mon côté j’ai pas eu le temps de tester. Je pourrais essayer entre 12h et 14h si besoin.

1 Like

Oui j’ai rejoué avec les devices réels : volet roulant + module dimmer.

1 Like

Excellent @Sescandell, merci pour ta réponse rapide !

Je merge ça et ça part dans Gladys Assistant 4.41

1 Like

Disponible dans Gladys Assistant 4.41 :

1 Like

J’étais au téléphone avec un utilisateur Gladys un soir cette semaine pour l’aider à mettre en place son installation Z-WaveJS UI, et on a passé un bon 20 minutes à comprendre pourquoi ses appareils n’apparaissaient pas dans Gladys: ils n’avaient pas de nom :joy:

Je sais, c’est marqué dans un warning dans l’intégration, mais on avait zappé ^^

J’ai fais une PR pour afficher tous les appareils, même sans nom, sinon effectivement ça rend fou :

C’est disponible dans Gladys Assistant 4.42 :