Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Blockly für zigbeeschalter welcher nur read hat

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Blockly für zigbeeschalter welcher nur read hat

    This topic has been deleted. Only users with topic management privileges can see it.
    • paul53
      paul53 @Robbi12 last edited by

      @robbi12 sagte: Wie würde ich dann eine Markisenschaltung machen?

      Welche Datenpunkte hat die Markise zum Steuern?
      Triggere auf "wurde aktualisiert" und

      • "on_right": Markise auffahren
      • "on_left": Markise zufahren
      • "off_right", "off_left": Markise stopp
      1 Reply Last reply Reply Quote 0
      • Asgothian
        Asgothian Developer @Robbi12 last edited by Asgothian

        @robbi12 sagte in Blockly für zigbeeschalter welcher nur read hat:

        @paul53 Wie würde ich dann eine Markisenschaltung machen?

        Der Schalter schaltet kompliziert für mich.

        Rechte Taste gedrückt dann on_right. Nochmal gedrückt off-right. Das gleiche links, also on_left und off_left.

        Wie gesagt es werden die Werte nicht geändert (steht also immer auf false". Der Zeitstempel wird geändert.

        Dann gibts noch was wenn man länger drückt:

        brightness-move-down-right. brightness-move-up.right und brightness-stop-right.

        Das gleiche für links

        Hast du es mit einem Trigger auf "ist grösser als vorher" versucht ? Es kann sein das der DP nur kurz (500 ms) auf wahr geht und dann wieder auf falsch zurück gesetzt wird. Das sieht man oft nicht wenn man auf den Objektbaum schaut. In diesem Fall wäre die Triggerung auf "wurde aktualisiert" nicht ok

        A.

        paul53 1 Reply Last reply Reply Quote 0
        • paul53
          paul53 @Asgothian last edited by paul53

          @asgothian sagte: Es kann sein das der DP nur kurz (500 ms) auf wahr geht und dann wieder auf falsch zurück gesetzt wird.

          Das sollte @Robbi12 testen:

          Blockly_temp.JPG

          Die Log-Ausgabe gibt Aufschluss über das Verhalten.

          R 1 Reply Last reply Reply Quote 0
          • R
            Robbi12 @paul53 last edited by Robbi12

            @paul53 Es ist tatsächlich so. Ganz kurz wird geschaltet.

            Screenshot 2024-07-24 211946.png

            Mit dem zigbee Adapter ist alles anders. Paul du hattest mir vor kurzem ein schönes script gebastelt für Markisensteuerung mit Werten "1001" und "1002". Das geht nun auch nicht mehr, da hier derjenige Schalter nun anders ausgelesen wird. Hier würde ich mich dann auch nochmal melden.

            Aber erstmal hier zurück. Ich danke dir schon dass du dir so viel Mühe gibst.

            Ja die Markise wird über einen Shelly 2,5 geschaltet. Da gibts die Punkte Close, Open, Stop

            Asgothian paul53 2 Replies Last reply Reply Quote 0
            • Asgothian
              Asgothian Developer @Robbi12 last edited by

              @robbi12 sagte in Blockly für zigbeeschalter welcher nur read hat:

              @paul53 Es ist tatsächlich so. Ganz kurz wird geschaltet.

              Das habe ich erwartet.. die Meldung ELEVATED publishToState: value generated 'true' from device ... for 'off_right' entsteht in dem Moment wo der DP auf wahr gesetzt wird. Das Zurücksetzen passiert automatisch durch die Definition als "button"

              A.

              1 Reply Last reply Reply Quote 1
              • paul53
                paul53 @Robbi12 last edited by

                @robbi12 sagte: Ganz kurz wird geschaltet.

                Dann triggere auf "ist größer als letztes".

                R 1 Reply Last reply Reply Quote 0
                • R
                  Robbi12 @paul53 last edited by

                  @paul53 Danke.

                  Ist es möglich aus den langdrücken Werten was zu basteln damit die Markise so lange fährt wie ich drücke und dann beim loslassen stopt?

                  Screenshot 2024-07-24 220719.png

                  Das wären die Datenpunkte

                  paul53 1 Reply Last reply Reply Quote 0
                  • paul53
                    paul53 @Robbi12 last edited by

                    @robbi12 sagte: Das wären die Datenpunkte

                    Wie verhalten sich die DP? Wodurch unterscheiden sich "move_down_right" und "move_up_right" bzw. wie werden sie aktiviert? "stop_right" wird beim Loslassen aktiviert?

                    R 1 Reply Last reply Reply Quote 0
                    • R
                      Robbi12 @paul53 last edited by

                      @paul53 Also durch die rechte Taste des Schalters wird beim langend Drücken der Taste move_down_right geschaltet. Geht wie oben auf true und dann selbständig auf false. Wenn diese Taste erneut gedrückt wird dann geht der Datenpunkt move_up_right kurzfristig auf true und wieder zurück. Dies immer im Wechsel bei erneutem Tastendruck.

                      stop_right wird beim loslassen aktiviert.

                      paul53 1 Reply Last reply Reply Quote 0
                      • paul53
                        paul53 @Robbi12 last edited by paul53

                        @robbi12 sagte: Dies immer im Wechsel bei erneutem Tastendruck.
                        stop_right wird beim loslassen aktiviert.

                        Versuche es mal so mit Taste rechts = "ausfahren" (close) und Taste links = "einfahren" (open).

                        Blockly_temp.JPG

                        R 2 Replies Last reply Reply Quote 0
                        • R
                          Robbi12 @paul53 last edited by

                          @paul53 Hallo Paul.. Funktioniert schon fast.

                          Noch kleine Fehler. Es wird nicht immer geschalten. Ich muss zweimal auf den jeweiligen Schalter drücken.

                          Beim longpress funktionier es.

                          1 Reply Last reply Reply Quote 0
                          • R
                            Robbi12 @paul53 last edited by Robbi12

                            @paul53 Hallo Paul. Ich hole den Eintrag nochmal hervor.

                            Wie gesagt es funktioniert, so dass man letztlich damit leben kann.

                            Perfekt wäre es wenn man die "Kleinigkeit" noch ausbügeln könnte.

                            Also die Schaltpunkte wechseln folgendermaßen:

                            rechte Taste: off_right/on_right

                            linke Taste: off_left/on_left

                            rechte Taste lang: brightness_move_down_right/brightness_move_up_right

                            linke Taste lang: brightness_move_down_left/brightness_move_up_left

                            Beim Landdruck nach dem loslassen immer: brightness_stop_right/brightness_stop_left

                            Ach ja, dies ist mir auch aufgefallen:

                            Wenn ich z.B. links drücke und er die Markise ausfährt, beim Drücken auf rechts, stopt sie nicht, sondern fährt dann gleich in die entgegengesetzte Richtung.

                            Wenn ich nochmal auf links drücke, dann klappt es mit dem Stop

                            paul53 1 Reply Last reply Reply Quote 0
                            • paul53
                              paul53 @Robbi12 last edited by paul53

                              @robbi12 sagte: die Markise ausfährt, beim Drücken auf rechts, stopt sie nicht, sondern fährt dann gleich in die entgegengesetzte Richtung.
                              Wenn ich nochmal auf links drücke, dann klappt es mit dem Stop

                              Ja, so ist es programmiert.

                              Soll jeder Tastendruck während des Aus-/Einfahrens stoppen, braucht man die Information, dass die Markise fährt. Gibt es dafür einen Aktor-Datenpunkt? Falls nicht, gibt es einen Datenpunkt, der die Position anzeigt?

                              EDIT: Blockly-Version mit Auswertung der Position.

                              Blockly_temp.JPG

                              R 1 Reply Last reply Reply Quote 0
                              • R
                                Robbi12 @paul53 last edited by

                                @paul53 Screenshot 2024-08-05 141538.png

                                Die Markise wird über einen Shelly gesteuert.

                                Der Datenpunkt Power ändert sich bei der Bewegung, da hier ja die Leistung abgerufen wird.

                                Ebenfalls der Punkt State und Position.

                                paul53 1 Reply Last reply Reply Quote 0
                                • paul53
                                  paul53 @Robbi12 last edited by

                                  @robbi12 sagte: State und Position.

                                  Mein Vorschlag oben wertet die "Position" aus.

                                  R 3 Replies Last reply Reply Quote 0
                                  • R
                                    Robbi12 @paul53 last edited by

                                    @paul53 Hallo, habe es nachgebaut. Fährt aber nicht ein. Evtl. habe ich noch einen Fehler drin.

                                    <xml xmlns="https://developers.google.com/blockly/xml">
                                      <variables>
                                        <variable id="?.([A*WCW5[)/gYOuEN[">position</variable>
                                        <variable id="_n6m^Nl-K?eJ}-WKj,~e">move</variable>
                                      </variables>
                                      <block type="procedures_defnoreturn" id="^+yr!wz-zf{64_}rT22Z" x="-287" y="-137">
                                        <field name="NAME">stoppen</field>
                                        <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                                        <statement name="STACK">
                                          <block type="control" id="?`IT!yD3MjN/;@Zif5?s">
                                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                            <field name="OID">shelly.0.shellyplus2pm#a0dd6c28a394#1.Cover0.Stop</field>
                                            <field name="WITH_DELAY">FALSE</field>
                                            <value name="VALUE">
                                              <block type="logic_boolean" id="B$L{x|aFIT^(jSM4~UVe">
                                                <field name="BOOL">TRUE</field>
                                              </block>
                                            </value>
                                            <next>
                                              <block type="variables_set" id="~*?ZI6sM/I3r=N/*K/UA">
                                                <field name="VAR" id="_n6m^Nl-K?eJ}-WKj,~e">move</field>
                                                <value name="VALUE">
                                                  <block type="logic_boolean" id="}~+B]#UV~x)Htu@^{HaH">
                                                    <field name="BOOL">FALSE</field>
                                                  </block>
                                                </value>
                                              </block>
                                            </next>
                                          </block>
                                        </statement>
                                      </block>
                                      <block type="variables_set" id="h6AXh}TW/n`S)+]KWK~Q" x="-287" y="-12">
                                        <field name="VAR" id="?.([A*WCW5[)/gYOuEN[">position</field>
                                        <value name="VALUE">
                                          <block type="get_value" id="AFXj42IWQCIdXK[{*lt~">
                                            <field name="ATTR">val</field>
                                            <field name="OID">shelly.0.shellyplus2pm#a0dd6c28a394#1.Cover0.Position</field>
                                          </block>
                                        </value>
                                        <next>
                                          <block type="on" id="`e}GZ0B~!f`Oayf$gaGo">
                                            <field name="OID">shelly.0.shellyplus2pm#a0dd6c28a394#1.Cover0.Position</field>
                                            <field name="CONDITION">ne</field>
                                            <field name="ACK_CONDITION"></field>
                                            <statement name="STATEMENT">
                                              <block type="variables_set" id="X|h!}P}=sHN?J9JkK_!2">
                                                <field name="VAR" id="?.([A*WCW5[)/gYOuEN[">position</field>
                                                <value name="VALUE">
                                                  <block type="on_source" id="Z~5awLRP)#Y`t]?_7jXT">
                                                    <field name="ATTR">state.val</field>
                                                  </block>
                                                </value>
                                                <next>
                                                  <block type="controls_if" id="AOr!6tDE,=nMM^7.};IL">
                                                    <value name="IF0">
                                                      <block type="logic_operation" id="^1;M7QpeOwYkVCzLZo)s" inline="false">
                                                        <field name="OP">OR</field>
                                                        <value name="A">
                                                          <block type="logic_compare" id=")h4pHPs#`9$er}C:@,ne">
                                                            <field name="OP">EQ</field>
                                                            <value name="A">
                                                              <block type="variables_get" id=",N%rf=W}+)WGl.7bnM|d">
                                                                <field name="VAR" id="?.([A*WCW5[)/gYOuEN[">position</field>
                                                              </block>
                                                            </value>
                                                            <value name="B">
                                                              <block type="math_number" id="h[ek]O~5:)v5amG1s(+j">
                                                                <field name="NUM">0</field>
                                                              </block>
                                                            </value>
                                                          </block>
                                                        </value>
                                                        <value name="B">
                                                          <block type="logic_compare" id="byf1BpPawsF%l=Fh}LYn">
                                                            <field name="OP">EQ</field>
                                                            <value name="A">
                                                              <block type="variables_get" id="`adu5i~qKoRzVNgln!`9">
                                                                <field name="VAR" id="?.([A*WCW5[)/gYOuEN[">position</field>
                                                              </block>
                                                            </value>
                                                            <value name="B">
                                                              <block type="math_number" id="E7pa=Tpv{]wV@qICi!R3">
                                                                <field name="NUM">100</field>
                                                              </block>
                                                            </value>
                                                          </block>
                                                        </value>
                                                      </block>
                                                    </value>
                                                    <statement name="DO0">
                                                      <block type="variables_set" id="4d06k4_3v;4_TA*?Dvm:">
                                                        <field name="VAR" id="_n6m^Nl-K?eJ}-WKj,~e">move</field>
                                                        <value name="VALUE">
                                                          <block type="logic_boolean" id="39;z00RZI(G#HUXG5^=v">
                                                            <field name="BOOL">FALSE</field>
                                                          </block>
                                                        </value>
                                                      </block>
                                                    </statement>
                                                  </block>
                                                </next>
                                              </block>
                                            </statement>
                                            <next>
                                              <block type="on_ext" id="S$^cKUM9f4-40*0Ux!GX">
                                                <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                                                <field name="CONDITION">gt</field>
                                                <field name="ACK_CONDITION"></field>
                                                <value name="OID0">
                                                  <shadow type="field_oid" id="2LVzfr`.YXuX{wBjMxqR">
                                                    <field name="oid">zigbee.0.003c84fffe8bec61.brightness_stop_right</field>
                                                  </shadow>
                                                </value>
                                                <value name="OID1">
                                                  <shadow type="field_oid" id="7:-Z?Lz@DzU;iMZ?-j/r">
                                                    <field name="oid">zigbee.0.003c84fffe8bec61.brightness_stop_left</field>
                                                  </shadow>
                                                </value>
                                                <statement name="STATEMENT">
                                                  <block type="procedures_callnoreturn" id="|~HfV7cldj:lVFlMn6ml">
                                                    <mutation name="stoppen"></mutation>
                                                  </block>
                                                </statement>
                                                <next>
                                                  <block type="on_ext" id="El2yiUX6:^87,b0oBm`#">
                                                    <mutation xmlns="http://www.w3.org/1999/xhtml" items="4"></mutation>
                                                    <field name="CONDITION">gt</field>
                                                    <field name="ACK_CONDITION"></field>
                                                    <value name="OID0">
                                                      <shadow type="field_oid" id="1v[;{L*u(qX7tm9fiMfJ">
                                                        <field name="oid">zigbee.0.003c84fffe8bec61.on_right</field>
                                                      </shadow>
                                                    </value>
                                                    <value name="OID1">
                                                      <shadow type="field_oid" id=".*y9_k$5nSU{#4QnB2^#">
                                                        <field name="oid">zigbee.0.003c84fffe8bec61.off_right</field>
                                                      </shadow>
                                                    </value>
                                                    <value name="OID2">
                                                      <shadow type="field_oid" id="Nk5O,wQm4(YEgn1-dw~W">
                                                        <field name="oid">zigbee.0.003c84fffe8bec61.brightness_move_down_right</field>
                                                      </shadow>
                                                    </value>
                                                    <value name="OID3">
                                                      <shadow type="field_oid" id="]m{w#7yLUbD@#_N7zd01">
                                                        <field name="oid">zigbee.0.003c84fffe8bec61.brightness_move_up_right</field>
                                                      </shadow>
                                                    </value>
                                                    <statement name="STATEMENT">
                                                      <block type="controls_if" id="rZ,O^!YQEKb$Ku~3idOD">
                                                        <mutation elseif="1"></mutation>
                                                        <value name="IF0">
                                                          <block type="variables_get" id="Z?MF(9mmt|~=gWa~nh$h">
                                                            <field name="VAR" id="_n6m^Nl-K?eJ}-WKj,~e">move</field>
                                                          </block>
                                                        </value>
                                                        <statement name="DO0">
                                                          <block type="procedures_callnoreturn" id="NqER3cP5Q9={U-{~lGqj">
                                                            <mutation name="stoppen"></mutation>
                                                          </block>
                                                        </statement>
                                                        <value name="IF1">
                                                          <block type="logic_compare" id="lhK:0;^NBldqbE0ypr2|">
                                                            <field name="OP">LT</field>
                                                            <value name="A">
                                                              <block type="variables_get" id="O9G#WdI:L^Y3t%~I@25[">
                                                                <field name="VAR" id="?.([A*WCW5[)/gYOuEN[">position</field>
                                                              </block>
                                                            </value>
                                                            <value name="B">
                                                              <block type="math_number" id="0-a7ZscWarix@2i}oPs_">
                                                                <field name="NUM">100</field>
                                                              </block>
                                                            </value>
                                                          </block>
                                                        </value>
                                                        <statement name="DO1">
                                                          <block type="control" id=".,pg/bl#(:K$C`]]|qN3">
                                                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                            <field name="OID">shelly.0.shellyplus2pm#a0dd6c28a394#1.Cover0.Close</field>
                                                            <field name="WITH_DELAY">FALSE</field>
                                                            <value name="VALUE">
                                                              <block type="logic_boolean" id="U^$zr-S-D~sH:rYK{=YR">
                                                                <field name="BOOL">TRUE</field>
                                                              </block>
                                                            </value>
                                                            <next>
                                                              <block type="variables_set" id="0Seh6rq=Yf%OF:4jp0={">
                                                                <field name="VAR" id="_n6m^Nl-K?eJ}-WKj,~e">move</field>
                                                                <value name="VALUE">
                                                                  <block type="logic_boolean" id="tf*^X2Q3pv[xV*ADK7Ej">
                                                                    <field name="BOOL">TRUE</field>
                                                                  </block>
                                                                </value>
                                                              </block>
                                                            </next>
                                                          </block>
                                                        </statement>
                                                      </block>
                                                    </statement>
                                                    <next>
                                                      <block type="on_ext" id="Jz2}){fRERquPQ5yrkG`">
                                                        <mutation xmlns="http://www.w3.org/1999/xhtml" items="4"></mutation>
                                                        <field name="CONDITION">gt</field>
                                                        <field name="ACK_CONDITION"></field>
                                                        <value name="OID0">
                                                          <shadow type="field_oid" id="e3A5.bx](fQ0/sag=s(}">
                                                            <field name="oid">zigbee.0.003c84fffe8bec61.on_left</field>
                                                          </shadow>
                                                        </value>
                                                        <value name="OID1">
                                                          <shadow type="field_oid" id="oH^6vm2r@`Tz4ca|xQg7">
                                                            <field name="oid">zigbee.0.003c84fffe8bec61.off_left</field>
                                                          </shadow>
                                                        </value>
                                                        <value name="OID2">
                                                          <shadow type="field_oid" id="r}z)%UU@Ryd`gD6U{D=l">
                                                            <field name="oid">zigbee.0.003c84fffe8bec61.brightness_move_up_left</field>
                                                          </shadow>
                                                        </value>
                                                        <value name="OID3">
                                                          <shadow type="field_oid" id="k7{zQikaV4t7CMafyY@(">
                                                            <field name="oid">zigbee.0.003c84fffe8bec61.brightness_move_down_left</field>
                                                          </shadow>
                                                        </value>
                                                        <statement name="STATEMENT">
                                                          <block type="controls_if" id="jFs!{Sp7q42eV(Xig0FJ">
                                                            <mutation elseif="1"></mutation>
                                                            <value name="IF0">
                                                              <block type="variables_get" id=":dfkL6uL?`]LumIgSWq2">
                                                                <field name="VAR" id="_n6m^Nl-K?eJ}-WKj,~e">move</field>
                                                              </block>
                                                            </value>
                                                            <statement name="DO0">
                                                              <block type="procedures_callnoreturn" id="%KP5wZkq8i2@HdCgtcvB">
                                                                <mutation name="stoppen"></mutation>
                                                              </block>
                                                            </statement>
                                                            <value name="IF1">
                                                              <block type="logic_compare" id="FVmxA197upN=1oRlxhoS">
                                                                <field name="OP">GT</field>
                                                                <value name="A">
                                                                  <block type="variables_get" id=":YpltyZ7MXRPi6q4tG;^">
                                                                    <field name="VAR" id="?.([A*WCW5[)/gYOuEN[">position</field>
                                                                  </block>
                                                                </value>
                                                                <value name="B">
                                                                  <block type="math_number" id="Z7*gG`mdQ8Y!qN:}=$e/">
                                                                    <field name="NUM">0</field>
                                                                  </block>
                                                                </value>
                                                              </block>
                                                            </value>
                                                            <statement name="DO1">
                                                              <block type="control" id="6Pk.f4=t$GsBpqw+5aj2">
                                                                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                                <field name="OID">shelly.0.shellyplus2pm#a0dd6c28a394#1.Cover0.Open</field>
                                                                <field name="WITH_DELAY">FALSE</field>
                                                                <value name="VALUE">
                                                                  <block type="logic_boolean" id="*MDo^}r+n1TT$`=F:J0z">
                                                                    <field name="BOOL">TRUE</field>
                                                                  </block>
                                                                </value>
                                                                <next>
                                                                  <block type="variables_set" id="Vc/#r?SplyVdE*Q@HqiS">
                                                                    <field name="VAR" id="_n6m^Nl-K?eJ}-WKj,~e">move</field>
                                                                    <value name="VALUE">
                                                                      <block type="logic_boolean" id="A(Jc.rwO7?VxC_?xxo[1">
                                                                        <field name="BOOL">TRUE</field>
                                                                      </block>
                                                                    </value>
                                                                  </block>
                                                                </next>
                                                              </block>
                                                            </statement>
                                                          </block>
                                                        </statement>
                                                      </block>
                                                    </next>
                                                  </block>
                                                </next>
                                              </block>
                                            </next>
                                          </block>
                                        </next>
                                      </block>
                                    </xml>
                                    
                                    paul53 1 Reply Last reply Reply Quote 0
                                    • R
                                      Robbi12 @paul53 last edited by

                                      @paul53 Gerade noch getestet.

                                      Es funktioniert, wenn die Markise nicht ganz auf 0 oder 100 steht. Steht sie ganz drin 0 oder ganz draußen dann funktioniert es nicht.

                                      1 Reply Last reply Reply Quote 0
                                      • R
                                        Robbi12 @paul53 last edited by

                                        @paul53 Habs gerade selber gefunden. Ich habe die Werte auf kleiner gleich 100 und auf größer gleich 0 gesetzt.

                                        Bei mir ist es leider im ein rumprobieren. Ich kann nicht mal nachverfolgen was dies mit den Werten ist.

                                        Du bist ein Profi. Danke dafür

                                        paul53 1 Reply Last reply Reply Quote 0
                                        • paul53
                                          paul53 @Robbi12 last edited by paul53

                                          @robbi12 sagte: Evtl. habe ich noch einen Fehler drin.

                                          Die Richtungen stimmen?

                                          • Close (rechte Tasten) fährt Richtung 100 %
                                          • Open (linke Tasten) fährt Richtung 0 %
                                          1 Reply Last reply Reply Quote 0
                                          • paul53
                                            paul53 @Robbi12 last edited by paul53

                                            @robbi12 sagte: Ich habe die Werte auf kleiner gleich 100 und auf größer gleich 0 gesetzt.

                                            Das ist nicht zielführend. Vermutlich sind die Vergleiche falsch herum?

                                            EDIT: Funktioniert es so?

                                            Blockly_temp.JPG

                                            Ziel der Vergleiche ist, dass nicht noch mal gesteuert wird, wenn die betreffende Endlage erreicht sind. Außerdem soll move dann auf false bleiben, damit der nächste Tastendruck keinen Stopp auslöst.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            562
                                            Online

                                            31.9k
                                            Users

                                            80.3k
                                            Topics

                                            1.3m
                                            Posts

                                            4
                                            32
                                            1154
                                            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