Community Forum
    • Blog
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    MQTT corrompu dans Tasmota

    Scheduled Pinned Locked Moved Téléinfo
    6 Posts 3 Posters 853 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • redge76R Offline
      redge76
      last edited by

      @redge76 said in MQTT corrompu dans Tasmota:
      Bonjour,

      Aléatoirement, Tasmota envoie des json qui semblent corrompus.
      Voici 2 exemples
      Coté home assistant, j'ai ceci dans le log:

      2020-09-08 19:13:03 DEBUG (MainThread) [homeassistant.components.mqtt] Received message on tele/tasmota_10AFED/SENSOR: b'{"Time":"2020-09-08T20:13:00","ENERGY":{"TotalStartTime":"2020-09-07T19:58:31","Total":437.044,"Yesterday":0.390,"Today":436.654,"Period":4,"Power":540,"Current":2.000,"Load":6,"ADCO":"022064197471","OPTARIF":"BASE","ISOUSC":30,"BASE":427467,"PTEC":"TH..","IINST":2,"IMAX":90,"PAPP":540,"HHPHC":"A","MOTDETAT":0}}'
      2020-09-08 19:13:32 DEBUG (MainThread) [homeassistant.components.mqtt] Received message on tele/tasmota_10AFED/SENSOR: b'{"Time":"2020-09-08T20:13:30","ENERGY":{"TotalStartTime":"2020-09-07T19:58:31","Total":437.048,"Yesterday":0.390,"Today":436.658,"Period":4,"Power":530,"Current":2.000,"Load":6,"ADCO":"022064197471","OPTARIF":"BASE","ISOUSC":30,"BASE":427471,"PTEC":"TH..","IINST":2,"IMAX":90,"PAPP":530,"HHPHC":"A","MOTDETAT":0,"MOTD\x05TAT":0}}'
      

      On peut voir qu'a la fin, l'étiquette MOTDETAT est répétée mais avec le "E" corrompu. (C'est bizarre que ca soit la partie données qui ait un problème)

      Coté Tasmota j'ai:

      18:25:43 MQT: tele/tasmota_10AFED/STATE = {"Time":"2020-09-08T18:25:42","Uptime":"0T01:51:50","UptimeSec":6710,"Heap":20,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":108,"MqttCount":1,"POWER":"OFF","Wifi":{"AP":1,"SSId":"pouet","BSSId":"2C:56:DC:CB:55:4A","Channel":1,"RSSI":100,"Signal":-26,"LinkCount":1,"Downtime":"0T00:00:05"}}
      18:25:43 MQT: tele/tasmota_10AFED/SENSOR = {"Time":"2020-09-08T18:25:43","ENERGY":{"TotalStartTime":"2020-09-07T19:58:31","Total":9.302,"Yesterday":0.390,"Today":8.912,"Period":17,"Power":1800,"Current":7.000,"Load":23,"ADCO":"022064197471","OPTARIF":"BASE","ISOUSC":30,"BASE":426549,"PTEC":"TH..","IINST":7,"IMAX":90,"PAPP":1800,"HHPHC":"A","MOTDETAT":0,"OF":"BASE","MOTDEAT":0,"ISOUBASE":426455}}
      18:25:45 TIC: [1]* BASE=000426551
      18:25:45 TIC: Base:426551
      18:25:45 TIC: [18]* IINST=014
      18:25:45 TIC: Current 014, now 14
      18:25:45 TIC: [16]* PAPP=03480
      18:25:45 TIC: Power 03480, now 3480
      18:25:46 TIC: [1]* BASE=000426552
      18:25:46 TIC: Base:426552
      18:25:48 TIC: [1]* BASE=000426553
      18:25:48 TIC: Base:426553
      18:25:49 TIC: [1]* BASE=000426555
      18:25:49 TIC: Base:426555
      18:25:49 TIC: [18]* IINST=012
      18:25:49 TIC: Current 012, now 12
      18:25:49 TIC: [16]* PAPP=03490
      18:25:49 TIC: Power 03490, now 3490
      18:25:51 TIC: [18]* IINST=007
      18:25:51 TIC: Current 007, now 7
      18:25:51 TIC: [16]* PAPP=01800
      18:25:51 TIC: Power 01800, now 1800
      18:25:52 TIC: [1]* BASE=000426556
      18:25:52 TIC: Base:426556
      18:25:53 TIC: [1]* BASE=000426557
      18:25:53 TIC: Base:426557
      18:25:55 TIC: [1]* BASE=000426558
      18:25:55 TIC: Base:426558
      18:25:57 TIC: [16]* PAPP=01790
      18:25:57 TIC: Power 01790, now 1790
      18:25:59 TIC: [1]* BASE=000426560
      18:25:59 TIC: Base:426560
      18:26:02 TIC: [1]* BASE=000426561
      18:26:02 TIC: Base:426561
      18:26:03 MQT: tele/tasmota_10AFED/HASS_STATE = {"Version":"8.5.0.1(sensors)","BuildDateTime":"2020-09-07T21:03:46","Module or Template":"NodeMCU-teleinfo","RestartReason":"Software Watchdog","Uptime":"0T01:52:11","Hostname":"teleinfo","IPAddress":"192.168.1.149","RSSI":"100","Signal (dBm)":"-26","WiFi LinkCount":1,"WiFi Downtime":"0T00:00:05","MqttCount":1,"LoadAvg":106}
      18:26:03 TIC: [1]* BASE=000426562
      18:26:03 TIC: Base:426562
      18:26:05 TIC: [18]* IINST=014
      18:26:05 TIC: Current 014, now 14
      18:26:06 TIC: [1]* BASE=000426564
      18:26:06 TIC: Base:426564
      18:26:07 TIC: [16]* PAPP=03470
      18:26:07 TIC: Power 03470, now 3470
      18:26:08 TIC: [1]* BASE=000426565
      18:26:08 TIC: Base:426565
      18:26:09 TIC: [1]* BASE=000426567
      18:26:09 TIC: Base:426567
      18:26:10 TIC: [1]* BASE=000426568
      18:26:10 TIC: Base:426568
      18:26:11 TIC: [18]* IINST=007
      18:26:11 TIC: Current 007, now 7
      18:26:11 TIC: [16]* PAPP=01810
      18:26:11 TIC: Power 01810, now 1810
      18:26:12 TIC: [1]* BASE=000426569
      18:26:12 TIC: Base:426569
      18:26:12 MQT: tele/tasmota_10AFED/STATE = {"Time":"2020-09-08T18:26:12","Uptime":"0T01:52:20","UptimeSec":6740,"Heap":20,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":100,"MqttCount":1,"POWER":"OFF","Wifi":{"AP":1,"SSId":"pouet","BSSId":"2C:56:DC:CB:55:4A","Channel":1,"RSSI":100,"Signal":-26,"LinkCount":1,"Downtime":"0T00:00:05"}}
      18:26:12 MQT: tele/tasmota_10AFED/SENSOR = {"Time":"2020-09-08T18:26:12","ENERGY":{"TotalStartTime":"2020-09-07T19:58:31","Total":9.322,"Yesterday":0.390,"Today":8.932,"Period":20,"Power":1810,"Current":7.000,"Load":23,"ADCO":"022064197471","OPTARIF":"BASE","ISOUSC":30,"BASE":426569,"PTEC":"TH..","IINST":7,"IMAX":90,"PAPP":1810,"HHPHC":"A","MOTDETAT":0,"OF":"BASE","MOTDEAT":0,"ISOUBASE":426455}}
      18:26:15 TIC: [1]* BASE=000426570
      

      (a noter que c'est pas toujours MOTDETAT qui trinque....)

      18:36:53 MQT: tele/tasmota_10AFED/STATE = {"Time":"2020-09-08T18:36:53","Uptime":"0T02:03:01","UptimeSec":7381,"Heap":21,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":104,"MqttCount":1,"POWER":"OFF","Wifi":{"AP":1,"SSId":"pouet","BSSId":"2C:56:DC:CB:55:4A","Channel":1,"RSSI":100,"Signal":-26,"LinkCount":1,"Downtime":"0T00:00:05"}}
      18:36:53 MQT: tele/tasmota_10AFED/SENSOR = {"Time":"2020-09-08T18:36:53","ENERGY":{"TotalStartTime":"2020-09-07T19:58:31","Total":9.575,"Yesterday":0.390,"Today":9.185,"Period":4,"Power":550,"Current":2.000,"Load":6,"ADCO":"022064197471","OPTARIF":"BASE","ISOUSC":30,"BASE":426822,"PTEC":"TH..","IINST":2,"IMAX":90,"PAPP":550,"HHPHC":"A","MOTDETAT":0,"OF":"BASE","MOTDEAT":0,"ISOUBASE":426815,"PTARIF":"BASE"}}
      

      Quelqu'un a déja vu cela ?

      1 Reply Last reply Reply Quote
      • redge76R Offline
        redge76
        last edited by

        Par ex j'ai actuellement rien qui remonte dans home assistant:
        Même si la valeur de PAPP est "bonne", le fait que le json semble corrompu fait que je n'ai rien qui remonte jusqu'a l'entity. (en gros il y a rien qui bouge dans HASS)
        Si je redémarre mon ESP, ca fonctionne pendant un moment puis ca plante.
        J'ai deja essayé de changer de carte ESP et ca me change rien (je suis passé d'une Wemos Mini D1 à une carte NodeMCU)
        J'ai aussi utilisé plusieurs alims/cables différents.

        2020-09-09 14:16:51 DEBUG (MainThread) [homeassistant.components.mqtt] Received message on tele/tasmota_10AFED/SENSOR: b'{"Time":"2020-09-09T15:16:47","ENERGY":{"TotalStartTime":"2020-09-07T19:58:31","Total":7.776,"Yesterday":5.774,"Today":1.612,"Period":2,"Power":360,"Current":1.000,"Load":3,"ADCO":"022064197471","OPTARIF":"BASE","ISOUSC":30,"PAPP":360,"HHPHC":"A","MOTDETAT":0,"BASE":435536,"PTEC":"TH..","IINST":1,"IMAX":90,"ISOUPTEC":"TH..","MOTD\x05TAT":0,"ISOUBASE":435250,"OPTAR\tF":"BASE","OF":"BASE"}}'
        

        Et dans la console de Tasmota:

        15:16:17 MQT: tele/tasmota_10AFED/STATE = {"Time":"2020-09-09T15:16:17","Uptime":"0T01:23:55","UptimeSec":5035,"Heap":21,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":134,"MqttCount":1,"POWER":"OFF","Wifi":{"AP":1,"SSId":"pouet","BSSId":"2C:56:DC:CB:55:4A","Channel":1,"RSSI":100,"Signal":-14,"LinkCount":1,"Downtime":"0T00:00:02"}}
        15:16:17 MQT: tele/tasmota_10AFED/SENSOR = {"Time":"2020-09-09T15:16:17","ENERGY":{"TotalStartTime":"2020-09-07T19:58:31","Total":7.774,"Yesterday":5.774,"Today":1.610,"Period":3,"Power":340,"Current":1.000,"Load":3,"ADCO":"022064197471","OPTARIF":"BASE","ISOUSC":30,"PAPP":340,"HHPHC":"A","MOTDETAT":0,"BASE":435534,"PTEC":"TH..","IINST":1,"IMAX":90,"ISOUPTEC":"TH..","MOTDTAT":0,"ISOUBASE":435250,"OPTAR	F":"BASE","OF":"BASE"}}
        15:16:17 TIC: [16]* PAPP=00330
        15:16:17 TIC: Power 00330, now 330
        15:16:22 TIC: [16]* PAPP=00350
        15:16:22 TIC: Power 00350, now 350
        15:16:23 TIC: [16]* PAPP=00340
        15:16:23 TIC: Power 00340, now 340
        15:16:25 TIC: [16]* PAPP=00320
        15:16:25 TIC: Power 00320, now 320
        15:16:27 TIC: [1]* BASE=000435535
        15:16:27 TIC: Base:435535
        15:16:28 TIC: [16]* PAPP=00330
        15:16:28 TIC: Power 00330, now 330
        15:16:29 TIC: [16]* PAPP=00350
        15:16:29 TIC: Power 00350, now 350
        15:16:31 TIC: [16]* PAPP=00360
        15:16:31 TIC: Power 00360, now 360
        15:16:32 TIC: [16]* PAPP=00370
        15:16:32 TIC: Power 00370, now 370
        15:16:35 TIC: [16]* PAPP=00340
        15:16:35 TIC: Power 00340, now 340
        15:16:39 TIC: [1]* BASE=000435536
        15:16:39 TIC: Base:435536
        15:16:39 TIC: [16]* PAPP=00320
        15:16:39 TIC: Power 00320, now 320
        15:16:41 MQT: tele/tasmota_10AFED/HASS_STATE = {"Version":"8.5.0.1(sensors)","BuildDateTime":"2020-09-07T21:03:46","Module or Template":"NodeMCU-teleinfo","RestartReason":"Hardware Watchdog","Uptime":"0T01:24:19","Hostname":"teleinfo","IPAddress":"192.168.1.25","RSSI":"100","Signal (dBm)":"-14","WiFi LinkCount":1,"WiFi Downtime":"0T00:00:02","MqttCount":1,"LoadAvg":84}
        15:16:43 TIC: [16]* PAPP=00360
        15:16:43 TIC: Power 00360, now 360
        15:16:47 MQT: tele/tasmota_10AFED/STATE = {"Time":"2020-09-09T15:16:47","Uptime":"0T01:24:25","UptimeSec":5065,"Heap":21,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":78,"MqttCount":1,"POWER":"OFF","Wifi":{"AP":1,"SSId":"pouet","BSSId":"2C:56:DC:CB:55:4A","Channel":1,"RSSI":100,"Signal":-17,"LinkCount":1,"Downtime":"0T00:00:02"}}
        15:16:47 MQT: tele/tasmota_10AFED/SENSOR = {"Time":"2020-09-09T15:16:47","ENERGY":{"TotalStartTime":"2020-09-07T19:58:31","Total":7.776,"Yesterday":5.774,"Today":1.612,"Period":2,"Power":360,"Current":1.000,"Load":3,"ADCO":"022064197471","OPTARIF":"BASE","ISOUSC":30,"PAPP":360,"HHPHC":"A","MOTDETAT":0,"BASE":435536,"PTEC":"TH..","IINST":1,"IMAX":90,"ISOUPTEC":"TH..","MOTDTAT":0,"ISOUBASE":435250,"OPTAR	F":"BASE","OF":"BASE"}}
        
        1 Reply Last reply Reply Quote
        • redge76R Offline
          redge76
          last edited by

          Et le "information" de Tasmota me dit:

          Program Version	8.5.0.1(sensors)
          Build Date & Time	2020-09-07T21:03:46
          Core/SDK Version	2_7_4_1/2.2.2-dev(38a443e)
          Uptime	0T00:05:05
          Flash write Count	113 at 0xFB000
          Boot Count	90
          Restart Reason	**Hardware Watchdog**
          Friendly Name 1	builtin led
          

          Ce hardware watchdot ne semble se déclencher que quand j'ai un firmware tasmota avec la teleinfo activée.

          1 Reply Last reply Reply Quote
          • redge76R Offline
            redge76
            last edited by

            Bon alors avec un ESP32 ca marche parfaitement. (les autres composants restent les mêmes)
            Donc je ne sais pas. J'ai essayé avec 2 cartes ESP8266 différentes avec à chaque fois les mêmes symptômes.
            Je ne sais pas s'il faut accuser le soft ou le hardware....

            rgrunblaR 1 Reply Last reply Reply Quote
            • rgrunblaR Offline
              rgrunbla @redge76
              last edited by rgrunbla

              @redge76 Salut, j'ai vu ça sur mon montage à moi.
              Globalement, il y a deux choses:

              • Tout d'abord, avant d'ajouter les données dans la télé info, il n'y a pas de vérification des étiquettes pour savoir si elles veulent dire quelque chose quand on active certaines options. Une erreur de lecture et hop, l'output est pourri jusqu'au prochain reboot. Voilà la modif que j'ai effectué pour corriger ça dans le code de Tasmota:
              iff --git a/tasmota/xnrg_15_teleinfo.ino b/tasmota/xnrg_15_teleinfo.ino
              index e87d899f..9a50b0f3 100755
              --- a/tasmota/xnrg_15_teleinfo.ino
              +++ b/tasmota/xnrg_15_teleinfo.ino
              @@ -359,6 +359,20 @@ void ResponseAppendTInfo(char sep)
                       me = me->next;
              
                       if (me->name && me->value && *me->name && *me->value) {
              +            int ilabel ;
              +            char labelName[16];
              +            // Find the label index
              +            for ( ilabel = 1 ; ilabel < LABEL_END ; ilabel++) {
              +                GetTextIndexed(labelName, sizeof(labelName), ilabel, kLabel);
              +                if (!strcmp(labelName, me->name)) {
              +                    break;
              +                }
              +            }
              +
              +            if (ilabel>=LABEL_END) {
              +                continue;
              +            }
              +
                           isNumber = true;
                           p = me->value;
              
              • Ensuite, j'avais plein de problème avec mes résistances et les soudures, j'ai changé pour mettre une résistance de 1k pour R1 à la place de celle de 4.7k dans le montage, et depuis j'ai beaucoup moins de problèmes.

              Rémy

              1 Reply Last reply Reply Quote
              • Barbu DorB Offline
                Barbu Dor
                last edited by

                Bonjour,

                Une modif de Tasmota est en cours pour corriger les problèmes du mode Standard.
                Il me reste juste a vérifier que la modif n'a pas dégradé le mode Historique.
                Est-ce que quelqu'un pourrait me fournir une capture brute d'un mode Historique pour que je puisse tester ?

                Il me faut une capture binaire, sans conversion sur les LF/CR.

                Merci d'avance
                Barbudor

                1 Reply Last reply Reply Quote
                • First post
                  Last post

                1

                Online

                5.7k

                Users

                534

                Topics

                5.0k

                Posts

                Top Topics

                • Bonjour Nicolas
                  Nicolas BernaertsN
                  Nicolas Bernaerts
                  0
                  19
                  353

                • Denky 4 - Domoticz - Triphasé -
                  Nicolas BernaertsN
                  Nicolas Bernaerts
                  0
                  7
                  101

                • Denky D4 et Linky Standard TInfo Rx Non Configuré
                  CharlesC
                  Charles
                  0
                  5
                  142

                • CC1101 mini shield pour raspberry
                  CharlesC
                  Charles
                  0
                  5
                  161

                • CC1101
                  CharlesC
                  Charles
                  0
                  2
                  71

                Popular Tags

                teleinfo
                24 topics
                arduino
                19 topics
                remora
                16 topics
                esp8266
                10 topics
                arduipi
                10 topics
                wifinfo
                7 topics
                raspberry
                7 topics
                broadcast
                7 topics
                Copyright © 2022 Charles-Henri Hallard | Return to blog page | Powered by NodeBB