Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Hardware
    4. Homematic IP Präsenzmelder HmIP-SPI mit Hue

    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

    Homematic IP Präsenzmelder HmIP-SPI mit Hue

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

      Hi,
      danke für die Rückmeldung. Hast du so ein Skript als nicht Blocky Version mal zur Hand? Frage mich wie ich das dann abbilden soll, damit er auch korrekt reagiert bei Präsenz.

      LG Micha

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

        @CyberMicha Etwa so.

        const idBw = 'hm-rpc...';
        const idLicht = 'hue....';
        
        var bw = getState(idBw).val;
        var licht = getState(idLicht).val;
        var timer = null;
        
        function bewegung() {
           if(bw) {
              if(timer) {
                 clearTimeout(timer);
                 timer = null;
              }   
              if(!licht) setState(idLicht, true);
           } else {
              timer = setTimeout(function() {
                 if(licht) setState(idLicht, false);
                 timer = null;
              }, 20000);  // 20 s
           }
        }
        
        bewegung();  // Skriptstart
        
        on(idBw, function(dp) {
           bw = dp.state.val;
           bewegung();
        });
        
        on(idLicht, function(dp)  {
           licht = dp.state.val;
        });
        
        1 Reply Last reply Reply Quote 0
        • C
          CyberMicha last edited by

          Wofür ist der Timer? Dachte das kann man am Präsenzmelder einstellen.

          LG Micha.

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

            @CyberMicha sagte:

            das kann man am Präsenzmelder einstellen.

            Den Präsenzmelder (dessen Eigenschaften) kenne ich nicht. Wenn man es an diesem einstellen kann, kann der Timer entfallen.

            1 Reply Last reply Reply Quote 0
            • C
              CyberMicha last edited by CyberMicha

              HI,
              ich muss den Thread noch mal hoch holen.
              Wollte gerade das Skript schon mal vorbereiten.
              Er erkennt aber clearTimeout und setTimeout nicht.

              Wofür ist der Timeout generell gedacht?

              Oder gibt es vielleicht schon jemanden, der ein fertiges Script dafür hat?

              LG
              Micha

              1 Reply Last reply Reply Quote 0
              • C
                CyberMicha @dslraser last edited by

                @dslraser sagte in Homematic IP Präsenzmelder HmIP-SPI mit Hue:

                @CyberMicha
                ich habe so einige Präsenzmelder und Hue laufen, funktioniert problemlos. (allerdings benutze ich lieber Blockly, aber die lassen sich ja auch in Scripte umwandeln)

                Magst du das vielleicht mal zur Verfügung stellen als Skript oder sonst als Blocky Export?

                dslraser 1 Reply Last reply Reply Quote 0
                • dslraser
                  dslraser Forum Testing Most Active @CyberMicha last edited by

                  @CyberMicha
                  Da sind jetzt zwei Präsenzmelder im Spiel

                  Meine Einstellungen der Melder:

                  Bildschirmfoto 2019-08-06 um 18.57.14.png

                  Hier ein kleines Blockly (Licht geht nach 2 Minuten aus, wenn keine Bewegung)

                  Bildschirmfoto 2019-08-06 um 18.58.49.png

                  <xml xmlns="http://www.w3.org/1999/xhtml">
                    <variables>
                      <variable type="undefined" id="timeout">timeout</variable>
                    </variables>
                    <block type="on_ext" id="/XPPZ2Ef{Gp90PhxskTc" x="-288" y="-188">
                      <mutation items="4"></mutation>
                      <field name="CONDITION">ne</field>
                      <field name="ACK_CONDITION"></field>
                      <value name="OID0">
                        <shadow type="field_oid" id="4UPB+Zu~xmksZA(^wyHG">
                          <field name="oid">hm-rpc.0.xxx.1.PRESENCE_DETECTION_STATE</field>
                        </shadow>
                      </value>
                      <value name="OID1">
                        <shadow type="field_oid" id="rCi-asJ((26g1B1@gB+V">
                          <field name="oid">hm-rpc.0.xxx.1.PRESENCE_DETECTION_STATE</field>
                        </shadow>
                      </value>
                      <value name="OID2">
                        <shadow type="field_oid" id="b^8It/ovFq7)f%Ns3._R">
                          <field name="oid">hm-rpc.0.xxx.1.PRESENCE_DETECTION_ACTIVE</field>
                        </shadow>
                      </value>
                      <value name="OID3">
                        <shadow type="field_oid" id="1D8d(d^fg,4RScZ6W;X0">
                          <field name="oid">hm-rpc.0.xxx.1.PRESENCE_DETECTION_ACTIVE</field>
                        </shadow>
                      </value>
                      <statement name="STATEMENT">
                        <block type="controls_if" id="r4;C-s:gJHryisv4KGb`">
                          <mutation elseif="1"></mutation>
                          <value name="IF0">
                            <block type="logic_operation" id="!DWFt=KrH@{HY^Irjo_{" inline="false">
                              <field name="OP">OR</field>
                              <value name="A">
                                <block type="logic_compare" id="TP1|rTU91ZRI%i,rHP=Y">
                                  <field name="OP">EQ</field>
                                  <value name="A">
                                    <block type="get_value" id="-+W!thbV^s9%DVQB4rTU">
                                      <field name="ATTR">val</field>
                                      <field name="OID">hm-rpc.0.xxx.1.PRESENCE_DETECTION_STATE</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="logic_boolean" id="QFRR*suCU^8L_oRHF,H;">
                                      <field name="BOOL">TRUE</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <value name="B">
                                <block type="logic_compare" id="?DWvJR#LVs]t9g_pCp2-">
                                  <field name="OP">EQ</field>
                                  <value name="A">
                                    <block type="get_value" id="RTr:9XWbwVUXR4AopAVC">
                                      <field name="ATTR">val</field>
                                      <field name="OID">hm-rpc.0.xxx.1.PRESENCE_DETECTION_STATE</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="logic_boolean" id="bW_Loan2HY5qw`xT1{Ih">
                                      <field name="BOOL">TRUE</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO0">
                            <block type="control" id="fA7]`Ch~(e,]2).;~%G#">
                              <mutation delay_input="false"></mutation>
                              <field name="OID">hue.0.HueBridge.Badezimmer.command</field>
                              <field name="WITH_DELAY">FALSE</field>
                              <value name="VALUE">
                                <block type="text" id="uw?fF)gAsM10ZM1_K};:">
                                  <field name="TEXT">{"on":true,"level":100,"transitiontime":5}</field>
                                </block>
                              </value>
                              <next>
                                <block type="timeouts_cleartimeout" id="!B@KCYF|LU,_5DpFB5Hf">
                                  <field name="NAME">timeout</field>
                                </block>
                              </next>
                            </block>
                          </statement>
                          <value name="IF1">
                            <block type="logic_operation" id="cgqIQN%kyd@zaj^gMS7(" inline="false">
                              <field name="OP">AND</field>
                              <value name="A">
                                <block type="logic_compare" id="rT={5M#SZ]Jlj7KHq0.{">
                                  <field name="OP">EQ</field>
                                  <value name="A">
                                    <block type="get_value" id=".ocVQ1#eJDhQkDl]JYVV">
                                      <field name="ATTR">val</field>
                                      <field name="OID">hm-rpc.0.xxx.1.PRESENCE_DETECTION_ACTIVE</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="logic_boolean" id="lrL!=Ro-+E+ylCCli9W=">
                                      <field name="BOOL">TRUE</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <value name="B">
                                <block type="logic_operation" id="LKbN+LPDq4Lm{~dd!ZI8" inline="false">
                                  <field name="OP">AND</field>
                                  <value name="A">
                                    <block type="logic_compare" id="@)IC[L0N3Ls08=4B{fA/">
                                      <field name="OP">EQ</field>
                                      <value name="A">
                                        <block type="get_value" id="C4oLI?66m-3#HKY_L,lU">
                                          <field name="ATTR">val</field>
                                          <field name="OID">hm-rpc.0.xxx.1.PRESENCE_DETECTION_ACTIVE</field>
                                        </block>
                                      </value>
                                      <value name="B">
                                        <block type="logic_boolean" id="*rjrAzSy7HtSl6q{U5pE">
                                          <field name="BOOL">TRUE</field>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="logic_operation" id="bM(yTZF=v*aK*unv-H}h" inline="false">
                                      <field name="OP">AND</field>
                                      <value name="A">
                                        <block type="logic_operation" id="NGnZogX~#@ogfp2ySf@i" inline="false">
                                          <field name="OP">AND</field>
                                          <value name="A">
                                            <block type="logic_compare" id="!hh1N%kL*7hq9+1E-:=#">
                                              <field name="OP">EQ</field>
                                              <value name="A">
                                                <block type="get_value" id="04*}80jlf{1idn.[0-?`">
                                                  <field name="ATTR">val</field>
                                                  <field name="OID">hm-rpc.0.xxx.1.PRESENCE_DETECTION_STATE</field>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <block type="logic_boolean" id="uVDty^,vSvL:AfTZ7Qeg">
                                                  <field name="BOOL">FALSE</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <block type="logic_compare" id="L]`/caqE3j6Y(r.=C}GN">
                                              <field name="OP">EQ</field>
                                              <value name="A">
                                                <block type="get_value" id="+|/!n9_brTM8Qh}opEfc">
                                                  <field name="ATTR">val</field>
                                                  <field name="OID">hm-rpc.xxx.1.PRESENCE_DETECTION_STATE</field>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <block type="logic_boolean" id="S(a+i(w;~qeRpBSBXi7{">
                                                  <field name="BOOL">FALSE</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                      <value name="B">
                                        <block type="logic_compare" id="^*l0svFw;N3oZt@vsk,f">
                                          <field name="OP">NEQ</field>
                                          <value name="A">
                                            <block type="get_value" id="v)p]ndNn~t:5!Lwnd}fm">
                                              <field name="ATTR">val</field>
                                              <field name="OID">hue.0.HueBridge.Badezimmer.level</field>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <block type="math_number" id="=fX3Go~iI~ip[alO,glF">
                                              <field name="NUM">0</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO1">
                            <block type="timeouts_settimeout" id="5h6itIX;TDkoxAkzeZo(">
                              <field name="NAME">timeout</field>
                              <field name="DELAY">120</field>
                              <field name="UNIT">sec</field>
                              <statement name="STATEMENT">
                                <block type="control" id="ftP!r*}f{K0X.R)Uax?:">
                                  <mutation delay_input="false"></mutation>
                                  <field name="OID">hue.0.HueBridge.Badezimmer.command</field>
                                  <field name="WITH_DELAY">FALSE</field>
                                  <value name="VALUE">
                                    <block type="text" id="Roas``mxwmTae1f)q|xH">
                                      <field name="TEXT">{"on":false,"transitiontime":100}</field>
                                    </block>
                                  </value>
                                </block>
                              </statement>
                            </block>
                          </statement>
                        </block>
                      </statement>
                    </block>
                  </xml>
                  

                  1 Reply Last reply Reply Quote 1
                  • C
                    CyberMicha last edited by

                    Danke dir.
                    Hier kommt auch die Fehlermeldung wenn ich es in JavaSkript umwandle. Werde es dennoch mal testen wenn der Melder da ist.

                    LG Micha

                    1 Reply Last reply Reply Quote 0
                    • C
                      CyberMicha last edited by CyberMicha

                      Habe es mir jetzt so gebaut.
                      Spricht da etwas dagegen? Als Erweiterung werde ich dann noch die Helligkeit mit abgreifen.

                      on({id: 'hm-rpc.1.xxx.1.PRESENCE_DETECTION_STATE', change: "ne"}, 
                      function (obj) {
                          if (getState("hm-rpc.1.xxx.1.PRESENCE_DETECTION_STATE").val == true) {
                            log("An");
                            setState("hue.0.Philips_hue.Licht_Küche.command", '{"on":true,"level":100,"transitiontime":5}');
                        } else if (getState("hm-rpc.xxx.1.PRESENCE_DETECTION_STATE").val == false && 
                                   getState("hue.0.Philips_hue.Licht_Küche.level").val != 0) {
                                     setState("hue.0.Philips_hue.Licht_Küche.command", '{"on":false,"transitiontime":100}');
                                     log("Aus")
                        }
                      });
                      

                      Wieso ein Timer verstehe ich nicht. Bei mir reagiert es mit Hue so top.

                      dslraser 1 Reply Last reply Reply Quote 0
                      • dslraser
                        dslraser Forum Testing Most Active @CyberMicha last edited by

                        @CyberMicha
                        Das mit der Helligkeit (Wert von einem Bewegungsmelder draußen) und auch noch mit verschiedenen Licht Level zu anderen Uhrzeiten habe ich z.B. im Flur.
                        Deine letzte Frage habe ich nicht verstanden.

                        1 Reply Last reply Reply Quote 0
                        • C
                          CyberMicha last edited by

                          Meinte damit wieso da ein Timeout eingebaut ist.

                          dslraser 1 Reply Last reply Reply Quote 0
                          • dslraser
                            dslraser Forum Testing Most Active @CyberMicha last edited by

                            @CyberMicha
                            achso, ja braucht man ja auch nicht wirklich,. Dann müsste ich halte die Melder anders einstellen.

                            C 1 Reply Last reply Reply Quote 0
                            • C
                              CyberMicha @dslraser last edited by

                              @dslraser sagte in Homematic IP Präsenzmelder HmIP-SPI mit Hue:

                              ja braucht man ja auch nicht wirklich,. Dann müsste ich halte die Melder anders einstellen.

                              Hm mein Melder ist genauso eingestellt und das geht super. Naja egal. Danke für die Hilfe.

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

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              431
                              Online

                              31.8k
                              Users

                              79.9k
                              Topics

                              1.3m
                              Posts

                              3
                              15
                              1059
                              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