Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Praktische Anwendungen (Showcase)
  4. Stromzähler per Sonoff ESP8266 auslesen

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.0k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.8k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.0k

Stromzähler per Sonoff ESP8266 auslesen

Scheduled Pinned Locked Moved Praktische Anwendungen (Showcase)
stromzähler auslesensonoffesp8266tasmotasmld0-schnittstellevolkszählerstromzähler
562 Posts 83 Posters 206.1k Views 84 Watching
  • 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.
  • F fruehwi

    Hallo,

    Danke @Jaschkopf für die sehr gute Anleitung. Dank dieser Anleitung habe ich ATOM zum laufen gebraucht und hab auch die ersten Sonoff POW R2 geflashed.

    Der Sonoff POW R2 funktioniert mit Tasmota sehr gut, aber leider habe ich das auslesen per SML nicht hinbekommen.

    Ich habe eine BPW40 mit Poti am RX ( natürlich auch 3,3V und GND) wie im Bild beschrieben Bild der Schaltung im Punkt Singalaufbereitung

    angeschlossen. Aber leider bekomme aber leider keine Daten.
    Nun ist die Frage, welcher GPIO ist der richtige für einen Sonoff POW R2 oder Sonoff RF?

    Danke
    Viele Grüße,

    J Offline
    J Offline
    Jaschkopf
    wrote on last edited by
    #34

    @fruehwi ich kann das Bild leider nicht öffnen. Musst rausfinden an welchem gpio du mit rx dran bist und den dann in Skript angeben.

    Gruß Jaschkopf

    1 Reply Last reply
    0
    • J Jaschkopf

      @RalfTh Ok jetzt hab ich mich selbst verwirrt. D7 am D1 war schon richtig als GPIO13 im Skript. Musste selbst nochmal nachschlagen gerade.

      Aber das sich dein Skript immer wieder deaktiviert ist nicht richtig. Ich hatte den Fall bei mir auch mal und musste die Firmware neu flashen. Scheint ein Bug zu sein. Vergiss nur nicht den CFG_HOLDER zu verändern bevor du neu compilierst, wie in der Anleitung beschrieben.

      Gruß Jaschkopf

      RalfThR Offline
      RalfThR Offline
      RalfTh
      wrote on last edited by
      #35

      @Jaschkopf Also ich bin ziemlich frustriert. Habe jetzt schon einen zweiten Wemos Nano D1 geflasht und trotzdem geht nichts. Den Lesekopf habe ich auch schon gedreht, aber auch Fehlanzeige.
      Mir fehlt auch irgendwie eine Beschreibung, was dieser Lesekopf und der ESP alles macht. Ich kann das Verhalten meines Zählers überhaupt nicht nachvollziehen.

      Nochmal meine Konfiguration:
      Mein Zähler
      656b37b6-7e9f-4ec8-8585-4d6d1887fca5-image.png
      7b00d904-b2a0-48a6-97e0-c89a533bd867-image.png
      05a46542-aa5b-40d8-8f9a-260160e625bd-image.png

      Wenn ich mit der Taschenlampe die PIN eingebe erscheint in der zweiten Zeile des Display die aktuelle Leistung , also P. Setze ich jetzt den Lesekopf auf, beginnt das Infofeld (zweite Zeile des Displays) plötzlich zwischen den einzelnen Informationen hin und her zu schalten. Irgendwann endet dies bei der PIN-Eingabe und der wahllosen Eingabe eines PIN. Dies führt letztendlich dazu, dass der Zähler, wegen fehlender korrekter PIN das Infofeld sperrt. Ich habe meinen Lesekopf so positioniert, dass T1 auf die Datenschnittstelle "schaut" und D1 auf den Lichtsensoreingang. (Siehe Bild 2) Das habe ich auch mehrmals kontrolliert.

      Dieses Verhalten zeigt der Zähler, sobald ich den Lesekopf am Zähler montiere und diesen, ohne Rx, lediglich an die Versorgungsspannung anschließe.

      Hat noch jemand einen solchen Zähler im Einsatz?

      Wir haben uns verirrt, kommen aber gut voran.

      J 1 Reply Last reply
      0
      • RalfThR RalfTh

        @Jaschkopf Also ich bin ziemlich frustriert. Habe jetzt schon einen zweiten Wemos Nano D1 geflasht und trotzdem geht nichts. Den Lesekopf habe ich auch schon gedreht, aber auch Fehlanzeige.
        Mir fehlt auch irgendwie eine Beschreibung, was dieser Lesekopf und der ESP alles macht. Ich kann das Verhalten meines Zählers überhaupt nicht nachvollziehen.

        Nochmal meine Konfiguration:
        Mein Zähler
        656b37b6-7e9f-4ec8-8585-4d6d1887fca5-image.png
        7b00d904-b2a0-48a6-97e0-c89a533bd867-image.png
        05a46542-aa5b-40d8-8f9a-260160e625bd-image.png

        Wenn ich mit der Taschenlampe die PIN eingebe erscheint in der zweiten Zeile des Display die aktuelle Leistung , also P. Setze ich jetzt den Lesekopf auf, beginnt das Infofeld (zweite Zeile des Displays) plötzlich zwischen den einzelnen Informationen hin und her zu schalten. Irgendwann endet dies bei der PIN-Eingabe und der wahllosen Eingabe eines PIN. Dies führt letztendlich dazu, dass der Zähler, wegen fehlender korrekter PIN das Infofeld sperrt. Ich habe meinen Lesekopf so positioniert, dass T1 auf die Datenschnittstelle "schaut" und D1 auf den Lichtsensoreingang. (Siehe Bild 2) Das habe ich auch mehrmals kontrolliert.

        Dieses Verhalten zeigt der Zähler, sobald ich den Lesekopf am Zähler montiere und diesen, ohne Rx, lediglich an die Versorgungsspannung anschließe.

        Hat noch jemand einen solchen Zähler im Einsatz?

        J Offline
        J Offline
        Jaschkopf
        wrote on last edited by
        #36

        @RalfTh wenn dein Zähler eine Eingabe registriert muss er ja über die optische Taste Impulse bekommen die vom Lesekopf kommen müssen. Wenn du tx und rx nicht angeschlossen hast und es trotzdem passiert hast du vermutlich beim Zusammenbau des Lesekopf einen Fehler gemacht. Vielleicht irgendwo ein Kurzschluss oder ein Bauteil durch zu hohe Temperatur beim löten beschädigt. Guck man durch deine Handy Kamera auf den Lesekopf ob die ir led leuchtet bzw blinkt. Wenn du tx nicht angeschlossen hast und die led trotzdem leuchtet muss der Fehler in der Hardware des Lesekopf liegen.

        Gruß Jaschkopf

        mkrobeM 1 Reply Last reply
        0
        • J Jaschkopf

          @RalfTh wenn dein Zähler eine Eingabe registriert muss er ja über die optische Taste Impulse bekommen die vom Lesekopf kommen müssen. Wenn du tx und rx nicht angeschlossen hast und es trotzdem passiert hast du vermutlich beim Zusammenbau des Lesekopf einen Fehler gemacht. Vielleicht irgendwo ein Kurzschluss oder ein Bauteil durch zu hohe Temperatur beim löten beschädigt. Guck man durch deine Handy Kamera auf den Lesekopf ob die ir led leuchtet bzw blinkt. Wenn du tx nicht angeschlossen hast und die led trotzdem leuchtet muss der Fehler in der Hardware des Lesekopf liegen.

          Gruß Jaschkopf

          mkrobeM Offline
          mkrobeM Offline
          mkrobe
          wrote on last edited by
          #37

          @Jaschkopf ...bekomme auch keine Daten mit dem Lesekopf. Ist es normal, dass OBIS angezeigt wird, obwohl SML comiliert ist ?
          Liegt es vielleicht daran? Habe einen EMH ED300L mit dem USB-Lesekopf an einem Raspi funktionierte das bislang einwandfrei.

          1 Reply Last reply
          0
          • J Offline
            J Offline
            Jaschkopf
            wrote on last edited by
            #38

            Also da offensichtlich häufig Probleme auftreten hier nochmal ein paar Tipps:

            • In der Firmware wird lediglich der Treiber sowie das Skript aktiviert
            • Die Konfiguration des Zählers erfolgt dann in der Weboberfläche im Skript
            • Im Skript muss die Zählersprache (SML, OBIS, MODBUS, etc.) der RX/TX Pin, die Baudrate, etc angegeben werden
            • In der Firmware muss nichts weiter eingestellt werden
            • Der Lesekopf muss akkurat gelötet werden. Wenn Transistoren oder Dioden zu heiß gelötet werden, können diese zerstört werden!
            • Der Lesekopf muss mit dem schwarzen "Auge" (Fototransistor=Eingang=RX) so ausgerichtet werden, dass er auf der Infrarotdiode des Zähler liegt. Das kann mit einer Handykamera geprüft werden, dadurch wird das IR-Licht sichtbar. Ggf muss der Lesekopf um 180° gedreht werden.
            • Der RX-Pin des Lesekopf muss an richtigen GPIO angeschlossen werden. Dieser wird im Skript hinterlegt. Ggf. mal einen anderen Pin probieren. Ich konnte z.B. mit einem NodeMCU auf GPIO1+3 die als RX+TX auf dem Board beschriftet sind, keine Daten empfangen. Vermutlich weil Tasmota die Pins für etwas anderes nutzt. Deswegen bin ich beim NodeMCU auf GPIO 13/15 (D7/D8) gegangen.
            • Um zu Prüfen ob der Zähler Daten sendet, kann die Schnittstelle durch eine Handykamera betrachtet werden. Durch den Filter der Kamera wird das IR-Licht sichtbar.
            • Um zu Prüfen ob der Lesekopf Daten vom Zähler empfängt, kann über die Konsole des Webinterface das Debugging aktiviert werden. Dazu in der Konsole "sensor53 d1" eingeben. "d1" aktiviert in diesem Fall das Debugging für den 1. im Skript definierten Zähler. Wenn mehrere Zähler mit mehren Leseköpfen bedient werden kann auch das Debugging für den 2. Zähler mit "sensor53 d2" aktiviert werden. Mit "sensor53 d0" wird das Debugging für alle Zähler deaktiviert.
            • Sollten mit aktiviertem Debugging nicht regelmäßig (ca. 1x pro sek.) Datenpakete in der Konsole sichtbar sein, stimmt etwas aus den vorigen Punkten nicht.
              Beispiel für ein Datenpaket eines SML Zähler:
            11:16:59 : 38 00 76 05 00 d5 97 8b 62 00 62 00 72 63 07 01 
            11:16:59 : 77 07 ff ff ff ff ff ff 0b 0a 01 4c 47 5a 00 03 34 b7 af 07 01 00 62 0a ff ff 72 62 01 65 00 47 35 34 75 
            11:16:59 : 77 07 01 00 60 32 01 01 01 01 01 01 04 4c 47 5a 01 
            11:16:59 : 77 07 01 00 60 01 00 ff 01 01 01 01 0b 0a 01 4c 47 5a 00 03 34 b7 af 01 
            11:16:59 : 77 07 01 00 01 08 00 ff 65 00 1c 11 04 72 62 01 65 00 47 35 34 62 1e 52 ff 69 00 00 00 00 00 b5 98 96 01 
            11:16:59 : 77 07 01 00 c4 d1 01 
            11:16:59 : 77 07 01 00 10 07 00 ff 01 01 62 1b 52 00 59 00 00 00 00 00 00 71 01 63 45 bd 00 00 00 1b 1b 1b 1b 1a 02 e1 
            11:16:59 : d2 1b 1b 1b 1b 01 01 01 01 76 05 00 d5 97 
            11:16:59 : 8d 62 00 62 00 72 63 01 01 76 01 07 ff ff ff ff ff ff 05 00 47 32 84 0b 0a 01 4c 47 5a 00 03 34 b7 af 72 62 01 65 00 47 35 35 01 63 29 a2 00 76 05 00 d5 
            

            OBIS Zähler senden etwas andere Strings. Dort kann man dann deutlich die OBIS Kennzahl erkennen:
            1-0:1.8.0 = Summe Wirkenergie Verbrauch Tarife T1 + T2 [Wh]
            1-0:1.8.1 = Wirkenergie Verbrauch Hochtarif T1 [Wh]
            1-0:1.8.2 = Wirkenergie Verbrauch Niedertarif T2 [Wh]
            1-0:16.7.0 = Momentane Leistung [W]
            1-0:36.7.0 = Momentane Leistung Phase L1 [W]
            1-0:56.7.0 = Momentane Leistung Phase L2 [W]
            1-0:76.7.0 = Momentane Leistung Phase L3 [W]

            Ich hoffe das hilft einigen weiter.

            Gruß Jaschkopf

            RalfThR 1 Reply Last reply
            1
            • mkrobeM Offline
              mkrobeM Offline
              mkrobe
              wrote on last edited by
              #39

              @Jaschkopf : wofür steht in Deinem Skript "tper=10" ?
              Finde dazu in der Anleitung keine Beschreibung.

              J 1 Reply Last reply
              0
              • mkrobeM mkrobe

                @Jaschkopf : wofür steht in Deinem Skript "tper=10" ?
                Finde dazu in der Anleitung keine Beschreibung.

                J Offline
                J Offline
                Jaschkopf
                wrote on last edited by
                #40

                @mkrobe mit tper=10 wird die teleperiod auf 10sek gesetzt. Das ist der Intervall in dem die Daten per MQTT gesendet werden. 10 ist kleinst mögliche Wert.

                Hier sind noch ein paar sehr nützliche Links:
                Syntax für das Skript:
                https://github.com/arendst/Tasmota/wiki/smart-meter-interface
                Beispielskripte für verschiedene Zähler:
                https://github.com/arendst/Tasmota/wiki/Smart-Meter-Interface-Descriptors
                Wiki für Skript Sprache:
                https://github.com/arendst/Tasmota/wiki/Scripting-Language
                Kommandos für Sensor53:
                https://github.com/arendst/Tasmota/wiki/Commands#sensor53

                Wenn man mal die Wiki's durch geht findet man eigentlich alles sehr gut beschrieben was der Skripter so kann.

                Hier nochmal ein Screenshot von meinem Webinterface und dazu mein Skript. Da kann man gut sehen was alles (und noch viel mehr!!) möglich ist. Die Skript Sektion ist ein sehr mächtiges Tool in Tasmota!

                Stromzähler.PNG

                >D
                s1="Tagesverbrauch: {m}<b><span style="
                v2=0
                hr=0
                md=0
                yr=0
                ;Strom
                p:sm=0
                sd=0
                p:sma=0
                smn=0
                p:sya=0
                syn=0
                sspr=0.2583
                yspr=0
                ysgp=156.00
                y€=0
                
                
                >T
                v2=SML#DJ_TPWRIN
                
                
                >B
                ->sensor53 r
                tper=10
                
                
                >S
                ;Tagesverbrauch
                hr=hours
                if chg[hr]>0
                and hr==0
                and v2>0
                then
                sm=v2
                svars
                endif
                if upsecs%tper==0{
                sd=v2-sm
                }
                
                ;Monatsverbrauch
                md=day
                if chg[md]>0
                and md==1
                and v2>0
                then
                sma=v2
                svars
                endif
                if upsecs%tper==0{
                smn=v2-sma
                } 
                
                ;Jahresverbrauch
                yr=year
                if chg[yr]>0
                and hr==0
                and md==1
                and v2>0
                then
                sya=v2
                svars
                endif
                if upsecs%tper==0{
                syn=v2-sya
                ;Kosten
                yspr=syn*sspr+ysgp
                }
                
                >J
                ,"Verbrauch Tag":"%sd%"
                ,"Verbrauch Monat":"%smn%"
                ,"Verbrauch Jahr":"%syn%"
                ,"Zählerstand 0:00Uhr":"%3sm%"
                ,"Zählerstand Monatsanfang":"%3sma%"
                ,"Zählerstand Jahrenanfang":"%3sya%"
                
                >W
                ==============
                Tagesverbrauch:  {m} %3sd%  KWh
                Monatsverbrauch: {m} %3smn% KWh
                Jahresverbrauch: {m} %3syn% KWh
                ==============
                Preis/kWh:       {m} %4sspr% €
                Grundpreis:      {m} %2ysgp% €
                --------------
                Kosten lfd. Jahr:{m} %2yspr% €
                ==============
                Zählerstände:
                aktuell:         {m} %3v2% KWh
                0:00 Uhr:        {m} %3sm% KWh
                Monatsanfang:    {m} %3sma% KWh
                Jahresanfang:    {m} %3sya% KWh
                ==============
                
                
                >M
                +1,13,s,16,9600,SML
                1,77070100010800ff@1000,Verbrauch,KWh,DJ_TPWRIN,4
                1,77070100020800ff@1000,Einspeisung,KWh,DJ_TPWROUT,4
                1,77070100100700ff@1,Akt. Verbrauch,W,DJ_TPWRCURR,0
                #
                

                Gruß Jaschkopf

                mkrobeM RalfThR 2 Replies Last reply
                0
                • J Jaschkopf

                  Also da offensichtlich häufig Probleme auftreten hier nochmal ein paar Tipps:

                  • In der Firmware wird lediglich der Treiber sowie das Skript aktiviert
                  • Die Konfiguration des Zählers erfolgt dann in der Weboberfläche im Skript
                  • Im Skript muss die Zählersprache (SML, OBIS, MODBUS, etc.) der RX/TX Pin, die Baudrate, etc angegeben werden
                  • In der Firmware muss nichts weiter eingestellt werden
                  • Der Lesekopf muss akkurat gelötet werden. Wenn Transistoren oder Dioden zu heiß gelötet werden, können diese zerstört werden!
                  • Der Lesekopf muss mit dem schwarzen "Auge" (Fototransistor=Eingang=RX) so ausgerichtet werden, dass er auf der Infrarotdiode des Zähler liegt. Das kann mit einer Handykamera geprüft werden, dadurch wird das IR-Licht sichtbar. Ggf muss der Lesekopf um 180° gedreht werden.
                  • Der RX-Pin des Lesekopf muss an richtigen GPIO angeschlossen werden. Dieser wird im Skript hinterlegt. Ggf. mal einen anderen Pin probieren. Ich konnte z.B. mit einem NodeMCU auf GPIO1+3 die als RX+TX auf dem Board beschriftet sind, keine Daten empfangen. Vermutlich weil Tasmota die Pins für etwas anderes nutzt. Deswegen bin ich beim NodeMCU auf GPIO 13/15 (D7/D8) gegangen.
                  • Um zu Prüfen ob der Zähler Daten sendet, kann die Schnittstelle durch eine Handykamera betrachtet werden. Durch den Filter der Kamera wird das IR-Licht sichtbar.
                  • Um zu Prüfen ob der Lesekopf Daten vom Zähler empfängt, kann über die Konsole des Webinterface das Debugging aktiviert werden. Dazu in der Konsole "sensor53 d1" eingeben. "d1" aktiviert in diesem Fall das Debugging für den 1. im Skript definierten Zähler. Wenn mehrere Zähler mit mehren Leseköpfen bedient werden kann auch das Debugging für den 2. Zähler mit "sensor53 d2" aktiviert werden. Mit "sensor53 d0" wird das Debugging für alle Zähler deaktiviert.
                  • Sollten mit aktiviertem Debugging nicht regelmäßig (ca. 1x pro sek.) Datenpakete in der Konsole sichtbar sein, stimmt etwas aus den vorigen Punkten nicht.
                    Beispiel für ein Datenpaket eines SML Zähler:
                  11:16:59 : 38 00 76 05 00 d5 97 8b 62 00 62 00 72 63 07 01 
                  11:16:59 : 77 07 ff ff ff ff ff ff 0b 0a 01 4c 47 5a 00 03 34 b7 af 07 01 00 62 0a ff ff 72 62 01 65 00 47 35 34 75 
                  11:16:59 : 77 07 01 00 60 32 01 01 01 01 01 01 04 4c 47 5a 01 
                  11:16:59 : 77 07 01 00 60 01 00 ff 01 01 01 01 0b 0a 01 4c 47 5a 00 03 34 b7 af 01 
                  11:16:59 : 77 07 01 00 01 08 00 ff 65 00 1c 11 04 72 62 01 65 00 47 35 34 62 1e 52 ff 69 00 00 00 00 00 b5 98 96 01 
                  11:16:59 : 77 07 01 00 c4 d1 01 
                  11:16:59 : 77 07 01 00 10 07 00 ff 01 01 62 1b 52 00 59 00 00 00 00 00 00 71 01 63 45 bd 00 00 00 1b 1b 1b 1b 1a 02 e1 
                  11:16:59 : d2 1b 1b 1b 1b 01 01 01 01 76 05 00 d5 97 
                  11:16:59 : 8d 62 00 62 00 72 63 01 01 76 01 07 ff ff ff ff ff ff 05 00 47 32 84 0b 0a 01 4c 47 5a 00 03 34 b7 af 72 62 01 65 00 47 35 35 01 63 29 a2 00 76 05 00 d5 
                  

                  OBIS Zähler senden etwas andere Strings. Dort kann man dann deutlich die OBIS Kennzahl erkennen:
                  1-0:1.8.0 = Summe Wirkenergie Verbrauch Tarife T1 + T2 [Wh]
                  1-0:1.8.1 = Wirkenergie Verbrauch Hochtarif T1 [Wh]
                  1-0:1.8.2 = Wirkenergie Verbrauch Niedertarif T2 [Wh]
                  1-0:16.7.0 = Momentane Leistung [W]
                  1-0:36.7.0 = Momentane Leistung Phase L1 [W]
                  1-0:56.7.0 = Momentane Leistung Phase L2 [W]
                  1-0:76.7.0 = Momentane Leistung Phase L3 [W]

                  Ich hoffe das hilft einigen weiter.

                  Gruß Jaschkopf

                  RalfThR Offline
                  RalfThR Offline
                  RalfTh
                  wrote on last edited by
                  #41

                  @Jaschkopf In deiner ersten Beschreibung habe ich nichts von PIN 15 und Tx gefunden. Deshalb habe ich das überhaupt nicht angeschlossen. Und in deinem ersten Skript habe ich den PIN 15 (Zeile 6) auch nicht gefunden. Ich probier das jetzt mal mit deinem anderen Skript und werde berichten.

                  Wir haben uns verirrt, kommen aber gut voran.

                  J 1 Reply Last reply
                  0
                  • RalfThR RalfTh

                    @Jaschkopf In deiner ersten Beschreibung habe ich nichts von PIN 15 und Tx gefunden. Deshalb habe ich das überhaupt nicht angeschlossen. Und in deinem ersten Skript habe ich den PIN 15 (Zeile 6) auch nicht gefunden. Ich probier das jetzt mal mit deinem anderen Skript und werde berichten.

                    J Offline
                    J Offline
                    Jaschkopf
                    wrote on last edited by
                    #42

                    @RalfTh lass dich davon bitte nicht verwirren. Es gibt Zähler die senden ihre Daten nicht freiwillig. Da dein Zähler aber unaufgefordert die Daten alle 1sek sendet kannst du TX völlig vernachlässigen. Dein Problem liegt wo anders weil dein Zähler offensichtlich eine Betättigung der optischen Taste registriert sobald du den Lesekopf aufsetzt. Das darf nicht sein! Da stimmt garantiert etwas mit deiner Platine nicht. Mach mal bitte ein Foto von deiner Platine, vielleicht kann man darauf etwas erkennen. Bitte von beiden Seiten!

                    Gruß Jaschkopf

                    RalfThR S 2 Replies Last reply
                    0
                    • K Offline
                      K Offline
                      Kugelkopf
                      wrote on last edited by
                      #43

                      Hier übrigens ein weiteres Tutorial. Wenn man nicht unbedingt eine Sendediode benötigt für deinen Zähler, um diesen anzustoßen überhaupt etwas zu senden, reicht auch ein normaler fototransistor für ein paar Cent zum auslesen der Zähler.
                      Und selbst für den zweiten Fall, kann man mit etwas Elektro Verständnis auch eine ir led zum leuchten->senden bekommen.

                      J 1 Reply Last reply
                      0
                      • K Kugelkopf

                        Hier übrigens ein weiteres Tutorial. Wenn man nicht unbedingt eine Sendediode benötigt für deinen Zähler, um diesen anzustoßen überhaupt etwas zu senden, reicht auch ein normaler fototransistor für ein paar Cent zum auslesen der Zähler.
                        Und selbst für den zweiten Fall, kann man mit etwas Elektro Verständnis auch eine ir led zum leuchten->senden bekommen.

                        J Offline
                        J Offline
                        Jaschkopf
                        wrote on last edited by
                        #44

                        @Kugelkopf ist schon richtig, kann man so machen. Aber mit einem simplen Fototransistor mit Pullup Widerstand sind die Flanken der Signale doch schon etwas verzerrt was zu Fehlern in der Übertragung kommen kann. Das kann dazu führen das die Daten gar nicht oder Fehlerhaft (unrealistische Werte) gelesen werden. Der Volkszähler Lesekopf gibt saubere Flanken durch Schitttrigger aus 😉 wenn man sich schon die Mühe macht sollte man doch die paar Euro dazu noch investieren und hat dann eine zuverlässige Lösung!

                        Gruß Jaschkopf

                        K 1 Reply Last reply
                        0
                        • J Jaschkopf

                          @mkrobe mit tper=10 wird die teleperiod auf 10sek gesetzt. Das ist der Intervall in dem die Daten per MQTT gesendet werden. 10 ist kleinst mögliche Wert.

                          Hier sind noch ein paar sehr nützliche Links:
                          Syntax für das Skript:
                          https://github.com/arendst/Tasmota/wiki/smart-meter-interface
                          Beispielskripte für verschiedene Zähler:
                          https://github.com/arendst/Tasmota/wiki/Smart-Meter-Interface-Descriptors
                          Wiki für Skript Sprache:
                          https://github.com/arendst/Tasmota/wiki/Scripting-Language
                          Kommandos für Sensor53:
                          https://github.com/arendst/Tasmota/wiki/Commands#sensor53

                          Wenn man mal die Wiki's durch geht findet man eigentlich alles sehr gut beschrieben was der Skripter so kann.

                          Hier nochmal ein Screenshot von meinem Webinterface und dazu mein Skript. Da kann man gut sehen was alles (und noch viel mehr!!) möglich ist. Die Skript Sektion ist ein sehr mächtiges Tool in Tasmota!

                          Stromzähler.PNG

                          >D
                          s1="Tagesverbrauch: {m}<b><span style="
                          v2=0
                          hr=0
                          md=0
                          yr=0
                          ;Strom
                          p:sm=0
                          sd=0
                          p:sma=0
                          smn=0
                          p:sya=0
                          syn=0
                          sspr=0.2583
                          yspr=0
                          ysgp=156.00
                          y€=0
                          
                          
                          >T
                          v2=SML#DJ_TPWRIN
                          
                          
                          >B
                          ->sensor53 r
                          tper=10
                          
                          
                          >S
                          ;Tagesverbrauch
                          hr=hours
                          if chg[hr]>0
                          and hr==0
                          and v2>0
                          then
                          sm=v2
                          svars
                          endif
                          if upsecs%tper==0{
                          sd=v2-sm
                          }
                          
                          ;Monatsverbrauch
                          md=day
                          if chg[md]>0
                          and md==1
                          and v2>0
                          then
                          sma=v2
                          svars
                          endif
                          if upsecs%tper==0{
                          smn=v2-sma
                          } 
                          
                          ;Jahresverbrauch
                          yr=year
                          if chg[yr]>0
                          and hr==0
                          and md==1
                          and v2>0
                          then
                          sya=v2
                          svars
                          endif
                          if upsecs%tper==0{
                          syn=v2-sya
                          ;Kosten
                          yspr=syn*sspr+ysgp
                          }
                          
                          >J
                          ,"Verbrauch Tag":"%sd%"
                          ,"Verbrauch Monat":"%smn%"
                          ,"Verbrauch Jahr":"%syn%"
                          ,"Zählerstand 0:00Uhr":"%3sm%"
                          ,"Zählerstand Monatsanfang":"%3sma%"
                          ,"Zählerstand Jahrenanfang":"%3sya%"
                          
                          >W
                          ==============
                          Tagesverbrauch:  {m} %3sd%  KWh
                          Monatsverbrauch: {m} %3smn% KWh
                          Jahresverbrauch: {m} %3syn% KWh
                          ==============
                          Preis/kWh:       {m} %4sspr% €
                          Grundpreis:      {m} %2ysgp% €
                          --------------
                          Kosten lfd. Jahr:{m} %2yspr% €
                          ==============
                          Zählerstände:
                          aktuell:         {m} %3v2% KWh
                          0:00 Uhr:        {m} %3sm% KWh
                          Monatsanfang:    {m} %3sma% KWh
                          Jahresanfang:    {m} %3sya% KWh
                          ==============
                          
                          
                          >M
                          +1,13,s,16,9600,SML
                          1,77070100010800ff@1000,Verbrauch,KWh,DJ_TPWRIN,4
                          1,77070100020800ff@1000,Einspeisung,KWh,DJ_TPWROUT,4
                          1,77070100100700ff@1,Akt. Verbrauch,W,DJ_TPWRCURR,0
                          #
                          

                          Gruß Jaschkopf

                          mkrobeM Offline
                          mkrobeM Offline
                          mkrobe
                          wrote on last edited by
                          #45

                          @Jaschkopf Danke! So laaangsam blicke ich durch;-)
                          Mit dem Skript war mir nicht klar und habe verzweifelt danach gesucht wo man das eingeben kann. Erst heute gelesen das man ein paar Optionen in der "user_config_override.h" eintragen muß. Nun habe ich das auch am laufen. Leider zählt er noch nicht, und wenn ich "sensor53 d1" versuche, bekomme ich lediglich:

                          stat/Stromzaehler/RESULT = {"Time":"2020-02-11T16:20:12","SML":{"CMD":"dump: 1"}}
                          1,"SSId":"Route56","BSSId":"34:81:C4:3F:7B:8F","Channel":6,"RSSI":62,"Signal":-69,"LinkCount":1,"Downtime":"0T00:00:06"}}
                          16:20:14 MQT: tele/Stromzaehler/SENSOR = {"Time":"2020-02-11T16:20:14","":{"DJ_Power_IN":0.000,"DJ_Power_OUT":0.000,"DJ_Power_akt":0}}
                          1,"SSId":"Route56","BSSId":"34:81:C4:3F:7B:8F","Channel":6,"RSSI":62,"Signal":-69,"LinkCount":1,"Downtime":"0T00:00:06"}}
                          16:20:24 MQT: tele/Stromzaehler/SENSOR = {"Time":"2020-02-11T16:20:24","":{"DJ_Power_IN":0.000,"DJ_Power_OUT":0.000,"DJ_Power_akt":0}}
                          1,"SSId":"Route56","BSSId":"34:81:C4:3F:7B:8F","Channel":6,"RSSI":62,"Signal":-69,"LinkCount":1,"Downtime":"0T00:00:06"}}
                          

                          Das 90° verdrehen des Kopfes führte dazu, dass der Zähler spinnte und irgendwelche Werte anzeigte. Zum Glück sprang er nach 1 Minute wieder in den normalen Mode zurück.
                          (löte TX wieder ab, da ich die Sendediode z.Zt. nicht brauche)

                          Verwende diese Skript für den ED300L:

                          >D
                          >B
                          =>sensor53 r
                          tper=10
                          >M 1
                          +1,3,s,1,9600,ED300L
                          1,77070100010800ff@1000,Gesamtverbrauch,kWh,DJ_Power_IN,3
                          1,77070100020800ff@1000,eingespeist,kWh,DJ_Power_OUT,3
                          1,77070100100700ff@1,akt. Verbrauch,W,DJ_Power_akt,0
                          #
                          

                          @Kugelkopf Danke, das Tutorial hatte ich auch entdeckt und danach waren mir die Parameter klar. Eine schöne und Nutzerfreundliche Anleitung!

                          1 Reply Last reply
                          0
                          • J Jaschkopf

                            @Kugelkopf ist schon richtig, kann man so machen. Aber mit einem simplen Fototransistor mit Pullup Widerstand sind die Flanken der Signale doch schon etwas verzerrt was zu Fehlern in der Übertragung kommen kann. Das kann dazu führen das die Daten gar nicht oder Fehlerhaft (unrealistische Werte) gelesen werden. Der Volkszähler Lesekopf gibt saubere Flanken durch Schitttrigger aus 😉 wenn man sich schon die Mühe macht sollte man doch die paar Euro dazu noch investieren und hat dann eine zuverlässige Lösung!

                            Gruß Jaschkopf

                            K Offline
                            K Offline
                            Kugelkopf
                            wrote on last edited by
                            #46

                            @Jaschkopf Stimme ich dir zu. Allerdings habe ich es so bereits bei drei Leuten und bei mir selbst installiert und bisher keine Probleme mit Lesefehlern gehabt.

                            mkrobeM 1 Reply Last reply
                            0
                            • K Kugelkopf

                              @Jaschkopf Stimme ich dir zu. Allerdings habe ich es so bereits bei drei Leuten und bei mir selbst installiert und bisher keine Probleme mit Lesefehlern gehabt.

                              mkrobeM Offline
                              mkrobeM Offline
                              mkrobe
                              wrote on last edited by
                              #47

                              @Kugelkopf sagte in Stromzähler per Sonoff ESP8266 auslesen:

                              @Jaschkopf Stimme ich dir zu. Allerdings habe ich es so bereits bei drei Leuten und bei mir selbst installiert und bisher keine Probleme mit Lesefehlern gehabt.

                              Das wäre meine nächste Option, einen einfachen IR-Leser zu bauen...

                              J 1 Reply Last reply
                              0
                              • mkrobeM mkrobe

                                @Kugelkopf sagte in Stromzähler per Sonoff ESP8266 auslesen:

                                @Jaschkopf Stimme ich dir zu. Allerdings habe ich es so bereits bei drei Leuten und bei mir selbst installiert und bisher keine Probleme mit Lesefehlern gehabt.

                                Das wäre meine nächste Option, einen einfachen IR-Leser zu bauen...

                                J Offline
                                J Offline
                                Jaschkopf
                                wrote on last edited by
                                #48

                                @mkrobe kannst du gerne auch probieren. Theoretisch kannst du dazu auch den Fototransistor aus dem Volkszähler auslöten und mit Pullup direkt an den ESP anschließen.

                                Gruß Jaschkopf

                                mkrobeM 1 Reply Last reply
                                0
                                • J Jaschkopf

                                  @mkrobe kannst du gerne auch probieren. Theoretisch kannst du dazu auch den Fototransistor aus dem Volkszähler auslöten und mit Pullup direkt an den ESP anschließen.

                                  Gruß Jaschkopf

                                  mkrobeM Offline
                                  mkrobeM Offline
                                  mkrobe
                                  wrote on last edited by
                                  #49

                                  @Jaschkopf sagte in Stromzähler per Sonoff ESP8266 auslesen:

                                  @mkrobe kannst du gerne auch probieren. Theoretisch kannst du dazu auch den Fototransistor aus dem Volkszähler auslöten und mit Pullup direkt an den ESP anschließen.

                                  Gruß Jaschkopf

                                  Nö, die Platine bekomme ich ohne weiteres nicht mehr aus dem Gehäuse raus.... werde wohl alles nochmal aufbauen.

                                  J 1 Reply Last reply
                                  0
                                  • mkrobeM mkrobe

                                    @Jaschkopf sagte in Stromzähler per Sonoff ESP8266 auslesen:

                                    @mkrobe kannst du gerne auch probieren. Theoretisch kannst du dazu auch den Fototransistor aus dem Volkszähler auslöten und mit Pullup direkt an den ESP anschließen.

                                    Gruß Jaschkopf

                                    Nö, die Platine bekomme ich ohne weiteres nicht mehr aus dem Gehäuse raus.... werde wohl alles nochmal aufbauen.

                                    J Offline
                                    J Offline
                                    Jaschkopf
                                    wrote on last edited by
                                    #50

                                    @mkrobe hast du die verklebt oder warum? Du kannst von unten vorsichtig mit einem Schraubendreher oder Kugelschreiber auf die LED drücken um die Platine aus dem Gehäuse zu schieben

                                    mkrobeM 1 Reply Last reply
                                    0
                                    • J Jaschkopf

                                      @mkrobe hast du die verklebt oder warum? Du kannst von unten vorsichtig mit einem Schraubendreher oder Kugelschreiber auf die LED drücken um die Platine aus dem Gehäuse zu schieben

                                      mkrobeM Offline
                                      mkrobeM Offline
                                      mkrobe
                                      wrote on last edited by
                                      #51

                                      @Jaschkopf ..das check ich mal, wäre ja gelacht dat muß doch fluppen 😉

                                      J 1 Reply Last reply
                                      0
                                      • mkrobeM mkrobe

                                        @Jaschkopf ..das check ich mal, wäre ja gelacht dat muß doch fluppen 😉

                                        J Offline
                                        J Offline
                                        Jaschkopf
                                        wrote on last edited by
                                        #52

                                        @mkrobe die Platine sitzt zwar straff im Gehäuse aber was rein geht muss auch wieder raus kommen 🤣

                                        mkrobeM 1 Reply Last reply
                                        0
                                        • J Jaschkopf

                                          @mkrobe die Platine sitzt zwar straff im Gehäuse aber was rein geht muss auch wieder raus kommen 🤣

                                          mkrobeM Offline
                                          mkrobeM Offline
                                          mkrobe
                                          wrote on last edited by
                                          #53

                                          @Jaschkopf jou, irgendwie geht dat schon.. Laaaangsam näher ich mich dem ganzen, es macht Spaß (!!!) aber auch seehr viel zu lesen. An Visualisierung denke ich noch gar nicht, bin froh, dass iobroker jetzt aufm alten ThinClient stabil läuft! Was macht eigentlich deine PV ??

                                          J 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          607

                                          Online

                                          32.4k

                                          Users

                                          81.4k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe