Erreur: LibTeleinfo::checkLine Err checksum 0x00 != 0x53
-
Bonjour à tous.
Concernant l'erreur :LibTeleinfo::checkLine Err checksum 0x00 != 0x53, je vous fais part de mes travaux de recherche.
Déjà j'utilise deux cartes WeMos Teleinfo raccordées sur deux compteurs différents, un Linky et un ancien compteur électronique EDF Iskra ME 341.
Les deux accompagnées de deux cartes ESP 32 MH et LIVE.
Application Tasmota Teleinfo et Tarif Tempo.
Les deux envoyant leurs données à un système de domotique Jeedom via MQTT.
La récolte des données se passent bien mais il y a toujours une erreur récurrente de type: LibTeleinfo::checkLine Err checksum 0x00 != 0x53.
J'ai vu sur les différents post que ça pouvait venir d'un problème de résistance de ligne.
J'ai donc fait la vérification suivante sur le compteur Iskra: (Je pense que sur le Linky, j'aurai les mêmes résultats à peu près)
1er test: Mise en place d'un potentiomètre de 10 kohms en série avec le module, départ à 0 ohm en regardant la console de tasmota, j'augmente la résistance par bond jusqu'à apparition d'une nouvelle erreur ou arrêt de la mesure > j'arrive en butée du potard (valeur 10 kohms)
et le module fonctionne toujours.
2ème test: Mise en place du même potard en parallèle sur l'entrée Téléinfo du module, départ à 10 kohms en regardant la console de tasmota, je diminue la résistance par bond jusqu'à apparition d'une nouvelle erreur ou arrêt de la mesure > j'arrive à stopper la mesure sans apparition d'une autre erreur, je mesure la résistance de mon potard : 50 ohms.
Donc, je ne pense pas que l'ajout d'une résistance change quelque chose à ce problème.
Je pense qu'il y a plutôt un problème soft, non?
Qu'en pensez vous??Extrait de la console après un restart du module:
00:00:00.003 HDW: ESP32-D0WD-V3 v3.1 00:00:00.061 UFS: FlashFS mounted with 300 kB free 00:00:00.084 CFG: Loaded from File, Count 31 00:00:00.093 QPC: Count 1 00:00:00.099 I2C: Bus1 using GPIO22(SCL) and GPIO21(SDA) 00:00:00.182 BRY: Berry initialized, RAM used 3934 bytes 00:00:00.265 CFG: Energy loaded from file 00:00:00.266 NRG: Init driver 15 00:00:00.276 Project tasmota - Tasmota Version 13.3.0.3(teleinfo)-2_0_14(2024-01-13T15:37:07) 00:00:00.278 TIC: RX on GPIO23, baudrate 1200 00:00:02.000 WIF: Connecting to AP1 XXXXXXXXXX Channel 6 BSSId XX:XX:XX:FD:E4:D0 in mode 11n as Teleinfo-PAC-3112... 00:00:03.931 WIF: Connected 14:02:07.116 HTP: Web server active on Teleinfo-PAC-3112 with IP address 192.168.0.64 14:02:08.154 MQT: Attempting connection... 14:02:08.607 MQT: Connected 14:02:08.612 MQT: tele/Teleinfo_PAC/LWT = Online (retained) 14:02:08.614 MQT: cmnd/Teleinfo_PAC/POWER = 14:02:08.620 MQT: tele/Teleinfo_PAC/INFO1 = {"Info1":{"Module":"Wemos Teleinfo PAC","Version":"13.3.0.3(teleinfo)","FallbackTopic":"cmnd/DVES_0CEC28_fb/","GroupTopic":"cmnd/tasmotas/"}} 14:02:08.637 MQT: tele/Teleinfo_PAC/INFO2 = {"Info2":{"WebServerMode":"Admin","Hostname":"Teleinfo-PAC-3112","IPAddress":"192.168.0.64","IP6Global":"","IP6Local":"fe80::e665:b8ff:fe0c:ec28%st1"}} 14:02:08.651 MQT: tele/Teleinfo_PAC/INFO3 = {"Info3":{"RestartReason":"Software reset CPU","BootCount":18}} 14:02:08.666 MQT: stat/Teleinfo_PAC/RESULT = {"POWER":"OFF"} 14:02:08.669 MQT: stat/Teleinfo_PAC/POWER = OFF 14:02:10.388 LibTeleinfo::checkLine Err checksum 0x00 != 0x53 (total errors=1) 14:02:10.900 QPC: Reset 14:02:12.890 LibTeleinfo::checkLine Err checksum 0x00 != 0x53 (total errors=2) 14:02:12.905 MQT: tele/Teleinfo_PAC/STATE = {"Time":"2024-01-20T14:02:12","Uptime":"0T00:00:09","UptimeSec":9,"Heap":155,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":1,"Berry":{"HeapUsed":3,"Objects":39},"POWER":"OFF","Dimmer":10,"Color":"1A1A1A","HSBColor":"0,0,10","Channel":[10,10,10],"Scheme":0,"Width":1,"Fade":"OFF","Speed":1,"LedTable":"ON","Wifi":{"AP":1,"SSId":"Freebox-863316","BSSId":"22:66:CF:FD:E4:D0","Channel":6,"Mode":"11n","RSSI":76,"Signal":-62,"LinkCount":1,"Downtime":"0T00:00:03"}} 14:02:12.959 MQT: tele/Teleinfo_PAC/SENSOR = {"Time":"2024-01-20T14:02:12","ENERGY":{"TotalStartTime":"2024-01-13T18:06:33","Total":0.000,"Yesterday":0.000,"Today":0.000,"Period":0,"Power":90,"Current":0.000,"Load":0},"TIC":{"ADCO":"270828004689","ISOUSC":60,"BBRHCJB":49931196,"BBRHPJB":50883857,"BBRHCJW":14510605,"BBRHPJW":16376972,"BBRHCJR":1315975,"BBRHPJR":1982722,"PTEC":"HPJW","DEMAIN":"----","IINST":0,"IMAX":62,"PAPP":90,"HHPHC":"Y","MOTDETAT":0}} 14:02:15.231 LibTeleinfo::checkLine Err checksum 0x00 != 0x53 (total errors=3) 14:02:17.391 LibTeleinfo::checkLine Err checksum 0x00 != 0x53 (total errors=4) 14:02:19.641 LibTeleinfo::checkLine Err checksum 0x00 != 0x53 (total errors=5) 14:02:22.142 LibTeleinfo::checkLine Err checksum 0x00 != 0x53 (total errors=6) 14:02:24.390 LibTeleinfo::checkLine Err checksum 0x00 != 0x53 (total errors=7) 14:02:26.643 LibTeleinfo::checkLine Err checksum 0x00 != 0x53 (total errors=8) 14:02:28.895 LibTeleinfo::checkLine Err checksum 0x00 != 0x53 (total errors=9) 14:02:31.146 LibTeleinfo::checkLine Err checksum 0x00 != 0x53 (total errors=10) 14:02:33.646 LibTeleinfo::checkLine Err checksum 0x00 != 0x53 (total errors=11) 14:02:35.898 LibTeleinfo::checkLine Err checksum 0x00 != 0x53 (total errors=12) 14:02:38.150 LibTeleinfo::checkLine Err checksum 0x00 != 0x53 (total errors=13) 14:02:40.399 LibTeleinfo::checkLine Err checksum 0x00 != 0x53 (total errors=14) 14:02:42.657 LibTeleinfo::checkLine Err checksum 0x00 != 0x53 (total errors=15) 14:02:42.915 MQT: tele/Teleinfo_PAC/STATE = {"Time":"2024-01-20T14:02:42","Uptime":"0T00:00:39","UptimeSec":39,"Heap":153,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":1,"Berry":{"HeapUsed":3,"Objects":39},"POWER":"OFF","Dimmer":10,"Color":"1A1A1A","HSBColor":"0,0,10","Channel":[10,10,10],"Scheme":0,"Width":1,"Fade":"OFF","Speed":1,"LedTable":"ON","Wifi":{"AP":1,"SSId":"Freebox-863316","BSSId":"22:66:CF:FD:E4:D0","Channel":6,"Mode":"11n","RSSI":76,"Signal":-62,"LinkCount":1,"Downtime":"0T00:00:03"}} 14:02:42.968 MQT: tele/Teleinfo_PAC/SENSOR = {"Time":"2024-01-20T14:02:42","ENERGY":{"TotalStartTime":"2024-01-13T18:06:33","Total":0.000,"Yesterday":0.000,"Today":0.000,"Period":0,"Power":90,"Current":0.000,"Load":0},"TIC":{"ADCO":"270828004689","ISOUSC":60,"BBRHCJB":49931196,"BBRHPJB":50883857,"BBRHCJW":14510605,"BBRHPJW":16376973,"BBRHCJR":1315975,"BBRHPJR":1982722,"PTEC":"HPJW","DEMAIN":"----","IINST":0,"IMAX":62,"PAPP":90,"HHPHC":"Y","MOTDETAT":0}} 14:02:45.161 LibTeleinfo::checkLine Err checksum 0x00 != 0x53 (total errors=16) 14:02:47.419 LibTeleinfo::checkLine Err checksum 0x00 != 0x53 (total errors=17) 14:02:49.663 LibTeleinfo::checkLine Err checksum 0x00 != 0x53 (total errors=18) 14:02:51.917 LibTeleinfo::checkLine Err checksum 0x00 != 0x53 (total errors=19) 14:02:54.167 LibTeleinfo::checkLine Err checksum 0x00 != 0x53 (total errors=20) 14:02:56.415 LibTeleinfo::checkLine Err checksum 0x00 != 0x53 (total errors=21) 14:02:58.918 LibTeleinfo::checkLine Err checksum 0x00 != 0x53 (total errors=22) 14:03:01.165 LibTeleinfo::checkLine Err checksum 0x00 != 0x53 (total errors=23)
Je suis à disposition pour faire d'autres vérifications (dans la limite de mes connaissances) .
Avec mes amitiés.
Gilles. -
@TontonGilou merci pour les tests.
Pour le changement de la resistance de ligne c'est parfois nécessaire uniquement avec certains compteurs, je dirais que dans 95% des cas aucun soucis, pour ça que chez toi ça ne change pas grand chose.
En revanche coté soft oui c'est possible tasmota faisant autre chose en même temps (wifi, scripts ou autres ...) il est possible qu'il rate des caractères d'ou l'erreur de checksum (qui en soit si elle n'est pas toutes les trames n'est pas dérangeante et le contrôle de checksum sert à ça), ceci est d'autant plus vrai avec le mode standard à 9600
Si tu veux vérifier cette théorie, tu peux executer les 2 examples basiques de la libteleinfo ici comme ESP32_Passthru et Teleinfo_Stats et regarder les résultats.
-
@Charles
Merci beaucoup Charles pour la réponse.C'est vrai que tant que je reçois des bonnes trames, il n'y a pas trop de soucis.
Je m'inquiétais surtout c'est de ne pas surcharger le compteur d'erreur par exemple.
Pour éviter cela je redémarre les modules tous les 24H00 par une commande http de restart envoyée par un scénario de Jeedom.
Je pense que l'on peut le faire en local dans l'ESP mais je ne sais pas comment.Par contre, je trouve étonnant que par le passé (fin 2022), j'avais essayé ce système avec un esp8266 câblé sur une breadboard et la version 12.2.05 de tasmota (téléinfo) qui fonctionnait sans erreur !
J'ai juste voulu passer à l'ESP32 croyant avoir quelque chose de plus sûr (j'avais vu sur quelques post que l'ESP 8266 dans certain cas était limite.) et bien sûr les cartes Wemos pour la propreté du montage.
Je l'ai câblé en // pour voir et il fonctionne toujours bien! (aucune erreur LibTeleinfo).Concernant les 2 exemples, je ne saurai pas les exploiter actuellement,
Il faut que j'augmente mes connaissance sur le sujet.Merci encore pour la réponse.
Avec mes amitiés.
Gilles