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

  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Test Adapter shuttercontrol v2.0.x

NEWS

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

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

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

Test Adapter shuttercontrol v2.0.x

Geplant Angeheftet Gesperrt Verschoben Tester
rollladenrollladensteuerungshuttercontrol
7.4k Beiträge 332 Kommentatoren 10.6m Aufrufe 254 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.
  • F FoxRo

    @negalein said in Test Adapter shuttercontrol v1.2.x:

    @foxro sagte in Test Adapter shuttercontrol v1.2.x:

    Genau

    Hi

    Konntest du im Debog-Log was erkennen?

    Hi
    Sorry, hab grad recht viel um die Ohren, Privat wie auch Beruflich.
    Habe mir dies mal angesehen und es sieht ja verdächtig danach aus, dass Dir der Rollo einen Streich spielt.
    Wenn man das log Ansieht steht beim eintreten in SunProtect für Wohnzimmer folgendes:

    Hier überprüft er ob er beschatten muss...

    2021-06-12 12:25:35.574 - debug: shuttercontrol.0 (24894) Rollo Wohnzimmer: Check basis for sunprotect. Height:100 > HeightDownSun: 50 AND Height:100 == currentHeight:100 AND currentHeight:100 == heightUp:100
    2021-06-12 12:25:35.574 - debug: shuttercontrol.0 (24894) Sunprotect for Rollo Wohnzimmer is active
    2021-06-12 12:25:35.575 - debug: shuttercontrol.0 (24894) Temperature outside: 25.11 > 25 AND Light: undefined > 15

    Hier wird dem Rollo der Auftrag erteilt, nach 50% zu fahren...

    2021-06-12 12:25:35.575 - info: shuttercontrol.0 (24894) Set ID: Rollo Wohnzimmer value: 50%
    2021-06-12 12:25:35.576 - debug: shuttercontrol.0 (24894) Sunprotect Rollo Wohnzimmer old height: 100% new height: 50%

    Hier kommt vom Aktor die Rückmeldung, dass er bei 96% steht.

    2021-06-12 12:25:37.421 - debug: shuttercontrol.0 (24894) Shutter state changed: Rollo Wohnzimmer old value = 100 new value = 96

    Worauf Shuttercontrol damit reagiert, dass der Rollo offensichtlich manuell gestoppt wurde und setzt deshalb gleich den Manu_Mode...

    2021-06-12 12:25:37.422 - debug: shuttercontrol.0 (24894) Rollo Wohnzimmer drived manually to 96. Old value = 100. New value = 96
    2021-06-12 12:25:37.426 - debug: shuttercontrol.0 (24894) Rollo Wohnzimmer Updated trigger action to Manu_Mode to prevent moving after window close

    Das hast Du auch sauber im Statuslog mit geloggt:

    Manu_Mode true history.0 2021-06-12 12:40:37.434
    Manu_Mode true shuttercontrol.0 2021-06-12 12:25:37.427
    sunProtect true shuttercontrol.0 2021-06-12 12:25:35.644

    Kurz darauf meldet ein weiteres Positionsupdate vom Aktor, dass der Rollo nun bei 50% angekommen ist...

    2021-06-12 12:25:51.704 - debug: shuttercontrol.0 (24894) Shutter state changed: Rollo Wohnzimmer old value = 100 new value = 50
    2021-06-12 12:25:51.704 - debug: shuttercontrol.0 (24894) Rollo Wohnzimmer Old value = 100. New value = 50. automatic is active

    Warum hier gemeldet wird, dass die Automatik noch aktiv sei verstehe ich im Moment noch nicht, sie ist es nämlich nicht mehr, da während des Runterfahrens ein, aus Sicht von Shuttercontrol, manueller Zwischenstopp eingelegt wurde.

    Die Extra-Einstellung zum überprüfen des Rollo Status kann so nicht ziehen, da immer nach dem Fahrauftrag auf die letzte Rückmeldung gewartet wird und dann aktualisiert wird. Wenn die letzte Rückmeldung nicht ganz mit dem Soll-Wert übereinstimmt, wird an dieser Stelle dann korrigiert. Wenn aber während es Fahrens ein Wert aus dem "nichts" als Update daher kommt, dann geht Shuttercontrol davon aus, dass der Rollo nun da steht.

    Weisst Du, warum der Aktor hier einen solchen (sorry) "Fantasie Wert" während dem Fahren liefert?

    Sorry, aber mir fällt es schwer, dir an dieser Stelle noch viel weiter helfen zu können.
    Bei Fragen zum Shuttercontrol und sein (inneres) Verhalten kann ich Dir aber gerne weiterhelfen wenns nochmals nötig wird.
    Viel Erfolg!

    NegaleinN Offline
    NegaleinN Offline
    Negalein
    Global Moderator
    schrieb am zuletzt editiert von
    #3226

    @foxro sagte in Test Adapter shuttercontrol v1.2.x:

    Weisst Du, warum der Aktor hier einen solchen (sorry) "Fantasie Wert" während dem Fahren liefert?

    Danke für deine ausführliche Antwort.

    Ja, das mit den Werten ist mir in Vis schon aufgefallen, wenn ein Rollo gefahren wird (zB von 100 auf 70), wird immer ein zusätzlicher Wert solange angezeigt, bis er auf der gewünschten Position angekommen ist (zB Ist 100, Soll 70; in der Vis bleibt dann zB 97 solange stehen, bis er auf 70 angekommen ist; erst dann stehen die 70 dort).

    Ich werde mal @foxriver76 fragen. Er ist am Homematic-Adapter beteiligt.

    ° Node.js: 20.17.0 NPM: 10.8.2
    ° Proxmox, Ubuntu 22.04.3 LTS
    ° Fixer ---> iob fix

    1 Antwort Letzte Antwort
    0
    • F FoxRo

      @negalein said in Test Adapter shuttercontrol v1.2.x:

      @foxro sagte in Test Adapter shuttercontrol v1.2.x:

      Genau

      Hi

      Konntest du im Debog-Log was erkennen?

      Hi
      Sorry, hab grad recht viel um die Ohren, Privat wie auch Beruflich.
      Habe mir dies mal angesehen und es sieht ja verdächtig danach aus, dass Dir der Rollo einen Streich spielt.
      Wenn man das log Ansieht steht beim eintreten in SunProtect für Wohnzimmer folgendes:

      Hier überprüft er ob er beschatten muss...

      2021-06-12 12:25:35.574 - debug: shuttercontrol.0 (24894) Rollo Wohnzimmer: Check basis for sunprotect. Height:100 > HeightDownSun: 50 AND Height:100 == currentHeight:100 AND currentHeight:100 == heightUp:100
      2021-06-12 12:25:35.574 - debug: shuttercontrol.0 (24894) Sunprotect for Rollo Wohnzimmer is active
      2021-06-12 12:25:35.575 - debug: shuttercontrol.0 (24894) Temperature outside: 25.11 > 25 AND Light: undefined > 15

      Hier wird dem Rollo der Auftrag erteilt, nach 50% zu fahren...

      2021-06-12 12:25:35.575 - info: shuttercontrol.0 (24894) Set ID: Rollo Wohnzimmer value: 50%
      2021-06-12 12:25:35.576 - debug: shuttercontrol.0 (24894) Sunprotect Rollo Wohnzimmer old height: 100% new height: 50%

      Hier kommt vom Aktor die Rückmeldung, dass er bei 96% steht.

      2021-06-12 12:25:37.421 - debug: shuttercontrol.0 (24894) Shutter state changed: Rollo Wohnzimmer old value = 100 new value = 96

      Worauf Shuttercontrol damit reagiert, dass der Rollo offensichtlich manuell gestoppt wurde und setzt deshalb gleich den Manu_Mode...

      2021-06-12 12:25:37.422 - debug: shuttercontrol.0 (24894) Rollo Wohnzimmer drived manually to 96. Old value = 100. New value = 96
      2021-06-12 12:25:37.426 - debug: shuttercontrol.0 (24894) Rollo Wohnzimmer Updated trigger action to Manu_Mode to prevent moving after window close

      Das hast Du auch sauber im Statuslog mit geloggt:

      Manu_Mode true history.0 2021-06-12 12:40:37.434
      Manu_Mode true shuttercontrol.0 2021-06-12 12:25:37.427
      sunProtect true shuttercontrol.0 2021-06-12 12:25:35.644

      Kurz darauf meldet ein weiteres Positionsupdate vom Aktor, dass der Rollo nun bei 50% angekommen ist...

      2021-06-12 12:25:51.704 - debug: shuttercontrol.0 (24894) Shutter state changed: Rollo Wohnzimmer old value = 100 new value = 50
      2021-06-12 12:25:51.704 - debug: shuttercontrol.0 (24894) Rollo Wohnzimmer Old value = 100. New value = 50. automatic is active

      Warum hier gemeldet wird, dass die Automatik noch aktiv sei verstehe ich im Moment noch nicht, sie ist es nämlich nicht mehr, da während des Runterfahrens ein, aus Sicht von Shuttercontrol, manueller Zwischenstopp eingelegt wurde.

      Die Extra-Einstellung zum überprüfen des Rollo Status kann so nicht ziehen, da immer nach dem Fahrauftrag auf die letzte Rückmeldung gewartet wird und dann aktualisiert wird. Wenn die letzte Rückmeldung nicht ganz mit dem Soll-Wert übereinstimmt, wird an dieser Stelle dann korrigiert. Wenn aber während es Fahrens ein Wert aus dem "nichts" als Update daher kommt, dann geht Shuttercontrol davon aus, dass der Rollo nun da steht.

      Weisst Du, warum der Aktor hier einen solchen (sorry) "Fantasie Wert" während dem Fahren liefert?

      Sorry, aber mir fällt es schwer, dir an dieser Stelle noch viel weiter helfen zu können.
      Bei Fragen zum Shuttercontrol und sein (inneres) Verhalten kann ich Dir aber gerne weiterhelfen wenns nochmals nötig wird.
      Viel Erfolg!

      NegaleinN Offline
      NegaleinN Offline
      Negalein
      Global Moderator
      schrieb am zuletzt editiert von
      #3227

      @foxro sagte in Test Adapter shuttercontrol v1.2.x:

      Sorry, aber mir fällt es schwer, dir an dieser Stelle noch viel weiter helfen zu können.

      Hallo

      Hab gleich Antwort von @foxriver76 erhalten.

      CCU meldet den Wert so und glaube der DP Working wird auf true gesetzt so lange er fährt. Ich denke über den Working Dp sollte man sagen können, dass es gerade ne aktive Fahrt ist und kein endzustand. Ich denke der Hauptgrund dass gesendet wird von CCU ist auch dieser dp aber der Rollo ist halt schon losgefahren und daher so ein krummer Wert

      Eventuell kann @simatec dies als Kontrolle in den Adapter einbauen.
      Sind ja sicher einige mit Homematic Komponenten.

      Bei den Extra-Einstellungen bin ich schon auf 120. Das half auch nicht.

      ° Node.js: 20.17.0 NPM: 10.8.2
      ° Proxmox, Ubuntu 22.04.3 LTS
      ° Fixer ---> iob fix

      F 1 Antwort Letzte Antwort
      0
      • NegaleinN Negalein

        @foxro sagte in Test Adapter shuttercontrol v1.2.x:

        Sorry, aber mir fällt es schwer, dir an dieser Stelle noch viel weiter helfen zu können.

        Hallo

        Hab gleich Antwort von @foxriver76 erhalten.

        CCU meldet den Wert so und glaube der DP Working wird auf true gesetzt so lange er fährt. Ich denke über den Working Dp sollte man sagen können, dass es gerade ne aktive Fahrt ist und kein endzustand. Ich denke der Hauptgrund dass gesendet wird von CCU ist auch dieser dp aber der Rollo ist halt schon losgefahren und daher so ein krummer Wert

        Eventuell kann @simatec dies als Kontrolle in den Adapter einbauen.
        Sind ja sicher einige mit Homematic Komponenten.

        Bei den Extra-Einstellungen bin ich schon auf 120. Das half auch nicht.

        F Offline
        F Offline
        FoxRo
        schrieb am zuletzt editiert von
        #3228

        @negalein said in Test Adapter shuttercontrol v1.2.x:

        Eventuell kann @simatec dies als Kontrolle in den Adapter einbauen.
        Sind ja sicher einige mit Homematic Komponenten.

        Möchte hier keinen Streit vom Zaun brechen - ist eher ein wenig "Religion", muss aber anfügen, so wie ich das iOBroker Konzept bis jetzt verstehe, und wie andere Adapter ihre Endgeräte Spezifika in iOBroker integrieren, dann müsste dies der HM Adapter übernehmen und nicht jeder Adapter, welcher möglicherweise HM Geräte steuert.
        Da hält sich zb. der KNX Adapter penibel daran, keine KNX spezifischen Verhaltensweisen in iOBroker rein zu bringen.
        Aus meiner Sicht müsste also der HM Adapter dafür sorgen, dass es auf dem Positions DP kein Update gibt, solange der Working DP true ist. Denn wie @foxriver76 selbst schreibt, sind die Werte am Positions DP während dem Fahren ungültig. Ich meinte hier schon Logs gesehen zu haben, wo es während dem Fahren fortlaufend zu Updates kam.

        Wie geschrieben, die Extra-Einstellung wird an dieser Stelle ausgehebelt, da der DP für die Höhe von Shuttercontrol sogenannt "abonniert" wird und deshalb Änderungen da drauf direkt und ohne Delay in die Logik mit einbezogen werden. Wenn man diese Änderungen durch die Extra-Settings ganz ausblenden würde, dann wäre Shuttercontrol auf dem DP während dieser Extra-Einstellungen Zeit bei jeder Fahrt komplett blind und würde da nichts mit bekommen, egal was passiert. Dh. die Extra-Einstellungen würden wohl plötzlich zu einem kritischen "Fine-Tune" Element. Gute Ideen wären also gefragt, wenn der HM Adapter dies nicht übernimmt ;-)

        Projektleiter von Shuttercontrol ist und bleibt @simatec und deshalb überlasse ich es ihm, ob und wie er zu diesem Verhalten eine Lösung anbieten will.

        NegaleinN 1 Antwort Letzte Antwort
        1
        • F FoxRo

          @negalein said in Test Adapter shuttercontrol v1.2.x:

          Eventuell kann @simatec dies als Kontrolle in den Adapter einbauen.
          Sind ja sicher einige mit Homematic Komponenten.

          Möchte hier keinen Streit vom Zaun brechen - ist eher ein wenig "Religion", muss aber anfügen, so wie ich das iOBroker Konzept bis jetzt verstehe, und wie andere Adapter ihre Endgeräte Spezifika in iOBroker integrieren, dann müsste dies der HM Adapter übernehmen und nicht jeder Adapter, welcher möglicherweise HM Geräte steuert.
          Da hält sich zb. der KNX Adapter penibel daran, keine KNX spezifischen Verhaltensweisen in iOBroker rein zu bringen.
          Aus meiner Sicht müsste also der HM Adapter dafür sorgen, dass es auf dem Positions DP kein Update gibt, solange der Working DP true ist. Denn wie @foxriver76 selbst schreibt, sind die Werte am Positions DP während dem Fahren ungültig. Ich meinte hier schon Logs gesehen zu haben, wo es während dem Fahren fortlaufend zu Updates kam.

          Wie geschrieben, die Extra-Einstellung wird an dieser Stelle ausgehebelt, da der DP für die Höhe von Shuttercontrol sogenannt "abonniert" wird und deshalb Änderungen da drauf direkt und ohne Delay in die Logik mit einbezogen werden. Wenn man diese Änderungen durch die Extra-Settings ganz ausblenden würde, dann wäre Shuttercontrol auf dem DP während dieser Extra-Einstellungen Zeit bei jeder Fahrt komplett blind und würde da nichts mit bekommen, egal was passiert. Dh. die Extra-Einstellungen würden wohl plötzlich zu einem kritischen "Fine-Tune" Element. Gute Ideen wären also gefragt, wenn der HM Adapter dies nicht übernimmt ;-)

          Projektleiter von Shuttercontrol ist und bleibt @simatec und deshalb überlasse ich es ihm, ob und wie er zu diesem Verhalten eine Lösung anbieten will.

          NegaleinN Offline
          NegaleinN Offline
          Negalein
          Global Moderator
          schrieb am zuletzt editiert von
          #3229

          @foxro sagte in Test Adapter shuttercontrol v1.2.x:

          muss aber anfügen, so wie ich das iOBroker Konzept bis jetzt verstehe, und wie andere Adapter ihre Endgeräte Spezifika in iOBroker integrieren, dann müsste dies der HM Adapter übernehmen und nicht jeder Adapter, welcher möglicherweise HM Geräte steuert.

          Aus meiner Sicht müsste also der HM Adapter dafür sorgen, dass es auf dem Positions DP kein Update gibt, solange der Working DP true ist.

          Da bin ich voll deiner Meinung.
          Wenn es beim KNX-Adapter geht, kann es @foxriver76 vielleicht doch im HM-Adapter irgendwie bewerkstelligen.
          Es betrifft bestimmt noch andere Adapter oder in Zukunft welche, die mit dem Problem zu kämpfen haben.

          Ich bin kein Entwickler, kenne mich also 0 aus ob das möglich ist.
          Muss oder kann nur @foxriver76 entscheiden.

          ° Node.js: 20.17.0 NPM: 10.8.2
          ° Proxmox, Ubuntu 22.04.3 LTS
          ° Fixer ---> iob fix

          K I 2 Antworten Letzte Antwort
          0
          • NegaleinN Negalein

            @foxro sagte in Test Adapter shuttercontrol v1.2.x:

            muss aber anfügen, so wie ich das iOBroker Konzept bis jetzt verstehe, und wie andere Adapter ihre Endgeräte Spezifika in iOBroker integrieren, dann müsste dies der HM Adapter übernehmen und nicht jeder Adapter, welcher möglicherweise HM Geräte steuert.

            Aus meiner Sicht müsste also der HM Adapter dafür sorgen, dass es auf dem Positions DP kein Update gibt, solange der Working DP true ist.

            Da bin ich voll deiner Meinung.
            Wenn es beim KNX-Adapter geht, kann es @foxriver76 vielleicht doch im HM-Adapter irgendwie bewerkstelligen.
            Es betrifft bestimmt noch andere Adapter oder in Zukunft welche, die mit dem Problem zu kämpfen haben.

            Ich bin kein Entwickler, kenne mich also 0 aus ob das möglich ist.
            Muss oder kann nur @foxriver76 entscheiden.

            K Online
            K Online
            Kuddel
            schrieb am zuletzt editiert von
            #3230

            Hallo zusammen,

            aktuell habe ich meine Rollo-Steuerung per Blockly realisiert und wollte mir jetzt mal diesen Adaopter anschauen.

            Bevor ich anfange zu testen, habe ich direkt mal eine Frage:

            Kann man Fenstersensoren integrieren, damit die ROllos nur auf z.B. 25% fahren, wenn ein Fenster gekippt ist?

            B da_WoodyD 2 Antworten Letzte Antwort
            0
            • K Kuddel

              Hallo zusammen,

              aktuell habe ich meine Rollo-Steuerung per Blockly realisiert und wollte mir jetzt mal diesen Adaopter anschauen.

              Bevor ich anfange zu testen, habe ich direkt mal eine Frage:

              Kann man Fenstersensoren integrieren, damit die ROllos nur auf z.B. 25% fahren, wenn ein Fenster gekippt ist?

              B Offline
              B Offline
              bishop
              schrieb am zuletzt editiert von
              #3231

              @kuddel
              ja, ist möglich!

              K 1 Antwort Letzte Antwort
              0
              • K Kuddel

                Hallo zusammen,

                aktuell habe ich meine Rollo-Steuerung per Blockly realisiert und wollte mir jetzt mal diesen Adaopter anschauen.

                Bevor ich anfange zu testen, habe ich direkt mal eine Frage:

                Kann man Fenstersensoren integrieren, damit die ROllos nur auf z.B. 25% fahren, wenn ein Fenster gekippt ist?

                da_WoodyD Online
                da_WoodyD Online
                da_Woody
                schrieb am zuletzt editiert von
                #3232

                @kuddel die frage ist eher umgekehrt, können deine rollos alles das, was shuttercontrol kann! :D

                gruß vom Woody
                HAPPINESS is not a DESTINATION, it's a WAY of LIFE!

                M 1 Antwort Letzte Antwort
                1
                • da_WoodyD da_Woody

                  @kuddel die frage ist eher umgekehrt, können deine rollos alles das, was shuttercontrol kann! :D

                  M Offline
                  M Offline
                  Muchul
                  schrieb am zuletzt editiert von
                  #3233

                  @da_woody
                  Welches Rollo kann das denn?
                  Grinsduckundwech

                  1 Antwort Letzte Antwort
                  0
                  • T Offline
                    T Offline
                    tobitobsta
                    schrieb am zuletzt editiert von
                    #3234

                    nochmal eine Frage zu den Shuttercontrol States:

                    soll es denn eigentlich so sein, dass jedes manuelle Hochfahren auf das Level 100%, den Status auf "none" ziehen soll und somit Sunprotect funktionieren sollte?

                    Bei mir ist das am Tag nur der Fall, wenn morgens das erste manuelle "hoch" gesetzt wird. Wenn im laufe des Tages einmal manuell runter und dann wieder manuell hoch (auf 100%) dann bleibt der State "ManuMode" (und SunProtect geht nicht mehr)
                    Soll das so? Oder mache ich was falsch? Ist das ein Bug?

                    da_WoodyD 1 Antwort Letzte Antwort
                    0
                    • B bishop

                      @kuddel
                      ja, ist möglich!

                      K Online
                      K Online
                      Kuddel
                      schrieb am zuletzt editiert von
                      #3235

                      @bishop okay, habe die Einstellung gefunden.

                      Problem ist nur, dass ich teilweise pro Rollo zwei Fenster und zwei Densoren habe.

                      Kann man auch zwei Sensoren pro Rollo-Aktor hinterlegen?

                      da_WoodyD 1 Antwort Letzte Antwort
                      0
                      • T tobitobsta

                        nochmal eine Frage zu den Shuttercontrol States:

                        soll es denn eigentlich so sein, dass jedes manuelle Hochfahren auf das Level 100%, den Status auf "none" ziehen soll und somit Sunprotect funktionieren sollte?

                        Bei mir ist das am Tag nur der Fall, wenn morgens das erste manuelle "hoch" gesetzt wird. Wenn im laufe des Tages einmal manuell runter und dann wieder manuell hoch (auf 100%) dann bleibt der State "ManuMode" (und SunProtect geht nicht mehr)
                        Soll das so? Oder mache ich was falsch? Ist das ein Bug?

                        da_WoodyD Online
                        da_WoodyD Online
                        da_Woody
                        schrieb am zuletzt editiert von
                        #3236

                        @tobitobsta sagte in Test Adapter shuttercontrol v1.2.x:

                        "ManuMode"

                        an dem problem wird im moment rumgerätselt, wie man in diversen postings lesen kann...

                        gruß vom Woody
                        HAPPINESS is not a DESTINATION, it's a WAY of LIFE!

                        1 Antwort Letzte Antwort
                        0
                        • K Kuddel

                          @bishop okay, habe die Einstellung gefunden.

                          Problem ist nur, dass ich teilweise pro Rollo zwei Fenster und zwei Densoren habe.

                          Kann man auch zwei Sensoren pro Rollo-Aktor hinterlegen?

                          da_WoodyD Online
                          da_WoodyD Online
                          da_Woody
                          schrieb am zuletzt editiert von
                          #3237

                          @kuddel sagte in Test Adapter shuttercontrol v1.2.x:

                          Kann man auch zwei Sensoren pro Rollo-Aktor hinterlegen?

                          grundsätzlich mal nicht. wird ohne trixxen nicht lösbar sein. (blockly für beide sensoren, die einen DP füllen.)

                          gruß vom Woody
                          HAPPINESS is not a DESTINATION, it's a WAY of LIFE!

                          1 Antwort Letzte Antwort
                          0
                          • NegaleinN Negalein

                            @foxro sagte in Test Adapter shuttercontrol v1.2.x:

                            muss aber anfügen, so wie ich das iOBroker Konzept bis jetzt verstehe, und wie andere Adapter ihre Endgeräte Spezifika in iOBroker integrieren, dann müsste dies der HM Adapter übernehmen und nicht jeder Adapter, welcher möglicherweise HM Geräte steuert.

                            Aus meiner Sicht müsste also der HM Adapter dafür sorgen, dass es auf dem Positions DP kein Update gibt, solange der Working DP true ist.

                            Da bin ich voll deiner Meinung.
                            Wenn es beim KNX-Adapter geht, kann es @foxriver76 vielleicht doch im HM-Adapter irgendwie bewerkstelligen.
                            Es betrifft bestimmt noch andere Adapter oder in Zukunft welche, die mit dem Problem zu kämpfen haben.

                            Ich bin kein Entwickler, kenne mich also 0 aus ob das möglich ist.
                            Muss oder kann nur @foxriver76 entscheiden.

                            I Offline
                            I Offline
                            IT-Veteran
                            schrieb am zuletzt editiert von
                            #3238

                            @negalein Hallo zusammen,

                            ich werde das Gefühl nicht los, dass die Ursache (mal wieder) an der Implementierung der Homematic Aktoren liegt. Ich hatte das hier schon mal thematisiert.

                            Die HmIP-Aktoren BROLL und FROLL benutzen den Kanal 3, um den IST-Zustand darzustellen. Die Kanäle 4, 5 und 6 werden benutzt, um SOLL zu setzen. Da Shuttercontrol nur einen Kanal verwenden kann, muss dies logischerweise 4, 5 oder 6 sein (ich verwende im Folgenden mal Kanal 4). Und genau da fängt das Problem an, denn Kanal 4 und Kanal 3 werden in der CCU nicht synchronisiert. Der richtige Wert nach dem Stopp des Rolladens steht deshalb ausschließlich in Kanal 3. In Kanal 4 steht der Sollwert, auch, wenn die Fahrt aus beliebigem Grund vorher gestoppt wurde. Hinzu kommt, dass nach dem Losfahren die Werte in Kanal 3 zufällig wechseln können. Nachdem der Rolladen angehalten hat, dauert es einige Zeit, bis in Kanal 3 der IST-Wert eingetragen wird.

                            Ich habe mal versucht, das durch ein kleines Skript in den Griff zu bekommen, das einfach den Status des Rolladens überprüft und, sobald dieser angehalten hat, mit einer Verzögerung von einigen Sekunden den Wert aus Kanal 3 in den Kanal 4 schreibt. Das hat jedoch aus nicht nachvollziehbaren Gründen nur teilweise funktioniert, weshalb ich es wieder aufgegeben habe.

                            Wollte man das Thema zuverlässig lösen, so müssten m.E. in Shuttercontrol zwei Kanäle (IST=3, SOLL=4 oder 5 oder 6) verwendet werden. Wie aufwändig diese Änderung wäre, kann ich natürlich nicht einmal ahnen.

                            2 x Pi4b, Raspberrymatic, ioBroker, 80+ Aktoren und Sensoren

                            M NegaleinN 2 Antworten Letzte Antwort
                            0
                            • I IT-Veteran

                              @negalein Hallo zusammen,

                              ich werde das Gefühl nicht los, dass die Ursache (mal wieder) an der Implementierung der Homematic Aktoren liegt. Ich hatte das hier schon mal thematisiert.

                              Die HmIP-Aktoren BROLL und FROLL benutzen den Kanal 3, um den IST-Zustand darzustellen. Die Kanäle 4, 5 und 6 werden benutzt, um SOLL zu setzen. Da Shuttercontrol nur einen Kanal verwenden kann, muss dies logischerweise 4, 5 oder 6 sein (ich verwende im Folgenden mal Kanal 4). Und genau da fängt das Problem an, denn Kanal 4 und Kanal 3 werden in der CCU nicht synchronisiert. Der richtige Wert nach dem Stopp des Rolladens steht deshalb ausschließlich in Kanal 3. In Kanal 4 steht der Sollwert, auch, wenn die Fahrt aus beliebigem Grund vorher gestoppt wurde. Hinzu kommt, dass nach dem Losfahren die Werte in Kanal 3 zufällig wechseln können. Nachdem der Rolladen angehalten hat, dauert es einige Zeit, bis in Kanal 3 der IST-Wert eingetragen wird.

                              Ich habe mal versucht, das durch ein kleines Skript in den Griff zu bekommen, das einfach den Status des Rolladens überprüft und, sobald dieser angehalten hat, mit einer Verzögerung von einigen Sekunden den Wert aus Kanal 3 in den Kanal 4 schreibt. Das hat jedoch aus nicht nachvollziehbaren Gründen nur teilweise funktioniert, weshalb ich es wieder aufgegeben habe.

                              Wollte man das Thema zuverlässig lösen, so müssten m.E. in Shuttercontrol zwei Kanäle (IST=3, SOLL=4 oder 5 oder 6) verwendet werden. Wie aufwändig diese Änderung wäre, kann ich natürlich nicht einmal ahnen.

                              M Offline
                              M Offline
                              Muchul
                              schrieb am zuletzt editiert von
                              #3239

                              @it-veteran
                              Müsste sich das nicht durch Alias'e umgehen lassen?

                              simatecS 1 Antwort Letzte Antwort
                              0
                              • M Muchul

                                @it-veteran
                                Müsste sich das nicht durch Alias'e umgehen lassen?

                                simatecS Offline
                                simatecS Offline
                                simatec
                                Developer Most Active
                                schrieb am zuletzt editiert von
                                #3240

                                @muchul
                                Genau durch Alias wurde das Thema hier schon einige male beschrieben. Für den Aktor einen Alias anlegen, indem IST und SOLL Werte des Aktors verknüpft werden und es läuft in shuttercontrol.
                                Im Prinzip wurde Alias genau für solche Anwendungen geschaffen

                                • Besuche meine Github Seite
                                • Beitrag hat geholfen oder willst du mich unterstützen
                                • HowTo Restore ioBroker
                                B H 2 Antworten Letzte Antwort
                                0
                                • I IT-Veteran

                                  @negalein Hallo zusammen,

                                  ich werde das Gefühl nicht los, dass die Ursache (mal wieder) an der Implementierung der Homematic Aktoren liegt. Ich hatte das hier schon mal thematisiert.

                                  Die HmIP-Aktoren BROLL und FROLL benutzen den Kanal 3, um den IST-Zustand darzustellen. Die Kanäle 4, 5 und 6 werden benutzt, um SOLL zu setzen. Da Shuttercontrol nur einen Kanal verwenden kann, muss dies logischerweise 4, 5 oder 6 sein (ich verwende im Folgenden mal Kanal 4). Und genau da fängt das Problem an, denn Kanal 4 und Kanal 3 werden in der CCU nicht synchronisiert. Der richtige Wert nach dem Stopp des Rolladens steht deshalb ausschließlich in Kanal 3. In Kanal 4 steht der Sollwert, auch, wenn die Fahrt aus beliebigem Grund vorher gestoppt wurde. Hinzu kommt, dass nach dem Losfahren die Werte in Kanal 3 zufällig wechseln können. Nachdem der Rolladen angehalten hat, dauert es einige Zeit, bis in Kanal 3 der IST-Wert eingetragen wird.

                                  Ich habe mal versucht, das durch ein kleines Skript in den Griff zu bekommen, das einfach den Status des Rolladens überprüft und, sobald dieser angehalten hat, mit einer Verzögerung von einigen Sekunden den Wert aus Kanal 3 in den Kanal 4 schreibt. Das hat jedoch aus nicht nachvollziehbaren Gründen nur teilweise funktioniert, weshalb ich es wieder aufgegeben habe.

                                  Wollte man das Thema zuverlässig lösen, so müssten m.E. in Shuttercontrol zwei Kanäle (IST=3, SOLL=4 oder 5 oder 6) verwendet werden. Wie aufwändig diese Änderung wäre, kann ich natürlich nicht einmal ahnen.

                                  NegaleinN Offline
                                  NegaleinN Offline
                                  Negalein
                                  Global Moderator
                                  schrieb am zuletzt editiert von
                                  #3241

                                  @it-veteran sagte in Test Adapter shuttercontrol v1.2.x:

                                  Ich habe mal versucht, das durch ein kleines Skript in den Griff zu bekommen, das einfach den Status des Rolladens überprüft und, sobald dieser angehalten hat, mit einer Verzögerung von einigen Sekunden den Wert aus Kanal 3 in den Kanal 4 schreibt. Das hat jedoch aus nicht nachvollziehbaren Gründen nur teilweise funktioniert, weshalb ich es wieder aufgegeben habe.

                                  Ja, ging mir auch so.
                                  Bis ich den obigen Thread aufgemacht habe.
                                  Mit dem Alias sind die Werte passend.

                                  Leider hat es nichts mit dem aktuellen HM Problem zu tun.

                                  ° Node.js: 20.17.0 NPM: 10.8.2
                                  ° Proxmox, Ubuntu 22.04.3 LTS
                                  ° Fixer ---> iob fix

                                  1 Antwort Letzte Antwort
                                  0
                                  • simatecS simatec

                                    @muchul
                                    Genau durch Alias wurde das Thema hier schon einige male beschrieben. Für den Aktor einen Alias anlegen, indem IST und SOLL Werte des Aktors verknüpft werden und es läuft in shuttercontrol.
                                    Im Prinzip wurde Alias genau für solche Anwendungen geschaffen

                                    B Offline
                                    B Offline
                                    bishop
                                    schrieb am zuletzt editiert von bishop
                                    #3242

                                    @simatec sagte in Test Adapter shuttercontrol v1.2.x:

                                    @muchul
                                    Genau durch Alias wurde das Thema hier schon einige male beschrieben. Für den Aktor einen Alias anlegen, indem IST und SOLL Werte des Aktors verknüpft werden und es läuft in shuttercontrol.
                                    Im Prinzip wurde Alias genau für solche Anwendungen geschaffen

                                    gibt es hier für ein Beispiel?
                                    Wären dann 2 Datenpunkte in einem oder?

                                    NegaleinN 1 Antwort Letzte Antwort
                                    0
                                    • B bishop

                                      @simatec sagte in Test Adapter shuttercontrol v1.2.x:

                                      @muchul
                                      Genau durch Alias wurde das Thema hier schon einige male beschrieben. Für den Aktor einen Alias anlegen, indem IST und SOLL Werte des Aktors verknüpft werden und es läuft in shuttercontrol.
                                      Im Prinzip wurde Alias genau für solche Anwendungen geschaffen

                                      gibt es hier für ein Beispiel?
                                      Wären dann 2 Datenpunkte in einem oder?

                                      NegaleinN Offline
                                      NegaleinN Offline
                                      Negalein
                                      Global Moderator
                                      schrieb am zuletzt editiert von
                                      #3243

                                      @bishop sagte in Test Adapter shuttercontrol v1.2.x:

                                      gibt es hier für ein Beispiel?

                                      // Original-Datenpunkt
                                      const idOrigin = 'hm-rpc.0.00115A49A5B2BE.4.LEVEL'/*Rollo Wohnzimmer :4 LEVEL*/ 
                                      // Optional: Status-Datenpunkt, wenn Kommando und Status getrennt.
                                      // Bei Nicht-Verwendung Leerstring '' zuweisen
                                      const idRead = 'hm-rpc.0.00115A49A5B2BE.3.LEVEL'/*Rollo Wohnzimmer :4 LEVEL*/
                                       
                                      // Alias-Datenpunkt
                                      const idAlias = 'Rollos.Rollo_Wohnzimmer';
                                       
                                      var typeAlias, read, write, nameAlias, role, desc, min, max, unit, states, custom, raum, gewerk;
                                       
                                      // Folgende kommentieren, wenn keine Änderung der Eigenschaft erforderlich
                                      nameAlias = 'Rollo Wohnzimmer';
                                      desc = 'per Script erstellt';
                                      // typeAlias = 'boolean'; // oder 'number'
                                      // read = "val < 0 ? -val : 0"; // Erkennung "Aus" --> false erfolgt automatisch  
                                      // write = "val ? String(1) : String(0)";
                                      // role = 'value';
                                      // min = 0; // nur Zahlen
                                      // max = 100; // nur Zahlen
                                      // unit = '%'; // nur für Zahlen
                                      // states = {0: 'Aus', 1: 'Auto', 2: 'Ein'}; // Zahlen (Multistate) oder Logikwert (z.B. Aus/Ein)
                                      custom = {}; // verhindert doppelte Ausführung von history, ...
                                      // raum = 'EG_Flur'; // Groß-/Kleinschreibung in der ID beachten !
                                      // gewerk = 'Licht'; // Groß-/Kleinschreibung in der ID beachten !
                                       
                                      // Ab hier nichts ändern !!
                                      function createAlias(idDst, idSrc, idRd) {
                                         if(existsState(idDst)) log(idDst + ' schon vorhanden !', 'warn');
                                         else {
                                            var obj = {};
                                            obj.type = 'state';
                                            obj.common = getObject(idSrc).common;
                                            obj.common.alias = {};
                                            if(idRd) {
                                                obj.common.alias.id = {};
                                                obj.common.alias.id.read = idRd;
                                                obj.common.alias.id.write = idSrc;
                                                obj.common.read = true;
                                            } else obj.common.alias.id = idSrc;
                                            if(typeAlias) obj.common.type = typeAlias;
                                            if(obj.common.read !== false && read) obj.common.alias.read = read;
                                            if(obj.common.write !== false && write) obj.common.alias.write = write;
                                            if(nameAlias) obj.common.name = nameAlias;
                                            if(role) obj.common.role = role;
                                            if(desc) obj.common.desc = desc;
                                            if(obj.common.type == 'number') {
                                               if(min !== undefined) obj.common.min = min;
                                               if(max !== undefined) obj.common.max = max;
                                               if(unit) obj.common.unit = unit;
                                            } else {
                                               if(obj.common.min !== undefined) delete obj.common.min;
                                               if(obj.common.max !== undefined) delete obj.common.max;
                                               if(obj.common.unit) delete obj.common.unit;
                                            }
                                            if(states) obj.common.states = states;
                                            if(custom && obj.common.custom) obj.common.custom = custom;
                                            obj.native = {};
                                            setObject(idDst, obj, function() {
                                               if(idRd) setState(idRd, getState(idRd).val, true);
                                               else setState(idSrc, getState(idSrc).val, true); 
                                            });
                                            if(raum && existsObject('enum.rooms.' + raum)) {
                                               let obj = getObject('enum.rooms.' + raum)
                                               obj.common.members.push(idDst);
                                               setObject('enum.rooms.' + raum, obj);
                                            }
                                            if(gewerk && existsObject('enum.functions.' + gewerk)) {
                                               let obj = getObject('enum.functions.' + gewerk)
                                               obj.common.members.push(idDst);
                                               setObject('enum.functions.' + gewerk, obj);
                                            }
                                         } 
                                      }
                                       
                                      createAlias('alias.0.' + idAlias, idOrigin, idRead);
                                      
                                      

                                      ° Node.js: 20.17.0 NPM: 10.8.2
                                      ° Proxmox, Ubuntu 22.04.3 LTS
                                      ° Fixer ---> iob fix

                                      B 1 Antwort Letzte Antwort
                                      0
                                      • NegaleinN Negalein

                                        @bishop sagte in Test Adapter shuttercontrol v1.2.x:

                                        gibt es hier für ein Beispiel?

                                        // Original-Datenpunkt
                                        const idOrigin = 'hm-rpc.0.00115A49A5B2BE.4.LEVEL'/*Rollo Wohnzimmer :4 LEVEL*/ 
                                        // Optional: Status-Datenpunkt, wenn Kommando und Status getrennt.
                                        // Bei Nicht-Verwendung Leerstring '' zuweisen
                                        const idRead = 'hm-rpc.0.00115A49A5B2BE.3.LEVEL'/*Rollo Wohnzimmer :4 LEVEL*/
                                         
                                        // Alias-Datenpunkt
                                        const idAlias = 'Rollos.Rollo_Wohnzimmer';
                                         
                                        var typeAlias, read, write, nameAlias, role, desc, min, max, unit, states, custom, raum, gewerk;
                                         
                                        // Folgende kommentieren, wenn keine Änderung der Eigenschaft erforderlich
                                        nameAlias = 'Rollo Wohnzimmer';
                                        desc = 'per Script erstellt';
                                        // typeAlias = 'boolean'; // oder 'number'
                                        // read = "val < 0 ? -val : 0"; // Erkennung "Aus" --> false erfolgt automatisch  
                                        // write = "val ? String(1) : String(0)";
                                        // role = 'value';
                                        // min = 0; // nur Zahlen
                                        // max = 100; // nur Zahlen
                                        // unit = '%'; // nur für Zahlen
                                        // states = {0: 'Aus', 1: 'Auto', 2: 'Ein'}; // Zahlen (Multistate) oder Logikwert (z.B. Aus/Ein)
                                        custom = {}; // verhindert doppelte Ausführung von history, ...
                                        // raum = 'EG_Flur'; // Groß-/Kleinschreibung in der ID beachten !
                                        // gewerk = 'Licht'; // Groß-/Kleinschreibung in der ID beachten !
                                         
                                        // Ab hier nichts ändern !!
                                        function createAlias(idDst, idSrc, idRd) {
                                           if(existsState(idDst)) log(idDst + ' schon vorhanden !', 'warn');
                                           else {
                                              var obj = {};
                                              obj.type = 'state';
                                              obj.common = getObject(idSrc).common;
                                              obj.common.alias = {};
                                              if(idRd) {
                                                  obj.common.alias.id = {};
                                                  obj.common.alias.id.read = idRd;
                                                  obj.common.alias.id.write = idSrc;
                                                  obj.common.read = true;
                                              } else obj.common.alias.id = idSrc;
                                              if(typeAlias) obj.common.type = typeAlias;
                                              if(obj.common.read !== false && read) obj.common.alias.read = read;
                                              if(obj.common.write !== false && write) obj.common.alias.write = write;
                                              if(nameAlias) obj.common.name = nameAlias;
                                              if(role) obj.common.role = role;
                                              if(desc) obj.common.desc = desc;
                                              if(obj.common.type == 'number') {
                                                 if(min !== undefined) obj.common.min = min;
                                                 if(max !== undefined) obj.common.max = max;
                                                 if(unit) obj.common.unit = unit;
                                              } else {
                                                 if(obj.common.min !== undefined) delete obj.common.min;
                                                 if(obj.common.max !== undefined) delete obj.common.max;
                                                 if(obj.common.unit) delete obj.common.unit;
                                              }
                                              if(states) obj.common.states = states;
                                              if(custom && obj.common.custom) obj.common.custom = custom;
                                              obj.native = {};
                                              setObject(idDst, obj, function() {
                                                 if(idRd) setState(idRd, getState(idRd).val, true);
                                                 else setState(idSrc, getState(idSrc).val, true); 
                                              });
                                              if(raum && existsObject('enum.rooms.' + raum)) {
                                                 let obj = getObject('enum.rooms.' + raum)
                                                 obj.common.members.push(idDst);
                                                 setObject('enum.rooms.' + raum, obj);
                                              }
                                              if(gewerk && existsObject('enum.functions.' + gewerk)) {
                                                 let obj = getObject('enum.functions.' + gewerk)
                                                 obj.common.members.push(idDst);
                                                 setObject('enum.functions.' + gewerk, obj);
                                              }
                                           } 
                                        }
                                         
                                        createAlias('alias.0.' + idAlias, idOrigin, idRead);
                                        
                                        
                                        B Offline
                                        B Offline
                                        bishop
                                        schrieb am zuletzt editiert von bishop
                                        #3244

                                        @negalein

                                        besten Dank :)

                                        ist das auch mit dem alias-manager zu machen?

                                        1 Antwort Letzte Antwort
                                        0
                                        • H Offline
                                          H Offline
                                          Harry94
                                          schrieb am zuletzt editiert von
                                          #3245

                                          Hallo zusammen,

                                          erstmal vielen Dank für den tollen Adapter. :)

                                          Meine Frage hierzu ist jetzt folgende, ich hätte gerne eine Beschattung abhängig von Himmelsrichtung und Lichtsensor.
                                          Da jede Beschattung im Dropdown einen Temperatursensor verlangt habe ich bei Temperatur eine Wert von -50 eingetragen. Damit wollte ich erreichen, dass die Beschattung auch im Winter fährt.
                                          Der Adapter Scheint mit dem Negativen wert aber nichts anfangen zu können. eine Fahrt findet nicht statt.
                                          Auch die Temperaturwerte einfach leer lassen hat nicht funktioniert.
                                          Hat jemand eine Idee?

                                          Vielen dank schonmal

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          761

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          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