Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Stromzähler liefert nur zwei Daten

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Stromzähler liefert nur zwei Daten

    This topic has been deleted. Only users with topic management privileges can see it.
    • G
      guitardoc @Schmakus last edited by

      Wer sich das mit der Taschenlampe ausgedacht hat, der gehört ins Straflager. Ich habe Muskelkater vom Halten der Lampe - bei vier mal die 9 einblinkern und dann kurz vor der letzten Zahl erkennt er mehrmals das Blinkern nicht, das setzt schon ein gewisses Aggressionspotenzial frei.

      Ich hab es aber geschafft, INFO auf On zu schalten. PIN auf Off konnte ich irgendwie nicht anblinkern. Aber jetzt kommt noch OBIS 16.7.0 mit rein, das ist die aktuelle Wirkleistung. Die hat ein Vorzeichen - weiß jemand, ob Einspeisung ins Netz oder Strombezug aus dem Netz das Minus ist?

      T B 2 Replies Last reply Reply Quote 0
      • T
        TT-Tom @guitardoc last edited by

        @guitardoc minus ist was ins Netz geht.

        1 Reply Last reply Reply Quote 1
        • B
          Blockmove @guitardoc last edited by

          @guitardoc said in Stromzähler liefert nur zwei Daten:

          Wer sich das mit der Taschenlampe ausgedacht hat, der gehört ins Straflager. Ich habe Muskelkater vom Halten der Lampe - bei vier mal die 9 einblinkern und dann kurz vor der letzten Zahl erkennt er mehrmals das Blinkern nicht, das setzt schon ein gewisses Aggressionspotenzial frei.

          Es gibt für sowas mittlerweile Handy-Apps

          G G 2 Replies Last reply Reply Quote 1
          • G
            guitardoc @Blockmove last edited by guitardoc

            @blockmove said in Stromzähler liefert nur zwei Daten:

            Es gibt für sowas mittlerweile Handy-Apps

            Ahh - das wusste ich nicht. Ich hab mich mit der schweren Taschenlampe davor gestellt und fleissig geblinkert... 🙂

            Ich habe noch eine Frage - die drei Daten werden in den ioB jetzt als JSON übertragen. Ich habe eine ähnliche Vorrichtung noch mal für den Gaszähler, da sind die Daten noch mal einzeln aufgeschlüsselt im ioB drin. Ich vermute, dass man da irgendwo in das Tasmota-Skript etwas eintragen muss, aber da habe ich keine Ahnung (ich werde aus dem Skript im Gaszähler auch nicht wirklich schlau). Kann mir jemand sagen, was ich in das Skript im Stromzähler eintragen muss, damit die Werte einzeln im ioB ausgegeben werden? Hier die beiden jetzigen Skripts (einmal Gaszähler und einmal Stromzähler):

            >D
            p:m1=0
            p:g1=0
            p:g2=0
            p:month1=0
            p:month2=0
            p:month3=0
            p:gesamt=0
            c1=0
            s1=0
            h1=0
            hkw1=0
            gkw1=0
            gkw2=0
            mkw1=0
            mkw2=0
            mkw3=0
            mkwgs=0
            skw1=0
            hgp=0
            g1gp=0
            g2gp=0
            m1gp=0
            m2gp=0
            m3gp=0
            gsgp=0
            hr=0
            dy=0
            zu=0.9542
            br=11.484
            gp=12.51
            gasinit=26826.05
            gastotal=0
            
            >B
            =>sensor53 l255
            
            
            >S
            h1=s1-m1
            hkw1=h1*br*zu
            hgp=(hkw1*gp)/100
            gkw1=g1*br*zu
            gkw2=g2*br*zu
            mkw1=month1*br*zu
            mkw2=month2*br*zu
            mkw3=month3*br*zu
            mkwgs=gesamt*br*zu
            g1gp=(gkw1*gp)/100
            g2gp=(gkw2*gp)/100
            m1gp=(mkw1*gp)/100
            m2gp=(mkw2*gp)/100
            m3gp=(mkw3*gp)/100
            gsgp=(mkwgs*gp)/100
            skw1=s1*br*zu
            
            hr=hours
            dy=day
            if chg[hr]>0
             and hr==0
              then
               m1=s1
               g2=g1
               g1=h1
               month1=month1+h1
               gesamt=gesamt+h1
               if chg[dy]<2
                and dy==1
                 then
                  month3=month2
                  month2=month1
                  month1=0
               endif
               svars
            endif
            
            
            
            if upsecs%tper==0{
            =>Publish tasmota/%topic%/main/td_m3 %2h1%
            =>Publish tele/%topic%/main/td_kwh %2hkw1%
            =>Publish tele/%topic%/main/yd_m3 %2g1%
            =>Publish tele/%topic%/main/yd_kwh %2gkw1%
            =>Publish tele/%topic%/main/dbyd_m3 %2g2%
            =>Publish tele/%topic%/main/dbyd_kwh %2gkw2%
            =>Publish tele/%topic%/main/value %2s1%
            =>Publish tele/%topic%/main/gastotal %2gastotal%
            =>Publish tele/%topic%/json {"gastotal": "%2gastotal%", "value": "%2s1%", "today_m3": "%2h1%", "today_kwh": "%2hkw1%", "yesterday_m3": "%2g1%", "yesterday_kwh": "%2gkw1%", "db_yesterday_m3": "%2g2%", "db_yesterday_kwh": "%2gkw2%"}
            }
            
            >T
            s1=Counter#C1/100
            c1=Counter#C1
            gastotal=(c1/100)+gasinit
            
            >W
            GAS gezählt: {m} %3s1% m³
            Zählerstand: {m} %gastotal% m³
            ============
            Zustandszahl: {m} %zu%
            Brennwert: {m} %br% kWh/m³
            Gaspreis: {m} %gp% Cent/kWh
            ============
            Verbrauch:
            ---------------------
            Heute: {m} %2h1% m³ | %2hkw1% kWh
            Kosten: {m} %2hgp% €
            ---------------------
            Gestern: {m} %2g1% m³ | %2gkw1% kWh
            Kosten: {m} %2g1gp% €
            ---------------------
            Vorgestern: {m} %2g2% m³ | %2gkw2% kWh
            Kosten: {m} %2g2gp% €
            ---------------------
            Aktueller Monat: {m} %2month1% m³ | %2m1gp% €
            Letzter Monat: {m} %2month2% m³ | %2m2gp% €
            Vorletzter Monat: {m} %2month3% m³ | %2m3gp% €
            Gesamt: {m} %2gesamt% m³ | %2gsgp% €
            
            #
            
            >D
            >B
            =>sensor53 r 
            >M 1
            +1,3,s,0,9600,
            1,77070100010800ff@1000,Netzbezug total,kWh,Netzbezug total,3
            1,77070100020800ff@-1000,Netzeinspeisung total,kWh,Netzeinspeisung total,3
            1,77070100100700ff@1,Leistung aktuell,W,Leistung aktuell,0
            #
            

            Beim Stromzähler sind es ja nur die drei Werte die strukturiert ausgegeben werden müssen, mehr gibt der Zähler ja nicht aus.

            Samson71 1 Reply Last reply Reply Quote 0
            • Samson71
              Samson71 Global Moderator @guitardoc last edited by

              @guitardoc sagte in Stromzähler liefert nur zwei Daten:

              Ich habe noch eine Frage - die drei Daten werden in den ioB jetzt als JSON übertragen.

              Mit welchem Adapter? Der Sonoff sollte das JSON eigentlich gleich fachgerecht "zerlegen".

              G 1 Reply Last reply Reply Quote 0
              • G
                guitardoc @Samson71 last edited by

                @samson71 Das ist ein Hichi an einem D1 mini pro - Die Komponenten habe ich selber zusammen gestellt. Auf dem Wemos ist Tasmota 13.3.0 drauf:

                283e2210-19e2-43bd-85de-e74861bdc0aa-image.png

                Samson71 1 Reply Last reply Reply Quote 0
                • Samson71
                  Samson71 Global Moderator @guitardoc last edited by

                  @guitardoc
                  Der Sonoff Adapter ist speziell für Tasmota Devices da. Wenn Du den Hichi also an den Sonoff-Adapter bindest, dann sollten auch Einzelwerte kommen.

                  G 1 Reply Last reply Reply Quote 0
                  • G
                    guitardoc @Samson71 last edited by

                    @samson71 Bei mir gibt es da ca. 20 verschiedene Sonoff devices zur Auswahl. Ich habe es mal mit dem Sonoff Basic versucht, da ändert sich an der Datenübertragung in den ioB aber nichts...
                    a4277671-d835-4e06-82ce-a6d244f5f477-image.png

                    Samson71 1 Reply Last reply Reply Quote 0
                    • G
                      guergen @Blockmove last edited by

                      @blockmove Kannst du mal schreiben wie die heissen? Ich bin noch nicht fündig geworden 😉

                      1 Reply Last reply Reply Quote 0
                      • Samson71
                        Samson71 Global Moderator @guitardoc last edited by Samson71

                        @guitardoc
                        Bei mir ist "Hichi" direkt in der Auswahlliste.

                        Ich habe meine ich aber auch eine angepasste Tasmota Version geflasht.

                        G 1 Reply Last reply Reply Quote 0
                        • G
                          guitardoc @Samson71 last edited by

                          @samson71 Weisst du noch wo du diese Tasmota-Version her hattest? Dann mache ich die bei mir auch drauf.

                          Samson71 1 Reply Last reply Reply Quote 0
                          • Samson71
                            Samson71 Global Moderator @guitardoc last edited by Samson71

                            @guitardoc
                            Hatte ich kürzlich erst irgendwo hier als Link verteilt glaube ich. Muss ich raussuchen. Bin im Moment aber nur mobil per Mäusekino unterwegs. Da ist das etwas schwieriger als vor der 49'er Kommandozentrale.

                            EDIT
                            Hier gibt es angepasste Images:
                            https://ottelo.jimdofree.com/stromzähler-auslesen-tasmota/#Downloads

                            G 1 Reply Last reply Reply Quote 0
                            • G
                              guitardoc @Samson71 last edited by

                              @samson71 🙂 Hatte ich in deinen Posts auch gerade entdeckt...

                              Von dort hab ich das Image auch genommen. Gleich das oberste: Tasmota 13.3.0 (14.12.2023). Da ist aber kein Hichi drin, hab noch mal die Liste durchsucht. Nix.

                              Samson71 Codierknecht 2 Replies Last reply Reply Quote 0
                              • Samson71
                                Samson71 Global Moderator @guitardoc last edited by

                                @guitardoc
                                Ich kann zu Hause gerne mal in meinen schauen. Ist eine 12er Version. Wird aber nichts vor Morgen. Bin erst spät zu Hause.

                                G 1 Reply Last reply Reply Quote 0
                                • G
                                  guitardoc @Samson71 last edited by

                                  @samson71 said in Stromzähler liefert nur zwei Daten:

                                  Wird aber nichts vor Morgen. Bin erst spät zu Hause.

                                  Kein Problem - hat Zeit. Noch zur Info - mein Chip ist ein ESP8266EX - also ich meine der, wo das Tasmota drauf soll... 🙂

                                  T 1 Reply Last reply Reply Quote 0
                                  • T
                                    TT-Tom @guitardoc last edited by

                                    @guitardoc

                                    Hast du den Sonoff Adapter auf dein iobroker installiert??

                                    1 Reply Last reply Reply Quote 0
                                    • Codierknecht
                                      Codierknecht Developer Most Active @guitardoc last edited by

                                      @guitardoc sagte in Stromzähler liefert nur zwei Daten:

                                      Da ist aber kein Hichi drin

                                      Da muss auch kein "Hichi" drin sein. Davon weiß Tasmota nix - muss es auch nicht.
                                      Bei mir ist "ESP32-DevKit(1)" konfiguriert. Ist aber eigentlich völlig wurscht.

                                      Der Sonoff-Adapter bekommt die Daten per MQTT und fummelt die für Dich fein säuberlich auseinander.

                                      9084ce47-050a-409e-88d6-551b7f3a64cc-grafik.png

                                      G 1 Reply Last reply Reply Quote 0
                                      • G
                                        guitardoc @Codierknecht last edited by

                                        Ahhh - jetzt verstehe ich erst mal. Ihr holt die Daten über einen Sonoff-Adapter im ioB rein und nicht über eine Auswahl in Tasmota auf dem Wemos.
                                        Nein, ich hab nur den MQTT Adapter, über den hole ich auch die Daten von dem Gaszähler rein. Ich dachte, darüber funktioniert das dann auch mit dem Stromzähler (funktioniert ja auch, nur dass die Daten als JSON ankommen).
                                        Da muss ich mich erstmal mit dem Sonoff Adapter beschäftigen.

                                        Thomas Braun Samson71 2 Replies Last reply Reply Quote 0
                                        • Thomas Braun
                                          Thomas Braun Most Active @guitardoc last edited by

                                          @guitardoc sagte in Stromzähler liefert nur zwei Daten:

                                          Nein, ich hab nur den MQTT Adapter, über den hole ich auch die Daten von dem Gaszähler rein. Ich dachte, darüber funktioniert das dann auch mit dem Stromzähler (funktioniert ja auch, nur dass die Daten als JSON ankommen).

                                          Geht natürlich auch mit dem mqtt-Adapter. Allerdings legt man sich da noch ein Skript dazwischen, das das JSON auseinander nimmt. Bei mir schaut das so aus:

                                          // where the mqtt messages arrive
                                          
                                          const mqttDatenpunktObjectId = 'mqtt.0.tele.bitshake_smartmeter.SENSOR';
                                          
                                          // where the states should appear
                                          
                                          const userDataFolder = '0_userdata.0.stromzaehler';
                                          
                                           
                                          
                                          // ############## end user config
                                          
                                           
                                          
                                          // receive
                                          
                                          on(mqttDatenpunktObjectId, (obj) => {
                                          
                                            const jsonString = obj.state.val;
                                          
                                            const jsonData = JSON.parse(jsonString);
                                          
                                           
                                          
                                            function createObjectsRecursively(parent, data) {
                                          
                                              for (const key in data) {
                                          
                                                const obj = data[key];
                                          
                                                const stateName = `${parent}.${key}`;
                                          
                                               
                                          
                                                if (typeof obj === 'object') {
                                          
                                                  createObjectsRecursively(stateName, obj);
                                          
                                                } else {
                                          
                                                 let value = obj;  
                                          
                                           
                                          
                                                  // Check if the state already exists. If it does, just update the value.
                                          
                                                  // If it does not exist create the states.
                                          
                                                  if (!existsState(stateName)) {
                                          
                                                    // If the state does not exist, create it and set the value
                                          
                                                    createState(stateName, value, {
                                          
                                                      name: key,
                                          
                                                      type: typeof value,
                                          
                                                      role: "value",
                                          
                                                      read: true,
                                          
                                                      write: true
                                          
                                                    });
                                          
                                                    log(`Created state ${stateName}`);
                                          
                                                    
                                          
                                                  } else {
                                          
                                                    setState(stateName, value, true);
                                          
                                                  }
                                          
                                                }
                                          
                                              }
                                          
                                            }
                                          
                                             createObjectsRecursively(userDataFolder, jsonData);
                                          
                                          });
                                          
                                          Codierknecht 1 Reply Last reply Reply Quote 0
                                          • Codierknecht
                                            Codierknecht Developer Most Active @Thomas Braun last edited by Codierknecht

                                            @thomas-braun sagte in Stromzähler liefert nur zwei Daten:

                                            Geht natürlich auch mit dem mqtt-Adapter. Allerdings legt man sich da noch ein Skript dazwischen, das das JSON auseinander nimmt. Bei mir schaut das so aus:

                                            Oder man legt sich für die einzelnen Datenpunkte jeweils einen Alias an und holt den Wert über die Konvertierungsfunktion aus dem JSON.

                                            Wobei allerdings der Sonoff-Adapter für Tasmota am besten geeignet ist.
                                            Einfacher geht's kaum.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            777
                                            Online

                                            32.0k
                                            Users

                                            80.3k
                                            Topics

                                            1.3m
                                            Posts

                                            9
                                            35
                                            1544
                                            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