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. Skripten / Logik
  4. Blockly
  5. Rollosteuerung funktioniert nicht

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.4k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    973

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.3k

Rollosteuerung funktioniert nicht

Geplant Angeheftet Gesperrt Verschoben Blockly
15 Beiträge 5 Kommentatoren 145 Aufrufe 3 Watching
  • Ä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.
  • AsgothianA Offline
    AsgothianA Offline
    Asgothian
    Developer
    schrieb am zuletzt editiert von
    #2

    Oben links im Editor gibt es einen button mit dem du zwischen JS und Blockly ansicht wechseln kannst.

    Mach mal und poste das entstandene JS. nochmal drauf clicken und du hast das Blockly zurück :)

    A.

    ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
    "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

    CodierknechtC 1 Antwort Letzte Antwort
    0
    • AsgothianA Asgothian

      Oben links im Editor gibt es einen button mit dem du zwischen JS und Blockly ansicht wechseln kannst.

      Mach mal und poste das entstandene JS. nochmal drauf clicken und du hast das Blockly zurück :)

      A.

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

      @Asgothian sagte in Rollosteuerung funktioniert nicht:

      Oben links im Editor

      Wohl eher oben rechts ;-)

      8c977d20-9d08-4bca-afce-7984de8b31dc-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

      1 Antwort Letzte Antwort
      0
      • Valerian KriwaczekV Offline
        Valerian KriwaczekV Offline
        Valerian Kriwaczek
        schrieb am zuletzt editiert von Homoran
        #4

        HIer noch das Skript:

        on({ id: 'alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Taster_Ab_bei_Bett' /* Taster Ab bei Bett */, change: 'any' }, async (obj) => {
          let value = obj.state.val;
          let oldValue = obj.oldState.val;
          if (((obj.state ? obj.state.val : '') == 'single_push') && (getState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Status').val != ('closing' || 'opening'))) {
            setState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Ab' /* Rollo Ab */, true);
          } else if (((obj.state ? obj.state.val : '') == 'single_push') && (getState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Status').val != 'stopped')) {
            setState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Stop' /* Rollo Stop */, true);
          }
        });
        on({ id: 'alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Taster_Auf_bei_Bett' /* Taster Auf bei Bett */, change: 'any' }, async (obj) => {
          let value = obj.state.val;
          let oldValue = obj.oldState.val;
          if (((obj.state ? obj.state.val : '') == 'single_push') && (getState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Status').val != ('closing' || 'opening'))) {
            setState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Auf' /* Rollo Auf */, true);
          } else if (((obj.state ? obj.state.val : '') == 'single_push') && (getState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Status').val != 'stopped')) {
            setState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Stop' /* Rollo Stop */, true);
          }
        });
        
        on({ id: 'alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Taster_Ab' /* Taster Ab */, change: 'any' }, async (obj) => {
          let value = obj.state.val;
          let oldValue = obj.oldState.val;
          if (((obj.state ? obj.state.val : '') == 'single_push') && (getState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Status').val != ('closing' || 'opening'))) {
            setState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Ab' /* Rollo Ab */, true);
          } else if (((obj.state ? obj.state.val : '') == 'single_push') && (getState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Status').val == ('closing' || 'opening'))) {
            setState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Stop' /* Rollo Stop */, true);
          }
        });
        on({ id: 'alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Taster_Auf' /* Taster Auf */, change: 'any' }, async (obj) => {
          let value = obj.state.val;
          let oldValue = obj.oldState.val;
          if (((obj.state ? obj.state.val : '') == 'single_push') && (getState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Status').val != ('closing' || 'opening'))) {
            setState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Auf' /* Rollo Auf */, true);
          } else if (((obj.state ? obj.state.val : '') == 'single_push') && (getState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Status').val == ('closing' || 'opening'))) {
            setState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Stop' /* Rollo Stop */, true);
          }
        });
        
        1 Antwort Letzte Antwort
        0
        • Valerian KriwaczekV Offline
          Valerian KriwaczekV Offline
          Valerian Kriwaczek
          schrieb am zuletzt editiert von
          #5

          Das siehrt hier aber nicht so aus wie ich das wollte 🙈🙈

          HomoranH 1 Antwort Letzte Antwort
          0
          • Valerian KriwaczekV Valerian Kriwaczek

            Das siehrt hier aber nicht so aus wie ich das wollte 🙈🙈

            HomoranH Offline
            HomoranH Offline
            Homoran
            Global Moderator Administrators
            schrieb am zuletzt editiert von
            #6

            @Valerian-Kriwaczek sagte in Rollosteuerung funktioniert nicht:

            Das siehrt hier aber nicht so aus wie ich das wollte 🙈🙈

            und jetzt?

            kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

            der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

            1 Antwort Letzte Antwort
            0
            • Valerian KriwaczekV Offline
              Valerian KriwaczekV Offline
              Valerian Kriwaczek
              schrieb am zuletzt editiert von Homoran
              #7

              so, jetzt...

              Das hier Funktioniert praktisch:

              on({ id: 'alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Taster_Ab_bei_Bett' /* Taster Ab bei Bett */, change: 'any' }, async (obj) => {
                let value = obj.state.val;
                let oldValue = obj.oldState.val;
                if (((obj.state ? obj.state.val : '') == 'single_push') && (getState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Status').val != ('closing' || 'opening'))) {
                  setState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Ab' /* Rollo Ab */, true);
                } else if (((obj.state ? obj.state.val : '') == 'single_push') && (getState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Status').val != 'stopped')) {
                  setState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Stop' /* Rollo Stop */, true);
                }
              });
              on({ id: 'alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Taster_Auf_bei_Bett' /* Taster Auf bei Bett */, change: 'any' }, async (obj) => {
                let value = obj.state.val;
                let oldValue = obj.oldState.val;
                if (((obj.state ? obj.state.val : '') == 'single_push') && (getState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Status').val != ('closing' || 'opening'))) {
                  setState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Auf' /* Rollo Auf */, true);
                } else if (((obj.state ? obj.state.val : '') == 'single_push') && (getState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Status').val != 'stopped')) {
                  setState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Stop' /* Rollo Stop */, true);
                }
              });
              

              Und dert Teil macht immer wieder nur Auf und stoppt nicht

              on({ id: 'alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Taster_Ab' /* Taster Ab */, change: 'any' }, async (obj) => {
                let value = obj.state.val;
                let oldValue = obj.oldState.val;
                if (((obj.state ? obj.state.val : '') == 'single_push') && (getState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Status').val != ('closing' || 'opening'))) {
                  setState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Ab' /* Rollo Ab */, true);
                } else if (((obj.state ? obj.state.val : '') == 'single_push') && (getState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Status').val == ('closing' || 'opening'))) {
                  setState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Stop' /* Rollo Stop */, true);
                }
              });
              on({ id: 'alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Taster_Auf' /* Taster Auf */, change: 'any' }, async (obj) => {
                let value = obj.state.val;
                let oldValue = obj.oldState.val;
                if (((obj.state ? obj.state.val : '') == 'single_push') && (getState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Status').val != ('closing' || 'opening'))) {
                  setState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Auf' /* Rollo Auf */, true);
                } else if (((obj.state ? obj.state.val : '') == 'single_push') && (getState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Status').val == ('closing' || 'opening'))) {
                  setState('alias.0.Haus.Rollo.Rollo_Roland_Schlafen.Rollo_Stop' /* Rollo Stop */, true);
                }
              });
              

              MOD-EDIT: Code in code-tags gesetzt!

              Erkennt Ihr da ein Muster?`

              1 Antwort Letzte Antwort
              0
              • AsgothianA Offline
                AsgothianA Offline
                Asgothian
                Developer
                schrieb am zuletzt editiert von
                #8

                Noch nicht, aber da gibt es etwas was so nicht geht:

                Screenshot 2025-12-22 at 10.57.46.png

                Das das so funktioniert wie du das willst ist eher zufall. der oder Baustein erwartet einen Wahr / Falsch Wert an beiden Eingängen. Du gibst ihm einen Text. ich würde folgendes machen:

                Screenshot 2025-12-22 at 11.07.30.png

                Wobei du natürlich an stelle der von mir eingesetzten Textblöcke in den blauen Rahmen die korrekten Objekt-Selektions Blöcke nehmen musst. Und im Roten Rahmen ist derw 'stop' dp gemeint, während im grünen der 'start' dp gemeint ist.

                ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                1 Antwort Letzte Antwort
                0
                • Valerian KriwaczekV Offline
                  Valerian KriwaczekV Offline
                  Valerian Kriwaczek
                  schrieb am zuletzt editiert von
                  #9

                  Habs jetzt mal so gemacht, aber jetzt funktioniert der stop garnicht mehr...🫤

                  bdb1da78-0c52-4928-8386-4a6bd523985c-image.png

                  1 Antwort Letzte Antwort
                  0
                  • AsgothianA Offline
                    AsgothianA Offline
                    Asgothian
                    Developer
                    schrieb am zuletzt editiert von Asgothian
                    #10

                    Na ja, bei closing sollte es gehen. Bei opening nicht.

                    Nur - warum hast du nicht das nachgebaut was ich gebaut habe. Und poste doch mal welche Zustände der Rollo Status denn haben kann. ich gehe von

                    closing
                    closed
                    opening
                    open
                    

                    aus.

                    ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                    "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                    1 Antwort Letzte Antwort
                    0
                    • Valerian KriwaczekV Offline
                      Valerian KriwaczekV Offline
                      Valerian Kriwaczek
                      schrieb am zuletzt editiert von
                      #11

                      habs jetzt grade noch geändert, hab das "ing" im ersten Moment ned gecheckt.. :-)

                      6644bd81-edc7-46ec-a3ea-0933618c7e76-image.png

                      29105a6a-6e56-473c-9459-d4e40247d7b5-image.png

                      Ich kann jetzt direkt zwischen auf und ab umschalten, aber stoppen geht nicht.

                      Die Zustände sind open, closed, opening, closing, stopped, calibrating

                      1 Antwort Letzte Antwort
                      0
                      • AsgothianA Offline
                        AsgothianA Offline
                        Asgothian
                        Developer
                        schrieb am zuletzt editiert von
                        #12

                        Nochmal - warum baust du nicht genau das nach was ich gemacht hab. Dein vergleich mit enthält nicht den Wert opening sort dafür das du fast immer Rollo Auf ansteuerst.

                        ich hatte durchaus schon mit absicht auf genau einen vergleich mit else gesetzt.

                        A.

                        ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                        "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                        1 Antwort Letzte Antwort
                        0
                        • Valerian KriwaczekV Offline
                          Valerian KriwaczekV Offline
                          Valerian Kriwaczek
                          schrieb am zuletzt editiert von
                          #13

                          Ok, jetzt hab ich dich. Vielen Dank!
                          das heißt also auch ein "nicht" funktioniert in Verbindung mit Text nicht zuverlässig.

                          CodierknechtC 1 Antwort Letzte Antwort
                          0
                          • Valerian KriwaczekV Valerian Kriwaczek

                            Ok, jetzt hab ich dich. Vielen Dank!
                            das heißt also auch ein "nicht" funktioniert in Verbindung mit Text nicht zuverlässig.

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

                            @Valerian-Kriwaczek sagte in Rollosteuerung funktioniert nicht:

                            das heißt also auch ein "nicht" funktioniert in Verbindung mit Text nicht zuverlässig.

                            Das "nicht" funktioniert mit bool'schen Ausdrücken. Nicht mit Texten.

                            Dein "sonst falls" ist übrigens völliger Mumpitz - denn dieser Block wird NIEMALS erreicht.
                            Du reagierts ja auf ein "Falls Wert == 'single_push'". Dann wird bei einem single_push auch genau dieser Block ausgeführt. Der "sonst falls" Block wird dann nicht mehr ausgewertet. Warum auch? Ein "sonst" ist ja nicht mehr nötig, wenn der Ausdruck im "Falls" bereits wahr war.

                            "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

                            paul53P 1 Antwort Letzte Antwort
                            0
                            • CodierknechtC Codierknecht

                              @Valerian-Kriwaczek sagte in Rollosteuerung funktioniert nicht:

                              das heißt also auch ein "nicht" funktioniert in Verbindung mit Text nicht zuverlässig.

                              Das "nicht" funktioniert mit bool'schen Ausdrücken. Nicht mit Texten.

                              Dein "sonst falls" ist übrigens völliger Mumpitz - denn dieser Block wird NIEMALS erreicht.
                              Du reagierts ja auf ein "Falls Wert == 'single_push'". Dann wird bei einem single_push auch genau dieser Block ausgeführt. Der "sonst falls" Block wird dann nicht mehr ausgewertet. Warum auch? Ein "sonst" ist ja nicht mehr nötig, wenn der Ausdruck im "Falls" bereits wahr war.

                              paul53P Offline
                              paul53P Offline
                              paul53
                              schrieb am zuletzt editiert von paul53
                              #15

                              @Valerian-Kriwaczek sagte: stoppen geht nicht.

                              Versuche es mal so:

                              Blockly_temp.JPG

                              Es entspricht etwa dem Vorschlag von @asgothian

                              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
                              Antworten
                              • In einem neuen Thema antworten
                              Anmelden zum Antworten
                              • Älteste zuerst
                              • Neuste zuerst
                              • Meiste Stimmen


                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              346

                              Online

                              32.6k

                              Benutzer

                              82.2k

                              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