mgcrea / homebridge-tydom

Homebridge plugin to manage Tydom hardware by Delta Dore from Apple HomeKit.
63 stars 14 forks source link

problème de synchro entre les ouvertures/fermetures de stores #15

Closed Siks78 closed 4 years ago

Siks78 commented 4 years ago

Bonjour à tous, Juste deux rapides questions suite à l’installation du plugin homebridge-tydom, tout marche nickel, par contre ma box tydom est vert clignotant progressif en permanence. Je voulais juste savoir si c’était normal?

Et seconde question, lorsque je demande à Siri de faire une action sur un volet, il le fait parfaitement, mais sous l’appli Maison, la position n’est alors pas à jour. Il faut que j’aille sous l’appli originale tydom d’abord, puis que je retourne sous l’appli maison, pour voir la bonne position du volet. Vous auriez une idée s’il vous plait?

Merci beaucoup Sylvain

mgcrea commented 4 years ago

A priori pas de soucis pour le vert clignotant, cela indique juste une connexion en cours selon la doc. Le plugin homebridge maintient une connexion permanente avec la box (en passant éventuellement par la passerelle web de delta dore).

Screenshot 2020-04-19 at 15 23 47

Pour la seconde question, j'ai peut-être une idée, je viens de pousser une version 0.16.3 qui pourrait corriger le problème. Dites moi si ça change quelque chose.

Siks78 commented 4 years ago

Merci Olivier, c'est top, la nouvelle version corrige bien le problème! :-) Merci beaucoup!

Siks78 commented 4 years ago

Bonjour Olivier,

j'ai depuis quelques jours de nouveau un problème de synchro entre les ouvertures/fermetures de stores faites par Siri ou l'interrupteur, et la mise à jour sous l'appli Homekit. La mise à jour est aléatoire, c'est à dire que soit elle ne se fait pas, soit il faut attendre 1 à 2 minutes, soit il faut que j'aille sous l'appli Delta Dore en premier, puis retourner sous l'appli Maison.

Dernière chose, j'ai également remarqué que quand j'ouvre le volet depuis l’interrupteur commandé, sous l'appli Maison, il met "Fermeture", et vice versa (quand je ferme, il met "ouverture"). D'ailleurs, Siri ne comprend que le fait que je lui dise "ouvre le volet à 40%" par exemple. Si je lui dis "ferme le volet à 40%", il va me l'ouvrir à 40%...

Tout cela n'est bien sûr pas bien grave, car déjà ça marche, et je dois dire que c'est vraiment chouette! Du beau travail, merci encore!

mgcrea commented 4 years ago

Bizarre que l'état soit inversé comme ça. Peut-être une valeur inattendue retournée par Tydom. Vu que je n'ai pas de volets chez moi je ne peux tester directement.

Il me faudrait des logs (quand le comportement est incorrect) pour y voir plus clair. Pour activer le debug du plugin, il faut ajouter DEBUG=homebridge-tydom,tydom-client comme variable d'environnement au lancement du service (ou dans le conteneur si tu utilises docker).

mgcrea commented 4 years ago

Je viens de pousser une nouvelle mise à jour avec plus de logs et quelques correctifs, à tester! v0.17.1.

Siks78 commented 4 years ago

Bonjour Olivier, merci pour tes retours! Alors tout d'abord, question très bête et basique : comment on fait pour installer une nouvelle mise à jour d'un plugin? de mon côté, j'ai fait npm remove puis npm install... je suppose qu'il y a plus simple. J'ai testé, c'est toujours un peu aléatoire pour les volets. J'ai dit à Siri d'ouvrir le volet du salon et là, par exemple, nickel, mise à jour en live sur l'app Maison. Par contre après, je lui ai dit de fermer certains volets à 50%, et là l'app me mets "Fermeture" avec l'action en cours, mais ça ne se finit jamais... Ci-joint le fichier de log, ainsi que des captures d'écran de l'app Delta dore (réelles positions des volets à l'instant T), et de l'app maison (Mise à jour en cours mais rien ne se passe...). Merci! sylvain homebridge(2).log IMG_1089 IMG_1090

mgcrea commented 4 years ago

Hum du coup j'ai un gros doute sur le fait que HomeKit et Tydom ont des représentations inverses (0 = fermé /100 = ouvert pour HomeKit et 0 = ouvert / 100 = fermé pour Tydom!).

Ce qui est étrange est que j'ai d'autres users qui ont confirmé le bon fonctionnement des volets, et je pense pas qu'on aurait loupé ça, sinon peut-être qu'ils ont été câblés à l'envers (si c'est possible), mais du coup ça serait pas conforme dans l'appli Tydom... Bizarre!

Est-ce que tu peux avoir accès à un terminal avec node (n'importe ou) pour faire:

  1. Un dump des accessoires pour voir si il y a des différences avec les autres:
npx tydom-client request /configs/file /devices/data /devices/meta /devices/cmeta --file tydom_output.json --username 001A25XXXXXX --password XXXXXX
  1. Ecouter le socket et jouer avec l'application Tydom pour vérifier les valeurs de fermetures et ouverture:
npx tydom-client listen --username 001A25XXXXXX --password XXXXXX
quizatsaderac commented 4 years ago

salut à tous, Pour info j’ai le même petit souci pour les volets ( sans trop d’importance car les actions fonctionnent bien).Apres une commande d’ouverture ou de fermeture avec un pourcentage, siri exécute parfaitement la manœuvre, mais l’application Home affiche dans un premier les bonnes valeur mais après 2 secondes, le volet en question affiche en « fermeture » et boucle dessus. par contre, un appui long sur l’icône du volet affiche les bonnes informations avec le bon pourcentage. Pour la confusion de siri entre ouverture et fermeture, la google home présente le même dysfonctionnement, qu’on lui demande ouverture ou fermeture avec un pourcentage, il exécute une fermeture. Encore bravo pour ce plug in et merci :)

mgcrea commented 4 years ago

Ok, je pense qu'il doit y avoir moyen de corriger ça, possible que la Tydom ne renvoit pas toujours l'info de la position exacte du volet et qu'il faille manuellement "poller" la valeur. Si t'as le temps un petit log de manipulation npx tydom-client listen avec l'appli Tydom d'abord puis avec Home en indiquant le moment du bug devrait me permettre de corriger ça!

quizatsaderac commented 4 years ago

Coucou, Voici une petite Log d'un volet avec tydom puis l'application Home. Nota:-Les pourcentages sont inversés entre les deux applications. -lors des manipulations sur l'application tydom, la mise à jour du volet se fait après avoir relâché le doigt, alors que sur HOME, le volet se met à jour continuellement .

test log tydom.pdf

quizatsaderac commented 4 years ago

re Coucou, Petite info complémentaire, delta dore execute les mêmes corrections de 1 % de la position du volet lorsque la commande est envoyé depuis le Google Home ( 81% suite à une commande à 80%). Malheureusement la Google Home ne me permet pas de vérifier visuellement la position du volet. Mais suite à la commande sur le Google Home l'appli Home bug et reste sur "ouverture" ou "fermeture" en boucle.

mgcrea commented 4 years ago

J'ai encore du mal à comprendre comment les ouvertures & fermetures totales peuvent fonctionner si les pourcentages sont inversés. Mais bon on dirait bien qu'ils ont un algo bien pourri ou 0 == fermé et 1 == 99% ouvert!

Pour l'update Tydom je pense que c'est plutôt le device qui manque de précision et qui dépasse la position demandée (avec un test du style si je suis <= 1% de la cible, c'est bon j'arrête là), qui renvoit sa position au Tydom qui s'adapte même si la valeur n'est finalement pas vraiment celle demandée. Home en revanche ne comprend pas pourquoi le volet n'atteint pas/jamais la bonne position.

Pour les problèmes de synchro c'est un peu coton car je n'ai qu'une variable côté Tydom (position), la ou il y en a deux côté Home (position actuelle & position cible).

Du coup je tente d'unifier les deux variables (plus d'état en cours sur Home du coup), mais ça devrait corriger les bugs de 1%. J'ai implémenté l'algo bizarre:

(position: number): number => {
  if (position === 0 || position === 100) {
    return position;
  }
  return Math.max(0, 100 - position);
};

A tester sur une v0.17.5.

@Siks78 pour l'update ça dépend de la façon tu as installé homebridge, avec docker il faut modifier le package.json (mettre la version voulue ou bien latest) et faire un docker restart, sur un autre système, a priori un npm install -g homebridge-tydom@0.17.5 ou bien npm install -g homebridge-tydom@latest devrait fonctionner. En général c'est plus safe de pin une version.

Siks78 commented 4 years ago

Merci Olivier pour ton retour et tes updates. Et merci @quizatsaderac pour avoir transmis le log! Pour ma part, étant encore novice sur plusieurs points, j'ai installé nodeJS (suivant le tuto que tu m'avais envoyé Olivier), et j'ai essayé de faire un npx mais commande non trouvée (connexion au serveur à partir du terminal MacOS, et commande npx, mais il me dit qu'il ne connait pas cette commande)... j'ai dû raté quelque chose.

Du coup, j'ai mis à jour la version, et le retour de mon côté est :

mgcrea commented 4 years ago

@Siks78 merci pour le retour en gros beta j'ai fait l'erreur classique d'inverser Math.min et Math.max dans "l'algo" si desuss! Je viens de pouser une 0.17.6 qui corrige ça, à tester!

Siks78 commented 4 years ago

@mgcrea je viens de tester, c'est super réactif et la position des volets sous Home est pratiquement immédiate! c'est top! chapeau! Le seul truc que j'ai remarqué, c'est qu'il y a une inversion entre ouverture et fermeture. C'est à dire que maintenant, quand je dis à Siri "ouvre tel volet à 40%", il le ferme à 40%. Et sous Home, il y a écrit "Volet untel ouvert à 81%" alors qu'il est fermé à 81%. Pour le premier truc, c'est pas grave, il suffit de dire à Siri de fermer sur telle valeur, et ce sera bon. Par contre, je ne sais pas si tu peux mettre à jour l'écriture sous Home et qu'il mette que le volet est fermé à tel pourcentage plutôt que ouvert... :-)

mgcrea commented 4 years ago

@Siks78 cool, peut-être que l'inversion d'avant était liée à autre chose du coup, j'ai remis l'algo de base sans inverser les valeurs dans une 0.17.7, à tester!

Siks78 commented 4 years ago

@mgcrea je viens de mettre à jour et de faire un test très rapide, et ça a l'air top!! tout fonctionne parfaitement, et les retours de position sous Home sont parfaits et relativement immédiats!! Chapeau et grand merci!!!

quizatsaderac commented 4 years ago

BRAVO ! je confirme Silks78 c'est super réactif, la position du volet en pourcentage est parfaitement affiché. Le problème du 1% est aussi résolu, home se met rapidement à jour comme sur l'application tydom : félicitation. Effectivement sur la 0.17.6 le visuel de l'icône home est inversé entre la fermeture et l'ouverture. Je vais tester la 0.17.7 mais mon serveur hoobs la refuse et bug (Error: The requested platform "Tydom" was not registered by any plugin.) Encore bravo et merci !!

quizatsaderac commented 4 years ago

C'est bon, 0.17.7 installé et comme Siks78 après un premier test, tout fonctionne parfaitement. Félicitation et merci beaucoup.

mgcrea commented 4 years ago

Cool! Ravi que ça soit utile!