Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. Skripten / Logik
  4. Blockly
  5. Zeitdifferenz ohne Variable als Bedingung in Blockly

NEWS

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    352

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    10
    1
    316

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    934

Zeitdifferenz ohne Variable als Bedingung in Blockly

Geplant Angeheftet Gesperrt Verschoben Blockly
51 Beiträge 3 Kommentatoren 3.6k Aufrufe 2 Beobachtet
  • Ä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.
  • CodierknechtC Codierknecht

    @deifel sagte in Zeitdifferenz ohne Variable als Bedingung in Blockly:

    Welcher Bezug hat denn "Wert"?

    2a8faff7-81c3-4932-9dc9-ebd13f60aed5-image.png
    Das ist dieses Element.
    Kann man auf "Wert" ändern und erhält damit den Wert des triggernden Objektes.

    Das Script soll folgendes machen:
    Wenn HM geändert wird, wird Hue auf den gleichen Wert gesetzt. Aber nur, wenn Hue nicht schon den gleichen Wert hat.
    Bei HM dann halt analog.

    D Offline
    D Offline
    deifel
    schrieb am zuletzt editiert von
    #42

    Habe ich verstanden und so gebaut.
    Leider exakt selbes Problem: Dauerschleife. Egal, aus welcher Richtung ich schalte. An-Aus-An-Aus... Bis dann der DC oben ist :(
    Eigentlich auch klar, da bei Homematic der Wert "springt" - der geht nicht sofort auf den eingestellten Wert, sondern macht Zwischenschritte. Demnach hüpft er hin und her und das Script spinnt dann.
    Wäre es denn möglich, dass wir das mit der Zeitdifferenz zwischen den Zeitstempeln testen?
    Wenn das klappt, dann wäre mir geholfen :)

    CodierknechtC 1 Antwort Letzte Antwort
    0
    • CodierknechtC Offline
      CodierknechtC Offline
      Codierknecht
      Developer Most Active
      schrieb am zuletzt editiert von
      #43

      Nehmen wir mal folgendes Szenario an:

      Bei sind aus (Level = 0%). Im HM war der letzte Wert 50%.

      Du schaltest am HM durch kurzen Tastendruck ein. Der geht auf den letzten gespeicherten Wert. Also auf 50%.
      Der Trigger reagiert und prüft nun, was im Hue-Level steht.
      Dort steht 0% - also setzt das Script den Wert nun ebenfalls auf 50%.

      Jetzt feuert der Trigger am Hue.
      Er guckt auf den Wert in HM und stellt fest: Da steht 50%. Ist der gleiche Wert, also passiert nix.

      "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

      Proxmox 9.1.1 LXC|8 GB|Core i7-6700
      HmIP|ZigBee|Tasmota|Unifi
      Zabbix Certified Specialist
      Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

      1 Antwort Letzte Antwort
      0
      • CodierknechtC Codierknecht

        @deifel sagte in Zeitdifferenz ohne Variable als Bedingung in Blockly:

        Welcher Bezug hat denn "Wert"?

        2a8faff7-81c3-4932-9dc9-ebd13f60aed5-image.png
        Das ist dieses Element.
        Kann man auf "Wert" ändern und erhält damit den Wert des triggernden Objektes.

        Das Script soll folgendes machen:
        Wenn HM geändert wird, wird Hue auf den gleichen Wert gesetzt. Aber nur, wenn Hue nicht schon den gleichen Wert hat.
        Bei HM dann halt analog.

        HomoranH Nicht stören
        HomoranH Nicht stören
        Homoran
        Global Moderator Administrators
        schrieb am zuletzt editiert von
        #44

        @codierknecht sagte in Zeitdifferenz ohne Variable als Bedingung in Blockly:

        Aber nur, wenn Hue nicht schon den gleichen Wert hat.

        wir wissen aber immer noch nicht ob Hue den Wert kontinuierlich ändert und so beim Abruf schon leicht verändert ist

        kein Support per PN! - Fragen im Forum stellen -
        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
        Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton oben rechts. Danke!
        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

        1 Antwort Letzte Antwort
        0
        • D deifel

          Habe ich verstanden und so gebaut.
          Leider exakt selbes Problem: Dauerschleife. Egal, aus welcher Richtung ich schalte. An-Aus-An-Aus... Bis dann der DC oben ist :(
          Eigentlich auch klar, da bei Homematic der Wert "springt" - der geht nicht sofort auf den eingestellten Wert, sondern macht Zwischenschritte. Demnach hüpft er hin und her und das Script spinnt dann.
          Wäre es denn möglich, dass wir das mit der Zeitdifferenz zwischen den Zeitstempeln testen?
          Wenn das klappt, dann wäre mir geholfen :)

          CodierknechtC Offline
          CodierknechtC Offline
          Codierknecht
          Developer Most Active
          schrieb am zuletzt editiert von Codierknecht
          #45

          @deifel sagte in Zeitdifferenz ohne Variable als Bedingung in Blockly:

          Wäre es denn möglich, dass wir das mit der Zeitdifferenz zwischen den Zeitstempeln testen?

          Versuch macht klug!

          Ich würde einen Timeout nehmen, und erst nach x Sekunden schalten.
          Bis dahin sollte sich der Wert in HM ja stabilisiert haben.

          "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

          Proxmox 9.1.1 LXC|8 GB|Core i7-6700
          HmIP|ZigBee|Tasmota|Unifi
          Zabbix Certified Specialist
          Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

          D 1 Antwort Letzte Antwort
          0
          • CodierknechtC Codierknecht

            @deifel sagte in Zeitdifferenz ohne Variable als Bedingung in Blockly:

            Wäre es denn möglich, dass wir das mit der Zeitdifferenz zwischen den Zeitstempeln testen?

            Versuch macht klug!

            Ich würde einen Timeout nehmen, und erst nach x Sekunden schalten.
            Bis dahin sollte sich der Wert in HM ja stabilisiert haben.

            D Offline
            D Offline
            deifel
            schrieb am zuletzt editiert von
            #46

            Genau da liegt das Problem:

            Also ich schalte am HM Schalter auf Ein. Er geht zum letzten Wert, ABER: Er macht Zwischenschritte. War der letzten Wert z.B. 50%, dann geht er auf 20 und dann auf 50.
            Für die Lampe, gibt er zwar direkt 50% raus, aber im "System" macht er das so und das sieht man auch in der Oberfläche von Homematic.
            Dadurch fängt das ganze Konstrukt an zu spinnen, da ja innerhalb kürzester Zeit mehrere Werte kommen. Timeouts lösen das Problem teilweise. Je länger der Timeout, desto zuverlässiger.
            Aber über 10 Sekunden warten (da neben dem Timeout ja auch noch die Abfragezeit dazu kommt) ist fast nicht zumutbar.
            Bei Hue läuft das alles sauber: Wert wird per Taster verändert (oder an gemacht) und landet dann auch so direkt im Iobroker.
            Dimmen habe ich noch nicht mal getestet. Ich schalte bei Hue einfach nur an - d.h. er gibt den letzten Wert durch.

            HomoranH CodierknechtC 2 Antworten Letzte Antwort
            0
            • D deifel

              Genau da liegt das Problem:

              Also ich schalte am HM Schalter auf Ein. Er geht zum letzten Wert, ABER: Er macht Zwischenschritte. War der letzten Wert z.B. 50%, dann geht er auf 20 und dann auf 50.
              Für die Lampe, gibt er zwar direkt 50% raus, aber im "System" macht er das so und das sieht man auch in der Oberfläche von Homematic.
              Dadurch fängt das ganze Konstrukt an zu spinnen, da ja innerhalb kürzester Zeit mehrere Werte kommen. Timeouts lösen das Problem teilweise. Je länger der Timeout, desto zuverlässiger.
              Aber über 10 Sekunden warten (da neben dem Timeout ja auch noch die Abfragezeit dazu kommt) ist fast nicht zumutbar.
              Bei Hue läuft das alles sauber: Wert wird per Taster verändert (oder an gemacht) und landet dann auch so direkt im Iobroker.
              Dimmen habe ich noch nicht mal getestet. Ich schalte bei Hue einfach nur an - d.h. er gibt den letzten Wert durch.

              HomoranH Nicht stören
              HomoranH Nicht stören
              Homoran
              Global Moderator Administrators
              schrieb am zuletzt editiert von Homoran
              #47

              @deifel sagte in Zeitdifferenz ohne Variable als Bedingung in Blockly:

              macht Zwischenschritte. War der letzten Wert z.B. 50%, dann geht er auf 20 und dann auf 50.

              richtig! jetzt kommen wir der Sache näher.
              bei HM ist das so. Da wird zu Beginn noch der Startwert übermittelt

              und wie ist das bei HUE??
              beim festhalten

              kein Support per PN! - Fragen im Forum stellen -
              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
              Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton oben rechts. Danke!
              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

              1 Antwort Letzte Antwort
              0
              • D deifel

                Genau da liegt das Problem:

                Also ich schalte am HM Schalter auf Ein. Er geht zum letzten Wert, ABER: Er macht Zwischenschritte. War der letzten Wert z.B. 50%, dann geht er auf 20 und dann auf 50.
                Für die Lampe, gibt er zwar direkt 50% raus, aber im "System" macht er das so und das sieht man auch in der Oberfläche von Homematic.
                Dadurch fängt das ganze Konstrukt an zu spinnen, da ja innerhalb kürzester Zeit mehrere Werte kommen. Timeouts lösen das Problem teilweise. Je länger der Timeout, desto zuverlässiger.
                Aber über 10 Sekunden warten (da neben dem Timeout ja auch noch die Abfragezeit dazu kommt) ist fast nicht zumutbar.
                Bei Hue läuft das alles sauber: Wert wird per Taster verändert (oder an gemacht) und landet dann auch so direkt im Iobroker.
                Dimmen habe ich noch nicht mal getestet. Ich schalte bei Hue einfach nur an - d.h. er gibt den letzten Wert durch.

                CodierknechtC Offline
                CodierknechtC Offline
                Codierknecht
                Developer Most Active
                schrieb am zuletzt editiert von
                #48

                @deifel sagte in Zeitdifferenz ohne Variable als Bedingung in Blockly:

                War der letzten Wert z.B. 50%, dann geht er auf 20 und dann auf 50.

                Das dauert aber doch nur Sekundenbruchteile.
                Mit 'nem Timeout sollte das eigentlich abzufangen sein.

                Wie gesagt: Bau mal einige Debug ein. Dann sieht man im Protokoll, was wann passiert.

                "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                HmIP|ZigBee|Tasmota|Unifi
                Zabbix Certified Specialist
                Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                D 1 Antwort Letzte Antwort
                0
                • CodierknechtC Codierknecht

                  @deifel sagte in Zeitdifferenz ohne Variable als Bedingung in Blockly:

                  War der letzten Wert z.B. 50%, dann geht er auf 20 und dann auf 50.

                  Das dauert aber doch nur Sekundenbruchteile.
                  Mit 'nem Timeout sollte das eigentlich abzufangen sein.

                  Wie gesagt: Bau mal einige Debug ein. Dann sieht man im Protokoll, was wann passiert.

                  D Offline
                  D Offline
                  deifel
                  schrieb am zuletzt editiert von
                  #49

                  Wie ihr merkt, bin ich kein "Profi" -d.h. für Debugs muss ich mich erstmal einlesen...
                  @Homoran: Bei Hue wird der Wert beim Festhalten erst weitergegeben, wenn ich loslasse. Also keine Zwischenwerte oder sonstiges.
                  Das Problem ist deshalb eher HM

                  CodierknechtC 1 Antwort Letzte Antwort
                  0
                  • D deifel

                    Wie ihr merkt, bin ich kein "Profi" -d.h. für Debugs muss ich mich erstmal einlesen...
                    @Homoran: Bei Hue wird der Wert beim Festhalten erst weitergegeben, wenn ich loslasse. Also keine Zwischenwerte oder sonstiges.
                    Das Problem ist deshalb eher HM

                    CodierknechtC Offline
                    CodierknechtC Offline
                    Codierknecht
                    Developer Most Active
                    schrieb am zuletzt editiert von
                    #50

                    @deifel sagte in Zeitdifferenz ohne Variable als Bedingung in Blockly:

                    für Debugs muss ich mich erstmal einlesen...

                    400cbeff-6fc1-4d7e-827c-cb2836d087dd-image.png

                    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                    Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                    HmIP|ZigBee|Tasmota|Unifi
                    Zabbix Certified Specialist
                    Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                    D 1 Antwort Letzte Antwort
                    0
                    • CodierknechtC Codierknecht

                      @deifel sagte in Zeitdifferenz ohne Variable als Bedingung in Blockly:

                      für Debugs muss ich mich erstmal einlesen...

                      400cbeff-6fc1-4d7e-827c-cb2836d087dd-image.png

                      D Offline
                      D Offline
                      deifel
                      schrieb am zuletzt editiert von
                      #51

                      Guten Morgen zusammen,

                      ich möchte mich nochmals bei Euch für die sensationelle Hilfe - und Problemlösung bedanken!
                      Ich habe mich gestern Abend nochmals einige Stunden an das Problem ran gemacht.
                      Ganz lösen konnte ich es nicht, aber ich konnte mit folgendem Script (von Codierknecht) jetzt eine ganz vernünftige Lösung schaffen:
                      1698312711362-pmhxafejbh.png

                      Bei dem ganzen Testen gestern und den ständigen Dauerschleifen habe ich irgendwann mal das Script komplett deaktiviert und dann den Homematic Dimmer geschalten.
                      Und dann ging er (also ohne Scripteinwirkung) nach 2 Sekunden wieder aus.
                      Also habe ich etwas gewartet, weil ich dachte, dass das Teil evtl. die Hitzeabschaltung durch das ganze Testen hat. Dann ging es wieder. Deshalb dachte ich, es lag an der Hitze.
                      Aber etwas später tauchte das Problem wieder auf. Also habe ich es weiter untersucht und festgestellt, dass das Teil immer wieder (in mindestens 50% der Fälle) sich sofort nach dem Einschalten wieder ausschaltet.
                      Egal ob am Schalter selbst oder über die Oberfläche... Anscheinend wohl ein häufiger Fehler des HM Dimmers.
                      Da ich noch einen anderen habe, versuchte ich es mit dem. Der hatte den Fehler nicht und das Script läuft mit diesem jetzt auch sehr gut!!
                      Zwar gibt es tatsächlich manchmal Probleme, wenn man dimmt (vermutlich, weil die Werte einfach zu häufig und mehrere Sekunden versetzt in Iobroker ankommen.
                      Dann wird das Licht eben kurz heller, dann wieder dunkler usw.
                      Aber es pendelt sich bisher immer wieder ein und es gibt keine Dauerschleifen mehr.

                      Wollte nur kurz eine Rückmeldung geben und mich nochmals für Eure Hilfe bedanken!

                      Viele Grüße
                      Deifel

                      1 Antwort Letzte Antwort
                      0

                      Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                      Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                      Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                      Registrieren Anmelden
                      Antworten
                      • In einem neuen Thema antworten
                      Anmelden zum Antworten
                      • Älteste zuerst
                      • Neuste zuerst
                      • Meiste Stimmen


                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      304

                      Online

                      32.8k

                      Benutzer

                      82.8k

                      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