KiwiHC16 / Abeille

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

Xiaomi single switch timeout #2572

Closed Xav-74 closed 11 months ago

Xav-74 commented 1 year ago

Originally posted by @tcharp38 in https://github.com/KiwiHC16/Abeille/issues/2532#issuecomment-1383154177

Hello @tcharp38

Je me permets de déterrer ce sujet car je rencontre exactement le même souci avec le modèle Xiaomi Single switch suivant : image

Je pensais au départ que cela venait de ma pile qui était un peu faiblarde mais suite au remplacement même souci. J'ai tenté le bouton réparer mais sans succès également.

J'ai passé le module en surveillance ce matin : voici les logs

0000|[2023-04-11 11:14:07] >>> Démarrage du démon de monitoring
0001|[2023-04-11 11:14:07] Equipement à surveiller: [Garage][AB Interrupteur Garage], C023-00158D0005471E6F
0002|[2023-04-11 11:19:25] <= 8002/Data indication, Status=00, ProfId=0104, ClustId=0006, SrcEP=01, DstEP=01, SrcAddrMode=02, SrcAddr=C023, DstAddrMode=02, DstAddr=0000
0003|[2023-04-11 11:19:25] <=   FCF=18/General/Serv->Cli, SQN=09, cmd=0A/Report attributes
0004|[2023-04-11 11:19:25] <=   AttrId=0000/OnOff, AttrType=10, ValueHex=00 => 0
0005|[2023-04-11 11:19:25] <= 8002/Data indication, Status=00, ProfId=0104, ClustId=0006, SrcEP=01, DstEP=01, SrcAddrMode=02, SrcAddr=C023, DstAddrMode=02, DstAddr=0000
0006|[2023-04-11 11:19:25] <=   FCF=18/General/Serv->Cli, SQN=0A, cmd=0A/Report attributes
0007|[2023-04-11 11:19:25] <=   AttrId=0000/OnOff, AttrType=10, ValueHex=01 => 1
0008|[2023-04-11 13:12:58] <= 8002/Data indication, Status=00, ProfId=0104, ClustId=0000, SrcEP=01, DstEP=01, SrcAddrMode=02, SrcAddr=C023, DstAddrMode=02, DstAddr=0000
0009|[2023-04-11 13:12:58] <=   FCF=1C/General/Serv->Cli/ManufCode=1234, SQN=0B, cmd=0A/Report attributes
0010|[2023-04-11 13:13:04] <= 8011/APS data ACK, Status=A7/NO_ACK, Addr=C023, EP=01, ClustId=0000, SQNAPS=8D
0011|[2023-04-11 13:13:05] <= 8702/APS data confirm fail, Status=F0/MAC_ENUM_TRANSACTION_EXPIRED, SrcEP=01, DstEP=01, AddrMode=02, Addr=C023, SQNAPS=8D, NPDU=00, APDU=00
0012|[2023-04-11 14:13:10] <= 8002/Data indication, Status=00, ProfId=0104, ClustId=0000, SrcEP=01, DstEP=01, SrcAddrMode=02, SrcAddr=C023, DstAddrMode=02, DstAddr=0000
0013|[2023-04-11 14:13:10] <=   FCF=1C/General/Serv->Cli/ManufCode=1234, SQN=0C, cmd=0A/Report attributes
0014|[2023-04-11 14:13:16] <= 8011/APS data ACK, Status=A7/NO_ACK, Addr=C023, EP=01, ClustId=0000, SQNAPS=AC
0015|[2023-04-11 14:13:17] <= 8702/APS data confirm fail, Status=F0/MAC_ENUM_TRANSACTION_EXPIRED, SrcEP=01, DstEP=01, AddrMode=02, Addr=C023, SQNAPS=AC, NPDU=00, APDU=00
0016|[2023-04-11 14:13:38] <= 8002/Data indication, Status=00, ProfId=0104, ClustId=0006, SrcEP=01, DstEP=01, SrcAddrMode=02, SrcAddr=C023, DstAddrMode=02, DstAddr=0000
0017|[2023-04-11 14:13:38] <=   FCF=18/General/Serv->Cli, SQN=0D, cmd=0A/Report attributes
0018|[2023-04-11 14:13:38] <=   AttrId=8000/Unknown-0006-8000, AttrType=20, ValueHex=02 => 2

Réinclusion à 11h13 au cas ou Surveillance à 11h14 Appui une fois à 11h19 Passage en timeout à 13h13 (timeout de 60min) Appui double à 14h13 -> Action OK, plus de timeout

Si tu as besoin d'autres logs, n'hésites pas ! Merci

tcharp38 commented 1 year ago

Salut @Xav-74 Donc il passe en timeout mais est toujours fonctionnel. C'est bien ca ? J'ai besoin du package de logs, pas d'un extrait.

Il y a néanmoins des trucs qui me plaisent pas "Status=A7/NO_ACK"... il semble injoignable par moment. Peut etre as tu changé des choses dans ton reseau, comme enlevé un routeur ?

Xav-74 commented 1 year ago

C'est exactement ca ! Je t'envoie les logs dans l'aprem. Je viens de les repasser à 5000 lignes.

Rien de changé dans mon réseau. Et là pour les tests j'ai posé le bouton à 5m de ma clé.

tcharp38 commented 1 year ago

Vu que c'est un device sur piles, c'est lui qui donne signe de vie et aucun moyen de le contacter en direct.

Peut etre qu'il ne remonte pas tout à fait une info toutes les 60min. Pour ca il faut le laisser faire sans le toucher pendant au moins 1H histoire de voir quand il remonte qqch de lui meme.

Tu suis ?

Xav-74 commented 1 year ago

yes je suis d'accord avec ca ! Mais jamais eu le souci avant janvier ou février 2023

Xav-74 commented 1 year ago

AbeilleLogs-230411.tar.gz

Voici les logs. Derniers appuis à 16h29, passage en timeout à 17h30. A ta dispo si besoin d'autre chose. Merci d'avance

tcharp38 commented 1 year ago

J'ai une piste. A suivre.

Memo: pb de support du type '4C'

[2023-04-11 16:55:08] Abeille1, Type=8002/Data indication, Status=00, ProfId=0104, ClustId=0000, SrcEP=01, DstEP=01, SrcAddrMode=02, SrcAddr=C023, DstAddrMode=02, DstAddr=0000 [2023-04-11 16:55:08] FCF=1C/General/Serv->Cli/ManufCode=1234, SQN=12, cmd=0A/Report attributes [2023-04-11 16:55:08] WARNING: attrSize is unknown for type 4C [2023-04-11 16:55:08] AttrId=FF02, AttrType=4C [2023-04-11 16:55:08] Tag=06, Type=00/nodata SIZE 0

tcharp38 commented 1 year ago

Peux tu decompresser ca dans core/php et redemarrer Abeille ? AbeilleParser-Xiaomi.zip

Tu testes et me file un package de logs.

Xav-74 commented 1 year ago

Et voilà ;)

Copie et redémarrage du démon à 22h06. Le bouton était en timeout. Puis appui double et appui triple 1min après. Je te redis dans 60min.

EDIT : petite erreur de manip de ma part. Nouvelle copie du fichier ce matin à 6h28 puis redémarrage des démons. Tests appuis OK dans la foulée puis test à 6h59. Timeout 1h plus tard.

AbeilleLogs-230412.tar.gz

tcharp38 commented 1 year ago

Oui ben désolé. Il faut que je revoie ma copie :(

Xav-74 commented 1 year ago

Pas de souci ni stress 😜

tcharp38 commented 1 year ago

Nouvel essai avec celui la STP. AbeilleParser-Xiaomi.zip

Ca ne va pas forcement fonctionner mais j'ai besoin des traces qui en decouleront. Merci

Xav-74 commented 1 year ago

Voici les logs.

AbeilleLogs-230412.tar.gz

Installation du fichier et redémarrage démon à 17h38

Merci pour tout

tcharp38 commented 1 year ago

Aucun changement dans les logs. Donc probablement pas avec mon code. Tu l'as bien décompréssé dans core/php ? Celui d'Abeille et pas celui de Jeedom Donc plugins/Abeille/core/php

Xav-74 commented 1 year ago

Oui oui ! Je recommence

Xav-74 commented 1 year ago

Dis moi si c'est mieux ;)

AbeilleLogs-230412.tar.gz

tcharp38 commented 1 year ago

Bah non :(

En fait ce message la n'a plus lieu d'etre. Tu es le seul à avoir cet equipement qui genere ce type de message du coup je peux pas reproduire.

[2023-04-12 23:36:15] Abeille1, Type=8002/Data indication, Status=00, ProfId=0104, ClustId=0000, SrcEP=01, DstEP=01, SrcAddrMode=02, SrcAddr=C023, DstAddrMode=02, DstAddr=0000 [2023-04-12 23:36:15] FCF=1C/General/Serv->Cli/ManufCode=1234, SQN=43, cmd=0A/Report attributes [2023-04-12 23:36:15] AttrId=FF02, AttrType=4C [2023-04-12 23:36:15] Tag=10, Type=01/unk SIZE 0

Mais je vais revoir ma copie et modifier la trace pour etre sur que c'est le bon fichier que tu utilises.

Xav-74 commented 1 year ago

Bizarre ca ! Je suis sur de mon coup pourtant :(

tcharp38 commented 1 year ago

Suis con. Tiens prends ce modele STP et fais une "mise à jour" via la page avancé. Ensuite tu peux observer cette fameuse trace et me filer les logs si tu vois que ca change

sensor_switch.zip

Xav-74 commented 1 year ago

Voici le fichier ! Je regarderai en détail ce soir. Mise à jour du modèle à 11h34. Test double puis triple appui dans la foulée

AbeilleLogs-230413.tar.gz

Merci

tcharp38 commented 1 year ago

C'est mieux.

Nouvelle version AbeilleParser-Xiaomi.zip

Désolé tu vas en avoir qq unes je le crains.

Xav-74 commented 1 year ago

C'est toi qui fait tout le travail :)

Installation à 17h. Interrogation du module à 17h35 -> le timeout à disparu !!! Par contre pas de changement dans les messages du log monitoring

AbeilleLogs-230413.tar.gz

tcharp38 commented 1 year ago

Oui cool ca avance. Je vois du changement dans les traces.

tcharp38 commented 1 year ago

Nouvelle version pour toi. AbeilleParser-Xiaomi.zip

Xav-74 commented 1 year ago

Et voilà ! AbeilleLogs-230413.tar.gz

tcharp38 commented 1 year ago

Hello. Voila un nouveau modele pour lequel il faut faire une mise à jour. sensor_switch.zip

Un update de code pour core/php AbeilleParser-Xiaomi.zip

Et une update pour core/class AbeilleParser.class.php.zip

Bien redemarrer Abeille, faire la maj et.. retest. J'espere que cette fois c est bon pour ce cas.

Xav-74 commented 1 year ago

Alors ! Avant cette manip et depuis la dernière mise à jour hier soir, le module n'était pas repassé en timeout.

Copie des fichiers, redémarrage du démon et mise à jour de l'eqt à 12h14. Test double et triple apuis enchainé -> OK Par contre 1h après, passage en timeout ! Test appui simple OK à 13h21 -> plus de timeout

Autre info (qui n'a peut-être rien à voir) ma batterie est passée de 100% à 0% hier. Je ne me rappelle plus si lors de mes tests j'avais remis l'ancienne pile. Je retesterai plus tard.

Merci encore

AbeilleLogs-230414.tar.gz

tcharp38 commented 1 year ago

Désolé pour ta pile.. effet de bord. Elle n'est pas morte.

Voila un nouveau code mais tu gardes les autres modifiés AbeilleParser-Xiaomi.zip

Xav-74 commented 1 year ago

AbeilleLogs-230414.tar.gz

Modif faites à 14h45. Tests appuis OK dans la foulée. Interrogation à 15h19 -> pas de timeout ! Ca semble OK Et la pile est repassée à 100% ;)

Message idem dans le log Monitor mais sans conséquence

0048|[2023-04-14 15:19:28] <= 8002/Data indication, Status=00, ProfId=0104, ClustId=0000, SrcEP=01, DstEP=01, SrcAddrMode=02, SrcAddr=C023, DstAddrMode=02, DstAddr=0000
0049|[2023-04-14 15:19:28] <=   FCF=1C/General/Serv->Cli/ManufCode=1234, SQN=79, cmd=0A/Report attributes
0050|[2023-04-14 15:19:34] <= 8011/APS data ACK, Status=A7/NO_ACK, Addr=C023, EP=01, ClustId=0000, SQNAPS=DE
0051|[2023-04-14 15:19:35] <= 8702/APS data confirm fail, Status=F0/MAC_ENUM_TRANSACTION_EXPIRED, SrcEP=01, DstEP=01, AddrMode=02, Addr=C023, SQNAPS=DE, NPDU=00, APDU=00
tcharp38 commented 1 year ago

Je te laisse confirmer d'ici demain.

Je ne comprends pas d ou vient ce "NO_ACK" mais tu as beaucoup d'erreurs du type 87

[2023-04-14 15:20:05] Abeille1, Type=9999/Extended error, ExtStatus=87, NPDU=00, APDU=00 [2023-04-14 15:20:05] Abeille1, Type=9999/Extended error, ExtStatus=87, NPDU=00, APDU=00

0x87 There are no free entries in the extended address table.

Ce qui semble dire que qqch est saturé sur ta Zigate mais hors sujet.

Xav-74 commented 1 year ago

ok ca marche merci ! Je te tiens au jus après 24h ;)

Xav-74 commented 1 year ago

Je clos le sujet, aucun souci depuis vendredi ;) Merci pour tout !

Xav

Xav-74 commented 11 months ago

Hello @tcharp38

Petite question, j'ai de nouveau le souci depuis qq jours. Tu as fait des modifs ?

Merci

Xav

tcharp38 commented 11 months ago

Salut @Xav-74 Des modifs il y en a un paquet oui mais j'ai besoin d'un package de logs pour creuser le point. Je réouvre. Le souci est donc que ton equipement est en timeout ?

Xav-74 commented 11 months ago

Hello,

J'ai mis à jour avec la dernière beta. Pour le moment cela semble OK. Je mets en surveillance et je te redis.

Xav-74 commented 11 months ago

Le bouton vient de repasser en timeout. Voici tous les logs. Pour info, je l'avais mis en surveillance donc tu devrais avoir des infos précieuses dans le log monitor ;)

AbeilleLogs-231207.tar.gz

tcharp38 commented 11 months ago

A premiere vue tu as des erreurs x87

[2023-12-07 11:25:36] Abeille1, Type=9999/Extended error, ExtStatus=87, NPDU=00, APDU=00

qui d'apres Zigate

0x87 There are no free entries in the extended address table. The extended address table is configured in the config editor

Autrement dit ta Zigate est pleine.

Ceci étant tu m'as fait pointer sur un bug qui doit expliquer des timeouts pas attendus. J'ai corrigé et c'est en test pour la beta de demain.

Xav-74 commented 11 months ago

Merci pour ton aide ! Et il y a qq chose à faire pour vider la table car je n'ai qu'une quarantaine d'équipements ? Sans faire un RAZ complet :)

tcharp38 commented 11 months ago

A vrai dire tu es en version 0003-0323 donc "legacy". La version "OPDM" est celle qui devrait etre utilisée (donc 0004-0323) car plus propre et permet de supporter un plus grand nombre de devices.

MAIS à l'heure actuelle il n'y a aucune solution pour passer de l'un à l'autre sans devoir tout réappairer. Tres ennuyeux pour les equipements qu'on ne peut pas atteindre pour les forcer à se reinclure.

Tu vois la situation ?

Xav-74 commented 11 months ago

Je basculerai surement en version OPDM. Je n'ai pas d'équipements hors d'atteinte. C'est seulement mes volets et BSO qui me font peur :D

Bon je teste la beta demain et je te tiens au jus. Merci encore

Xav-74 commented 11 months ago

Petite question : J'ai régulièrement le messager : La Zigate 1 semble plantée mais impossible de lui faire un cycle OFF/ON. Tu penses que cela vient aussi du fait qu'elle semble pleine ?

tcharp38 commented 11 months ago

Salut

Je basculerai surement en version OPDM. Je n'ai pas d'équipements hors d'atteinte. C'est seulement mes volets et BSO qui me font peur :D

Les volets ? Je te suggere un truc c'est de valider la procedure d'inclusion avant. Tu retentes une inclusion et tu vois comment ca se passe. Note que tu n'as pas besoin, voir meme tu dois eviter, de supprimer ton equipement de Jeedom.

La Zigate 1 semble plantée mais impossible de lui faire un cycle OFF/ON. Tu penses que cela vient aussi du fait qu'elle semble pleine ?

Normalement si il n'y a pas de reponse de la Zigate depuis plus de 2min, on tente un reset USB. Et si ce reset ne fonctionne pas, c'est la que tu as ce message. Mais je vais regarder de + pres. J'ai un doute sur le fait qu'elle soit reellement plantée.

Xav-74 commented 11 months ago

Hello

Les volets ? Je te suggere un truc c'est de valider la procedure d'inclusion avant. Tu retentes une inclusion et tu vois comment ca se passe. Note que tu n'as pas besoin, voir meme tu dois eviter, de supprimer ton equipement de Jeedom.

Je maitrise plutôt pas mal la partie Profalux :) Le seul truc c'est que lors du dernier RAZ, et donc réinclusion j'en ai 5/11 pour lesquels j'ai du faire un reset via le fil élec. Et évidemment c'était les moins accessibles :) Par contre j'avais l'habitude de faire un reset avant l'inclusion (5x bouton R). Si je suis ta méthode, je n'ai pas besoin ? Je refais juste une inclusion avec 1x R ? Comme si il était parti en timeout ?

tcharp38 commented 11 months ago

Justement, si tu arrives au reset electrique c'est que la procedure n'est pas bonne. Tu as des volets de quelle année ? Tu as un lien vers la bonne notice chez Profalux ?

Xav-74 commented 11 months ago

J'ai des volets de 2019. J'ai bien la bonne procédure. Ce que j'ai constaté chez moi, c'est que lors d'un reset avant réinclusion (5x R), fréquemment la tlc perd son lien avec le volet et ce dernier se bloque. Après je n'ai peut-être pas besoin dans ce cas de faire le 5x R

tcharp38 commented 11 months ago

c est ce que je crois. Pour moi la procédure est la suivante

image

Je vais tacher un de ces jours de confirmer ca chez moi

Xav-74 commented 11 months ago

OK je vais regarder pour migrer en version OPDM en début d'année du coup ;)

tcharp38 commented 11 months ago

Des news cote timeout ?

Xav-74 commented 11 months ago

Pour le moment tout est OK. Pas de timeout depuis hier 12h

Xav-74 commented 11 months ago

Autre question : qd je veux afficher le réseau, je n'ai plus que la ruche et 1 équipement ? Cela vient aussi du fait de la clé pleine à ton avis ? Si besoin, j'ouvrirais un autre sujet.

tcharp38 commented 11 months ago

Ha non je vois pas le rapport. Tu me files un package de logs recent ?