KiwiHC16 / Abeille

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

Pb inter simple rond xiaomi #2188

Closed Jake309 closed 1 year ago

Jake309 commented 2 years ago

Salutation,

J'ai un pb avec mes inter rond xiaomi. C'est déjà le 2eme qui quitte le réseau en 3 semaines et qui est donc désactivé. Sauf qu'ils n'y reviennent plus et que l'inclusion ne fonctionne pas. Quand je maintiens leur bouton sans etre en mode inclusion, j'ai bien le message qu'il quitte le réseau et sont désactivés. Mais quand je veux refaire une inclusion, rien du tout. pas de "réanoncé mise à jour", pas de réactivation. Dans le network graph ils sont gris. Vous avez déjà eu ce bug ? En stable ou en béta meme effet. et pareil sur la version précédente.

Merci

tcharp38 commented 2 years ago

Salut @Jake309 Peux tu etre sur d'etre en mode debug et me filer le package de logs (page support/telecharger tout) avec l'heure de l'inclusion ?

Jake309 commented 2 years ago

Salut @tcharp38 ! oui, jy ai pensé apres... jai fais ca vite pour pas te faire plus attendre, jqi pas trop analysé, excuses moi. je ne vois rien dans le parser, je lai fais apres la maj de cette semaine.

dans le cmd, jai remarque pas mal de ligne : [2021-11-16` 22:54:26] ERROR: Unexpected command 'getEtat' je ne sais pas sil y a un lien avec mon pb

jai 2 nouveau inter qui arrivent, on verra linclusion de ceux la ce que ca dit

merci ! bonne nuit

AbeilleLogs-211116.tar.gz AbeilleParser.log AbeilleCmd.log

tcharp38 commented 2 years ago

Tu es bien sur la derniere stable ? Je suis surpris par le contenu des logs. D'autre part ils sont trop trop courts. Je vois le debut d'inclusion de ton periph puis.. plus rien.

Reset sur le meme periph, refait une inclusion et file moi le package au bout d'1 à 2 mins apres l'inclusion. Ha et donne moi l'adresse du périph pour etre sur. Merci

Je vais regarder ce getEtat. Normalement ca n'a plus lieu d etre. Vieux pb.

Jake309 commented 2 years ago

Salut, Voici un log plus long, j'ai tenté 2 fois de l'inclure dans ces log. AbeilleLogs-211117.tar.gz

Nom logiqueAbeille1/682E Adresse (courte/IEEE)682E / 00158D00027C92A0

On le vois dans le parser, sans savoir comment interpréter ca. est ce qu'il ne faudrait pas le supprimer de jeedom pour le réinclure ?

tcharp38 commented 2 years ago

Tres etrange

[2021-11-16 22:54:26] Abeille1, Type=8048/Leave indication, ExtAddr=00158D00027C92A0, RejoinStatus=00 [2021-11-16 22:54:27] Abeille1, Type=004d/Device announce, Addr=A603, ExtAddr=00158D00027C92A0, MACCapa=80, Rejoin=00 [2021-11-16 22:54:27] EQ already known: Addr updated from 682E to A603 [2021-11-16 22:54:27] EQ already known: Status=idle, since=1637099650, time=1637099667 [2021-11-16 22:54:27] Requesting active end points list [2021-11-16 22:54:27] NXP based device. Requesting modelIdentifier from EP 01

On voit qu'il quitte le reseau (leave) avant de se reannoncer. Jusque la normal. Puis on lui demande qq infos dont son nom, et la ... il ne repond plus.

Peux tu tenter de changer la pile pour voir si ca n'est pas la cause ou l'as tu deja fait ?

Autre chose, sur des autres inter, page equipement/avancé, peux tu me confirmer l'identifiant Zigbee/JSON ?

Jake309 commented 2 years ago

Je te fais ca en début de soirée en rentrant.

Il faut que je fouille pour retrouvé mon module de ruban led RGB d'une autre Issue, tu te souviens ? Je me demande si mon "il ne marche plus" ne viendrait pas d'un probleme d'intégration similaire, ca serait cool de vérifier, j'espère ne pas l'avoir brulé de rage, je m'occupe de ça ce soir aussi, comme ça je ferai l'intégration des 2 inter avec pile neuve (j'avais déjà testé) et du module ruban led RGB Idem pour le JSON, je regarde tout ca :)

Jake309 commented 2 years ago

Voila 2 archives, j'ai redémarré le démon entre chaque, pour ca que je te donne les 2. J'ai essayé celui d'hier : 682E et aussi 4B45 Sur le 682E j'ai aussi essayé la commande réinitialiser en dessous de Zigbee/JSON, ca a rien fait. Et le JSON est bon, c'est le même que celui qui fonctionne encore. J'ai tenté aussi de le supprimer de jeedom après quil est quitté le réseau (682E) mais il est pas revenu archive (2)

AbeilleLogs-211118 (1).tar.gz [AbeilleLogs-211118.tar.gz](https://github.com/KiwiHC16/Abeille/files/7565799/AbeilleLogs-211118.tar.gz AbeilleLogs-211118 (2).tar.gz )

Jake309 commented 2 years ago

Prends le dernier, il y a tout, meme ceux des jour précédent

Jake309 commented 2 years ago

[2021-11-18 21:15:03] Abeille1, Type=8702/APS data confirm fail, Status=D4/ZPS_NWK_ENUM_FRAME_IS_BUFFERED, SrcEP=01, DestEP=01, AddrMode=02, Addr=682E, SQN=C3 [2021-11-18 21:30:31] Abeille1, Type=8011/APS data ACK, Status=A7, Addr=682E, EP=01, ClustId=0000 [2021-11-18 21:30:31] ACK failed: [Bureau][Inter]. APS_ACK set to 0 [2021-11-18 21:30:35] Abeille1, Type=8701/Route discovery confirm, MACStatus=00 (ZPS_EVENT_NONE->), NwkStatus=D0 (ZPS_NWK_ENUM_ROUTE_DISCOVERY_FAILED->Attempt at route discovery has failed due to any reason except lack of table space), Addr=682E [2021-11-18 21:48:50] EQ already known: Addr updated from 682E to 8B9D

Sur la derniere ligne, on le voit tout le temps mettre a jour l'adresse, masi elle ne change jamasi, c'est normale ?

tcharp38 commented 2 years ago

A chaque "annonce" (device announce), l'adresse courte peut changer donc oui normal.

Ceci dit, je ne vois rien de nouveau. Il ne repond pas juste apres son annonce. As tu changé une pile pour essayer ou s 'agit il de nouveaux inters avec pile neuve ?

Et j'ai toujours besoin de l'info suivante STP

Autre chose, sur des autres inter, page equipement/avancé, peux tu me confirmer l'identifiant Zigbee/JSON ?

Jake309 commented 2 years ago

Excuse moi, je pensais que tu voulais juste que je vérifie que c'était le meme: Identifiant JSONsensor_switch

La pile a été changé oui, ya pas eu d'évolution.

Mes nouveaux inter devraient arriver semaine prochaine, on pourra tester une inclusion de nouvels équipements comme ca. Mais bon, je pense pas quil soit mort, car ils repondent, ils sortent du réseau etc. A moins que ça soit plus en profondeur.

tcharp38 commented 2 years ago

Je ne comprends pas pourquoi il ne repond plus. Est il loin de la box et pourrait passer par un routeur avant d'ateindre la zigate ?

D'autre part le modele est bien WXKG01LM ?

Jake309 commented 2 years ago

Non, il est a 2m, d'ailleurs quand il clignote en intégration, je vois la led de la zigate qui réagie.

oui, c'est bien un WXKG01LM, j'attendais de rentrer pour vérifier.

tcharp38 commented 2 years ago

Tu peux me résumer la situation ? Tu as combien de capteurs de ce type ? Combien qui ne repondent plus ? Y a t'il une particularité ?

Jake309 commented 2 years ago

Alors, J'ai 3 interrupteurs rond WXKG01LM, sur les 3, 2 n'ont plus fonctionné à 1 semaine d'intervalle et impossible de les faire fonctionner.

Aujourd'hui, j'ai reçu 2 nouveau interrupteurs, chouette, en attendant de solutionner le pb, je vais pouvoir remettre mes interr. Malheureusement non, même des interrupteurs jamais intégré à mon jeedom ne s'ajoute pas...

Je t'ai mis les log avec la tentative d'ajout des 2 nouveaux. Je commence à me dire que c'est un pb software et pas d'inter.

AbeilleLogs-211120 (1).tar.gz

tcharp38 commented 2 years ago

Oui ca sent le pb soft mais plus precisement un truc que ce device "non standard" n'aime pas. Mais derniere question avant de te faire faire d autres essais. Tu arrives à inclure autre chose que ce type de device ?

Jake309 commented 2 years ago

Oui jai réussi des inclusion. Notamment mon module rgb de tuya

tcharp38 commented 2 years ago

Ok donc on peut surement exclure un pb de zigate/corruption firmware.

Peux tu modifier le fichier AbeilleParser.class.php (garde l original) Tu commentes les lignes suivantes (// xxxx):

        parserLog('debug', '  Requesting active end points list');
        $this->msgToCmd("Cmd".$net."/0000/ActiveEndPoint", "address=".$addr);

puis sauve, redemarre Abeille, refait une inclusion d'un inter, et file moi les logs.

Attention cette bidouille n'est que temporaire pour tenter de comprendre. Ca ne fonctionnera plus dans quasi toutes les inclusions d'un autre type que ton Xiaomi rond.

Jake309 commented 2 years ago

Alors je ne sais pas vraiment ce que ca change dans le plugin, mais ca a marché. Du coup, j'ai réanimé les 2 et ajouté les 2 nouveau histoire de pas faire ca pour rien

AbeilleLogs-211121.tar.gz

tcharp38 commented 2 years ago

Super et zut ! Je m'explique.

Super car enfin on a une piste. Et zut car ce foutu périph est daubé. Lui demander la liste des "end points" est tout à fait normal. Sauf que ca semble le "planter". Sauf que c'est la procedure propre pour tous les autres devices.

Faut trouver une alternative compatible avec tout le monde, y compris ces devices.

tcharp38 commented 2 years ago

Autre tentative: inverser l'interrogation des endpoints avec la lecture du "modelIdentifier". En gros tache d'avoir l'ordre suivant

        $nxp = (substr($ieee, 0, 9) == "00158D000") ? true : false;
        if ($nxp) {
            parserLog('debug', '  NXP based device. Requesting modelIdentifier from EP 01');
            $this->msgToCmd("Cmd".$net."/".$addr."/readAttribute", "ep=01&clustId=0000&attrId=0005");
        }

puis

        parserLog('debug', '  Requesting active end points list');
        $this->msgToCmd("Cmd".$net."/0000/ActiveEndPoint", "address=".$addr);

Redemarre, refait une inclusion et file moi le package de logs. Merci

Jake309 commented 2 years ago

PHP Parse error: syntax error, unexpected 'parserLog' (T_STRING), expecting function (T_FUNCTION) or const (T_CONST) in /var/www/html/plugins/Abeille/core/class/AbeilleParser.class.php on line 487

Ca correspond à la ligne : parserLog('debug', ' Requesting active end points list'); quand je la mets après le block du dessus. ce qui revient à les inverser dans le fichier de conf

tcharp38 commented 2 years ago

Aucune raison que l'inversion provoque ca. Du coup je soupconne une erreur de syntaxe. Ha j'ai une idée. Tu l'as peut etre mis juste apres l'accolade de fin de la fonction.

Bref, test avec ce fichier AbeilleParser.class.php.zip J'ai commenté les lignes 477/78 pour les deplacer en 487/88

Jake309 commented 2 years ago

Avec le tiens moins d'erreur. 2 inclusion faites avec l'habituel : Nom logiqueAbeille1/186D Adresse (courte/IEEE)186D / 00158D00027C92A0

AbeilleLogs-211126.tar.gz

tcharp38 commented 2 years ago

L'inclusion n'est pas fonctionnelle. Tu n'as rien vu car tu n'avais pas supprimé l'equipement de Jeedom je pense.

Bref, interroger normalement (demande liste des end points), n'est pas possible. Avant ou apres ca bloque les autres requetes. Je sais pas comment gerer ca proprement. Ca impacte du coup TOUS les equipements sur la meme base NXP.

tcharp38 commented 2 years ago

Salut @Jake309 Toujours interessé ou tu as basculé sur une autre solution ?

Jake309 commented 2 years ago

salut @tcharp38 Bah écoute, le truc que tu avais modifié fonctionnait. On va vite savoir, je vais devoir réinitialiser ma zigate qui veut plus rien intégrer (l'hypothèse du orvibo qui a rempli la table). J'ai mes volets qui arrive cette semaine, il faut que j'intègre mes interrupteur celiane with netatmo. Je te ferai un retour. Je vais essayer de mettre ma zigate V1 sur jeedom pour intégrer le orvibo dessus.

tcharp38 commented 2 years ago

Des news ?

Jake309 commented 2 years ago

Pas eu de zigate la semaine dernière. Mais elle est dans la voiture et arrive samedi :)

tcharp38 commented 1 year ago

Salut @Jake309 Qu'en est il de ce sujet ?

Jake309 commented 1 year ago

Salut @tcharp38 Plus de problème de mon coté. toujours en Beta.

tcharp38 commented 1 year ago

Ok, je clos ce sujet alors. A reouvrir si pbs.