KiwiHC16 / Abeille

Abeille pour Jeedom (Gateway ZiGate)
GNU Affero General Public License v3.0
60 stars 52 forks source link

Problème avec module VR TS130F__TZ3000_4uuaja4a #2719

Open Kenderv opened 3 months ago

Kenderv commented 3 months ago

Bonjour @tcharp38 Me voilà de retour avec ces modules qui n'ont jamais vraiment fonctionné correctement. A vrai dire je me demande si cela vient des modules ou des VR Somfy avec programmation mécanique du réglage des butées. Bref. Mon problème aujourd'hui concerne 2 modules identiques mais dont l'identifiant zigbee est différent dans la configuration : image Le premier _TZ3000_4uuaja4a fonctionne à peu près correctement Le second _TZ3210_dwytrmda ne réponds plus aux commandes Le modèle d'équipement est identique pour les 2 et je ne sais pas te dire si lors de l'inclusion il plus de 6 mois les identifiants étaient identiques ou pas. Ma question : est-il possible de faire en sorte que les 2 identifiants numériques soit identiques sans refaire une inclusion à l'aide d'un de ces boutons ? image Merci de ton aide

tcharp38 commented 3 months ago

Salut. Je suis hors connexion pour 3 semaines mais comme je ne conduis pas tout le temps au moins je peux essayer de répondre :)

Signature différente donc firmware different même si aspect physique identique. C'est la joie des merdes Tuya.

Ceci dit pour reconfigurer un équipement

Kenderv commented 3 months ago

Merci de ta réponse. J'ai fait un reinit mais cela ne change rien. Par contre si je bouge le Level j'obtiens ce message : ERREUR: [99-Volet roulants][VR Baie CH2][Set level]: Commande '0102-01-' inconnue. Et à chaque fois que je bouge le curseur de niveau du volet j'ai

`0000|[2024-07-12 21:56:41] ERROR: Cmd 'setTemperature': Paramètre 'slider' vide !

0001|[2024-07-12 21:56:42] ERROR: Cmd 'setTemperature': Paramètre 'slider' vide !

0002|[2024-07-12 21:56:43] ERROR: Cmd 'setTemperature': Paramètre 'slider' vide !`

Aucune urgence, prends bien tes 3 semaines de repos, on verra ça à ton retour. Bonnes vacances

tcharp38 commented 3 months ago

Tu es sur la dernière bêta ?

Kenderv commented 3 months ago

Non, j'étais sur la 2024-07-05, Je suis passé sur la 2024-07-11 2024-07-15 09:01:02 Abeille ERREUR: [99-Volet roulants][VR Baie CH2][Set level]: Commande '0102-01-' inconnue et j'ai toujours le même erreur après avoir vidé le cache et relancé le demon.

tcharp38 commented 3 months ago

Refais une reinit de l equipment qui génère cette erreur pour voir

Kenderv commented 3 months ago

Toujours la même erreur après reinit et relance demon (probablement inutile). Si je lance une découverte je n'ai que cela image et si je clique sur les end points il ne se passe rien

tcharp38 commented 3 months ago

Il faudra que tu me files un package de logs que je regarde ça en rentrant.

Kenderv commented 3 months ago

OK, à ton retour dis-moi ce qui t'intéresse comme manip (reinit, setlevel ou autres). Je passerai en mode debug et je t'enverrai le paquet de logs. Bonnes vacances. A Nantes le temps n'est pas exceptionnel... ça permet d'amortir les imperméables

tcharp38 commented 2 months ago

Salut I'm back !

Peux tu faire un "set level" qui declenche l'erreur, noter l'heure, et me filer le package de logs ?

Kenderv commented 2 months ago

Salut et bonne reprise. J'espère que tu as pu te sortir Abeille de la tête. Voilà le fichier et le set level a eu lieu à 14:57:26 image

AbeilleLogs-240730.tar.gz Merci

tcharp38 commented 2 months ago

Tiens, a décompresser dans Abeille/core/class AbeilleCmd.class.php.zip

puis redemarrer Abeille refaire le test

Kenderv commented 2 months ago

Je n'ai plus le message d'erreur, par contre lorsque je veux remettre le set level à 100 il reste à 25% AbeilleLogs-240730.tar.gz Si je fais un up le volet remonte bien. C'est seulement le set level qui semble ne plus fonctionner

tcharp38 commented 2 months ago

Salut. Le #2526 etait le sujet original. D'apres ce sujet on en avait conclu que la valeur du "set level" devait etre "value * calibrationTime / 100" Ton calibrationTime est à 25, donc comportement normal. Du coup je remets en doute ce qu'on avait mis en place.

