Gestion des volets roulants

Ce sujet fait suite à l’issue GitHub :

@AlexTrovato on peut en parler ici en français car j’ai l’impression qu’on ne se comprend pas en anglais là bas :smiley:

En fait le problème c’est de stocker l’information sur les capacités du volet roulant.

Imaginons 3 marques de volets hypothétique :

  • La première est contrôlée par une télécommande avec 3 boutons: ouvrir les volets à 100%, ouvrir à 50%, et ouvrir à 0% (position fermé)

  • La deuxième est contrôlée par une télécommande avec un bouton up et un bouton down.

  • La troisième est contrôlée par une télécommande avec 5 boutons: 0%, 25%, 50%, 75%, 100%

Question:

Comment modéliser ça dans Gladys ?

Quand je dis “ça”, c’est pas le résultat final, oui le résultat final ça peut-être un integer de 0 à 100 qui correspond au pourcentage d’ouverture du volet, je parle de l’information qui va dire “ce volet roulant à ce fonctionnement”

Parce que dans l’UI, chaque volet aura un type de bouton différent, mais il faut bien qu’il y a quelques part en DB cette information

Une possibilité que je vois, c’est de faire au cas par cas, on créé des couples category/type pour chaque type de volets. Je pense que c’est la solution la plus proche de la philosophie de Gladys 4 :slight_smile:

Mais il y a peut-être d’autre façon de faire, et surtout à voir comment cette question pourrait s’appliquer à d’autres problématiques.

J’espère que tu vois ce que je veux dire :grin: Bonne idée en tout cas de regarder comment font les autres !

Ok je comprends mieux.
En premier jet, je dirais avoir un device category par “systeme de volet”. Mais ça risque un peu lourd.
En pensant bien que cela concernera plusieurs type de device.
Sinon un système de “param / options” sur le device feature.

Mais il vaut mieux bien y réfléchir.

1 Like

Du coup un volet roulant aurait un seul device_feature ? et ce device_feature aurait la category + type correspondant à son usage, et on stockerait dans le state un integer de 0 à 100 correspondant au niveau du volet ? ça peut le faire.

C’est vrai que c’est peut-être un peu lourd, mais je préfère cette approche initial tant qu’on a pas trop d’expérience avec les volets roulants, plutôt que de commencer avec le l’ultra modulaire sans comprendre et faire n’importe quoi :slight_smile:

Je préfère aller de l’ultra spécifique vers le généraliste plutôt que l’inverse.

Une question qui me vient à l’esprit, c’est comment du coup expliquer dans l’UI dans le service MQTT à quoi correspond chaque feature ? vu qu’on display que le nom, il faut que dans le nom ça soit assez explicite pour qu’on explique “alors cette feature correspond au volet 0, 50, 100%” ^^ une idée ?

UI UI…
a part mettre une box explicative (description de la feature) lors du select (ou hover) dans la dropdown… je ne vois pas trop.

Si je peux me permettre d’intervenir, il existe même des télécommandes avec 3 fonctions :

  • Up
  • Down
  • Stop pour arrêter la montée ou la descente du volet en cours (donc on connait pas le pourcentage d’ouverture du volet)

ça complexifie peut être un peu plus votre réflexion :slight_smile:

Hello,

Au pire pour connaitre le pourcentage d’ouverture, tu peux imaginer une phase de calibrage pour connaitre le temps d’ouverture/fermeture totale et ensuite tu pourra faire une estimation en fonction du temps écoulé entre un appui sur Up et Stop.
C’est une idée :wink:

Bonne journée

1 Like