Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Hm-rega Aktualisierung nur bei echter Änderung

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.7k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.1k

Hm-rega Aktualisierung nur bei echter Änderung

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
15 Beiträge 5 Kommentatoren 3.0k Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • BluefoxB Offline
    BluefoxB Offline
    Bluefox
    schrieb am zuletzt editiert von
    #2

    @nobody:

    Hallo,

    der hm-rega-Adapter verursacht eine ziemliche Grundlast, da alle Variablen im konfigurierten Intervall aus der CCU gelesen und immer überschrieben werden. Die Last entsteht leider nicht nur in der CCU und js-Controller sondern auch in node-red und vis.

    Hier wäre es besser, wenn vor dem Überschreiben des Werts erst einmal überprüft wird, ob der in der states-DB gespeicherte Wert vom neuen Wert abweicht oder ack noch nicht gesetzt ist und nur dann, wenn eine Wertänderung erforderlich ist, der Wert wirklich überschrieben wird.

    Hierfür wäre eine neue Methode (z.B. setStateIfChanged) im js-Controller sinnvoll, die die Wertprüfung direkt vor dem Speichern macht. Dann wäre keine zusätzliche Kommunkikation zwischen hm-rega-Adapter und js-controller erforderlich und die Latenz würde nicht wesentlich steigen.

    Gruß

    Markus `
    Interessanter Vorschlag.

    1 Antwort Letzte Antwort
    0
    • N Offline
      N Offline
      nobody
      schrieb am zuletzt editiert von
      #3

      Ich hab mal in die statesInRedis.js und statesInMemServer.js rein geschaut.

      Eigentlich ist da ja schon alles da. Der alte Wert wird ausgelesen und das Timestamp für die Änderung nur dann geändert, wenn eine Wertänderung stattgefunden hat. Man müsste nur per optionalem Parameter festlegen können, ob der Wert geschrieben werden soll, wenn sich nur der ts-Wert geändert hat.

      1 Antwort Letzte Antwort
      0
      • paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von
        #4

        @nobody:

        der hm-rega-Adapter verursacht eine ziemliche Grundlast, da alle Variablen im konfigurierten Intervall aus der CCU gelesen und immer überschrieben werden. Die Last entsteht leider nicht nur in der CCU und js-Controller sondern auch in node-red und vis.

        Hier wäre es besser, wenn vor dem Überschreiben des Werts erst einmal überprüft wird, ob der in der states-DB gespeicherte Wert vom neuen Wert abweicht oder ack noch nicht gesetzt ist und nur dann, wenn eine Wertänderung erforderlich ist, der Wert wirklich überschrieben wird. `
        Da der hm-rega-Adapter die Werte ohnehin puffert, wäre eine einfache Abfrage innerhalb des Adapters sinnvoll (Beispiel: pollVariables, Zeile 463)

                    if(regaStates[id] !== val) {
                      regaStates[id] = val;
                      adapter.setState(adapter.namespace + '.' + id, val, true);
                    }    
        
        

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        1 Antwort Letzte Antwort
        0
        • N Offline
          N Offline
          nobody
          schrieb am zuletzt editiert von
          #5

          @paul53:

          Da der hm-rega-Adapter die Werte ohnehin puffert, wäre eine einfache Abfrage innerhalb des Adapters sinnvoll (Beispiel: pollVariables, Zeile 463) `

          Danke für den Tipp. Die Stelle sieht vielversprechend aus. Ich ändere das mal bei mir lokal und schaue, ob noch alles korrekt läuft.

          1 Antwort Letzte Antwort
          0
          • N Offline
            N Offline
            nobody
            schrieb am zuletzt editiert von
            #6

            ich hab die Änderung nun in die beiden Poll-Funktionen für Variablen und Programm-Status eingebaut.

            Funktioniert soweit. Änderungen werden weiterhin übertragen, aber ansonsten werden keine Ereignisse ausgelöst.

            Falls jemand testen möchte:

            https://github.com/nobodyMO/ioBroker.hm-rega.git

            Wenn keine Probleme auftauchen werde ich morgen dafür einen pull request einstellen.

            1 Antwort Letzte Antwort
            0
            • paul53P Offline
              paul53P Offline
              paul53
              schrieb am zuletzt editiert von
              #7

              @nobody:

              ich hab die Änderung nun in die beiden Poll-Funktionen für Variablen und Programm-Status eingebaut. `
              Schau Dir mal noch zwei Stellen in der von Dir geänderten Version an:

              • Zeilen 649-651

              • Zeilen 1223- 1240

              Diese sollten wohl auch noch durch eine entsprechende Abfrage ergänzt werden ?

              EDIT: Die Funktionen mit den angegebenen Zeilen werden anscheinend nur bei Adapter-Start aufgerufen. Damit erübrigt sich die zusätzliche Abfrage.

              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
              Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

              1 Antwort Letzte Antwort
              0
              • N Offline
                N Offline
                nobody
                schrieb am zuletzt editiert von
                #8

                ok.

                Ich hab noch eine Kleinigkeit ergänzt:

                Wenn ein State in der CCU gesetzt wird, der State nun anschließend direkt mit ack=true überschrieben, weil dies nur noch durch den Poll erfolgt, wenn sich der Wert unterscheidet.

                1 Antwort Letzte Antwort
                0
                • BluefoxB Offline
                  BluefoxB Offline
                  Bluefox
                  schrieb am zuletzt editiert von
                  #9

                  Habe erst jetzt die Diskussion entdeckt, bevor aber auch die Datei geändert. :?

                  Ist noch nicht getestet, aber bei mir sind mehr Verbesserungen drin. ;)
                  48_hm-rega.js

                  1 Antwort Letzte Antwort
                  0
                  • N Offline
                    N Offline
                    nobody
                    schrieb am zuletzt editiert von
                    #10

                    Danke bluefox.

                    Ich hab die neue Version bei mir installiert. Bis jetzt läuft sie ohne Probleme und wie ich es mir vorgestellt hatte.

                    1 Antwort Letzte Antwort
                    0
                    • BluefoxB Offline
                      BluefoxB Offline
                      Bluefox
                      schrieb am zuletzt editiert von
                      #11

                      Man kann jetzt vom git updaten und ausprobieren. Ich hoffe es wird was für Performance sorgen.

                      Du (nobody) hast schon gut die Stelle gefunden. Wenn die Leute update alle 5-10 Sekunden haben und dazu noch 100-150 Alarme/Variable/Programme, dann ist es ordentlich last gewesen.

                      1 Antwort Letzte Antwort
                      0
                      • apollon77A Offline
                        apollon77A Offline
                        apollon77
                        schrieb am zuletzt editiert von
                        #12

                        Auch installiert, alles ok bisher.

                        Ich beobachte mal die Lastdaten der CCU die nächsten Tage :-)

                        Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                        • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                        • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                        1 Antwort Letzte Antwort
                        0
                        • P Offline
                          P Offline
                          pix
                          schrieb am zuletzt editiert von
                          #13

                          Seit 23.8. installiert. Tablet reagiert viel besser. Beobachte weiter, aber sieht sehr gut aus!

                          Pix

                          ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

                          1 Antwort Letzte Antwort
                          0
                          • apollon77A Offline
                            apollon77A Offline
                            apollon77
                            schrieb am zuletzt editiert von
                            #14

                            Die Lastgraphen der CCU zeigen keine echte Veränderung. Vom CubieTruck hab ich keider keine :-(

                            Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                            • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                            • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                            1 Antwort Letzte Antwort
                            0
                            • N Offline
                              N Offline
                              nobody
                              schrieb am zuletzt editiert von
                              #15

                              Hallo apollon77,

                              hätte mich auch sehr gewundert, wenn sich für die ccu irgendwas geändert hätte. Es werden ja weiterhin alle Werte abgerufen und erst im Adapter gefiltert.

                              Gesendet von meinem SM-G900F mit Tapatalk

                              1 Antwort Letzte Antwort
                              0
                              Antworten
                              • In einem neuen Thema antworten
                              Anmelden zum Antworten
                              • Älteste zuerst
                              • Neuste zuerst
                              • Meiste Stimmen


                              Support us

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

                              415

                              Online

                              32.4k

                              Benutzer

                              81.5k

                              Themen

                              1.3m

                              Beiträge
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                              ioBroker Community 2014-2025
                              logo
                              • Anmelden

                              • Du hast noch kein Konto? Registrieren

                              • Anmelden oder registrieren, um zu suchen
                              • Erster Beitrag
                                Letzter Beitrag
                              0
                              • Home
                              • Aktuell
                              • Tags
                              • Ungelesen 0
                              • Kategorien
                              • Unreplied
                              • Beliebt
                              • GitHub
                              • Docu
                              • Hilfe