Kenderv commented 2 months ago

Salut, Excuse-moi pour le délai de réponse, j'étais absent. Pour moi 25 est la durée de Up/Down du VR. SL est le niveau auquel je veux positionner le VR. Si je veux positionner le volet à mi-hauteur il faut qu'il fonctionne pendant 12,5s. Donc avec le curseur je donne un SL à 50 (%). Est-ce qu'on raisonne de la même façon mais avec des mots différents ? Merci

Kenderv commented 2 months ago

Hors sujet, je suis en train de tester un peu Home Assistant avec une Zigate V2. Es-tu concerné en cas d'anomalie ? Merci

tcharp38 commented 2 months ago

Pour HA, je pense que le pilote de la Zigate est basé sur "zigpy". Dans tous les cas le pilote d'Abeille est completement proprietaire et dédié Abeille. Donc la réponse est "non, pas concerné".

Retour sur le volet peux tu tester le modele suivant, et en particulier "Calibration". TS130F__TZ3000_4uuaja4a.zip

Je m attends à ce que ca declenche une calibration auto. Qu'est ce que ca dit ? Et donne moi les logs STP.

Kenderv commented 2 months ago

Bon, décompression dans Abeille/core/config/devices/[TS130F__TZ3000_4uuaja4a, passage en mode debug, réinitialisation de l'équipement. Le volet était à 100%, avec le curseur je passe à 50% le level descend à 15%, je le remonte autour de 90% le volet descend au level 15% à 15:18. Mais en réalité le volet est complètement fermé. AbeilleLogs-240805.tar.gz

tcharp38 commented 2 months ago

Tu n'es pas en mode debug ou alors tu n'as pas redémarré le démon Abeille apres sauvegarde. Donc pas de détail.

General
=======
Date   : 2024/08/05 15:19:55
Logs   : 6000 lines (mode=error)

Une fois changé, peux tu juste tester "Calibration" et me filer le logs, et me dire ce que ca fait ?

Kenderv commented 2 months ago

Le setLevel qui est passé à 15% est sans doute le calcul des 50% sur le calibration time qui est à 30 s. Je vois mal comment sortir de cette m.....

tcharp38 commented 2 months ago

Justement. Ca me parait moi aussi tres merdique. Je veux eviter qu'on soit forcé d entrer un "calibration time". Ca doit etre un resultat automatique.

Calibration fait qqch ?

Kenderv commented 2 months ago

AbeilleLogs-240805.tar.gz Effectivement je n'avais pas relancé le démon, je pensais que le fait d'avoir coché la case Relancer le démon le faisait. La calibration peut prendre 3 valeurs Aucun, On, Off. Je l'ai passé à On. Je ne sais pas très bien à quoi ça sert. Est-ce toi qui fait le calcul de 50% sur le CT pour passer le SL à 15% (ou 15s si le CT est à 30s). J'ai refait un test VR à 100%, curseur SL à 50% -> Level passe à 15%. Puis curseur SL à 100% -> Level passe à 30% (ou 30s ?).

tcharp38 commented 2 months ago

Côté logs.. je suis en tran d'essayer de mettre en place une solution qui evite de relancer le démon. J'ai tres souvent ce souci.

Coté calibration.. ca a un effet sur le volet ? Je devine que rien ne se passe n'est ce pas ?

Le CT est pour moi en secondes et non pas en %. Et la valeur qui remonte du module est * 10 Pas d'accord avec ca ?

Le SL lui utilise le CT avec la formule ""#value#*#CT#/100"

On en etait arrivé à cette conclusion. Maintenant il est evident que qqch est faux

Kenderv commented 2 months ago

Salut, Effectivement Calibration ne semble avoir aucun effet. "Le SL lui utilise le CT avec la formule ""#value#*#CT#/100"" Si 50% 30s résultat = 15s qui est un temps de fonctionnement mais si on remet le SL à 100% (ouverture totale) on fait 100% 30s ce qui donne un SL à 30 alors qu'on devrait avoir 100. Ce n'est donc pas la valeur de SL qu'il faut utiliser. Comment sont fait les calculs pour d'autres modules ? La position du VR est-elle conservée quelque part dans un cluster ou autre .

Kenderv commented 2 months ago

Je raisonne en terme de temps de fonction fonctionnement (TF) et en supposant qu'on garde la position (P) quelque part. P= 100 SL =50 TF = (100-50)%30s = 15s P= 50 SL = 70 TF = (70-50)%30s = 6s P= 70 SL = 20 TF = (70 -20)%30s = 15s P= 20 SL = 0 TF = (20-0)% 30s = 6s P= 0 SL =100 TF=(100-0)% *30s = 30s ce qui fait remonter le volet complètement

Dis-moi si je déconne ou si c'est une piste. Merci Quand le VR est ouvert à 50% et qu'on fait un Up qu'est ce qui se passe ? On utilise le CT à 100% et se sont les positionnement des butées d'arrêt mécaniques qui arrêtent le mouvement du VR ? Idem pour un Down depuis une position à 50% ?

tcharp38 commented 2 months ago

Deja pour les autres modules, on ne controle heureusement rarement en "temps". C'est juste du non sens car le temps change entre montée et descente, ou le moteur fatigue et le temps d ouverture se rallonge.

Bref un bon module est un module qui prend un %. Et le % n'est valide qu'une fois que tu as calibré tes volets (en gros que le module sait ou il en est par rapport aux butées).

Apres reflexion ma formule en place ne peut qu etre fausse et ta derniere proposition me semble bien mieux. Je vais m'y pencher.

Mais peux tu faire un "calibrage ON" et me filer les logs ? Je ne comprends pas pourquoi cette fonction existe et ne fait rien. Elle est implementée aussi sur d'autres systemes d'ou j'ai pris mes infos.

Kenderv commented 2 months ago

AbeilleLogs-240806.tar.gz Au départ, calibrage Aucun puis séquence On puis Off puis Aucun puis On puis Off puis Aucun.

tcharp38 commented 2 months ago

Ok je viens de retrouver un message qu'on avait echangé sur #2464

Une des procedures qu'on trouve sur le net est la suivante:

Launch the "down_close (id: 0x0001)" command
Once closed launch the "stop (id: 0x0002)" command
Activate calibration mode by setting "0" to the zigbee attribute
Launch the "up_open (id: 0x0000)" command
Once opened, launch the "stop (id: 0x0002)" command
Launch the "down_close (id: 0x0001)" command
Once closed launch the "stop (id: 0x0002)" command
desactivate calibration mode by setting "1" to the zigbee attribute

Autrement dit, au lieu d'utiliser "calibration time" tu devrait pouvoir suivre la procedure ci dessus. C est possible ?

Kenderv commented 2 months ago

Bon, j'ai fais la manip comme suit : VR Down (2 fois parce que le SL ne diminuait pas et je croyais que le Down ne fonctionnait plus) , Stop, Calibration On, VR Up, Stop, VR Down, Stop. Fin. Ensuite j'ai arr^té le Debug (à tort) et j'ai mis le SL à 49% Le VR s'est ouvert mais le SL et le VR sont restés à 9%. Si tu veux d'autres tests, c'est OK AbeilleLogs-240806.tar.gz

tcharp38 commented 2 months ago

Pas sur de comprendre tout ce que tu as fait mais le but etait de voir si la procedure de calibration remplacait le "set calibration time". Du coup le CT resultat te semble correct ?

Kenderv commented 2 months ago

Le CT est passé à 20s ce qui n'est pas suffisant. Je refais un test.

Kenderv commented 2 months ago

J'ai refait un test avec chrono. Le CT est modifié et passé à 25s ce qui me paraît correct. Donc la procédure semble bien fonctionner et donner un résultat correct. Par contre le fonctionnement du VR une fois cette procédure effectuée n'est pas correct. Si je passe le Level à 50 le VR se ferme complètement et le Level affiche 12% AbeilleLogs-240806.tar.gz

tcharp38 commented 2 months ago

Ok donc on a maintenant une procedure de calibrage qui donne un CT correct.

As tu des boutons sur ton module ? Si oui je voudrais comprendre les valeurs sur "Level" aux extremités. Et pour toi le "level" est une valeur dans quelle plage et quelle unité ?

Kenderv commented 2 months ago

Non, pas de bouton sur le module, juste 1 pour l'appairage

tcharp38 commented 2 months ago

Ha meme pas possible d'en cabler un ? Donc tout se fait 'a distance' ?!

Kenderv commented 2 months ago

Je n'ai pas bien compris ta question précédente. Si il y a bien un interrupteur sur le module.

tcharp38 commented 2 months ago

Quand j utilise ce type de module, je connecte toujours des inter physiques pour ne pas dépendre de la box. Si le Zigbee tombe.. ca reste utilisable. Bref avec ces inters on aurait pu voir les limites de "Level"

Kenderv commented 2 months ago

https://github.com/user-attachments/assets/668d0a9c-c04a-4d70-bc6c-2d6c62fe1fe1 Voici ce que ça donne

tcharp38 commented 2 months ago

Genial cette idée de capture video.

Mais tu n'as pas compris. Tout ce que tu fais avec Jeedom ne nous donne pas les limites reelles car on applique une formule qui est forcement fausse. D'ou l'idée de le faire avec les boutons physiques du module si il y en avait.

Tu n'as pas un de ces modules en rab par hasard ? J'aime pas faire ça mais tu pourrais me l'envoyer que je fasse mes essais et conclusions.

Kenderv commented 2 months ago

Je crois qu'on ne ne comprend pas. Mon Vr est bien connecté a un interrupteur de telle sorte que si jeedom ne fonctionne pas je puisse ouvrir ou fermer le volet. C'est un interrupteur à 3 positions Up, Down et Stop. Par contre, je n'ai pas de module en rab, ils sont tous installés. On peut donc faire des tests avec le bouton.

tcharp38 commented 2 months ago

Haaa ok. Je veux savoir quelles sont les limites de "Level" quand tu joues avec le bouton physique. Et aussi ce que tu en comprends. C'est un temps ? un % de ce qui a été calibré ? Autre ?

Kenderv commented 2 months ago

Je suis parti d'un VR ouvert à 100% mais avec un level à 20% que je n'arrive pas à modifier, ni avec le curseur ni avec le Up ou Down de Jeedom et j'a fait un descente et une montée complète depuis l'interrupteur. Voilà le résultat qui est totalement inattendu. Le VR descend et remonte correctement mais le level déconne complètement. J'ai pas de log, j'ai oublié.Je peux refaire si nécessaire

Kenderv commented 2 months ago

Je me suis gouré de vidéo, je te renvoie la bonne. Il faut virer le.txt Video2.wmv.txt Le level reste à 24% quoi que je fasse, impossible de le passer à 0% ou 100% ou autre chose

tcharp38 commented 2 months ago

T es en train de me dire que tu arrives à faire bouger le volet avec le bouton mais le level ne bouge pas du tout ?! Hmmm peut etre que du coup il y a une autre info qui remonte. Ca t ennuie de refaire cette manip et me filer les logs avec l'heure et l'action que tu as fait ?

Kenderv commented 1 month ago

Salut @tcharp38 Désolé de ne pas avoir répondu à ton message, mais je ne suis pas sur place pour faire le test. Je serai de retour la semaine du 23/09. Je reprendrai contact dès que possible. Merci de ta patience.

M4dd4M commented 2 weeks ago

Salut @tcharp38, Je viens de mettre en service je pense le même modèle . Je met ça en PJ. Est-il fonctionnel à ce jour ?

Ce que j'attends : juste les 3 commandes : montée, descente, pause.

discovery-TS130F__TZ3000_qa8s8vca_curtain switch.json

discovery-TS130F__TZ3000_qa8s8vca_curtain switch

EDIT : bon, je ne sais pas si je suis a moitié Hors Sujet, mais il fonctionne correctement en forçant le modèle : --> Loratap-RollerShutterTouchSwitch-v2 ( TS130F__TZ3000_dbpmpco1 )

tcharp38 commented 2 weeks ago

Les VR sont un cauchemar chez Tuya. En particulier... comment fait on la calibration ?

Kenderv commented 2 weeks ago

Bonjour, Je repars ce soir sur le site où se trouve mon VR on va donc pouvoir enfin faire des essais. Pour la calibration j'ai fait comme tu me l'as indiqué dans un message https://github.com/KiwiHC16/Abeille/issues/2719#issuecomment-2270798168 et de mémoire ça avait fonctionné pas mal

tcharp38 commented 2 weeks ago

Salut @Kenderv

Donc tu confirmes que pour le module TS130F__TZ3000_4uuaja4a tu peux calibrer le volet comme suit

Cliquer DOWN
Attendre qu'il soit fermé et cliquer STOP
Activer le mode "calibration"
Cliquer UP
Une fois ouvert, cliquer STOP
Cliquer DOWN
Une fois fermé, cliquer STOP
Desactiver le mode "calibration"

C'est bien ça ?

Kenderv commented 2 weeks ago

Oui, c'est comme cela que j'ai fait pour un volet qui déconnait complètement

tcharp38 commented 2 weeks ago

Ok donc tu es d'accord pour dire que les commandes "Set calibration time" & "Calibration time" n'ont aucun interet ?