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

    Message reset

    Scheduled Pinned Locked Moved Wemos Teleinfo
    17 Posts 2 Posters 163 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.
    • R Offline
      raoul
      last edited by

      Bonjour,

      J'utilise le shield teleinfo (v1.1) depuis des années avec tasmota sur un esp8266 (wemos d1 mini) et ça fonctionne très bien. J'ai voulu passer sur la version modifiée de Nicolas mais impossible d'avoir un module fonctionnel.

      J'ai des centaines de "message reset" par seconde, parfois une ou deux trames en erreur, et au bout d'un moment tasmota finit par planter en boucle avec des exceptions et par virer la conf et la corrompre (si je réactive la réception, ça ne fonctionne plus, il faut que j'efface la conf complètement).

      Si je reviens sur le tasmota d'origine avec ma conf habituelle, ça refonctionne nickel.

      Mon linky est paramétré en mode standard et l'abonnement est en triphasé. Peut-être une piste : je réside en Corse (donc c'est EDF SEI et pas ENEDIS mais je doute quand même un peu qu'ils aient modifié le protocole TIC).

      Est-ce que vous auriez une idée pour comprendre d'où vient le souci ?

      Nicolas BernaertsN 1 Reply Last reply Reply Quote
      • Nicolas BernaertsN Offline
        Nicolas Bernaerts @raoul
        last edited by

        @raoul Cela ressemble à une vitesse mal configurée.
        Avez vous fait un reset complet de la configuration lors du flash de mon fork ?
        Est-ce que la vitesse est bien configurée à Mode Standard dans Configuration / Teleinfo ?

        R 1 Reply Last reply Reply Quote
        • R Offline
          raoul @Nicolas Bernaerts
          last edited by raoul

          @Nicolas-Bernaerts oui j'ai fait un reset 6 la première fois. J'ai même passé un coup d'esptool erase-flash sur certains essais.

          Pour la vitesse, la détection auto ne fonctionne pas donc oui, c'est paramétré en mode standard.

          J'ai vu que vous avez codé un petit serveur TCP pour avoir un log des trames. J'avais dans l'idée de le backport dans la version d'origine afin de pouvoir comparer les trames reçues (j'ai été développeur C dans une autre vie). En préparant ça, j'ai remarqué que dans votre code, l'init de TasmotaSerial n'est pas appelée de la même manière pour les esp8266. Dans la version de Charles, le paramètre hardware_fallback vaut 2.

          Tada !!!

          Ca marche instantanément quand ce paramètre vaut deux !

          Nicolas BernaertsN 2 Replies Last reply Reply Quote
          • Nicolas BernaertsN Offline
            Nicolas Bernaerts @raoul
            last edited by

            @raoul Excellente nouvelle !
            En allant voir le code de @Charles, il a effectivement détecté un problème en fonction de la GPIO utilisée sur l'esp8266. Je vais m'aligner sur son code pour gérer les différentes implémentations.
            Merci pour le retour.

            1 Reply Last reply Reply Quote
            • Nicolas BernaertsN Offline
              Nicolas Bernaerts @raoul
              last edited by

              @raoul J'ai uploadé une version esp8266 4M basée sur Tasmota 15 qui intègre le correctif.
              Pourriez-vous tester pour confirmer que c'est réglé ?

              R 1 Reply Last reply Reply Quote
              • R Offline
                raoul @Nicolas Bernaerts
                last edited by

                @Nicolas-Bernaerts c'est bizarre. J'ai chargé le firmware (OTA), ça semble ne pas être stable. L'esp perd pas mal de paquets au niveau réseau, et home assistant ne se met plus à jour. Je suis revenu à ma version, ça fonctionne bien à nouveau. J'ai reuploadé la vôtre, rebelote pertes de paquets, et plus de maj dans ha. Par contre au niveau de l'interface web tasmota ça se met bien à jour régulièrement et il n'y a plus d'erreurs.

                Nicolas BernaertsN 1 Reply Last reply Reply Quote
                • Nicolas BernaertsN Offline
                  Nicolas Bernaerts @raoul
                  last edited by Nicolas Bernaerts

                  @raoul Comment avez vous déterminé qu'il y a des pertes de paquets ?
                  (sur un D1 mini Pro 16 Mb je n'ai aucune erreur de réception en mode standard)
                  Si l'interface Web de tasmota se met à jour sans erreur cela signifie que la réception est stable. Le problème est sans doute ailleurs.
                  Il est à noter que l'intégration Home Assistant de mon fork n'est pas basée sur l'auto-discovery Tasmota mais sur un auto-discovery MQTT natif. Il faut donc rechercher le device dans les devices MQTT. Vous aurez beaucoup plus de données publiées que les données standard de Tasmota.

                  R 1 Reply Last reply Reply Quote
                  • R Offline
                    raoul @Nicolas Bernaerts
                    last edited by

                    @Nicolas-Bernaerts avec un ping tout simple. L'esp cesse de répondre par moment pendant 20-30s comme s'il perdait le réseau. Il manque pas mal de ping même sans ça, sans qu'il y ait un pattern évident. Il ne reboot pas par contre. Je n'ai pas eu le temps d'investiguer aujourd'hui mais j'essaierai de compiler votre dernier commit demain matin pour confirmer que je reproduis bien. Il faut toujours partir du code de la 15.0.1 ?

                    Nicolas BernaertsN 1 Reply Last reply Reply Quote
                    • Nicolas BernaertsN Offline
                      Nicolas Bernaerts @raoul
                      last edited by Nicolas Bernaerts

                      @raoul Mon fork demande beaucoup plus au CPU que la version d'origine. En effet, toutes les fonctions et intégrations sont demandeuses en particulier en terme réseau. C'est d'autant plus le cas si la réception wifi n'est pas nickel.
                      L'esp8266 étant un mono coeur, la gestion réseau et la réception teleinfo sont partagées sur le même coeur. Vous êtes clairement aux limites des possibilités du CPU. Il est normal qu'une sollicitation réseau externe soit dépriorisée. Essayez un esp32 et vous verrez que tout devient fluide.

                      R 1 Reply Last reply Reply Quote
                      • R Offline
                        raoul @Nicolas Bernaerts
                        last edited by

                        @Nicolas-Bernaerts je comprends. Disons qu'avec votre dernier commit, c'est en train de devenir inutilisable sur un esp8266. C'est dommage. J'ai comparé ce matin entre la version que j'ai compilé avec vos sources d'il y a une semaine et les actuelles, dans le premier cas j'ai 5% de loss sur le ping, dans le second 20% (sur 1000 pings). Dans le premier les infos remontent correctement dans ha, dans le second quasiment plus. Je vais rester sur votre ancienne version en changeant juste l'init de TasmotaSerial pour le moment.

                        En tout cas super boulot. C'est top d'avoir le cos phi en temps réel ! un grand merci !

                        Nicolas BernaertsN 1 Reply Last reply Reply Quote
                        • Nicolas BernaertsN Offline
                          Nicolas Bernaerts @raoul
                          last edited by

                          @raoul C'est très etonnant car j'ai juste fait un refactoring du code pour éviter les modules multiples. Coté performances, cela devrait être totalement neutre.

                          Voici un ping réalisé ce matin sur un module esp8266 16M avec une alimentation Triphasé standard. Le ping répond plutôt très bien malgré un wifi moyen.
                          Il doit sans doute y avoir un autre problème.

                          Vous avez bien activé uniquement l'émission tous les +/- xxx W ?

                          Capture d’écran du 2025-07-28 09-33-36.png

                          R 1 Reply Last reply Reply Quote
                          • R Offline
                            raoul @Nicolas Bernaerts
                            last edited by

                            @Nicolas-Bernaerts Oui j'ai fait un test en essayant l'alléger la charge, sans résultat (sachant qu'avec mon build, j'ai paramétré une transmission à chaque trame).

                            J'ai voulu faire un build avec vos dernières sources afin de voir. Il a fallu que je réintègre esp_timer_get_time mais je vous confirme que j'arrive bien à reproduire le souci avec ces sources. Je vais continuer à investiguer demain pour voir si j'arrive à mettre le doigt sur ce qui cause ce comportement.

                            Nicolas BernaertsN 1 Reply Last reply Reply Quote
                            • Nicolas BernaertsN Offline
                              Nicolas Bernaerts @raoul
                              last edited by Nicolas Bernaerts

                              @raoul Un esp8266 ne peut pas tenir la charge de publication à chaque trame en mode standard (c'est quasiment toutes les secondes). Decochez toutes les options de publication et sélectionnez "à chaque télémétrie" en sélectionnant une période de télémétrie supérieure à 10s. Vous devriez retrouver un esp réactif.

                              Même pour un esp32, la publication à chaque trame est très stressante. Je le précise et le déconseille fortement sur ma page github.

                              De mémoire, le build officiel impose une publication toutes les 10 s maximum ...

                              R 1 Reply Last reply Reply Quote
                              • R Offline
                                raoul @Nicolas Bernaerts
                                last edited by

                                @Nicolas-Bernaerts oui j'ai bien lu votre page et j'ai précisé que j'avais fait le test aussi en réduisant la charge. Le problème ne peut pas venir de là puisqu'à configuration identique, ça fonctionne bien avec un firmware et pas avec l'autre. L'élément variant entre un module fonctionnel et un module qui ne l'est pas est le code, pas la conf. Donc ça vient forcément du code.

                                J'ai vu plusieurs problèmes ce matin. TeleinfoDriverEvery250ms n'est plus appelée pour commencer. Ensuite il y a un problème de logique avec teleinfo.hass.stage. Une fois qu'elle vaut UINT8_MAX, il n'y a rien pour la faire revenir à une valeur de publication (ou en tout cas je n'ai pas compris comment). La version d'avant était déjà concernée par ce problème.

                                Alors ça n'explique pas la dégradation sur la communication réseau mais c'est déjà un bout d'explication sur la partie communication data.

                                Nicolas BernaertsN 1 Reply Last reply Reply Quote
                                • Nicolas BernaertsN Offline
                                  Nicolas Bernaerts @raoul
                                  last edited by Nicolas Bernaerts

                                  @raoul Good shot !
                                  Effectivement je n'avais pas porté l'appel de TeleinfoDriverEvery250ms dans le refactoring. Je viens de publier une version esp8266 4M intégrant la correction.
                                  Concernant HASS, c'est logique car la déclaration n'est faite qu'une seule fois au boot en mode persistant. Ce sont ensuite les étiquettes "Consommation & Production" qui sont exploitées par HASS.
                                  Le refactoring étant en cours, vous êtes en fait un beta testeur 🙂

                                  R 2 Replies Last reply Reply Quote
                                  • R Offline
                                    raoul @Nicolas Bernaerts
                                    last edited by

                                    @Nicolas-Bernaerts Ravi d'avoir pu contribuer un peu 🙂 Je suis toujours perplexe sur l'histoire des pings. Je vais lancer des tests sur 12h histoire d'avoir quelque chose de significatif pour confirmer/infirmer. Je vous tiens au courant.

                                    1 Reply Last reply Reply Quote
                                    • R Offline
                                      raoul @Nicolas Bernaerts
                                      last edited by

                                      @Nicolas-Bernaerts le problème sur le réseau est aussi résolu. Avant / après j'ai à peu près 7% de pertes sur les pings. A noter qu'en désactivant juste l'appel aux fonctions pour les relais virtuels, les pertes tombent à 2%. Ce serait peut-être intéressant de pouvoir désactiver des fonctionnalités pour ceux qui souhaitent juste collecter / calculer des infos à partir du linky et les transmettre.

                                      1 Reply Last reply Reply Quote
                                      • First post
                                        Last post
                                      Copyright © 2022 Charles-Henri Hallard | Return to blog page | Powered by NodeBB