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

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Stromzähler per Sonoff ESP8266 auslesen

    This topic has been deleted. Only users with topic management privileges can see it.
    • Armilar
      Armilar Most Active Forum Testing @oberfragger last edited by Armilar

      @oberfragger

      Das sieht doch sehr gut aus. L1-L3 müssten eigentlich auch möglich sein. 🙄 Sind ja aktuell 0

      oberfragger 1 Reply Last reply Reply Quote 0
      • oberfragger
        oberfragger @Armilar last edited by

        @armilar Keine Ahnung.
        Ich bekomme recht wenig Werte. Auch Netzfrequenz bekomme ich nicht rein.
        Aber wenigstens TotalIn und actual und die ZählerID.

        1 Reply Last reply Reply Quote 0
        • H
          higginsd last edited by

          Hallo Zusammen!

          Ich versuche (erfolglos) meinen Iskra AM550 mit dem Tasmoat WiFi-ESP und dem IR-Lesekopf von bitShake auszulesen.

          Zur Situation: das Lese-/WiFi-Modul funktioniert einwandfrei an einem EMH eBZD-W23E8 Stromzähler. Ich bekomme die Hex-Werte über "sensor53 d1" angezeigt und kann sie über das Tasmota-Scricpt parsen. So weit, so gut, Modul richtig verlötet und korrekte GPIO-Parameter bekannt.

          Wenn ich jetzt den Sensor an meinem (leider von meinem Stromanbieter eingebauten Exoten) Iskra AM550 anbringe, kommt mal so gar nichts an Daten mit "sensor53 d1". Ich habe mit allen möglichen Einstellungen zu Sensor-auf den-Kopf-und andersherum, Baudrate, Parität, Stop-Bits, Init-Befehl/Ack-Befehl usw probiert - nichts.

          Ich weiß zuverlässig, daß der Iskra AM550 Daten auf der IR-Schnittstelle unverschlüsselt sendet, denn mit einem anderen Sensor (Device GmbH WMBus IR-Lesekopf) bekomme ich alle 12 Sekunden einen gültigen Auslesedatensatz zugesendet. Allerdings ist mir nicht bekannt, ob diese Daten im SML- oder IEC-Format vom Zähler gesendet werden, denn laut Hersteller Device GmbH unterstützt ihr Sensor beides automatisch.

          Auf Empfehlung in GitHub habe ich sogar die neueste Software-Version auf den ESP geflasht, weil es wohl ein Problem beim SML Dump gab, welches erst vor ein paar Tagen gefixt wurde. Keine Verbesserung.

          Was ich bei der Tasmota-Lösung nicht verstehe: wenn ich das Datenformat im Tasmoat-Script auf raw setze

          +1,5,r,0,9600,Strom

          sollten doch zumindest irgendwelche Daten im Dump sichtbar sein?

          Daher meine Fragen:

          • Hat jemand bereits Erfolge mit dem Iskra AM550 und Tasmota?
          • Was kann ich tun, um wenigstens irgendwelche Daten im Tasmota zu erhalten? Das weitere Parsing ist eher kein Problem für mich.

          Ich bin etwas ratlos. Danke für Tips.

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

            Ich bin zufällig auf eine kleine Webseite gestoßen die die SML Daten, also die Rohdaten aus dem Zähler vernünftig entschlüsselt damit man sich das Script selbst zusammenklempnern kann.

            https://tasmota-sml-parser.dicp.net/

            Hat der Entwickler dort richtig fein gemacht.

            @higginsd
            Hast du den Wemos mal auf Rohdaten umgestellt?

            sensor53 d1
            

            Kommt da was was du dann in der gerade angegebenen Webseite umsetzen kannst?

            H 1 Reply Last reply Reply Quote 2
            • H
              higginsd @Chaot last edited by

              @chaot

              Ja, habe ich. Auch nach "sensor53 d1" kommt nullkommagarnichts an Output.

              Neuschwansteini 1 Reply Last reply Reply Quote 0
              • Neuschwansteini
                Neuschwansteini @higginsd last edited by

                @higginsd ist es auch d1 ? ich hab mehrere dran und da gibts auch d2 usw.. 🙂

                H 1 Reply Last reply Reply Quote 0
                • oberfragger
                  oberfragger last edited by oberfragger

                  Moin,
                  ich bekomme leider die Scripte nicht hin bzw. dass die Zählerstände automatisch angezeigt werden.
                  Außerdem noch paar andere Sachen. Ich verwende einen ISKRA 681.

                  Wie bekomme ich mindestens eine Leerzeile zwischen dem Sensor und dem Zählerstand hin?
                  Warum liest er die Zählernummer nicht aus?
                  Warum bekomme ich keine Netzfrequenz rein?
                  Warum wird weder Spannung L1...L3 noch Strim L1...L3 angezeigt? Oder ist das nur für die Einspeisung gedacht?
                  Dann muss das natürlich raus.
                  efb5289d-2d8c-4d3d-90b3-678bff2ba41f-image.png

                  >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.4779
                  yspr=0
                  ysgp=152.18
                  y€=0
                   
                  >T
                  v2=SML#Total_in
                  rssi=Wifi#RSSI
                   
                  >B
                  ->sensor53 r
                   
                  >S
                  ;Tagesverbrauch
                  hr=hours
                  if chg[hr]>0
                  and hr==0
                  and v2>0
                  then
                  sm=v2
                  svars
                  endif
                  if upsecs%tper==0
                  then
                  sd=v2-sm
                   
                  ;Monatsverbrauch
                  md=day
                  if chg[md]>0
                  and hr==0
                  and md==1
                  and v2>0
                  then
                  sma=v2
                  svars
                  endif
                  if upsecs%tper==0
                  then
                  smn=v2-sma
                  endif
                   
                  ;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
                  then
                  syn=v2-sya
                   
                  ;Kosten
                  yspr=syn*sspr+ysgp
                  endif
                   
                  >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% dBµV
                  ===============
                  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,0,9600,,1
                  1,77070100010800ff@1000,Zählerstand,kWh,Total_in,2
                  1,77070100100700ff@1,Stromverbrauch,W,Power_curr,0
                  1,77070100100700ff@1000,Aktuell,kW,Actual_pow,3
                  1,=h===============|
                  1,77070100200700ff@1,Spannung L1,V,Volt_p1,1
                  1,77070100340700ff@1,Spannung L2,V,Volt_p2,1
                  1,77070100480700ff@1,Spannung L3,V,Volt_p3,1
                  1,=h===============|
                  1,770701001f0700ff@1,Strom L1,A,Ampere_p1,1
                  1,77070100330700ff@1,Strom L2,A,Ampere_p2,1
                  1,77070100470700ff@1,Strom L3,A,Ampere_p3,1
                  1,=h===============|
                  1,770701000e0700ff@1,Netzfrequenz,Hz,Freq,1
                  1,=h===============|
                  1,77070100000009ff@#,Zählernummer,,Meter_id,0
                  1,=h===============|
                  #
                  

                  Und hier natürlich die Teile der USER_CONFIG_OVERRIDE:

                  #ifndef USE_SCRIPT
                  #define USE_SCRIPT
                  #endif
                  
                  #ifndef USE_SML_M
                  #define USE_SML_M
                  #endif
                  
                  #ifdef USE_RULES
                  #undef USE_RULES
                  #endif
                  
                  // -- Drivers  ---------------
                  
                  #define USE_SCRIPT_WEB_DISPLAY
                  #define USE_SCRIPT_JSON_EXPORT
                  
                  #undef USE_EXPRESSION
                  #define USE_EXPRESSION
                  
                  #define SUPPORT_IF_STATEMENT 
                  #define USE_SML_SCRIPT_CMD
                  #define SML_MAX_VARS 30
                  
                  #define USE_I2C
                  

                  Huch. Irgendwas hat er da gerade berechnet...!?!
                  df7fe280-60ba-416d-9017-18f206fe3040-image.png

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

                    Ich verstehe es nicht,
                    wenn ich zusätzlichen Code einfüge...bekomme ich plötzlich auch Werte angezeigt...aber nicht dort wo cih was eingefügt habe.
                    Hier wird plötzlich Strom L1..L3 angezeigt:
                    69530024-f7c8-4074-8035-27cdc8fa4f00-image.png

                    Das Script sieht nun so aus:

                    >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.4779
                    yspr=0
                    ysgp=152.18
                    y€=0
                     
                    >T
                    v2=SML#Total_in
                    rssi=Wifi#RSSI
                     
                    >B
                    ->sensor53 r
                     
                    >S
                    ;Tagesverbrauch
                    hr=hours
                    if chg[hr]>0
                    and hr==0
                    and v2>0
                    then
                    sm=v2
                    svars
                    endif
                    if upsecs%tper==0
                    then
                    sd=v2-sm
                     
                    ;Monatsverbrauch
                    md=day
                    if chg[md]>0
                    and hr==0
                    and md==1
                    and v2>0
                    then
                    sma=v2
                    svars
                    endif
                    if upsecs%tper==0
                    then
                    smn=v2-sma
                    endif
                     
                    ;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
                    then
                    syn=v2-sya
                     
                    ;Kosten
                    yspr=syn*sspr+ysgp
                    endif
                     
                    >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% dBµV
                    ===============
                    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,0,9600,,1
                    1,77070100010800ff@1000,Zählerstand,kWh,Total_in,2
                    1,77070100100700ff@1,Stromverbrauch,W,Power_curr,0
                    1,77070100100700ff@1000,Aktuell,kW,Actual_pow,3
                    1,=h===============|
                    1,77070100200700ff@1,Spannung L1,V,Volt_p1,1
                    1,77070100340700ff@1,Spannung L2,V,Volt_p2,1
                    1,77070100480700ff@1,Spannung L3,V,Volt_p3,1
                    1,=h===============|
                    1,770701001f0700ff@1,Strom L1,A,Ampere_p1,1
                    1,77070100330700ff@1,Strom L2,A,Ampere_p2,1
                    1,77070100470700ff@1,Strom L3,A,Ampere_p3,1
                    1,=h===============|
                    1,77070100010800ff@1000,Gesamtverbrauch,kWh,Bezug_Gesamt,3
                    1,77070100010801ff@1000,Verbrauch 1.8.1 NT,kWh,Bezug_NT,3
                    1,77070100010802ff@1000,Verbrauch 1.8.2 HT,kWh,Bezug_HT,3
                    1,77070100100700ff@1,Leistung,W,Power_cur,0
                    1,77070100240700ff@1,Leistung P1,W,Power_p1,0
                    1,77070100380700ff@1,Leistung P2,W,Power_p2,0
                    1,770701004c0700ff@1,Leistung P3,W,Power_p3,0
                    1,=h===============|
                    1,770701000e0700ff@1,Netzfrequenz,Hz,Freq,1
                    1,=h===============|
                    1,77070100000009ff@#,Zählernummer,,Meter_id,0
                    1,=h===============|
                    #
                    

                    Ich habe nur diesen Code eingefgt:

                    1,77070100010800ff@1000,Gesamtverbrauch,kWh,Bezug_Gesamt,3
                    1,77070100010801ff@1000,Verbrauch 1.8.1 NT,kWh,Bezug_NT,3
                    1,77070100010802ff@1000,Verbrauch 1.8.2 HT,kWh,Bezug_HT,3
                    1,77070100100700ff@1,Leistung,W,Power_cur,0
                    1,77070100240700ff@1,Leistung P1,W,Power_p1,0
                    1,77070100380700ff@1,Leistung P2,W,Power_p2,0
                    1,770701004c0700ff@1,Leistung P3,W,Power_p3,0
                    1,=h===============|
                    
                    Chaot 1 Reply Last reply Reply Quote 0
                    • Chaot
                      Chaot @oberfragger last edited by

                      @oberfragger Sieht so aus als würden deine SML Codes nicht stimmen.
                      Strom L1 ist offensichtlich der Zählerstand und L3 scheint der aktuelle Verbrauch zu sein.

                      oberfragger 1 Reply Last reply Reply Quote 0
                      • oberfragger
                        oberfragger @Chaot last edited by

                        @chaot Ich habe da gestern so eine SML-Übersetzungsseite gefunden.
                        Und beim Zusammenstellen von neuem Code erstmal den NodeMCU geschrottet 😞

                        Ist nicht mehr flashbar, erreichbar etc. So ein Mist.

                        Muss dann ein anderes Mal weitermachen.

                        Chaot 1 Reply Last reply Reply Quote 0
                        • H
                          higginsd @Neuschwansteini last edited by

                          @ilovegym

                          Ja.

                          Ich habs mittlerweile drangegeben. Der Iskra AM550 funktioniert nicht mit dem Tasmota. Trotzdem danke für die Tips.

                          1 Reply Last reply Reply Quote 0
                          • Chaot
                            Chaot @oberfragger last edited by

                            @oberfragger Wenn das script abschmiert dann kann man oft nach ein paar Sekunden stromlos wieder auf das Teil draufkommen. Hat zumindest bei meinen ESPs oft so funktioniert.
                            Eine Übersetzungsseite habe ich erst vor ein paar Tagen hier im Tread gepostet.

                            oberfragger 1 Reply Last reply Reply Quote 0
                            • oberfragger
                              oberfragger @Chaot last edited by

                              @chaot bei mir leider nicht.
                              Hab auch den reset via 6 mal off und beim 7. Mal probiert, alle möglichen Knöpfe auf dem NodeMCU bei flashen gedrückt etc.
                              Faile dto read packet header... doof.

                              1 Reply Last reply Reply Quote 0
                              • D
                                DasMoritz last edited by

                                Hallo zusammen,

                                man gut das ich diesen Faden gefunden habe.
                                Ich würde gerne meine beiden Apator Norax 3D Zweirichtungszähler auslesen - das funktioniert auch fast.
                                Leider erhalte ich nur kWh Werte und keine aktuellen Verbrauchswerte, Frequenzen etc.

                                Aber der Reihe nach:

                                ESP8266 geflasht mit Tasmota gemäß "Anleitung" von @jaschkopf weiter oben und Youtube, dann im Script-Bereich für meinen Zähler gemäß Tasmota Vorgabe des Script eingetragen.

                                Ergebnis von dem was nun kommt ist folgendes:
                                fcc66c88-d5b8-40d4-bb94-5b71a05d28b5-image.png

                                Wenn ich nun unter der Console mal sensor53 d1 eingebe, dann bekomme ich dies hier:

                                17:57:47.367 : 77 07 01 00 02 08 00 ff 01 01 62 1e 52 03 69 00 00 00 00 00 00 03 6b 01 01 01 63 c6 4e 00 76 05 01 51 0e e6 62 00 62 00 
                                17:57:47.397 : 77 01 0b 0a 01 41 50 41 01 04 ec 03 73 07 01 00 62 0a ff ff 72 62 01 65 00 70 5a 4f 74 
                                17:57:47.414 : 77 07 01 00 60 32 01 01 01 01 01 01 04 41 50 41 01 
                                17:57:47.439 : 77 07 01 00 60 01 00 ff 01 01 01 01 0b 0a 01 41 50 41 01 04 ec 03 73 01 
                                17:57:47.469 : 77 07 01 00 01 08 00 ff 65 00 1c 81 04 01 62 1e 52 03 69 00 00 00 00 00 00 00 07 01 
                                

                                Wenn ich das ganze mal durch den SML Dekoder schiebe, dann bekomme ich folgendes Ergebnis:

                                75745979-8e76-4acc-b8b0-359cc7ede009-image.png

                                Nun bin ich ein wenig "überfragt".
                                Kann es sein, dass ich den Stromzähler irgendwie noch dazu bringen muss, dass er "mehr" liefert oder was ist hier genau Phase? Oder habe ich trotz PIN nur einen eingeschränkten Zugriff auf den die aktuellen Werte wie z.B. Watt, Frequenz, etc.?

                                Mir kommt das auch sehr "wenig" an Daten vor. Die oben abgebildeten Daten sind eine Abfrage, es kommen dann zyklisch weitere Zeilen, aber mit dem gleichen OBIS-Hexwert.

                                Danke,
                                Moritz

                                Chaot 1 Reply Last reply Reply Quote 0
                                • Chaot
                                  Chaot @DasMoritz last edited by

                                  @dasmoritz Bei manchen Zählern muss man noch sowas wie eine erweiterte Datenausgabe freischalten. Schau mal in die Anleitung. Da müsste das stehen.

                                  D 1 Reply Last reply Reply Quote 0
                                  • D
                                    DasMoritz @Chaot last edited by

                                    @chaot Hallo und danke dir. Es gibt wohl einen normalen Betriebsmodus und einen erweiterten Betriebsmodus.

                                    Die Ausgabe von W, A, V, Hz. usw. gibt es anscheinend nur im erweiterten Modus. Anscheinend legt aber der VNB fest, welcher Modus eingestellt wird, bei mir anscheinend nur der normale Modus und nicht der erweiterte.

                                    Mist!

                                    Chaot 1 Reply Last reply Reply Quote 0
                                    • Chaot
                                      Chaot @DasMoritz last edited by

                                      @dasmoritz Na ja, oft lohnt sich auch eine höfliche Nachfrage.
                                      Die Betreiber haben nichts davon wenn Daten gesperrt werden, also dürfte das denen recht egal sein welcher Modus läuft.
                                      Was bisher hier zu lesen war scheinen die meisten Betreiber da recht bereitwillig zu sein was Freischaltungen angeht.

                                      Marc_el_K 1 Reply Last reply Reply Quote 0
                                      • Marc_el_K
                                        Marc_el_K @Chaot last edited by

                                        @chaot Hallo, da muss ich mal kurz einhaken. Mein Versorger hat mir ohne Probleme den Code zugeschickt, allerdings ist bei mir die dauerhafte Abschaltung der Pin Abfrage deaktiviert. Das heißt für 3 Minuten kann ich im erweiterten Modus auslesen, danach fällt es zurück in den Standard Modus. Der Versorger ist auch nicht bereit es mir zu ermöglichen, da sie die Stromzähler so eingekauft haben.

                                        Chaot 1 Reply Last reply Reply Quote 0
                                        • oberfragger
                                          oberfragger last edited by

                                          @marc_el_k Ui. Ich dachte die Versorger haben eine Pflicht die Auslesung zu ermöglichen. Nach 3 Minuten zurück ist schon -fies-.

                                          Marc_el_K 1 Reply Last reply Reply Quote 0
                                          • Marc_el_K
                                            Marc_el_K @oberfragger last edited by

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

                                            @marc_el_k Ui. Ich dachte die Versorger haben eine Pflicht die Auslesung zu ermöglichen. Nach 3 Minuten zurück ist schon -fies-.

                                            Ich habe extra beim Hersteller angerufen und tatsächlich kann man die Menü Option ausblenden lassen, damit man die Pin Abfrage nicht deaktivieren kann. Absolut bescheuert! Nun habe ich mir eine LED angebaut, die alle 2 Minuten einen Lichtimpuls setzt, damit ich im Menü "angemeldet" bleibe.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.1k
                                            Online

                                            31.6k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            d0-schnittstelle esp8266 sml sonoff stromzähler stromzähler auslesen tasmota volkszähler
                                            83
                                            562
                                            166937
                                            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