Messages corrompus, Linky en mode standard
-
@kenavo si ça refonctionne après que picocom se relance c'est qu'il reconfigure le serial et ça marche et je suis persuadé qu'un truc en arrière plan tente d'ouvrir ou d'utiliser le serial.
Tu peux aussi essayer d'arrêter tous les services inutiltes pour voir
je serais curieux de voir la sortie d'un
ps -aux
-
Bonjour @Charles
Voici les résultats des commandes ps -aux et top :
~ ps -aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.0 424 0 ? Ss 15:19 0:00 /package/admin/s6/command/s6-svscan -d4 -- /run/service root 16 0.0 0.0 208 0 ? S 15:19 0:00 s6-supervise s6-linux-init-shutdownd root 19 0.0 0.0 192 0 ? Ss 15:19 0:00 /package/admin/s6-linux-init/command/s6-linux-init-shutdownd -d3 -c /run/s6/base root 25 0.0 0.0 208 0 ? S 15:19 0:00 s6-supervise s6rc-fdholder root 26 0.0 0.0 208 0 ? S 15:19 0:00 s6-supervise sshd root 27 0.0 0.0 208 0 ? S 15:19 0:00 s6-supervise ttyd root 28 0.0 0.0 208 0 ? S 15:19 0:00 s6-supervise s6rc-oneshot-runner root 36 0.0 0.0 196 0 ? Ss 15:19 0:00 /package/admin/s6/command/s6-ipcserverd -1 -- /package/admin/s6/command/s6-ipcse root 336 0.0 0.1 6796 4864 ? Ss 15:19 0:00 sshd: /usr/sbin/sshd -D -e [listener] 0 of 10-100 startups root 341 0.0 0.0 16256 2816 ? Ssl 15:19 0:00 ttyd -d1 -i hassio --writable -p 62795 tmux -u new -A -s homeassistant zsh -l root 380 0.0 0.0 2528 2048 pts/0 Ss+ 15:20 0:00 tmux -u new -A -s homeassistant zsh -l root 383 0.0 0.0 3016 2180 ? S 15:20 0:00 tmux -u new -A -s homeassistant zsh -l root 387 0.8 0.1 5540 4272 pts/1 Ss 15:20 0:00 zsh -l root 446 0.0 0.0 2748 1792 pts/1 R+ 15:21 0:00 ps -aux
top - 15:23:23 up 4 min, 0 user, load average: 1.29, 1.00, 0.46 Tasks: 14 total, 1 running, 13 sleeping, 0 stopped, 0 zombie %Cpu(s): 16.7 us, 13.3 sy, 0.0 ni, 70.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st MiB Mem : 3989.8 total, 1812.4 free, 971.0 used, 1269.5 buff/cache MiB Swap: 1317.1 total, 1317.1 free, 0.0 used. 3018.8 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1 root 20 0 424 0 0 S 0.0 0.0 0:00.01 s6-svscan 16 root 20 0 208 0 0 S 0.0 0.0 0:00.00 s6-supervise 19 root 20 0 192 0 0 S 0.0 0.0 0:00.00 s6-linux-init-s 25 root 20 0 208 0 0 S 0.0 0.0 0:00.00 s6-supervise 26 root 20 0 208 0 0 S 0.0 0.0 0:00.00 s6-supervise 27 root 20 0 208 0 0 S 0.0 0.0 0:00.00 s6-supervise 28 root 20 0 208 0 0 S 0.0 0.0 0:00.00 s6-supervise 36 root 20 0 196 0 0 S 0.0 0.0 0:00.00 s6-ipcserverd 336 root 20 0 6796 4864 4096 S 0.0 0.1 0:00.02 sshd 341 root 20 0 16256 2816 2432 S 0.0 0.1 0:00.03 ttyd 380 root 20 0 2528 2048 1664 S 0.0 0.1 0:00.00 tmux: client 383 root 20 0 3188 2308 1536 S 0.0 0.1 0:00.04 tmux: server 387 root 20 0 5540 4272 2304 S 0.0 0.1 0:00.59 zsh 464 root 20 0 4068 2944 1024 R 0.0 0.1 0:00.00 top
Je ne vois rien d'anormal...
Par contre, j'ai installé un debian sur une autre carte et j'ai fait des essais avec picocom et cela fonctionne très bien. Ton intuition était bonne !
Il semblerait donc que ce soit l'intégration dans Home Assistant qui pose problème.
Il va donc falloir que je regarde cela de plus près, mais ce qui me gêne, c'est que cette intégration est assez simple et que je n'ai pas beaucoup de paramètres sur lesquels je peux jouer.Je te remercie de m'avoir mis sur la voie,
Bonne journée. -
@kenavo ah yes l'intégration HA devait ouvrir le même port (logique ceci dit), mais c'est curieux qu'elle ne fonctionne pas quand elle est toute seule, tu as d'autres USB branchés et/ou configuré dans HA ?
-
@Charles
Non, rien du tout.
Je ne vois vraiment pas.
Je vais sûrement finir par refaire une SD avec home assistant et uniquement le module teleinfo intégré pour tester, mais ça ne me dira pas ce qui ne va pas sur ma configuration. -
Bonjour à vous, Kenavo j'ai le même souci que toi, je suis sur HA sous proxmox sans passer par un hub usb, j'ai essayé avec un hub alimenté aussi.
j'ai utilisé un cable cat5e et cable classique de téléphone, j'ai le mem resultat, le cable fait environ 1M
] 10:31:14.909 DEBUG teleinfo2mqtt: Split frame [PJORF+1,00008001 NONTILE NONQILNONUTILE NONTIL NONUTILANOTILE NONTIL NONUTILE NOUTILE NONILE,9 ] 10:31:14.909 WARN teleinfo2mqtt: Invalid value received for label PJORF+1 [00008001 NONTILE NONQILNONUTILE NONTIL NONUTILANOTILE NONTIL NONUTILE NOUTILE NONILE] 10:31:14.942 DEBUG teleinfo2mqtt: Raw frame [ASC 021875392346 A] 10:31:14.942 DEBUG teleinfo2mqtt: Split frame [ASC,021875392346,A] 10:31:14.942 WARN teleinfo2mqtt: Invalid value received for label ASC [021875392346] 10:31:14.988 DEBUG teleinfo2mqtt: Raw frame [TI 02 J ] 10:31:14.988 DEBUG teleinfo2mqtt: Split frame [TI,02,J ] 10:31:14.988 WARN teleinfo2mqtt: Invalid value received for label TI [02] 10:31:15.036 DEBUG teleinfo2mqtt: Raw frame [DATE E240825103120 : ] 10:31:15.036 DEBUG teleinfo2mqtt: Split frame [DATE,E240825103120,: ] 10:31:15.036 DEBUG teleinfo2mqtt: Value for label DATE = 10:31:15.036 DEBUG teleinfo2mqtt: Frame parsed [[object Object]] 10:31:15.085 DEBUG teleinfo2mqtt: Raw frame [NGTF BAE 8 ] 10:31:15.085 DEBUG teleinfo2mqtt: Split frame [NGTF BAE ,8 ] 10:31:15.085 WARN teleinfo2mqtt: Corrupted line received [NGTF BAE 8 ] 10:31:15.126 DEBUG teleinfo2mqtt: Raw frame [LTRF BASE ] 10:31:15.126 DEBUG teleinfo2mqtt: Split frame [LTRF, BASE , ] 10:31:15.126 WARN teleinfo2mqtt: Invalid value received for label LTRF [ BASE ] 10:31:15.169 DEBUG teleinfo2mqtt: Raw frame [EAST 080905375 8 ] 10:31:15.169 DEBUG teleinfo2mqtt: Split frame [EAST,080905375,8 ] 10:31:15.169 DEBUG teleinfo2mqtt: Value for label EAST = 080905375 10:31:15.169 DEBUG teleinfo2mqtt: Frame parsed [[object Object]] 10:31:15.212 DEBUG teleinfo2mqtt: Raw frame [EASF01 074831120 < ] 10:31:15.212 DEBUG teleinfo2mqtt: Split frame [EASF01,074831120,< ] 10:31:15.212 DEBUG teleinfo2mqtt: Value for label EASF01 = 074831120 10:31:15.212 DEBUG teleinfo2mqtt: Frame parsed [[object Object]] 10:31:15.255 DEBUG teleinfo2mqtt: Raw frame [ASF02 007073732 @ ] 10:31:15.255 DEBUG teleinfo2mqtt: Split frame [ASF02,007073732,@ ] 10:31:15.255 WARN teleinfo2mqtt: Invalid value received for label ASF02 [007073732] 10:31:15.298 DEBUG teleinfo2mqtt: Raw frame [EAS03 000659339 ] 10:31:15.298 DEBUG teleinfo2mqtt: Split frame [EAS03,000659339, ] 10:31:15.298 WARN teleinfo2mqtt: Invalid value received for label EAS03 [000659339] 10:31:15.341 DEBUG teleinfo2mqtt: Raw frame [EASF04 002341184 < ] 10:31:15.341 DEBUG teleinfo2mqtt: Split frame [EASF04,002341184,< ] 10:31:15.341 DEBUG teleinfo2mqtt: Value for label EASF04 = 002341184 10:31:15.341 DEBUG teleinfo2mqtt: Frame parsed [[object Object]] 10:31:15.384 DEBUG teleinfo2mqtt: Raw frame [EASF05 000000000 & ] 10:31:15.384 DEBUG teleinfo2mqtt: Split frame [EASF05,000000000,&,] 10:31:15.385 DEBUG teleinfo2mqtt: Value for label EASF05 = 000000000 10:31:15.385 DEBUG teleinfo2mqtt: Frame parsed [[object Object]] 10:31:15.427 DEBUG teleinfo2mqtt: Raw frame [EASF06 000000000' ] 10:31:15.427 DEBUG teleinfo2mqtt: Split frame [EASF06,000000000' ] 10:31:15.427 WARN teleinfo2mqtt: Corrupted line received [EASF06 000000000' ] 10:31:15.470 DEBUG teleinfo2mqtt: Raw frame [AASF0& 000000000 ] 10:31:15.470 DEBUG teleinfo2mqtt: Split frame [AASF0&,000000000, ] 10:31:15.470 WARN teleinfo2mqtt: Invalid value received for label AASF0& [000000000] 10:31:15.513 DEBUG teleinfo2mqtt: Raw frame [ESF08 000000000 ) ] 10:31:15.513 DEBUG teleinfo2mqtt: Split frame [ESF08,000000000,) ] 10:31:15.513 WARN teleinfo2mqtt: Invalid value received for label ESF08 [000000000] 10:31:15.555 DEBUG teleinfo2mqtt: Raw frame [EASF09 000000000 * ] 10:31:15.556 DEBUG teleinfo2mqtt: Split frame [EASF09,000000000,* ] 10:31:15.556 DEBUG teleinfo2mqtt: Value for label EASF09 = 000000000 10:31:15.556 DEBUG teleinfo2mqtt: Frame parsed [[object Object]] 10:31:15.599 DEBUG teleinfo2mqtt: Raw frame [EASF10000000000 " ] 10:31:15.599 DEBUG teleinfo2mqtt: Split frame [EASF10000000000," ] 10:31:15.599 WARN teleinfo2mqtt: Corrupted line received [EASF10000000000 " ] 10:31:15.643 DEBUG teleinfo2mqtt: Raw frame [EAS01 042091524 C ] 10:31:15.643 DEBUG teleinfo2mqtt: Split frame [EAS01,042091524,C ] 10:31:15.643 WARN teleinfo2mqtt: Invalid value received for label EAS01 [042091524] 10:31:15.686 DEBUG teleinfo2mqtt: Raw frame [ASD02 021066349 B] 10:31:15.686 DEBUG teleinfo2mqtt: Split frame [ASD02,021066349,B] 10:31:15.686 WARN teleinfo2mqtt: Invalid value received for label ASD02 [021066349] 10:31:15.730 DEBUG teleinfo2mqtt: Raw frame [EAD03 007046942B ] 10:31:15.731 DEBUG teleinfo2mqtt: Split frame [EAD03,007046942B ] 10:31:15.731 WARN teleinfo2mqtt: Corrupted line received [EAD03 007046942B ] 10:31:15.771 DEBUG teleinfo2mqtt: Raw frame [EAS04 014692540B ] 10:31:15.771 DEBUG teleinfo2mqtt: Split frame [EAS04,014692540B ] 10:31:15.771 WARN teleinfo2mqtt: Corrupted line received [EAS04 014692540B ] 10:31:15.812 DEBUG teleinfo2mqtt: Raw frame [AIT 006867518 / ] 10:31:15.812 DEBUG teleinfo2mqtt: Split frame [AIT,006867518,/ ] 10:31:15.812 WARN teleinfo2mqtt: Invalid value received for label AIT [006867518] 10:31:15.853 DEBUG teleinfo2mqtt: Raw frame [ER 005173875 _] 10:31:15.853 DEBUG teleinfo2mqtt: Split frame [ER ,005173875,_] 10:31:15.853 WARN teleinfo2mqtt: Invalid value received for label ER [005173875]
du cou ça me fait souvent du 0 en soutiré par exemple
si vous avez des idées car la je seche je vais peut essayer brancher directement sur un raspberry pour voir si c'est pareil -
@devchristof avez vous essayé de jouer avec le petit potentiomètre de la carte Teleinfo ?
-
@Charles Même problème ici mais en mode historique. Les données sont corrompus. Souvent les dernières lignes sont répétées plusieurs fois. Ou bien elles se chevauchent. Par exemple le numéro de série du linky se retrouvent "bouffé" par le reste. Je n'ai pas pensé à faire de capture sous minicom.
Au bout d'un moment cela fait planter le Pi. Problème identique sur un Raspberry Pi 3 et un Orange Pi Zero LTS.
Du coup j'ai acheté deux nouveaux Micro TeleInfo.... -
@Geoffrey je ne suis pas certain que changer de module va solutionner le soucis (sauf peut être si c'était une génération précédente).
Au bout d'un moment
c'est assez relatif, genre 1 heure 1 jour 1 mois ?
Tu peux regarder dans ce repo, pour programmer les chip FTDI (ancienne génération) j'utilisais
usb_modeswitch
qui faisait comme si tu plug/unplug le dongle physiquement.
https://github.com/ch2i/ftx_prog/blob/master/flash_replug.shPeut être voir avec ça pour glisser un reset du port USB qui contient le dongle (tt les nuits par exemple) parce que pour planter le PI je vois pas bien comment un USB/Serial à lui tout seul fait ça, sauf si le "lecteur" à des fuites mémoires ou qu'un autre process accède à l'interface.
-
@Charles Ben au début c'était tous les deux jours, puis c'est devenu de plus en plus souvent.... Ca ne tenait plus 1h.... L'ensemble a tourné sans soucis depuis octobre 2024.
-
@Geoffrey est ce que ce ne serait pas la source du problème ?
-
@Nicolas-Bernaerts Ca pourrait si je n'avais que le soucis avec teleinfo-linky mais je l'ai aussi avec Linky Exporter. EDIT Je n'utilise pas le port série du RPi, je suis en USB. Donc pas de console sur le port série.
Dans minicom je vois les données corrompus, donc ce n'est pas un soucis du programmes qui lit les données du linky. Au bout d'un moment les lignesHHPHC A , MOTDETAT 000000 B
Se répètent pendant un certain temps plus ou moins aléatoire.
Si je débranches le câble venant du linky la LED rouge reste allumée faiblement.
Même soucis sur un Orange Pi Zero LTS et sur un Raspberry Pi 3 A+ -
J'ai remis le Teleinfo qui me posait problème, et les messages corrompus sont de retour. Cela se traduit, entre autres, par des numéros de Linky différents dans mes données prométheus.
-
@Geoffrey Bon j'en ai trois différents, et ils finissent tous par planter ! Je vais passer sur un PITInfo pour éviter les soucis avec l'USB ....
-
J'ai demandé à faire basculer mon Linky en mode standard, c'est effectif depuis hier.
Les données sont toujours et encore corrompues. Quelque soit le module utilisé. Le module le plus ancien est celui qui plante le plus vite.Ce soir j'ai remarqué la chose suivante: Si je débranche le connecteur venant du Linky, la LED rouge continue à clignoter gaiement alors que plus aucune données ne sont censer transiter
-
Je continue mon monologue
A force de recherche, je soupçonne de plus en plus un bug dans le driver cdc_acm ou dans le chip CH9102 ou bien dans les deux. J'ai trouvé ce driver et je l'ai installé. Pour le moment, ça tourne depuis hier soir sans corruption des données. -
@Geoffrey c'est mieux avec le nouveau driver ? c'est intéressant comme retour car jusqu'ici personne ne m'a jamais remonté ce type de soucis.
Ce soir j'ai remarqué la chose suivante: Si je débranche le connecteur venant du Linky, la LED rouge continue à clignoter gaiement alors que plus aucune données ne sont censer transiter
nous sommes d'accord sauf si un autre process tente une lecture/ecriture sur le port série en même temps
c'est quelle version de l'OS qui tourne sur le PI ?