Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. [Aufruf] G-Homa Adapter testen

    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

    [Aufruf] G-Homa Adapter testen

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      schittl last edited by

      Frage mich nicht was ich jetzt anders gemacht habe. Aber auf einmal ging es. Danke dir und sorry für den eventuellen Mehraufwand.

      Vg

      1 Reply Last reply Reply Quote 0
      • S
        schittl last edited by

        Wäre es eventuell einfach möglich wie bei der HM Steckdose den ENERGY_COUNTER für die Steckdose mit Leistungsmessung mit einzubauen?
        3116_energiecounter.jpg
        Zum Loggen des Stromverbrauches wäre das natürlich sehr genial, sonst müsste ich mir was anderes überlegen…

        1 Reply Last reply Reply Quote 0
        • AlCalzone
          AlCalzone Developer last edited by

          Ich scheue mich ehrlich gesagt, Auswertungsfunktionen in Adapter zu integrieren. Streng genommen sollten Hardware-Adapter nur der Ansteuerung von Geräten dienen. Sonst stehen wir irgendwann an dem Punkt, dass jeder Adapter das gleiche berechnet, obwohl es zentral besser aufgehoben wäre.

          Anscheinend kann das G-Homa Protokoll auch selbst Energieverbrauch übermitteln, die Steckdose scheint es aber nicht zu tun:

          https://github.com/AlCalzone/node-g-hom … er.ts#L133

          Die Auswertung wäre eher was für den History- oder einen (nicht existierenden) Statistik-Adapter. Hab dort mal ein Issue eröffnet: https://github.com/ioBroker/ioBroker.history/issues/25

          Vorübergehend kannst du das mit einem eigenen Skript tun, das bei jeder Aktualisierung des States mit der Trapezregel die verbrauchte Energie seit dem vorherigen Wert berechnet:

          Verbrauch += 0,5 * (neuer Wert + alter Wert) * (timestamp_jetzt - timestamp_vorher)
          
          AlCalzone created this issue in ioBroker/ioBroker.history

          closed [Feature request] New aggregation: integral #25

          1 Reply Last reply Reply Quote 0
          • S
            schittl last edited by

            Danke… Per Skript würde mir ja auch erstmal reichen 🙂

            Wäre das so machbar oder wäre das totaler Quatsch?

            on({id:"g-homa.0.XXXXXX.power", change:"ne"}, function(obj) {
                var NewValue  = obj.state.val;
                var OldValue  = obj.oldState.val;
                var NewTime   = obj.state.lc;
                var OldTime   = obj.oldState.lc;
                var Verbrauch = getState("g-homa.0.XXXXXX.energie").val;
            
                Verbrauch += 0.5 * (NewValue + OldValue) * (NewTime - OldTime);
                setState("g-homa.0.XXXXXX.energie", Verbrauch);
                setState("g-homa.0.XXXXXX.oldTime", NewTime);
                setState("g-homa.0.XXXXXX.oldVal", NewValue);
            });
            
            
            1 Reply Last reply Reply Quote 0
            • AlCalzone
              AlCalzone Developer last edited by

              Sieht gut aus, aber:

              • oldTime und oldVal speichern macht IMO keinen Sinn.

              • Statt lc (last change, bezieht sich auf noch älteren Wert) solltest du die ts-Eigenschaft (timestamp, bezieht sich auf Schreiben des Wertes) verwenden.

              • change sollte "any" sein, dann wird auch bei gleichbleibender Leistung weitergerechnet.

              1 Reply Last reply Reply Quote 0
              • S
                schittl last edited by

                @AlCalzone:

                • oldTime und oldVal speichern macht IMO keinen Sinn. `

                jo sorry war noch ein Überbleibsel
                @AlCalzone:

                • Statt lc (last change, bezieht sich auf noch älteren Wert) solltest du die ts-Eigenschaft (timestamp, bezieht sich auf Schreiben des Wertes) verwenden. `
                  wurde geändert
                  @AlCalzone:
                • change sollte "any" sein, dann wird auch bei gleichbleibender Leistung weitergerechnet. `
                  wurde geändert

                Hier mal das neue Skript:

                var instanz = 'javascript.0' + '.'; 
                var pfad =     'Strom.';     
                
                var idGHomaPower1   = 'g-homa.0.XXXXXX.power',
                    idGHomaEnergie1 = pfad + 'XXXXXX.ENERGY_COUNTER';
                
                createState(idGHomaEnergie1, 0, {name: 'Energie Counter XXXXXX', type: 'number', unit:'Wh'});
                
                on({id:idGHomaPower1, change:'any'}, function(obj) {
                    var Verbrauch = getState(idGHomaEnergie1).val;
                    Verbrauch += 0.5 * (obj.state.val + obj.oldState.val) * (obj.state.ts - obj.oldState.ts);
                    setState(idGHomaEnergie1, Verbrauch);
                });
                
                

                Danke Dir. Der Verbrauch sind dann Wh oder?

                1 Reply Last reply Reply Quote 0
                • AlCalzone
                  AlCalzone Developer last edited by

                  Fast… Watt*Millisekunden, da der Timestamp Millisekunden sind. Teile den Wert durch 3600000, dann bekommst du Wh.

                  1 Reply Last reply Reply Quote 0
                  • S
                    schittl last edited by

                    Funktioniert. Falls es auch jemand verwenden möchte, hier das endgültige Skript:

                    ! ````
                    var instanz = 'javascript.0.';
                    var pfad = instanz + 'Strom.';
                    ! var idGHomaPower1 = 'g-homa.0.XXXXXX.power',
                    idGHomaEnergie1 = pfad + 'XXXXXX.ENERGY_COUNTER'';
                    ! createState(idGHomaEnergie1, 0, {name: 'Energie Counter XXXXXX', type: 'number', unit:'Wh'});
                    ! on({id:idGHomaPower1, change:'any'}, function(obj) {
                    var Verbrauch = getState(idGHomaEnergie1).val;
                    Verbrauch += (0.5 * (obj.state.val + obj.oldState.val) * (obj.state.ts - obj.oldState.ts)) / 3600000;
                    setState(idGHomaEnergie1, Verbrauch);
                    });

                    
                    Danke für die Unterstützung @AlCalzone…
                    
                    vg
                    1 Reply Last reply Reply Quote 0
                    • S
                      schittl last edited by

                      Ich habe für das Objekt Power die SQL-History aktiviert. Soweit so gut, nur der Log wird dadurch extrem belastet. Ich habe gelesen, dass die Ursache im Adapter liegen kann. Kannst Du bitte mal schauen/prüfen? viewtopic.php?t=8903

                      Diese Meldungen für meine 4 Steckdosen mit Verbrauchsanzeige werden so alle paar Sekunden in die LOG geschrieben…

                      sql.0	2018-06-16 21:58:34.589	info	enabled logging of g-homa.0.XXXXXX.power
                      

                      @AlCalzone

                      Danke & vg

                      Falk

                      1 Reply Last reply Reply Quote 0
                      • AlCalzone
                        AlCalzone Developer last edited by

                        Schaue ich mir an, danke für den Report

                        @schittl: Bitte mal von Github installieren, Instanz neu starten und testen, ob die Meldungen noch auftauchen.

                        1 Reply Last reply Reply Quote 0
                        • S
                          schittl last edited by

                          @AlCalzone:

                          @schittl: Bitte mal von Github installieren, Instanz neu starten und testen, ob die Meldungen noch auftauchen. `
                          Finde da nur Version 0.3.0, welche ich schon installiert habe oder wurde keine neue Version erstellt?

                          1 Reply Last reply Reply Quote 0
                          • AlCalzone
                            AlCalzone Developer last edited by

                            Habe die Versionsnummer nicht erhöht, das mach ich dann beim Release auf npm wenn es funktioniert.

                            1 Reply Last reply Reply Quote 0
                            • S
                              schittl last edited by

                              Ok probiere ich heute abend aus.

                              $ ./iobroker url "https://github.com/AlCalzone/ioBroker.g-homa/tarball/master" g-homa
                              

                              Über iobroker.pro bin ich mir nicht sicher ob er korrekt aktualisiert wird. Ich werde hier berichten.

                              1 Reply Last reply Reply Quote 0
                              • AlCalzone
                                AlCalzone Developer last edited by

                                Den Knopf in der Adapterliste kennst du? Führt zu Dialog mit Dropdown, wo du mit 1-2 Klicks g-homa von Github installieren kannst.

                                Oder meintest du das?

                                1 Reply Last reply Reply Quote 0
                                • S
                                  schittl last edited by

                                  Ja den kenne ich.
                                  3116_github.jpg
                                  Habe ich über iobroker ausgeführt wobei ich mir dabei nicht sicher bin, ob das zum Erfolg führte, da die Meldungen immer noch erscheinen. Ich teste das heute abend nochmal 😉

                                  1 Reply Last reply Reply Quote 0
                                  • AlCalzone
                                    AlCalzone Developer last edited by

                                    @schittl:

                                    Habe ich über iobroker ausgeführt wobei ich mir dabei nicht sicher bin, ob das zum Erfolg führte, da die Meldungen immer noch erscheinen. Ich teste das heute abend nochmal 😉 `
                                    Upload und Instanzneustart nach der Installation gemacht? 😉 Kann natürlich auch sein, dass ich noch was übersehen hab.

                                    1 Reply Last reply Reply Quote 0
                                    • S
                                      schittl last edited by

                                      @AlCalzone:

                                      Upload und Instanzneustart nach der Installation gemacht? Kann natürlich auch sein, dass ich noch was übersehen hab. ` Sieht gut aus… Danke

                                      1 Reply Last reply Reply Quote 0
                                      • R
                                        Rotzbubi last edited by

                                        Hallo,

                                        Habe mir gestern auch eine Homa-Dose mit Verbrauchsmessung zugelegt. Woher bekomme ich den aktuellen Verbrauch. Adapter funktioniert und Dose lässt sich über iobroker schalten. Nur der Datenpunkt für den Verbrauch wird nicht angezeigt. Bei meiner TP-Link habe ich ein ähnliches Problem. Da wird zwat der Datenpunkt angezeigt - ist aber immer 0.

                                        Bin langsam am verzweifeln.

                                        LG Rainer

                                        1 Reply Last reply Reply Quote 0
                                        • AlCalzone
                                          AlCalzone Developer last edited by

                                          @Rotzbubi:

                                          Nur der Datenpunkt für den Verbrauch wird nicht angezeigt. `

                                          Bitte mal den Adapter auf Loglevel "debug" stellen (Instanzen-Liste/Expertenmodus) und den Log des Adapters hier posten. Im Optimalfall hast du einen Verbraucher an der Dose hängen.

                                          1 Reply Last reply Reply Quote 0
                                          • R
                                            Rotzbubi last edited by

                                            Hallo AlCalzone,

                                            mache ich heute Abend, wenn ich wieder daheim bin.

                                            Liebe Grüße!

                                            Rainer

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            402
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            27
                                            177
                                            29820
                                            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