Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Test Adapter shuttercontrol v2.0.x

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Test Adapter shuttercontrol v2.0.x

    This topic has been deleted. Only users with topic management privileges can see it.
    • Homoran
      Homoran Global Moderator Administrators @simatec last edited by Homoran

      @simatec sagte in [Aufruf] Neuer Adapter ioBroker.shuttercontrol:

      Was meinst du mit offset?

      Ich meine eigentlich unterschiedloche offsets je zimmer.
      Da dein Adapter jedoch nicht zimmerbezogen arbeitet vielleicht je Gruppe.

      Meiner Meinung nach ergibt diese Gruppierung nicht für alle Anwender einen Sinn.
      Wenn für jedes Zimmer separate Einstellungen gemacht werden sollen (schlafräume der Kinder waren da sehr speziell) ergibt andererseits die ganze enums-Sache nur bedingt Sinn.

      Mein Schlafzimmer geht zur Straße, da soll nicht im winter schon der Rollladen hochgehen, wenn ich beim Aufstehen noch Licht anmachen muss. Man will die Leute ja nicht erschrecken!
      Ebenso die Küche. Die ist 3m von dem Fusweg weg, hier soll abends der Rolladen schon runtergehen bevor die Sonne ganz unten ist, wenn ich schon Licht zum arbeiten brauche.
      Auf der anderen Seite ist das große Wohnzimmerfenster, da möchte meine Holde gerne im Sommer beim TV noch den Abendhimmel beim/nach Sonnenuntergang sehen.

      Mir schwebte eine Konfiguration in Tabellenform, ähnlich ping oder parser, vor, ganz zu Ende hatte ich es aber auch noch nicht gedacht.
      Alle Räume eine Zeile, bei mehreren Rollläden ggf. Gruppen.
      Es gibt ja auch Räume, die Fenster in verschiedene Himmelsrichtungen haben.

      Bei Beschattung ergibt die Aufteilung nach Raumfunktionen gar kei en Sinn, wenn die Räume gleixher Funktion in alle Himmelsrichtungen zeigen.

      simatec 2 Replies Last reply Reply Quote 0
      • simatec
        simatec Developer Most Active @Homoran last edited by

        @Homoran
        Die Idee hatte ich Anfangs auch, das ganze in Tabellenform zu machen.
        grundsätzlich ist diese Version nur eine erste Idee.
        Ich hatte da auch schon mit @Dutchman drüber diskutiert.
        Da kamen wir zu der Meinung, dass enums im Prinzip das sinnvollste wäre.

        Aber es ist eine erste Beta und wir können noch viele Ideen einfließen lassen.

        1 Reply Last reply Reply Quote 0
        • D
          dirkhe Developer last edited by dirkhe

          Zum Thema Button vs Level. Ich habe den adapter noch nicht getestet, aber ich habe hier ein Script geschrieben, was ein Level simuliert. Damit kann ich meine rolladen zb. Auf 50% fahren. Vlt hilft es dir ja

          (function(){
              // interne Funktion
              function drive(idActive, idPassive, runtime) {
                  setState(idPassive, false);
                  setState(idActive, true);
                  setStateDelayed(idActive,false,runtime);
              }
          
              /**
               * initialisiert eine SOnOff Rolladensteuerung, zb ein T1
               * @param {string} id_DeviceBase Die ID des Basisobjektes
               * @param {string} stateUpName Der Name des Schalter für Auf, zb. "POWER1"
               * @param {string} stateDownName  Der Name des Schalter für Zu, zb. "POWER2"
               * @param {number} runtimeUp Die Laufzeit (in sec), bis die Rollade komplett aufgefahren ist
               * @param {number} runtimeDown Die Laufzeit (in sec), bis die Rollade komplett zugefahren ist
               */
              function initRollade(id_DeviceBase, stateUpName, stateDownName, runtimeUp, runtimeDown){
                  var id_deviceDown= id_DeviceBase + '.' + stateDownName;
                  var id_deviceUp= id_DeviceBase + '.' + stateUpName;
                  var id_deviceLevel= id_DeviceBase + '.level';
          
                  if (getState(id_deviceLevel).notExist){
                      //setState(id_deviceLevel,0,true,function(){
                          extendObject(id_deviceLevel,{type:"state",common:{
                                  "type": "number",    
                                  "name": "Level",
                                  "def":   0,                      // optional,  default 0
                                  "read":  true,                   // mandatory, default true
                                  "write": true,                   // mandatory, default true
                                  "min":   0,                      // optional,  default 0
                                  "max":   100,                    // optional,  default 100
                                  "unit":  "%",                    // optional,  default %
                                  "role":  "level.blind"           // mandatory,
                              }        
                          },function(){
                              log("create " + id_deviceLevel);
                              setStateDelayed(id_deviceLevel,0,true,100);
                          });
                      //});
                  }
          
                  on({id: id_deviceUp, change: "ne", val:false}, function (obj) {
                      let pos= getState(id_deviceLevel).val 
                          + Math.round((100 / (runtimeUp * 1000)) * (obj.state.ts - obj.oldState.ts));
                      if (pos > 100) {
                          pos = 100;
                      }
                      setState(id_deviceLevel, pos, true);
                  });
                  on({id: id_deviceDown, change: "ne", val:false}, function (obj) {
                      let pos= getState(id_deviceLevel).val 
                          - Math.round((100 / (runtimeDown * 1000)) * (obj.state.ts - obj.oldState.ts));
                      if (pos < 0) {
                          pos = 0;
                      }
                      setState(id_deviceLevel, pos,true);
                  });
                  
                  on({id: id_deviceLevel, ack:false}, function (obj) {
                      if (getState(id_DeviceBase + ".alive").val) {
                          setState(id_deviceLevel,obj.oldState.val,true);
                          if (obj.state.val <= 0)
                              drive(id_deviceDown, id_deviceUp, runtimeDown * 1000 + 1000);
                          else if (obj.state.val >= 100)
                              drive(id_deviceUp, id_deviceDown, runtimeUp * 1000 + 1000);
                          else {
                              let diff = obj.oldState.val - obj.state.val;
                              if (diff > 0)
                                  drive(id_deviceDown, id_deviceUp, diff * (runtimeDown / 0.1));
                              else
                                  drive(id_deviceUp, id_deviceDown, Math.abs(diff) * (runtimeUp / 0.1));
                          }
                      }
                  });
              }
          
              initRollade("sonoff.0.Rollade/Florian", "POWER1", "POWER2",15,10);
              //initRollade('sonoff.0.DVES_AD871717', 'POWER2', 'POWER1',18,16);
          
          })();
          
          Ullulaki 1 Reply Last reply Reply Quote 1
          • simatec
            simatec Developer Most Active @dos1973 last edited by

            @dos1973

            So hat doch etwas gedauert ... Jetzt kannst du die shellys mal testen.

            D 1 Reply Last reply Reply Quote 0
            • simatec
              simatec Developer Most Active @Homoran last edited by

              @Homoran
              Hallo Rainer,

              ich habe nun mal angefangen und das ganze in Tabellenform gemacht.
              Die Überlegung wäre noch, ob man enums und Tabelle anbietet (als Vorauswahl)
              Da überlege ich aber noch.
              Aktuell gibt es das noch nicht auf Github, da ich zwar die Tabelle hinbekomme ubd man auch Zeilen einfügen kann, aber das schreiben der ID des Rolladens noch manuell erfolgen muss.

              Ich sitze seit Tagen dran, bekomme aber diese blöde Dialogabfrage nicht zum laufen, damit man die ID Auswahl über das Popup wie z.B. im Cloud Adapter machen kann.

              Im Moment geht also nur copy & paste ☹️

              Kannst du ml bitte deine Ideen in Stichpunkten hier zusammenfassen, was für Auswahlmöglichkeiten die Tabelle bieten sollte?
              Aktuell gibt es die ID mit edit-Button (noch ohne Funktion😖), eine checkbox für an/aus, eine delete-Button, und hoch/runter Button zum Reihenfolge ändern.
              Ich würde noch eine Auswahl für Zuordnung der unterschiedlichen Bereiche vorschlagen.

              Noch weitere Ideen?

              Homoran 1 Reply Last reply Reply Quote 1
              • JohGre
                JohGre last edited by

                Hallo, möchte auch meine Erfahrungen einbringen zu meiner derzeitigen Steuerung.

                Mein Aussen-Raffstores werden über Azimut, Elevation und Lux (HM Helligkeitssensor) gesteuert.
                Sind die entsprechenden Parameter true bzw. über einer definierten Höhe werden zB. alle Südseitigen auf 2% gesetzt und die anderen (Westseitigen) auf 0%. Nordseitige beachte ich in meinem Script nicht, da sie für die Beschattung keine Relevanz haben.
                Das entsprechende Script lasse ich nur zwischen 9:00 und 18:00 Uhr laufen, außerhalb dieser Zeit brauch ich die Funktion nicht.
                Zusätzlich beachte ich auch ob einer meiner Fernseher läuft, denn da möchte ich ja nicht dass diese wieder aufgehen.
                Auch meinen Windmesser lasse ich in die Funktion miteinfließen, möchte ja nicht, dass bei Sturm die Raffstores runterfahren.

                Homoran 1 Reply Last reply Reply Quote 0
                • Homoran
                  Homoran Global Moderator Administrators @simatec last edited by

                  @simatec sagte in [Aufruf] Neuer Adapter ioBroker.shuttercontrol:

                  Kannst du ml bitte deine Ideen in Stichpunkten hier zusammenfassen, was für Auswahlmöglichkeiten die Tabelle bieten sollte?

                  Gerne, aber da war ich mit mir selber noch nicht einig 😂

                  Wie du selber richtig schriebst, muss das ganze noch halbwegs übersixhtlich u d bedienbar bleiben, soll aber alle möglichen Optionen enthalten KÖNNEN.

                  Optimal wären dann optionale Editier/Konfigurierpopups, wie sie z.b. im Parser Adapter sind.

                  Ich setze mich mal heute hin und versuche das zu formulieren, passend zu den Wünschen zu Beginn des Threads, gemäß: wie soll ich wissen was ich meine, bevor ich lese was ich schrieb.

                  simatec Homoran 2 Replies Last reply Reply Quote 0
                  • Homoran
                    Homoran Global Moderator Administrators @JohGre last edited by

                    @JohGre
                    Das deckt sich ja schon mal weitestgehend mit meinen "Grundanforderungen"

                    1 Reply Last reply Reply Quote 0
                    • simatec
                      simatec Developer Most Active @Homoran last edited by simatec

                      @Homoran sagte in [[Aufruf] Neuer Adapter

                      wie soll ich wissen was ich meine, bevor ich lese was ich schrieb.

                      😂😂

                      1 Reply Last reply Reply Quote 0
                      • D
                        dos1973 @simatec last edited by

                        @simatec
                        klappt noch nicht...

                        shuttercontrol.0	2019-05-18 14:39:30.799	warn	undefined
                        shuttercontrol.0	2019-05-18 14:39:30.798	info	starting. Version 0.1.0 in /opt/iobroker/node_modules/iobroker.shuttercontrol, node: v8.15.0
                        host.ioBroker	2019-05-18 14:39:30.089	info	instance system.adapter.shuttercontrol.0 started with pid 20445
                        host.ioBroker	2019-05-18 14:39:00.079	info	Restart adapter system.adapter.shuttercontrol.0 because enabled
                        host.ioBroker	2019-05-18 14:39:00.079	error	instance system.adapter.shuttercontrol.0 terminated with code 0 (OK)
                        Caught	2019-05-18 14:39:00.079	error	by controller[0]: at Timer.listOnTimeout (timers.js:290:5)
                        Caught	2019-05-18 14:39:00.078	error	by controller[0]: at tryOnTimeout (timers.js:323:5)
                        Caught	2019-05-18 14:39:00.078	error	by controller[0]: at ontimeout (timers.js:498:11)
                        Caught	2019-05-18 14:39:00.078	error	by controller[0]: at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.shuttercontrol/main.js:510:52)
                        Caught	2019-05-18 14:39:00.078	error	by controller[0]: TypeError: Cannot read property 'common' of undefined
                        shuttercontrol.0	2019-05-18 14:39:00.053	info	terminating
                        shuttercontrol.0	2019-05-18 14:39:00.049	info	cleaned everything up...
                        shuttercontrol.0	2019-05-18 14:39:00.048	error	at Timer.listOnTimeout (timers.js:290:5)
                        shuttercontrol.0	2019-05-18 14:39:00.048	error	at tryOnTimeout (timers.js:323:5)
                        shuttercontrol.0	2019-05-18 14:39:00.048	error	at ontimeout (timers.js:498:11)
                        shuttercontrol.0	2019-05-18 14:39:00.048	error	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.shuttercontrol/main.js:510:52)
                        shuttercontrol.0	2019-05-18 14:39:00.048	error	TypeError: Cannot read property 'common' of undefined
                        shuttercontrol.0	2019-05-18 14:39:00.047	error	uncaught exception: Cannot read property 'common' of undefined
                        shuttercontrol.0	2019-05-18 14:38:02.678	warn	undefined
                        shuttercontrol.0	2019-05-18 14:38:02.658	info	starting. Version 0.1.0 in /opt/iobroker/node_modules/iobroker.shuttercontrol, node: v8.15.0
                        host.ioBroker	2019-05-18 14:38:02.053	info	instance system.adapter.shuttercontrol.0 started with pid 20385
                        host.ioBroker	2019-05-18 14:37:59.579	info	instance system.adapter.shuttercontrol.0 terminated with code 0 (OK)
                        shuttercontrol.0	2019-05-18 14:37:59.547	info	cleaned everything up...
                        host.ioBroker	2019-05-18 14:37:59.539	info	stopInstance system.adapter.shuttercontrol.0 killing pid 20290
                        host.ioBroker	2019-05-18 14:37:59.539	info	stopInstance system.adapter.shuttercontrol.0
                        shuttercontrol.0	2019-05-18 14:37:59.540	info	cleaned everything up...
                        

                        Bildschirmfoto 2019-05-18 um 14.38.19.png

                        simatec 1 Reply Last reply Reply Quote 0
                        • simatec
                          simatec Developer Most Active @dos1973 last edited by

                          @dos1973
                          Zeig mal deine Config für den Wohnbereich?

                          D 1 Reply Last reply Reply Quote 0
                          • D
                            dos1973 @simatec last edited by

                            @simatec

                            die Settings finde ich sehr verwirrend und nicht selbsterklärend...
                            Bildschirmfoto 2019-05-18 um 15.44.26.png

                            simatec 2 Replies Last reply Reply Quote 0
                            • simatec
                              simatec Developer Most Active @dos1973 last edited by

                              @dos1973
                              Da du Automatik für den Wohnbereich und Wohnbereich den gleichen enum hast, schalte mal autoliving auf false.

                              1 Reply Last reply Reply Quote 0
                              • simatec
                                simatec Developer Most Active @dos1973 last edited by

                                @dos1973 sagte in [Aufruf] Neuer Adapter ioBroker.shuttercontrol:

                                @simatec

                                die Settings finde ich sehr verwirrend und nicht selbsterklärend...

                                Da wird es noch Änderungen geben

                                1 Reply Last reply Reply Quote 0
                                • SWE1008
                                  SWE1008 last edited by

                                  Hallo zusammen,

                                  erst mal vielen Dank für den Adapter. Ich habe ihn installiert und eingerichtet. Lief alles ohne Probleme. Allerdings funktioniert er noch nicht mit Shelly 2.5 Schaltern. Der Adapter trägt den Wert richtig im Objekt ein, der Rollo fährt aber nicht.

                                  simatec 1 Reply Last reply Reply Quote 0
                                  • simatec
                                    simatec Developer Most Active @SWE1008 last edited by

                                    @SWeimar
                                    Zeige mal bitte ein Screenshot deiner Config.
                                    Aktuell habe ich da etwas gebastelt, was aber noch nicht alles funktioniert.

                                    Ich werde für die Testversionen am besten mal ein separaten Branch einrichten

                                    SWE1008 1 Reply Last reply Reply Quote 0
                                    • SWE1008
                                      SWE1008 @simatec last edited by

                                      @simatec
                                      Hier die Screenshots meiner config:

                                      Anmerkung 2019-05-22 074430.jpg
                                      Anmerkung 2019-05-22 074528.jpg
                                      Anmerkung 2019-05-22 074632.jpg Anmerkung 2019-05-22 074729.jpg

                                      simatec 1 Reply Last reply Reply Quote 0
                                      • simatec
                                        simatec Developer Most Active @SWE1008 last edited by

                                        @SWeimar
                                        Ja das konnte ich mir denken.
                                        Die tabelle habe ich gestern gebastelt ... Allerdingsnoch ohne Funktion.
                                        Mir ging es erstmal um die Tabelle ansich und dem Aufruf des Object-ID Baum.

                                        Die Funktion baue ich die nächste Tage mal zum testen ein.
                                        Aktuell musst du deine Rolläden in den enums, die du ausgewählt hast, abgelegt haben, damit sie angesteuert werden.
                                        Dies wird sich aber auf Wunsch ändern und zukünftig über die Tabellenfunktion laufen

                                        SWE1008 1 Reply Last reply Reply Quote 0
                                        • SWE1008
                                          SWE1008 @simatec last edited by

                                          @simatec said in [Aufruf] Neuer Adapter ioBroker.shuttercontrol:

                                          Aktuell musst du deine Rolläden in den enums, die du ausgewählt hast, abgelegt haben, damit sie angesteuert werden.

                                          Ok, korrigiere mich falls ich mich irre. Genau das habe ich doch getan, wie im dritten Bild zu sehen...

                                          simatec 1 Reply Last reply Reply Quote 0
                                          • simatec
                                            simatec Developer Most Active @SWE1008 last edited by

                                            @SWeimar
                                            Ich habe gerade eine Version zum testen auf Github geladen ...
                                            Kannst du bitte diese noch einmal installieren und testen.
                                            In dieser Version wird die Zuordnung auf Userwunsch nicht mehr über Enums gemacht.

                                            Hier muss du lediglich deine Rollläden in der Tabelle anlegen.

                                            https://github.com/simatec/ioBroker.shuttercontrol.git

                                            Unbenannt.JPG

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            916
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            rollladen rollladensteuerung shuttercontrol
                                            326
                                            7281
                                            8236359
                                            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