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

    Wemos D1 ESP32 + TIC v1.1 - checksum errors

    Scheduled Pinned Locked Moved Denky D4
    7 Posts 3 Posters 627 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.
    • sdxS Offline
      sdx
      last edited by

      Bonjour à tous,

      J'essaie de récupérer les infos d'un linky avec le setup suivant:

      • Wemos D1 ESP32 (Aliexpress)
      • TIC v1.1
      • Linky mode standard
      • Tasmota 12.4.0.2

      Mon pb est la réception de trames erronnées: je vois plein d’erreurs comme celles-ci dans la console:

      20:41:14.208 LibTeleinfo::checkLine Err checksum 0x00 != 0x57 (total errors=21)
      20:41:35.464 LibTeleinfo::checkLine Err checksum 0x00 != 0x3E (total errors=22)
      20:41:42.966 LibTeleinfo::checkLine Err checksum 0x00 != 0x3E (total errors=23)
      20:41:52.967 LibTeleinfo::checkLine Err checksum 0x00 != 0x57 (total errors=24)
      20:42:03.209 LibTeleinfo::checkLine Err checksum 0x00 != 0x3E (total errors=25)
      

      392b74b2-e27d-44fc-a400-bd1bcd3ab0a6-image.png

      et les infos restent à 0, sauf EnergyTotal (pourquoi celui-là et pas les autres???):

      cb3dc081-9be6-4d16-bbd8-d8a788c122d6-image.png

      Du coup, pour debugger, j'ai intégré et flashé le code Teleinfo_stats en ajustant le code pour utiliser le GPIO 23: celui-ci confirme la mauvaise réception: je ne vois passer que des caractères de controle de manière erratique (STX, ETX, INTERRUPT etc. mais rarement des infos intelligibles)

      Donc ensuite j'ai branché mon oscilloscope et comparé l’entrée du module teleinfo (la modulation TIC directe du linky et la sortie sur le port RX du D1). Je pense qu’il y a un soucis dans la transformation du signal vers un signal série classique:

      6f0cfd99-f8a5-4302-a29a-c87b757507fe-image.png

      A noter que j'ai fait une capture à un moment pas forcément idéal car manque de chance, le signal RX était plat à ce moment là... En fait, il y a parfois des signaux carrés (courbe bleue), mais le truc, c'est que les signaux carrés fabriqués coté RX ne semblent pas reliés au signal modulé 50kHz du Linky.

      J'utilise picoscope et le soft "sait" décoder les signaux UART: quand je mets un décodage approprié (9600 bauds, 7bits, 1 bit de stop, parité paire etc.), j'ai des "frame errors" dans ~90% des cas.

      Bref, j'ai un soucis de signal RX transmis au D1...

      Composant défectueux ?

      Pb de résistances ? (j'ai cru voir qu'il fallait peut être ajuster certaines valeurs). En gros, on voit que la sortie du Linky semble correcte mais ca ne se traduit pas par un signal clair coté RX.

      Merci par avance pour vos idées 🙂


      Stéphane Desneux
      Web: https://iot.bzh

      CharlesC 1 Reply Last reply Reply Quote
      • CharlesC Offline
        Charles @sdx
        last edited by

        @sdx si tu es en mode standard, tu peux ajouter une 1K en série avec l'un des fils allant à la téléinfo du compteur (ceci afin de faire passer la résistance d'entrée de 220Ohm à 1.22KOhm) ? peu importe quel fil.

        sdxS 1 Reply Last reply Reply Quote
        • sdxS Offline
          sdx @Charles
          last edited by

          @Charles

          Effectivement, c'est beaucoup mieux:

          19604b8b-1716-4dba-9d4d-599f27eb66e8-image.png

          Et là, le programme TeleinfoStats semble afficher des trames qui ont du sens:

          Est-ce qu'une sortie "normale" ressemble bien à ca ?

          =====================================
                    Teleinfo stats
          =====================================
            You can change teleinfo mode from
          Historique to Standard with B0 button
          TIC RX=GPIO23  Mode:Standard
          
          ...
          
          ADSC<TAB>031961839946<TAB>H
          VTIC<TAB>02<TAB>J
          DATE<TAB>E230429191959<TAB><TAB>T
          NGTF<TAB>      BASE      <TAB><
          LTARF<TAB>      BASE      <TAB>F
          EAST<TAB>027700365<TAB>-
          EASF01<TAB>027700365<TAB>@
          EASF02<TAB>000000000<TAB>#
          EASF03<TAB>000000000<TAB>$
          EASF04<TAB>000000000<TAB>%
          EASF05<TAB>000000000<TAB>&
          EASF06<TAB>000000000<TAB>'
          EASF07<TAB>000000000<TAB>(
          EASF08<TAB>000000000<TAB>)
          EASF09<TAB>000000000<TAB>*
          EASF10<TAB>000000000<TAB>"
          EASD01<TAB>021304609<TAB>9
          EASD02<TAB>006395756<TAB>J
          EASD03<TAB>000000000<TAB>"
          EASD04<TAB>000000000<TAB>#
          IRMS1<TAB>004<TAB>2
          URMS1<TAB>236<TAB>E
          PREF<TAB>06<TAB>E
          PCOUP<TAB>06<TAB>_
          SINSTS<TAB>00966<TAB>[
          SMAXSN<TAB>E230429122605<TAB>03544<TAB>>
          SMAXSN-1<TAB>E230428123414<TAB>03776<TAB>!
          CCASN<TAB>E230429190000<TAB>01904<TAB>D
          CCASN-1<TAB>E230429183000<TAB>01034<TAB>^
          UMOY1<TAB>E230429191000<TAB>237<TAB>6
          STGE<TAB>003A4001<TAB>>
          MSG1<TAB>PAS DE          MESSAGE         <TAB><
          PRM<TAB>14836179379910<TAB>E
          RELAIS<TAB>000<TAB>B
          NTARF<TAB>01<TAB>N
          NJOURF<TAB>00<TAB>&
          NJOURF+1<TAB>00<TAB>B
          PJOURF+1<TAB>00008001 NONUTILE NONUTILE NONUTILE NONUTILE NONUTILE NONUTILE NONUTILE NONUTILE NONUTILE NONUTILE<TAB>9<ETX><STX>
          

          Stéphane Desneux
          Web: https://iot.bzh

          sdxS 1 Reply Last reply Reply Quote
          • sdxS Offline
            sdx @sdx
            last edited by sdx

            @Charles

            Suite à un essai en mode "en vrac" où j'ai ajouté une résistance en amont (avant le connecteur vert - voir résultats précédents), j'ai rendu le montage plus stable.

            Je n'avais pas de 1 KΩ en CMS donc j'ai déssoudé R3 (220 Ω) et fait un pont avec une résistance "normale" enveloppée dans du thermo rouge, histoire de garder la charte de couleur intacte 😀

            Donc j'ai bien 1 KΩ en entrée au lieu de 220 Ω (et non pas 1.2 KΩ, comme dans le montage "volant" précédent où j'avais les 2 résistances en série). La valeur ne semble pas changer grand chose: 1 KΩ ou 1.2 KΩ reviennent au même a priori.

            f6aeb89c-3703-4ff8-b55f-aabd2a476a5f-image.png

            93b8ee0f-0cd3-4fb2-9ece-667ab80c36e6-image.png

            Le résultat est maintenant correct:

            9f5892c2-bcd9-4f87-a91e-e0d380957a4b-image.png

            (en bleu, l'entrée du linky, en rouge la sortie = le signal sur l'IO23).

            Je ne sais pas trop ce qui t'as amené à mettre une résistance de 220Ω au lieu de 4.7KΩ, car la plupart des montages utilisent 4.7KΩ en entrée de l'optocoupleur 814, y compris dans d'autres de tes montages, comme ici:

            75621b33-4e97-4f11-a242-b4b25714b91b-image.png
            [ref: https://hallard.me/pitinfov12/]

            Conclusion: pour le Wemos TIC V1.2, ca pose qqes questions:

            • faut-il prévoir une résistance variable selon le mode standard/historique ?
            • est-ce que mon montage fonctionnerait en mode historique ?
            • faut-il implanter 2 résistances en série et ajouter un ou 2 jumpers sur la carte pour faire un bypass par ex ?
            • faut-il simplement caler un potentiomètre (difficile à régler sans oscillo !) ?

            Merci en tous cas pour le coup de main: tout remonte via Tasmota dans Home Assistant et ca marche nickel 😀


            Stéphane Desneux
            Web: https://iot.bzh

            CharlesC 1 Reply Last reply Reply Quote
            • CharlesC Offline
              Charles @sdx
              last edited by Charles

              @sdx correct, les valeurs ont toujours été empiriques en fonction des remontés utilisateurs (car j'ai pas tous les compteurs et leurs dérives sous la main) donc on a du faire en fonction des expériences utilisateurs.

              La 4K7 était pour être conforme à la spéc EdF mais une fois de plus le mieux étant l'ennemi du bien (règle d'or).

              D'ailleurs beaucoup des retours sont sur ce forum. Et une fois callés les bonnes valeurs fonctionnelles partout (ce qui a pris quelques années et m'a valu un nombre incalculable de déssoudage / ressoudages de CMS à la main sur les uTInfo vendus) est apparu le mode standard du Linky venu à nouveau tout casser (après la première vague de production sinon c'est pas drôle)

              faut-il prévoir une résistance variable selon le mode standard/historique ?

              Idéalement oui mais sachant que la 1K2 doit marcher dans 95% des cas en mode historique

              est-ce que mon montage fonctionnerait en mode historique ?

              oui à 95%

              faut-il implanter 2 résistances en série et ajouter un ou 2 jumpers sur la carte pour faire un bypass par ex ?

              j'y ai pensé mais la resistance variable est plus simple

              faut-il simplement caler un potentiomètre (difficile à régler sans oscillo !) ?

              C'est la solution retenue, maintenant les uTinfo possèdent la résistance variable tout comme les Denky D4. Bien entendu la prochaine fournée des WeMos TIC auront cette résistance variable aussi tout comme les PITinfo.

              ça fonctionne dans 100% des cas en historique, donc tu règles uniquement si ça fonctionne pas en standard (cas rares), tu tournes jusque'au moement ou ça fonctionne, généralement en butée 1K.

              sdxS 1 Reply Last reply Reply Quote
              • sdxS Offline
                sdx @Charles
                last edited by

                @Charles

                Merci pour toutes les précisions.

                Heureux de voir que le schmilblick avance malgré tout et que tu peux converger vers une solution unique 🙂

                Si tu as besoin d'un testeur qui possède un Linky en mode standard, n'hésites pas à me contacter par la suite.

                Kenavo!


                Stéphane Desneux
                Web: https://iot.bzh

                1 Reply Last reply Reply Quote
                • ChartreusitoC Offline
                  Chartreusito
                  last edited by

                  Bonjour,

                  Je me permet de rebondir sur ce sujet ayant été confronté à un problème de bad crc visible sur l'interface web du teleinfo. J'utilise également un Wemos D1 ESP32 avec le TIC v1.1, et pour info je suis en contrat Tempo.

                  J'ai installé l'ESP via ESPHome pour remontée des infos dans Home Assistant.

                  J'avais déjà le soucis de bad crc en mode historique et il était toujours présent en mode standard donc je me suis décidé à mettre une résistance de 1k Ohms comme proposé ici, cela semble avoir résolu durablement mon soucis.

                  J'avais quelques soucis de valeurs incohérentes qui faussaient les stats, à voir si cela règlera également ce problème.

                  Merci beaucoup pour votre travail et vos conseils.

                  1 Reply Last reply Reply Quote
                  • First post
                    Last post

                  2

                  Online

                  5.7k

                  Users

                  534

                  Topics

                  5.0k

                  Posts

                  Top Topics

                  • Bonjour Nicolas
                    Nicolas BernaertsN
                    Nicolas Bernaerts
                    0
                    19
                    312

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

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

                  • CC1101 mini shield pour raspberry
                    CharlesC
                    Charles
                    0
                    5
                    151

                  • CC1101
                    CharlesC
                    Charles
                    0
                    2
                    66

                  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