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 Garagen LED Beleuchtung

    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 Garagen LED Beleuchtung

    This topic has been deleted. Only users with topic management privileges can see it.
    • V
      Vocaris last edited by

      Hallo,
      ich habe mittels WEMOS und WLED ein kl. Projekt umgesetzt, wo LEDs im Torrahmen des Garagentor eine kleine "Lichtveranstaltung" durchführt. Ggf. hat der ein oder andere das schon mal bei YTT gesehen.
      Wie dem auch sein. Mittels 2 Fensterkontakten (Zigbee), dem WLED Adapter und einem Blockly lasse ich die 5 Presest der LED Steuerung entsprechend laufen. Zum Verständnis. Preset (PS) 1 ist eine roten Laufband, PS2 ist einen grüne Leiste, PS3 ist ein Fadeout von grün auf weiss und PS5 ist das Ausschalten der LEDs.
      Fehlt noch PS4. Hier werden immer 20 LEDs im Abstand von 20 nicht beleuchteten eingeschaltet. Das sieht dann aus wir einzelne Spots.
      Um genau das PS4 geht es. Denn dies soll nur durchgeführt werden, wenn es draußen dunkel ist.
      Ich wollte versuchen es mit einer Zeit zusteuern. Also z.B. nur wenn es später als 21 Uhr ist, soll das PS4 durchgeführt werden. 8 Uhr morgens (hell) ist aber auch später als 21 Uhr 😉
      OK. Also was wäre sinnvoll? Ich möchte halt, dass dieses PS4 z.B. nur dann im Blockly ausgeführt wird, wenn es zwischen 21 und 5 Uhr morgens passiert. Sonst soll PS4 quasi übersprungen werden. Zudem soll, wenn diese "Schleife" aktiviert wurde das PS4 nur für 2 Minuten leuchten. Dann sollen sie ausgehen. Also soll dann quasi nochmal das PS5 laufen. Das sorgt ja für das ausschalten.
      Hier mal mein Blockly bis jetzt. Der Trigger mit dem Zeitplan ist falsch. War ein versuch. Klappt aber nicht.
      Anstatt Zeit von bis wäre ggf. auch Sonnauf- Untergang meiner Region heranzuziehen, wenn das geht.
      Wäre für Hilfe dankbar. Bis hierhin habe ich es geschafft. Aber jetzt bin ich zu unwissend...

      e002b20b-01c4-42fc-ab1f-2ceb499dbc6f-image.png


      <xml xmlns="https://developers.google.com/blockly/xml">
      <block type="on_ext" id="j)a}[J0N7enJ9_n{x|3u" x="38" y="88">
      <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
      <field name="CONDITION">ne</field>
      <field name="ACK_CONDITION"></field>
      <value name="OID0">
      <shadow type="field_oid" id="KK;Mwk3)j:2uykGYZz|Q">
      <field name="oid">deconz.0.sensors.00158d00040ad900.open</field>
      </shadow>
      </value>
      <value name="OID1">
      <shadow type="field_oid" id="pNF(Nx?nUx.J)B+eJu">
      <field name="oid">deconz.0.sensors.00158d0003969b2a.open</field>
      </shadow>
      </value>
      <statement name="STATEMENT">
      <block type="comment" id="F;ht|qX+](rvKCm9e.:">
      <field name="COMMENT">Garage fährt hoch oder runter</field>
      <next>
      <block type="controls_if" id="b}7Qv{1u}N)Xg{W?44!.">
      <value name="IF0">
      <block type="logic_operation" id="[1,K,N|t0^Hf;!G?Xms2" inline="false">
      <field name="OP">AND</field>
      <value name="A">
      <block type="logic_compare" id="?1/+/BhoM?(6]JUCfNb$">
      <field name="OP">EQ</field>
      <value name="A">
      <block type="get_value" id="S?}SWt}kctWncGvWu0[}">
      <field name="ATTR">val</field>
      <field name="OID">deconz.0.sensors.00158d00040ad900.open</field>
      </block>
      </value>
      <value name="B">
      <block type="logic_boolean" id="6Uulx6fW#PO!D;p(-@5T">
      <field name="BOOL">TRUE</field>
      </block>
      </value>
      </block>
      </value>
      <value name="B">
      <block type="logic_compare" id="+^jiSsNz7.~YY?Se{C{"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="%#Ws#qPnR~d-7Td]D5M">
      <field name="ATTR">val</field>
      <field name="OID">deconz.0.sensors.00158d0003969b2a.open</field>
      </block>
      </value>
      <value name="B">
      <block type="logic_boolean" id="|Wi-5lKJ8C,WEafPg2%n">
      <field name="BOOL">TRUE</field>
      </block>
      </value>
      </block>
      </value>
      </block>
      </value>
      <statement name="DO0">
      <block type="control" id="t0Jq^/Me5tt4mTX/C[uP">
      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
      <field name="OID">wled.0.e09806861c93.ps</field>
      <field name="WITH_DELAY">FALSE</field>
      <value name="VALUE">
      <block type="math_number" id="+bv3[+IeSXY]qfk1%u?5">
      <field name="NUM">1</field>
      </block>
      </value>
      </block>
      </statement>
      <next>
      <block type="on_ext" id="AklUN~bk=T;_2q/l^%=%">
      <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
      <field name="CONDITION">any</field>
      <field name="ACK_CONDITION"></field>
      <value name="OID0">
      <shadow type="field_oid" id="x(r3=k-77nfT_YopBldl">
      <field name="oid">deconz.0.sensors.00158d00040ad900.open</field>
      </shadow>
      </value>
      <value name="OID1">
      <shadow type="field_oid" id="D5wJmO)tC%$N:JEmajj6">
      <field name="oid">deconz.0.sensors.00158d0003969b2a.open</field>
      </shadow>
      </value>
      <statement name="STATEMENT">
      <block type="comment" id="vK!{bh-5N(Af7Lur7jmp">
      <field name="COMMENT">Garage ist oben</field>
      <next>
      <block type="controls_if" id="U1d~=M{]J0puwZ(Qwq%"> <value name="IF0"> <block type="logic_operation" id="+sv.4#Gu2Y{~|:?F#{v" inline="false">
      <field name="OP">AND</field>
      <value name="A">
      <block type="logic_compare" id="$Q^G=|k{!Y#omA)3(9AS">
      <field name="OP">EQ</field>
      <value name="A">
      <block type="get_value" id="D9$Wq(o3ULVKtt~zR}A~">
      <field name="ATTR">val</field>
      <field name="OID">deconz.0.sensors.00158d00040ad900.open</field>
      </block>
      </value>
      <value name="B">
      <block type="logic_boolean" id="A
      L9qZT,9k#_G7[;t#"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="uR=b[Fn^R[]tQKoP_4}D"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="%e/cQH6ufE;^CrX~R7_d"> <field name="ATTR">val</field> <field name="OID">deconz.0.sensors.00158d0003969b2a.open</field> </block> </value> <value name="B"> <block type="logic_boolean" id="vQZ7XbjLD4TgFkK|gdcN"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="=9Gu;WSrdGG;K,4dV!it"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">wled.0.e09806861c93.ps</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="dDygEtI+?-Lc|0#^ly*Q"> <field name="NUM">2</field> </block> </value> <next> <block type="control" id="nT~R1,ztC+8xl*:B2;s">
      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation>
      <field name="OID">wled.0.e09806861c93.ps</field>
      <field name="WITH_DELAY">TRUE</field>
      <field name="DELAY_MS">3</field>
      <field name="UNIT">sec</field>
      <field name="CLEAR_RUNNING">FALSE</field>
      <value name="VALUE">
      <block type="math_number" id="qd7om[Dmm;WXQwH.SA">
      <field name="NUM">3</field>
      </block>
      </value>
      <next>
      <block type="control" id="F~gjnW!NBbZ=NnWe4LAW">
      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation>
      <field name="OID">wled.0.e09806861c93.ps</field>
      <field name="WITH_DELAY">TRUE</field>
      <field name="DELAY_MS">5</field>
      <field name="UNIT">sec</field>
      <field name="CLEAR_RUNNING">FALSE</field>
      <value name="VALUE">
      <block type="math_number" id="{HkB1W{(|XY^n]kX:)Ay">
      <field name="NUM">5</field>
      </block>
      </value>
      <next>
      <block type="schedule" id="DNJg)hoJ~ol1Vj{J:He$">
      <field name="SCHEDULE">0 18 * * </field>
      <statement name="STATEMENT">
      <block type="control" id="J4SPF;nv/xRek#ZhbXz%">
      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
      <field name="OID">wled.0.e09806861c93.ps</field>
      <field name="WITH_DELAY">FALSE</field>
      <value name="VALUE">
      <block type="math_number" id="~@P8jXGG$^_Ea~^DfF
      =">
      <field name="NUM">4</field>
      </block>
      </value>
      </block>
      </statement>
      </block>
      </next>
      </block>
      </next>
      </block>
      </next>
      </block>
      </statement>
      <next>
      <block type="on_ext" id="d2X##!nsleJocVolXw%"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation> <field name="CONDITION">any</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="@);]UI6Uw6O=feS;ybD">
      <field name="oid">deconz.0.sensors.00158d00040ad900.open</field>
      </shadow>
      </value>
      <value name="OID1">
      <shadow type="field_oid" id="uLZTe0q|K6o:e
      $3UHZ0">
      <field name="oid">deconz.0.sensors.00158d0003969b2a.open</field>
      </shadow>
      </value>
      <statement name="STATEMENT">
      <block type="comment" id="]^i+*)*FMaP:;{:#Nca)">
      <field name="COMMENT">Garage ist unten</field>
      <next>
      <block type="controls_if" id="@d;/%1a;xG|6[eBUZv/^">
      <value name="IF0">
      <block type="logic_operation" id="q|kS:$Aa%L7fO%1BjT8#" inline="false">
      <field name="OP">AND</field>
      <value name="A">
      <block type="logic_compare" id="o,Gx$|b7FGA6)03wfdp?">
      <field name="OP">EQ</field>
      <value name="A">
      <block type="get_value" id="884Jnf)V[M)29Lzk2^z~">
      <field name="ATTR">val</field>
      <field name="OID">deconz.0.sensors.00158d00040ad900.open</field>
      </block>
      </value>
      <value name="B">
      <block type="logic_boolean" id="~Hj0B(:J0EJUP4pfo@="> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="RvmL52b^k@/I$w/htOad"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="0Q1UEoD.qE=M}#x+7H3l"> <field name="ATTR">val</field> <field name="OID">deconz.0.sensors.00158d0003969b2a.open</field> </block> </value> <value name="B"> <block type="logic_boolean" id="Xf/DS9,w_r2C}P]g~8Xx"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="r,YELdXNvz;RQF,W7Xf-"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">wled.0.e09806861c93.ps</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="5e{*[#9uJDg~8mbPo@hT"> <field name="NUM">2</field> </block> </value> <next> <block type="control" id="XEoc%lLA_Fj?1zOOuSVM"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation> <field name="OID">wled.0.e09806861c93.ps</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">3</field> <field name="UNIT">sec</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="math_number" id="[u6#)HMt,otHj/Wx-/?~"> <field name="NUM">3</field> </block> </value> <next> <block type="control" id="?Rs5cw@FJmgSVXY[o^px"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation> <field name="OID">wled.0.e09806861c93.ps</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">5</field> <field name="UNIT">sec</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="math_number" id="WSB|cao,Q+)/Hes0~:KQ"> <field name="NUM">5</field> </block> </value> <next> <block type="schedule" id="Oy$?fP8Ntbs/m(,Nt=,">
      <field name="SCHEDULE">0 18 * * *</field>
      <statement name="STATEMENT">
      <block type="control" id="od%rC#ttG=sa9!V[UrN"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">wled.0.e09806861c93.ps</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="!~l@dlxa:WCoe-8hE$q">
      <field name="NUM">4</field>
      </block>
      </value>
      </block>
      </statement>
      </block>
      </next>
      </block>
      </next>
      </block>
      </next>
      </block>
      </statement>
      </block>
      </next>
      </block>
      </statement>
      </block>
      </next>
      </block>
      </next>
      </block>
      </statement>
      </block>
      </next>
      </block>
      </next>
      </block>
      </statement>
      </block>
      </xml>

      J M BBTown 3 Replies Last reply Reply Quote -1
      • J
        Jan1 @Vocaris last edited by

        @vocaris
        Ohne weiter darauf einzugehen, aber Trigger im Trigger funktioniert einfach nicht 😉

        1 Reply Last reply Reply Quote 0
        • M
          MCU @Vocaris last edited by

          @vocaris Spoiler ist schon gut, der Code muss aber in die Code-Tags (</>).

          1 Reply Last reply Reply Quote 0
          • Z
            zaim last edited by zaim

            @vocaris

            HI, mich würde interessieren, wie du die einzelnen spots (20 segmente) programmiert hast. Macro? würdest du mir das bitte erklären?

            zu dem Problem mit der Uhrzeit würde ich das einbauen:

            <block xmlns="https://developers.google.com/blockly/xml" type="time_compare_ex" id="FCU~,#:[DzDU{)GHVgC;" x="-527.2183380126953" y="-340">
              <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="true" actual_time="true"></mutation>
              <field name="USE_ACTUAL_TIME">TRUE</field>
              <field name="OPTION">not between</field>
              <value name="START_TIME">
                <shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="Wlm/Ydfr$NW9.PqF{@Q*">
                  <field name="TEXT">12:00</field>
                </shadow>
                <block type="time_astro" id="$^dcUJ=l*4Fqd1`k!{ob">
                  <field name="TYPE">sunriseEnd</field>
                  <field name="OFFSET">0</field>
                </block>
              </value>
              <value name="END_TIME">
                <shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="g$vV8qgl^CV9mnZ|u3Tu">
                  <field name="TEXT">18:00</field>
                </shadow>
                <block type="time_astro" id="66_X/:mI$aA8Bt[wUFe]">
                  <field name="TYPE">sunsetStart</field>
                  <field name="OFFSET">0</field>
                </block>
              </value>
            </block>
            
            1 Reply Last reply Reply Quote 0
            • BBTown
              BBTown @Vocaris last edited by

              @vocaris
              vielleicht passt es so:
              1b1da553-35cf-47c2-add9-bfa7964040b1-image.png

              Dafür müßte irgendwo zentral die "Tageszeit" definiert werden
              (das bietet sich an, da die Tageszeit sicher in weiteren Scripten Verwendung finden kann)

              <xml xmlns="https://developers.google.com/blockly/xml">
               <block type="on_ext" id="VjZx|lS#7.hX2j`fp]nW" x="-513" y="63">
                 <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                 <field name="CONDITION">ne</field>
                 <field name="ACK_CONDITION"></field>
                 <value name="OID0">
                   <shadow type="field_oid" id="j?F.~}Q6,z?wt@pJcSqp">
                     <field name="oid">0_userdata.0.test.DP1</field>
                   </shadow>
                 </value>
                 <value name="OID1">
                   <shadow type="field_oid" id="FhAF+mt7F?`uZ}zTD(w:">
                     <field name="oid">0_userdata.0.test.DP2</field>
                   </shadow>
                 </value>
                 <statement name="STATEMENT">
                   <block type="controls_if" id="IW:!,u|TZd-/wtx$%_bj">
                     <mutation elseif="2"></mutation>
                     <value name="IF0">
                       <block type="logic_operation" id="adktQ6%f%{2rN:IMmp:h" inline="false">
                         <field name="OP">AND</field>
                         <value name="A">
                           <block type="get_value" id="l?@X7vD$w0D}C{J8_4,G">
                             <field name="ATTR">val</field>
                             <field name="OID">0_userdata.0.test.DP1</field>
                           </block>
                         </value>
                         <value name="B">
                           <block type="get_value" id=".=e^lu]k*Ha:r-g8kq?}">
                             <field name="ATTR">val</field>
                             <field name="OID">0_userdata.0.test.DP2</field>
                           </block>
                         </value>
                       </block>
                     </value>
                     <statement name="DO0">
                       <block type="control" id="K|Gco.k|ak$]%exLN)4^">
                         <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                         <field name="OID">0_userdata.0.test.Preset_1</field>
                         <field name="WITH_DELAY">FALSE</field>
                         <value name="VALUE">
                           <block type="logic_boolean" id="2,euRRiv5y3crbXsI`]9">
                             <field name="BOOL">TRUE</field>
                           </block>
                         </value>
                       </block>
                     </statement>
                     <value name="IF1">
                       <block type="logic_operation" id="nNWz(|a-yPBN2g6mV-mX" inline="false">
                         <field name="OP">AND</field>
                         <value name="A">
                           <block type="logic_negate" id="VRjq3j9.U?:cFhNHW6`%">
                             <value name="BOOL">
                               <block type="get_value" id="aRyN4VfL_5oi68eo(:d.">
                                 <field name="ATTR">val</field>
                                 <field name="OID">0_userdata.0.test.DP1</field>
                               </block>
                             </value>
                           </block>
                         </value>
                         <value name="B">
                           <block type="get_value" id="SNoO~c,TXKpSQ:V=8.es">
                             <field name="ATTR">val</field>
                             <field name="OID">0_userdata.0.test.DP2</field>
                           </block>
                         </value>
                       </block>
                     </value>
                     <statement name="DO1">
                       <block type="procedures_callnoreturn" id="*{Ra))!bZI)~PW/4~*;F">
                         <mutation name="Lichtorgel"></mutation>
                       </block>
                     </statement>
                     <value name="IF2">
                       <block type="logic_operation" id="W}#tphy;v{|w2k9?P4so" inline="false">
                         <field name="OP">AND</field>
                         <value name="A">
                           <block type="get_value" id="]D{iXsJqTMp{A[L4do(8">
                             <field name="ATTR">val</field>
                             <field name="OID">0_userdata.0.test.DP1</field>
                           </block>
                         </value>
                         <value name="B">
                           <block type="logic_negate" id="EeK$F*|Vc@i|`frF4Wvf">
                             <value name="BOOL">
                               <block type="get_value" id="+se8.]uIm4Su|}{-@)Qm">
                                 <field name="ATTR">val</field>
                                 <field name="OID">0_userdata.0.test.DP2</field>
                               </block>
                             </value>
                           </block>
                         </value>
                       </block>
                     </value>
                     <statement name="DO2">
                       <block type="procedures_callnoreturn" id="_IrQ{80k]$h8z~H`jagg">
                         <mutation name="Lichtorgel"></mutation>
                       </block>
                     </statement>
                   </block>
                 </statement>
               </block>
               <block type="procedures_defnoreturn" id="a*xX`@Y!zkc8Y?9z:5TO" x="-12" y="62">
                 <field name="NAME">Lichtorgel</field>
                 <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                 <statement name="STACK">
                   <block type="controls_if" id="OBq93mea!t*U@c7|^;Hb">
                     <mutation else="1"></mutation>
                     <value name="IF0">
                       <block type="logic_compare" id="],Qlko+9%ucz;VB%iOO@">
                         <field name="OP">EQ</field>
                         <value name="A">
                           <block type="get_value" id="h-yOMINDIi|Xb[7C#CHG">
                             <field name="ATTR">val</field>
                             <field name="OID">0_userdata.0.test.Tageszeit</field>
                           </block>
                         </value>
                         <value name="B">
                           <block type="text" id="`/T0l5!klTgN{E9uu4e(">
                             <field name="TEXT">Nacht</field>
                           </block>
                         </value>
                       </block>
                     </value>
                     <statement name="DO0">
                       <block type="control" id="5~K@i71C*SDt]rie*US/">
                         <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                         <field name="OID">0_userdata.0.test.Preset_2</field>
                         <field name="WITH_DELAY">FALSE</field>
                         <value name="VALUE">
                           <block type="logic_boolean" id="oR]3O_4SpZEh243dqBsL">
                             <field name="BOOL">TRUE</field>
                           </block>
                         </value>
                         <next>
                           <block type="control" id="j^:F8z8H`.MTL`i@*QI:">
                             <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation>
                             <field name="OID">0_userdata.0.test.Preset_3</field>
                             <field name="WITH_DELAY">TRUE</field>
                             <field name="DELAY_MS">3</field>
                             <field name="UNIT">sec</field>
                             <field name="CLEAR_RUNNING">TRUE</field>
                             <value name="VALUE">
                               <block type="logic_boolean" id="hz,f@Z(SP`3I*{.W,=/V">
                                 <field name="BOOL">TRUE</field>
                               </block>
                             </value>
                             <next>
                               <block type="control" id="!y8C:O0tNEK~ONj6X=D%">
                                 <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation>
                                 <field name="OID">0_userdata.0.test.Preset_4</field>
                                 <field name="WITH_DELAY">TRUE</field>
                                 <field name="DELAY_MS">5</field>
                                 <field name="UNIT">sec</field>
                                 <field name="CLEAR_RUNNING">TRUE</field>
                                 <value name="VALUE">
                                   <block type="logic_boolean" id="iUCV!4foC4]H)!(x1i%C">
                                     <field name="BOOL">TRUE</field>
                                   </block>
                                 </value>
                                 <next>
                                   <block type="control" id="y!S@u3-#tj*adJ78h77f">
                                     <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation>
                                     <field name="OID">0_userdata.0.test.Preset_5</field>
                                     <field name="WITH_DELAY">TRUE</field>
                                     <field name="DELAY_MS">2</field>
                                     <field name="UNIT">min</field>
                                     <field name="CLEAR_RUNNING">TRUE</field>
                                     <value name="VALUE">
                                       <block type="logic_boolean" id="Pt;dbE_oD6KuT%LLSopZ">
                                         <field name="BOOL">TRUE</field>
                                       </block>
                                     </value>
                                   </block>
                                 </next>
                               </block>
                             </next>
                           </block>
                         </next>
                       </block>
                     </statement>
                     <statement name="ELSE">
                       <block type="control" id="6.XtFW@2Vete/^7zQ|PA">
                         <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                         <field name="OID">0_userdata.0.test.Preset_2</field>
                         <field name="WITH_DELAY">FALSE</field>
                         <value name="VALUE">
                           <block type="logic_boolean" id="57KLZ2VUmYA:?RHHI8_k">
                             <field name="BOOL">TRUE</field>
                           </block>
                         </value>
                         <next>
                           <block type="control" id="phfdh3]bVXWOMo8VE~.y">
                             <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation>
                             <field name="OID">0_userdata.0.test.Preset_3</field>
                             <field name="WITH_DELAY">TRUE</field>
                             <field name="DELAY_MS">3</field>
                             <field name="UNIT">sec</field>
                             <field name="CLEAR_RUNNING">TRUE</field>
                             <value name="VALUE">
                               <block type="logic_boolean" id="D?1sv@tftKU_#=R/+U84">
                                 <field name="BOOL">TRUE</field>
                               </block>
                             </value>
                             <next>
                               <block type="control" id=".wVv2T(*JKcZw04w+8Gz">
                                 <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation>
                                 <field name="OID">0_userdata.0.test.Preset_5</field>
                                 <field name="WITH_DELAY">TRUE</field>
                                 <field name="DELAY_MS">5</field>
                                 <field name="UNIT">sec</field>
                                 <field name="CLEAR_RUNNING">TRUE</field>
                                 <value name="VALUE">
                                   <block type="logic_boolean" id="Iu!:Tt*,;7}z{%Fvw#X)">
                                     <field name="BOOL">TRUE</field>
                                   </block>
                                 </value>
                               </block>
                             </next>
                           </block>
                         </next>
                       </block>
                     </statement>
                   </block>
                 </statement>
               </block>
              </xml>
              

              BBTown Asgothian 2 Replies Last reply Reply Quote 0
              • BBTown
                BBTown @BBTown last edited by

                Ich setze "Nacht" z.B. zum Steuern meiner Außenbeleuchtung über ein eigenes Script.
                87d5724d-e29f-4e70-8100-5b6e9985911f-image.png

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

                  @bbtown sagte in Blockly für Garagen LED Beleuchtung:

                  @vocaris
                  vielleicht passt es so:
                  1b1da553-35cf-47c2-add9-bfa7964040b1-image.png

                  Dafür müßte irgendwo zentral die "Tageszeit" definiert werden
                  (das bietet sich an, da die Tageszeit sicher in weiteren Scripten Verwendung finden kann)

                  Das ganze lässt sich durchaus noch etwas vereinfachen / verbessern:

                  Screenshot 2021-04-27 at 08.17.02.png

                  Warum geht das ?

                  Der Trigger "is greater than last" wird nur aktiv wenn einer der beiden States auf wahr geht. Das bedeutet das die oben angegebenen Sonst Falls beide automatisch erfüllt sein müssen, sofern nicht beide States auf wahr liegen.

                  Die Funktion "Lichtorgel" muss erhalten bleiben. An Statt einen Datenpunkt in der Funktion abzufragen geht aber auch:
                  Screenshot 2021-04-27 at 08.18.11.png

                  im Falls block um die Zeit einzugrenzen.

                  A.

                  1 Reply Last reply Reply Quote 1
                  • JB_Sullivan
                    JB_Sullivan last edited by

                    Nàbend zusammen - darf ich hier mal in den Thread rein grätschen?

                    Ich möchte auch das Garagentor Licht realisieren. Bauteile sind alle heute gekommen und hier auf dem Schreibtisch blinkt und leuchtet es munter, gemäß der wled Effekte, vor sich hin.

                    Den ioB wled Adapter habe ich auch installiert und er hat auch die Datenpunkte mit div. Werten gefüllt - ABER ....... ich habe nirgends einen Ansatz gefunden WIE man so eine Gargentor Beleuchtung hin bekommt.

                    Muss man irgendwie ein "Programm schreiben" und dieses dann in Wled hinein kompilieren und wled neu flashen? Was hat es mit dem ioB Blockly auf sich?

                    Ich habe im Web diesen, für mich kryptischen, Programmcode gefunden. Was und vor allen Dingen WO, ich damit etwas machen muss erschließt sich mir allerdings nicht.

                    rot -  SM=0&SS=0&SV=2&S=0&S2=174&GP=1&SP=0&RV=0&SB=255&A=255&R=255&G=0&B=0&W=0&R2=0&G2=0&B2=0&W2=&FX=60&SX=203&IX=246&T=1
                    grün - SM=0&SS=0&SV=2&S=0&S2=174&GP=1&SP=0&RV=0&SB=255&A=255&R=0&G=255&B=0&W=0&R2=0&G2=0&B2=0&W2=&FX=0&T=1
                    weiss - SM=0&SS=0&SV=2&S=0&S2=174&GP=1&SP=0&RV=0&SB=255&A=255&R=0&G=0&B=0&W=255&R2=0&G2=0&B2=0&W2=&FX=60&SX=64&IX=113&T=1
                    spots - SM=0&SS=0&SV=2&S=13&S2=174&GP=7&SP=20&RV=0&SB=255&A=255&W=255&R2=0&G2=0&B2=0&W2=&FX=0&T=1
                    aus - T=0
                    
                    

                    Also ich stehe mit wled total am Anfang (und auf dem Schlauch) und bringe es nicht zusammen wie man nun dieses, auf YouTube allseits bekannte Garagentor Licht, "programmiert".

                    Kann mich bitte jemand ein bisschen an Hand nehmen und mir vielleicht ein paar Stichwörter / Hinweise geben, WIE ich vorgehen muss? Wenn ich erst einmal einen Ansatz habe, wurschtel ich mich da schon irgendwie durch. Leider ist alles was man als "Ansatz" findet, irgendwie auf LOXONE zugeschnitten.

                    D Z 2 Replies Last reply Reply Quote 0
                    • D
                      dany198300 @JB_Sullivan last edited by

                      @jb_sullivan bist Du weiter gekommen? Ich habe den cod.m Controller mit WLED und möchte auch die Garagenbeleuchtung realisieren.

                      Wie habt ihr es so realisiert im IoBroker?

                      So wie ich es im Loxforum lese wurde es dort über UDP vom Loxone Server realisiert. Im IoBroker über Blockly einen Preset ansteuern? Ist das korrekt?

                      Hat jemand den Preset konfiguriert?

                      1 Reply Last reply Reply Quote 0
                      • Z
                        zaim @JB_Sullivan last edited by

                        @jb_sullivan said in Blockly für Garagen LED Beleuchtung:
                        Ich stand vor dem gleichen Problem und musste auch rumprobieren... hier meine Vorgehensweise, vielleicht hilft es ja.

                        Als erstes muss man auf die IP des WLED Controllers (Wemos d1 mini bei mir) gehen. Da sieht man ja die ganzen Einstellmöglichkeiten, farben, an aus etc... und unten sieht man die Reiter Colors, Effects, Segments und Favorites. Hier geht man auf Favorites und drückt auf "+ create presets". Nun gibt man einen Namen Ein (z. B. spots) und macht den haken bei "use current state" raus. Dann erscheint unten ein leeres Feld in das man diese kryptischen zeichen reinkopiert und anschließend auf "save preset" drücken. Damit ist der erste preset gespeichert. Drückt man dann auf das preset sollten die spots entsprechend auftauchen (oder eben das was man in dem preset gespeichert hat) Diesen kann man nun in iobroker über z.b. ein blockly aufrufen, wobei man dann einfach die ID des Presets (also in dem Fall die nummer "1" angibt (auf dem bild unten ist es die nummer 8 weil ich vorher schon andere presets gespeichert habe). Im blockly kann man dann mehrere hinter einander oder zeitlich aufrufen wenn man denn mehrere presets gespeichert hat und so die verschiedenen farben, effecte oder sonstiges aufrufen.

                        66259ace-f094-452e-a9c3-e57a9beb53a5-image.png

                        Hier ein Beispiel für den Aufruf per Blockly

                        a682dc39-7cad-4e83-bdbf-7105dff52b04-image.png

                        Hier wird zuerst das Preset mit der ID (Nummer) 1 aufgerufen und nach 4700ms also 4,7 sekunden das Preset 2.

                        Wichtig für die Ansteuerung sind die kryptischen Zahlen, wobei die Bedeutung hier gut aufgelistet ist:

                        https://github.com/Aircoookie/WLED/wiki/HTTP-request-API

                        Hoffe das hilft, ich habs damit zumindest hinbekommen, wobei ich das ganze aber nicht für die Garage sondern mein Treppenlicht nutz 😁

                        JB_Sullivan 1 Reply Last reply Reply Quote 0
                        • JB_Sullivan
                          JB_Sullivan @zaim last edited by

                          @zaim

                          Vielen Dank für deine Ausführungen. Ich nutze es auch nicht für ein Garagentor, sondern für meine Fahrradhütte, damit die Kinder es endlich mal checken die Tür wieder zu zu machen.

                          Sonst läuft da nämlich die ganze Zeit der Rote Balken. Wenn die Tür zu ist, wird es kurz grün und geht dann in den Spot Mode über.

                          Es gibt noch einen anderen Weg, als die presents via Blockly einzeln zu schalten. Du kannst auch in wled ein neues present erstellen, in welches du dann die einzelnen present Nummern der erzeugten Lichtmuster rein schreibst. Auch die Zeiten wie lange die einzelnen presents laufen sollen, kannst du da rein schreiben.

                          Dann braucht es in ioB nur einen Trigger und diese "present Playlist" wird aus wled heraus abgearbeitet. Soll heißen, die einzeln definierten presents werden gemäß playlist nacheinander abgearbeitet ohne jedes present einzeln aus dem ioB script heraus anstoßen zu müssen.

                          {"playlist":{"ps":[7,8,4],"dur":[50,10,100],"transition":0,"repeat":1,"end":5}}

                          7,8,4 steht für die Nummern der presents mit den gewünschten Lichtmustern - 50,10,100 sind die Sekunden (/10), wie lange die einzelnen presents leuchten sollen - und "end":5 ist das present was am Ende dauerhaft anstehen bleibt.

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

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          730
                          Online

                          31.9k
                          Users

                          80.1k
                          Topics

                          1.3m
                          Posts

                          8
                          11
                          2851
                          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