Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. Stromzähler per Sonoff ESP8266 auslesen

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Stromzähler per Sonoff ESP8266 auslesen

    This topic has been deleted. Only users with topic management privileges can see it.
    • treff and NIX
      treff and NIX @treff and NIX last edited by

      Hallo zusammen,

      danke für die Anleitung. Leider habe ich noch einige Schwierigkeiten und hoffe mir kann jemand behilflich sein.

      Folgende Situation.

      • Leskopf: https://www.ebay.de/itm/313460034498

      • Zähler Iskra MT681 https://www.lackmann.de/sites/default/files/2018-09/MT681_2016_schräg.png

      • China Kopie Wemos D1

      Script:

      >D
      >B
      ->sensor53 r
      tper=10
      >M
      +1,21,s,1,9600,SML
      1,77070100010800ff@1000,Verbrauch,KWh,DJ_TPWRIN,3
      1,77070100020800ff@1000,Einspeisung,KWh,DJ_TPWROUT,3
      1,77070100100700ff@1000,Akt. Verbrauch,W,DJ_TPWRCURR,3
      #
      

      Nach ersten Schwierigkeiten konnte ich die neueste Tasmota version mit SML Unterstützung die Firmware bauen.
      2be05509-51af-4954-a56c-8e2b47fbb02b-image.png

      Ich habe die Pins so angelötet:
      GND-> Wemos GND
      VCC->Wemos 5V
      TX-> Wemos TX
      RX-> Wemos RX
      443ffc26-ab82-4143-88d0-eda868ebf4ae-image.png

      Leider erhalte ich keine Rohdaten mit sysnsor53 d1, ich habe auch versucht mit einer IR Fernbedienung "Daten" zu erzeugen um zu prüfen ob etwas ankommt.

      Kann mir jemand einen Tipp geben wo ich noch angreifen kann ?

      Vielen Dank

      TheDuke C 3 Replies Last reply Reply Quote 0
      • TheDuke
        TheDuke @treff and NIX last edited by

        @treff-and-nix

        mit deinen Daten (skript) bekomme ich auch keine Ausgabe.
        Versuch mal meine :

        >D
        >B
        =>sensor53 r
        >M 1
        +1,13,s,0,9600,Strom
        1,=h=================|
        1,77070100010800ff@1000,Verbrauch gesamt,KWh,Total_in,2
        1,77070100100700ff@1,Verbrauch aktuell,W,Power_curr,0
        1,=h=================|
        
        
        #
        
        treff and NIX 1 Reply Last reply Reply Quote 0
        • treff and NIX
          treff and NIX @TheDuke last edited by

          @theduke Danke, ich habe es getestet, leider funktioniert es nicht.
          Ich habe den IR Kopf von TX an Wemos TX und von RX an Wemos RX angeschlossen, Müsste Ja PIN 21 und 22 sein. Leider erhalte ich hier keine Daten, auch keine Daten von einer IR Fernbedienung.

          Ich habe mal den IR Kopf an ein Raspi 2 angeschlossen und geprüft ob er funktioniert, konnte "Daten" von einer IR Fernbedienung empfangen.

          Hat jemand noch weitere Ideen ?

          da_Woody 1 Reply Last reply Reply Quote 0
          • da_Woody
            da_Woody @treff and NIX last edited by

            @treff-and-nix IMHO sollten rx und tx aber schon ausgekreuzt sein...

            treff and NIX 1 Reply Last reply Reply Quote 1
            • treff and NIX
              treff and NIX @da_Woody last edited by

              @da_woody ja so kenne ich das auch, in der Anleitung stand aber mehrmals das man es hier nicht machen soll. Ich habe es auch auf dem Raspi2 so getestet, hat funktionert. Ich möchte es aber gern mit dem ESP auf Tasmota betreiben

              1 Reply Last reply Reply Quote 0
              • C
                c1olli @treff and NIX last edited by

                @treff-and-nix
                Hast Du das Kabel nach unten oder oben geführt?
                Denn so wie auf dem Bild muß das Kabel oben sein.
                Also den Sensor ggf. mal um 180° drehen.

                1 Reply Last reply Reply Quote 1
                • testpaul999
                  testpaul999 last edited by

                  @RalfTh

                  ich habe einen Zähler eHZ Generation K.
                  Dein Script habe ich angepasst und bekomme "nur2 diese Anzeige.

                  bf42bdd4-13a8-41c0-85c0-b93f887ebb70-grafik.png

                  Wieso werden mir die anderen Daten wie Kosten usw. nicht angezeigt?

                  Das Script sieht jetzt so aus.

                  >D
                  
                  s1="Tagesverbrauch: {m}<b><span style="
                  
                  v2=0
                  
                  hr=0
                  
                  md=0
                  
                  yr=0
                  
                  ;Strom
                  
                  sm=0
                  
                  sd=0
                  
                  sma=111.000
                  
                  smn=0
                  
                  sya=222.000
                  
                  syn=0
                  
                  sspr=0.251601
                  
                  yspr=0
                  
                  ysgp=71.09
                  
                  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":"%2sma%"
                  
                  ,"Zählerstand Jahrsenanfang":"%2sya%"
                  
                   
                  
                  >W
                  
                   
                  
                  ==============
                  
                   
                  
                  Tagesverbrauch:  {m} %2sd%  KWh
                  
                   
                  
                  Monatsverbrauch: {m} %2smn% KWh
                  
                   
                  
                  Jahresverbrauch: {m} %2syn% KWh
                  
                   
                  
                  ==============
                  
                   
                  
                  Preis/kWh:       {m} %4sspr% €
                  
                   
                  
                  Grundpreis:      {m} %2ysgp% €
                  
                   
                  
                  --------------
                  
                   
                  
                  Kosten lfd. Jahr:{m} %2yspr% €
                  
                   
                  
                  ==============
                  
                   
                  
                  Zählerstände:
                  
                   
                  
                  aktuell:         {m} %2v2% KWh
                  
                   
                  
                  0:00 Uhr:        {m} %2sm% KWh
                  
                   
                  
                  Monatsanfang:    {m} %2sma% KWh
                  
                   
                  
                  Jahresanfang:    {m} %2sya% KWh
                  
                   
                  
                  ==============
                  
                   
                  
                   
                  
                  >M
                  
                   
                  
                  +1,3,s,16,9600,eHZ
                  
                   
                  
                  1,77070100010800ff@1000,Verbrauch,KWh,DJ_TPWRIN,1
                  
                   
                  
                  1,77070100020800ff@1000,Einspeisung,KWh,DJ_TPWROUT,1
                  
                   
                  
                  1,77070100100700ff@1,Akt. Verbrauch,W,DJ_TPWRCURR,1
                  
                   
                  
                  1,77070100000009ff@#,Zaehler Nr,,Meter_number,0
                  
                   
                  
                  #
                  

                  Danke für Deine Hilfe
                  JUF

                  RalfTh 1 Reply Last reply Reply Quote 0
                  • RalfTh
                    RalfTh @testpaul999 last edited by RalfTh

                    @testpaul999
                    Moin, moin.
                    So auf Anhieb kann ich dir das nicht sagen. Durch die vielen Leerzeichen sieht das Skript auch nicht mehr besonders strukturiert aus. Am besten vergleichst du noch mal beide Skripte direkt miteinander. Es könnte auch sein, dass du beim Anpassen ein wichtiges Zeichen gelöscht hast. Der Teil zum Auslesen des Zählers funktioniert einwandfrei, d.h. das Skript versteht sich mit deinem Zähler. Dein Fehler liegt voraussichtlich bei der Ausgabe, weil von all den, im Skript berechneten, Dingen nichts angezeigt wird.

                    Bei mir läuft das Skript unter Tasmota 8.1.0.4 einwandfrei.

                    Viel Erfolg bei der Fehlersuche.

                    Ralf

                    testpaul999 2 Replies Last reply Reply Quote 0
                    • C
                      c1olli @treff and NIX last edited by c1olli

                      Falscher Post

                      1 Reply Last reply Reply Quote 0
                      • testpaul999
                        testpaul999 @RalfTh last edited by

                        @ralfth

                        Hi,

                        also das script rennt auch mit 9.x
                        Entscheidender Hinweis ist, das diese beiden Parameter mit in die Firmware gehören.

                        J
                        The lines in this section are published via MQTT in a JSON payload on TelePeriod. Requires compiling with
                        #define USE_SCRIPT_JSON_EXPORT.

                        W
                        The lines in this section are displayed in the web UI main page. Requires compiling with
                        #define USE_SCRIPT_WEB_DISPLAY.

                        Zusammen damit
                        #ifndef USE_SML_M

                        #define USE_SML_M

                        #endif

                        Neu Compeliert und OTA Update und schon..
                        1f258b0f-d681-4d3d-b064-9f777c5ea920-grafik.png

                        Danke...

                        1 Reply Last reply Reply Quote 0
                        • testpaul999
                          testpaul999 @RalfTh last edited by

                          @ralfth

                          Hallo,

                          Ich nochmal.
                          Nachdem ich die Daten jetzt auf dem Web-Ui habe, musste ich leider feststellen, dass irgendwie das summieren nicht hinhaut.
                          92C99582-3F7C-4F52-A01E-7B0C7B49E6C7.png

                          Die Werte 0:00 Uhr werden nicht geschrieben und dadurch stimmen auch die Werte Tages/Monat und Jahresverbrauch nicht.

                          Das aktuelle script

                          
                          >D
                          rssi=0
                          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.2516
                          yspr=0
                          ysgp=71.09
                          y€=0
                           
                          >T
                          v2=SML#DJ_TPWRIN
                          rssi=Wifi#RSSI 
                           
                          >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":"%2sm%"
                          ,"Zählerstand Monatsanfang":"%2sma%"
                          ,"Zählerstand Jahrenanfang":"%2sya%"
                          ,"Kosten dieses Jahr":"%2yspr%"
                           
                          >W
                          ==============
                          WLAN Empfang: {m}%rssi%
                          ==============
                          Tagesverbrauch:  {m} %2sd%  KWh
                          Monatsverbrauch: {m} %2smn% KWh
                          Jahresverbrauch: {m} %2syn% KWh
                          ==============
                          Strom Preis/kWh:       {m} %4sspr% €
                          Strom Grundpreis:      {m} %2ysgp% €
                          --------------
                          Strom kosten lfd. Jahr:{m} %2yspr% €
                          ==============
                          Strom Zählerstände:
                          aktuell:         {m} %2v2% KWh
                          0:00 Uhr:        {m} %2sm% KWh
                          Monatsanfang:    {m} %2sma% KWh
                          Jahresanfang:    {m} %2sya% KWh
                          ==============
                           
                          >M 1
                          +1,3,s,16,9600,SML
                          1,77070100010800ff@1000,Verbrauch,KWh,DJ_TPWRIN,2
                          1,77070100020800ff@1000,Einspeisung,KWh,DJ_TPWROUT,2
                          1,77070100100700ff@1,Akt.Verbrauch,W,DJ_TPWRCURR,0
                          1,=h==============
                          1,77070100000009ff@#,Zaehler Nr,,Meter_number,0
                          
                          #
                          
                          

                          Danke für jedwede Unterstützung 🙂
                          Jens

                          1 Reply Last reply Reply Quote 0
                          • RalfTh
                            RalfTh last edited by

                            Moin,

                            ich bin jetzt nicht der Spezialist beim Scripting.

                            Weshalb sin in deinem Script unter ">D" die Variablen sm, sma und sya mit einem "p:" versehen?

                            Bei der Berechnung der Werte konnte ich keinen Fehler finden, wobei ich nur den Tagesverbrauch geprüft habe.

                            testpaul999 1 Reply Last reply Reply Quote 0
                            • testpaul999
                              testpaul999 @RalfTh last edited by

                              @ralfth

                              Danke für das Feedback.
                              Leider habe ich noch weniger Ahnung vom Scripten.
                              Welche Bedeutung hat p:?
                              Permanent?

                              Danke

                              testpaul999 1 Reply Last reply Reply Quote 0
                              • testpaul999
                                testpaul999 @testpaul999 last edited by

                                @testpaul999 said in Stromzähler per Sonoff ESP8266 auslesen:

                                @ralfth

                                Danke für das Feedback.
                                Leider habe ich noch weniger Ahnung vom Scripten.
                                Habe mal p: raus genommen.. 🙂
                                Sieht vile besser aus.
                                Danke

                                testpaul999 1 Reply Last reply Reply Quote 0
                                • testpaul999
                                  testpaul999 @testpaul999 last edited by

                                  @testpaul999 said in Stromzähler per Sonoff ESP8266 auslesen:

                                  @ralfth

                                  Danke für das Feedback.
                                  Leider habe ich noch weniger Ahnung vom Scripten.
                                  Habe mal p: raus genommen.. 🙂
                                  Sieht viel besser aus.

                                  ac65552e-ed0f-4d28-94d2-99f2b00d8b14-grafik.png

                                  Habe aber auch noch diese Parameter mit compeliert
                                  USE_SML_M
                                  USE_SCRIPT_JSON_EXPORT
                                  USE_SCRIPT_WEB_DISPLAY
                                  SML_MAX_VARS n
                                  USE_SML_SCRIPT_CMD
                                  SML_REPLACE_VARS
                                  Danke

                                  Chaot RalfTh 2 Replies Last reply Reply Quote 0
                                  • Chaot
                                    Chaot @testpaul999 last edited by

                                    Ich habe mal eine allgemeine Frage:
                                    Nach dem Wechsel meines Stromzählers habe ich mir einen TTL Lesekopf über Ebay (Hichi HB0014) besorgt. Da sich die Zähler in einem Nachbarraum befinden würde ich gerne den Wemos im anderen Raum platzieren. Hat jemand Erfahrung wie lange ich das Kabel zum TTL Lesekopf machen kann wenn ich geschirmte Kabel verwende?
                                    Ich müsste so ca. 6-7 m Kabellänge erreichen.

                                    1 Reply Last reply Reply Quote 0
                                    • RalfTh
                                      RalfTh @testpaul999 last edited by

                                      @testpaul999 Das sieht doch aber jetzt gut aus, oder?

                                      testpaul999 1 Reply Last reply Reply Quote 0
                                      • testpaul999
                                        testpaul999 @RalfTh last edited by

                                        @ralfth
                                        Guten Morgen,
                                        Jain.
                                        Es werden irgendwie keinen Daten geschrieben.
                                        Tagesverbrauch und 0:00 Uhr.
                                        BE22BCB7-A5FF-4410-BDE5-A3063D929230.jpeg

                                        Warum?

                                        Danke

                                        RalfTh 1 Reply Last reply Reply Quote 0
                                        • RalfTh
                                          RalfTh @testpaul999 last edited by

                                          @testpaul999 Der Fehler kann eigentlich nur in der Ermittlung des Tageserbrauchs liegen, da hier beide Werte genau um 0:00 Uhr ermittelt werden. ich poste dir noch mal diese Stelle aus meinem Script. ```

                                          >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
                                          }
                                          

                                          v2 wird ja regelmäßig aktualisiert, das sieht man in deiner Anzeige. Die Variable sm erhält nicht den Wert von v2 und damit wird sd immer mit dem Wert von v2 (aktueller Zählerstand) gesetzt. Kopiere es mal und ersetze die Stelle in deinem Script. Sonst fällt mir auch nichts mehr ein.

                                          testpaul999 3 Replies Last reply Reply Quote 0
                                          • testpaul999
                                            testpaul999 @RalfTh last edited by

                                            @ralfth

                                            Thx 🙂
                                            Habe den Teil ausgetauscht.
                                            Schauen wir mal morgen früh.

                                            Schönes WE.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            885
                                            Online

                                            31.8k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            d0-schnittstelle esp8266 sml sonoff stromzähler stromzähler auslesen tasmota volkszähler
                                            83
                                            562
                                            174882
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo