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

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Aufruf] G-Homa Adapter testen

    This topic has been deleted. Only users with topic management privileges can see it.
    • 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
                                        • R
                                          Rotzbubi last edited by

                                          Hallo AlCalzone,

                                          anbei die Logs. Vielleicht ist da ja etwas dabei.

                                          LG Rainer

                                          ! undefined2018-06-20 18:19:03.843 - info: host.raspberrypi object change system.adapter.g-homa.0
                                          ! 2018-06-20 18:19:03.850 - info: host.raspberrypi stopInstance system.adapter.g-homa.0
                                          ! 2018-06-20 18:19:03.851 - info: host.raspberrypi stopInstance system.adapter.g-homa.0 killing pid 6635
                                          ! 2018-06-20 18:19:03.873 - info: g-homa.0 terminating
                                          ! 2018-06-20 18:19:03.912 - info: host.raspberrypi instance system.adapter.g-homa.0 terminated with code 0 (OK)
                                          ! 2018-06-20 18:19:06.960 - info: host.raspberrypi object change system.adapter.g-homa.0
                                          ! 2018-06-20 18:19:06.992 - info: host.raspberrypi instance system.adapter.g-homa.0 started with pid 6691
                                          ! 2018-06-20 18:19:08.378 - debug: g-homa.0 objectDB connected
                                          ! 2018-06-20 18:19:08.450 - debug: g-homa.0 statesDB connected
                                          ! 2018-06-20 18:19:08.506 - info: g-homa.0 starting. Version 0.3.1 in /opt/iobroker/node_modules/iobroker.g-homa, node: v6.14.2
                                          ! 2018-06-20 18:19:08.577 - info: g-homa.0 enumerating known plugs…
                                          ! 2018-06-20 18:19:08.647 - info: g-homa.0 found plug with id 4fb956 (online)
                                          ! 2018-06-20 18:19:08.649 - info: g-homa.0 starting server...
                                          ! 2018-06-20 18:19:08.672 - info: g-homa.0 server started on port 50000
                                          ! 2018-06-20 18:19:08.683 - info: g-homa.0 searching plugs
                                          ! 2018-06-20 18:19:43.100 - info: host.raspberrypi object change system.adapter.g-homa.0
                                          ! 2018-06-20 18:19:43.102 - info: host.raspberrypi stopInstance system.adapter.g-homa.0
                                          ! 2018-06-20 18:19:43.103 - info: host.raspberrypi stopInstance system.adapter.g-homa.0 killing pid 6691
                                          ! 2018-06-20 18:19:43.124 - info: g-homa.0 terminating
                                          ! 2018-06-20 18:19:43.171 - info: host.raspberrypi instance system.adapter.g-homa.0 terminated with code 0 (OK)
                                          ! 2018-06-20 18:19:45.642 - info: host.raspberrypi instance system.adapter.g-homa.0 started with pid 6718
                                          ! 2018-06-20 18:19:46.968 - debug: g-homa.0 objectDB connected
                                          ! 2018-06-20 18:19:47.032 - debug: g-homa.0 statesDB connected
                                          ! 2018-06-20 18:19:47.150 - info: g-homa.0 starting. Version 0.3.1 in /opt/iobroker/node_modules/iobroker.g-homa, node: v6.14.2
                                          ! 2018-06-20 18:19:47.255 - info: g-homa.0 enumerating known plugs...
                                          ! 2018-06-20 18:19:47.336 - info: g-homa.0 found plug with id 4fb956 (online)
                                          ! 2018-06-20 18:19:47.338 - info: g-homa.0 starting server...
                                          ! 2018-06-20 18:19:47.360 - info: g-homa.0 server started on port 50000
                                          ! 2018-06-20 18:19:47.372 - info: g-homa.0 searching plugs

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

                                            Hmm ich dachte, ich hätte mehr Logs eingebaut. Da muss ich nochmal ran. Melde mich, wenn du nochmal testen darfst.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            967
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

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