Décalage volet prop

Bonjour,

J’ai un décalage dans l’ouverture de mon volet, dans l’exemple ci-dessous le volet était entièrement fermé avant le test.

Via HomeKit je demande l’ouverture du volet en appuyant sur le volet, l’état passe de « fermé » à « ouverture », le problème est que le volet s’arrête à 88% et il est donc indiqué « ouvert à 88% ».

IMG_BD63FD8759B0-1

Voici les logs :

[2020-12-07 18:12:38][DEBUG] : [Appartement][Grand Volet Prop] Ajout du temps de décollement
[2020-12-07 18:12:38][DEBUG] : [Appartement][Grand Volet Prop] Temps d'action 24772500µs
[2020-12-07 18:12:38][DEBUG] : [Appartement][Grand Volet Prop] Nous allons monter le volet de 99%
[2020-12-07 18:13:03][INFO] : [Appartement][Grand Volet Prop][Timeout] Temps d'attente: 24867806.911469 < 27750000, Nous attendons
[2020-12-07 18:13:03][DEBUG] : [Appartement][Grand Volet Prop] Temps de mouvement du volet de 24890160µs
[2020-12-07 18:13:03][DEBUG] : [Appartement][Grand Volet Prop] Suppression du temps de decollement
[2020-12-07 18:13:03][DEBUG] : [Appartement][Grand Volet Prop] Mouvement du volet de 88%
[2020-12-07 18:13:03][DEBUG] : [Appartement][Grand Volet Prop] Le volet est a 88%
[2020-12-07 18:13:03][DEBUG] : Detection sur le listener End : {"Volets_id":"75","event_id":"881","value":"88","datetime":"2020-12-07 18:13:03","listener_id":"167"}
[2020-12-07 18:13:03][INFO] : [Appartement][Grand Volet Prop]Evaluation de la condition : [#[Appartement][Grand Volet Prop][Hauteur]#==100][88==100] = Faux
[2020-12-07 18:13:03][INFO] : [Appartement][Grand Volet Prop]Evaluation de la condition : [#[Appartement][Grand Volet Prop][Hauteur]#==0][88==0] = Faux

3ème ligne il est écrit « Nous allons monter le volet de 99% » hors normalement il devrait monter à 100%
6ème ligne « Suppression du temps de decollement » ne serait-ce pas ça les 12% manquant ?

Personne ? @mika-nt28

Peux tu faire tes test sans Homekit pour bien séparer les comportement

Non, le plugin enregistre les heures de commande et de stop pour faire sont delta
Si tu part du sol alors le temps de decollement doit etre enlevé pour avoir le temps de mouvement

Faut pas etre si pressé et laissé le temps au gens de vivre

Comme demandé voici le test sans HomeKit volet fermé je demande l’ouverture (il s’ouvre bien à 100%) :

[2020-12-09 17:33:56][INFO] : [Appartement][Grand Volet Prop][Timeout] Temps d'attente: 3025338.8881683 < 27750000, Nous attendons
[2020-12-09 17:34:21][INFO] : [Appartement][Grand Volet Prop][Timeout] Execution du stop
[2020-12-09 17:34:21][DEBUG] : [Appartement][Grand Volet Prop] Execution de la commande [Appartement][Grand volet][Stop]
[2020-12-09 17:34:21][DEBUG] : [Appartement][Grand Volet Prop] Mise a jours manuel de la hauteur
[2020-12-09 17:34:21][DEBUG] : [Appartement][Grand Volet Prop] Temps de mouvement du volet de 27820782µs
[2020-12-09 17:34:21][DEBUG] : [Appartement][Grand Volet Prop] Suppression du temps de decollement
[2020-12-09 17:34:21][DEBUG] : [Appartement][Grand Volet Prop] Mouvement du volet de 100%
[2020-12-09 17:34:21][DEBUG] : [Appartement][Grand Volet Prop] Le volet est a 100%
[2020-12-09 17:34:21][DEBUG] : Detection sur le listener End : {"Volets_id":"75","event_id":"881","value":"100","datetime":"2020-12-09 17:34:21","listener_id":"169"}
[2020-12-09 17:34:21][INFO] : [Appartement][Grand Volet Prop]Evaluation de la condition : [#[Appartement][Grand Volet Prop][Hauteur]#==100][100==100] = Vrai
[2020-12-09 17:34:21][INFO] : [Appartement][Grand Volet Prop][Fin de cours]: Fin de course haute détécté, mise a 100% de l'etat
[2020-12-09 17:34:21][INFO] : [Appartement][Grand Volet Prop]Evaluation de la condition : [#[Appartement][Grand Volet Prop][Hauteur]#==0][100==0] = Faux

Même test avec HomeKit, volet fermé je demande l’ouverture, il s’ouvre à 88% :

[2020-12-09 17:28:28][DEBUG] : [Appartement][Grand Volet Prop] Ajout du temps de décollement
[2020-12-09 17:28:28][DEBUG] : [Appartement][Grand Volet Prop] Temps d'action 24772500µs
[2020-12-09 17:28:28][DEBUG] : [Appartement][Grand Volet Prop] Nous allons monter le volet de 99%
[2020-12-09 17:28:50][INFO] : [Appartement][Grand Volet Prop][Timeout] Temps d'attente: 21864367.961884 < 27750000, Nous attendons
[2020-12-09 17:28:53][DEBUG] : [Appartement][Grand Volet Prop] Temps de mouvement du volet de 24830262µs
[2020-12-09 17:28:53][DEBUG] : [Appartement][Grand Volet Prop] Suppression du temps de decollement
[2020-12-09 17:28:53][DEBUG] : [Appartement][Grand Volet Prop] Mouvement du volet de 88%
[2020-12-09 17:28:53][DEBUG] : [Appartement][Grand Volet Prop] Le volet est a 88%
[2020-12-09 17:28:53][DEBUG] : Detection sur le listener End : {"Volets_id":"75","event_id":"881","value":"88","datetime":"2020-12-09 17:28:53","listener_id":"169"}
[2020-12-09 17:28:53][INFO] : [Appartement][Grand Volet Prop]Evaluation de la condition : [#[Appartement][Grand Volet Prop][Hauteur]#==100][88==100] = Faux
[2020-12-09 17:28:53][INFO] : [Appartement][Grand Volet Prop]Evaluation de la condition : [#[Appartement][Grand Volet Prop][Hauteur]#==0][88==0] = Faux

Le constat est claire, ce n’est pas un probleme directement du plugin mais avec HomeKit.
C’est le #plugin-homebridge ??
Qu’est sont les valeurs qui transit sur HomeKit

les voici :

J’ai rajouté le #plugin-homebridge pour trouver une solution
Pour moi si le plugin fonctionne en direct sur jeedom le soucis est dans la tranxmission d’info entre les 2 plugin

Effectivement ça me paraît logique. Tiens moi au courant stp

Pour moi le min max n’est pas bon sur l’action et donc ça ferait une proportionnelle

Si le max est à 98, homebridge va faire un set 98 sur la commande slider plutôt que de faire un « ouverture »

C’est à modifier où ?

voici comment ca fonctionne de mon coté pour gérer tous les cas de config :

pour info coté interface homekit c’est un slider d’office, pas le choix… ce slider va de min = min de la commande slider à max = max de la commande slider.

if(service.actions.down && service.actions.up) { // si les actions up et down sont définies (types génériques)
						if (service.actions.slider) { // si l'action slider est aussi définie
							if (parseInt(value) === 0) // si on set slider = 0 (0% ouvert = fermé)
								action = 'flapDown'; // je lance l'action descendre
							else if (parseInt(value) === 99 || parseInt(value) === 100) // si on set slider à 99 ou 100
								action = 'flapUp'; // je lance l'action monter
							else
								action = 'setValue'; // sinon je met la valeur demandée par le slider
						}
						else { // si on a pas configuré d'action slider,
							if (parseInt(value) < 50)// si on a mis plus de 50 je lance "descendre"
								action = 'flapDown';
							else // si on a mis moins de 50 je lance "monter"
								action = 'flapUp';
						}
					} [...]

donc dans le problème ici, si le max = 98 par exemple, je vais faire une action slider avec comme valeur 98.

ne pas oublier que de mon coté les valeurs sont en pourcentage d’ouverture… donc dans ton log quand tu dis

[2020-12-09 17:28:28][DEBUG] : [Appartement][Grand Volet Prop] Nous allons monter le volet de 99%

je ne comprends pas monter de 99% car monter veut dire ouvrir et « de » référence une notion de relatif… donc tu ouvre de 99%… ou alors c’est « à » donc tu set 99% mais dans ce cas la de mon coté ca lance l’action Monter (donc ta commande UP)… donc ca devrait faire le job…

Je t’avoue que je n’ai pas tout compris. Que dois-je faire ?

c’est pas vraiment pour toi :wink: c’est pour @mika-nt28

1 « J'aime »

Je n’ai pas défini de valeur sur la commande min et max.

Tres etrange ce comportement car du coup s’il demande 0 ou 100 tu n’execute pas un proportionnel du coup on ne devrait pas avoir ses log liée au proportionnel

On a bien la meme logique 100% ouvert
Le log extrait est la difference entre la hauteur actuel et la hauteur demandé.
Si est a 0 c’est qu’il a recue un ordre de hauteur a 99

@nebz est ce que de ton coté tu as du log pour suivre se qu’il fait vraiment

@Anthony78 je vois quand meme des chose etrange sur le log.
Peux tu :

  • Désactivé le demon pour qu’il n’y ai plus de timeout
  • Supprimer les retours d’etat de fin de course qui sont completement fausse par ce que tu test l’etat du plugin ce qui peut mettre le basard
  • Recuperer / Purger les log entre chaque test
  • De refaire le meme teste comparatif

Oui plein de log dans homebridge aussi .

Si je désactive le démon je n’ai plus de log

Je supprimes les deux ?

Bah oui tu as pris les états du plugin c’est donc complètement inutile et source de problème

Dans tes essais profite en pour récupérer les log de home bridge que l’on puisse comprendre les interactions entre les deux plugin

Mais si je désactive le démon je n’ai plus de log