Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. G-Tag, IBeacon, Anwesenheitserkennung

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    334

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

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

G-Tag, IBeacon, Anwesenheitserkennung

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
g-tagibeacon anwesenheitserkennung
99 Beiträge 17 Kommentatoren 13.4k Aufrufe 19 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • haselchenH Offline
    haselchenH Offline
    haselchen
    Most Active
    schrieb am zuletzt editiert von
    #41

    @lobomau

    BLE findet ihn nicht, über den Radar2 bekomme ich den Tag rein.
    Merkwürdig.
    Aber okay.
    Nun kann ich ja mit den Datenpunkten rumspielen.
    Sind die Einstellungen des Adapter so ausreichend?

    901c1862-bb92-4e2d-ade2-95b56f1bc3cb-grafik.png

    Und was bedeutet in den Datenpunkten nHere? Die Zahl erhöht sich.

    ce96615b-dd2e-410d-8af0-e7989ffe7bb6-grafik.png

    Synology DS218+ & 2 x Fujitsu Esprimo (VM/Container) + FritzBox7590 + 2 AVM 3000 Repeater & Homematic & HUE & Osram & Xiaomi, NPM 10.9.4, Nodejs 22.21.0 ,JS Controller 7.0.7 ,Admin 7.7.19

    lobomauL 1 Antwort Letzte Antwort
    0
    • haselchenH haselchen

      @lobomau

      BLE findet ihn nicht, über den Radar2 bekomme ich den Tag rein.
      Merkwürdig.
      Aber okay.
      Nun kann ich ja mit den Datenpunkten rumspielen.
      Sind die Einstellungen des Adapter so ausreichend?

      901c1862-bb92-4e2d-ade2-95b56f1bc3cb-grafik.png

      Und was bedeutet in den Datenpunkten nHere? Die Zahl erhöht sich.

      ce96615b-dd2e-410d-8af0-e7989ffe7bb6-grafik.png

      lobomauL Offline
      lobomauL Offline
      lobomau
      schrieb am zuletzt editiert von
      #42

      @haselchen ja, sieht alles richtig aus. Er zählt solange hoch bis er nicht mehr erreichbar ist, auch möglich dass bei 9999 Schluss ist (einer steht bei mir grad bei 6979 z.B.). Dann wird der Wert wieder auf 0 gesetzt.

      Host: NUC8i3 mit Proxmox:

      • ioBroker CT Debian 13, npm 10.9.4, nodejs 22.21.0
      • Slave: Pi4
      1 Antwort Letzte Antwort
      0
      • haselchenH Offline
        haselchenH Offline
        haselchen
        Most Active
        schrieb am zuletzt editiert von
        #43

        @lobomau

        Danke für die Erläuterung.
        Das hingeklatschte erste Skript sieht so aus und funktioniert prächtig.
        Licht geht schon ca. 15m vor dem Carport an. Sehr schön.

        05b1e7c6-a068-4032-ad83-6864c22b7510-grafik.png

        Nun aber die Gretchenfrage.
        Das Licht geht an, wenn der Datenpunkt auf true geht.
        Ich hab nun etwas Angst, dass wenn der Adapter oder iobroker selber mal sich neu startet und dadurch das Licht angehen würde.

        Hast du oder jemand von den Anderen ne Absicherung parat?

        Synology DS218+ & 2 x Fujitsu Esprimo (VM/Container) + FritzBox7590 + 2 AVM 3000 Repeater & Homematic & HUE & Osram & Xiaomi, NPM 10.9.4, Nodejs 22.21.0 ,JS Controller 7.0.7 ,Admin 7.7.19

        Samson71S lobomauL 2 Antworten Letzte Antwort
        0
        • haselchenH haselchen

          @lobomau

          Danke für die Erläuterung.
          Das hingeklatschte erste Skript sieht so aus und funktioniert prächtig.
          Licht geht schon ca. 15m vor dem Carport an. Sehr schön.

          05b1e7c6-a068-4032-ad83-6864c22b7510-grafik.png

          Nun aber die Gretchenfrage.
          Das Licht geht an, wenn der Datenpunkt auf true geht.
          Ich hab nun etwas Angst, dass wenn der Adapter oder iobroker selber mal sich neu startet und dadurch das Licht angehen würde.

          Hast du oder jemand von den Anderen ne Absicherung parat?

          Samson71S Offline
          Samson71S Offline
          Samson71
          Global Moderator
          schrieb am zuletzt editiert von Samson71
          #44

          @haselchen sagte in G-Tag, IBeacon, Anwesenheitserkennung:

          Ich hab nun etwas Angst, dass wenn der Adapter oder iobroker selber mal sich neu startet und dadurch das Licht angehen würde.

          Das und die Zuverlässigkeit in Abhängigkeit von nur einem einzigen System haben mich damals auf eine direkt CCU gebundene Lösung gehen lassen. Dort werden ungewollte Schaltvorgänge über die Abfrage eines CCU-Neustarts abgefangen. Vom Anwesenheitsstatus hängt nämlich bei uns nicht nur das Licht sondern auch die Rollläden und der Haustürverschluß ab.

          Markus

          Bitte beachten:
          Hinweise für gute Forenbeiträge
          Maßnahmen zum Schutz des Forums

          haselchenH 1 Antwort Letzte Antwort
          1
          • Samson71S Samson71

            @haselchen sagte in G-Tag, IBeacon, Anwesenheitserkennung:

            Ich hab nun etwas Angst, dass wenn der Adapter oder iobroker selber mal sich neu startet und dadurch das Licht angehen würde.

            Das und die Zuverlässigkeit in Abhängigkeit von nur einem einzigen System haben mich damals auf eine direkt CCU gebundene Lösung gehen lassen. Dort werden ungewollte Schaltvorgänge über die Abfrage eines CCU-Neustarts abgefangen. Vom Anwesenheitsstatus hängt nämlich bei uns nicht nur das Licht sondern auch die Rollläden und der Haustürverschluß ab.

            haselchenH Offline
            haselchenH Offline
            haselchen
            Most Active
            schrieb am zuletzt editiert von
            #45

            @samson71

            Wunderbar, da hast du mich auf eine Idee gebracht.
            Benutze ja auch das Homematic System.

            Synology DS218+ & 2 x Fujitsu Esprimo (VM/Container) + FritzBox7590 + 2 AVM 3000 Repeater & Homematic & HUE & Osram & Xiaomi, NPM 10.9.4, Nodejs 22.21.0 ,JS Controller 7.0.7 ,Admin 7.7.19

            1 Antwort Letzte Antwort
            0
            • haselchenH haselchen

              @lobomau

              Danke für die Erläuterung.
              Das hingeklatschte erste Skript sieht so aus und funktioniert prächtig.
              Licht geht schon ca. 15m vor dem Carport an. Sehr schön.

              05b1e7c6-a068-4032-ad83-6864c22b7510-grafik.png

              Nun aber die Gretchenfrage.
              Das Licht geht an, wenn der Datenpunkt auf true geht.
              Ich hab nun etwas Angst, dass wenn der Adapter oder iobroker selber mal sich neu startet und dadurch das Licht angehen würde.

              Hast du oder jemand von den Anderen ne Absicherung parat?

              lobomauL Offline
              lobomauL Offline
              lobomau
              schrieb am zuletzt editiert von
              #46

              @haselchen (die meisten) meiner Lichter gehen einerseits aus, wenn lange keine Bewegung mehr da war und zusätzlich habe ich noch ein Script, das alle Lichter um 4 Uhr morgens ausschaltet (für den Fall, dass mal alles ausfällt und beim Hochfahren die Timer nicht mehr laufen sollten).

              Host: NUC8i3 mit Proxmox:

              • ioBroker CT Debian 13, npm 10.9.4, nodejs 22.21.0
              • Slave: Pi4
              haselchenH 1 Antwort Letzte Antwort
              0
              • lobomauL lobomau

                @haselchen (die meisten) meiner Lichter gehen einerseits aus, wenn lange keine Bewegung mehr da war und zusätzlich habe ich noch ein Script, das alle Lichter um 4 Uhr morgens ausschaltet (für den Fall, dass mal alles ausfällt und beim Hochfahren die Timer nicht mehr laufen sollten).

                haselchenH Offline
                haselchenH Offline
                haselchen
                Most Active
                schrieb am zuletzt editiert von
                #47

                @lobomau
                @Samson71

                Hab den HM BWM als Sicherheit mit drin.
                An dem müssen wir vorbeifahren zum Carport.
                Nun hab ich das vorhin getestet, Licht blieb dunkel.
                BWM wurde um 19:55:00 ausgelöst
                G Tag um 19:54:34

                Also 26sek dazwischen.

                3b4b7d37-5fb3-4b5c-9d86-9ee8e0758b2d-grafik.png

                Wie kriege ich das hin, dass wenn alle geforderten Werte eingehalten wurden, das Gewollte ausgelöst wird.
                Muss alles zeitgleich passieren, damit das Blockly passt?

                @paul53

                Synology DS218+ & 2 x Fujitsu Esprimo (VM/Container) + FritzBox7590 + 2 AVM 3000 Repeater & Homematic & HUE & Osram & Xiaomi, NPM 10.9.4, Nodejs 22.21.0 ,JS Controller 7.0.7 ,Admin 7.7.19

                F lobomauL 2 Antworten Letzte Antwort
                0
                • haselchenH haselchen

                  @lobomau
                  @Samson71

                  Hab den HM BWM als Sicherheit mit drin.
                  An dem müssen wir vorbeifahren zum Carport.
                  Nun hab ich das vorhin getestet, Licht blieb dunkel.
                  BWM wurde um 19:55:00 ausgelöst
                  G Tag um 19:54:34

                  Also 26sek dazwischen.

                  3b4b7d37-5fb3-4b5c-9d86-9ee8e0758b2d-grafik.png

                  Wie kriege ich das hin, dass wenn alle geforderten Werte eingehalten wurden, das Gewollte ausgelöst wird.
                  Muss alles zeitgleich passieren, damit das Blockly passt?

                  @paul53

                  F Offline
                  F Offline
                  fastfoot
                  schrieb am zuletzt editiert von
                  #48

                  @haselchen probiere mal das: zeit ist die zeit in ms in der bwm und gtag auslösen müssen, sonst werden sie zurückgesetzt
                  Carport.PNG

                  <xml xmlns="https://developers.google.com/blockly/xml">
                   <variables>
                     <variable id="kq7=|;83tX^.=$fedLmy">zeit</variable>
                     <variable id="482fd,dJncnw9gc!||J-">gtag</variable>
                     <variable id="|%uxI}jqC0BS,]Bb%_M#">bwm</variable>
                     <variable type="timeout" id="timeout">timeout</variable>
                     <variable type="timeout" id="timeout2">timeout2</variable>
                   </variables>
                   <block type="variables_set" id="[?AI2ok$,F]i@(5BuD]]" x="37" y="12">
                     <field name="VAR" id="kq7=|;83tX^.=$fedLmy">zeit</field>
                     <value name="VALUE">
                       <block type="math_number" id="^55s-sZXy^45E12e`1n)">
                         <field name="NUM">30000</field>
                       </block>
                     </value>
                     <next>
                       <block type="on_ext" id="VMJS6br?7T4zffMaibh." inline="true">
                         <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                         <field name="CONDITION">ne</field>
                         <field name="ACK_CONDITION"></field>
                         <value name="OID0">
                           <shadow type="field_oid" id="fRHtm#/BQPl$$TZqQt)6">
                             <field name="oid">0_userdata.0.Forum.Carport.gtag</field>
                           </shadow>
                         </value>
                         <statement name="STATEMENT">
                           <block type="variables_set" id="I#wYr#2kT0qCc#$uPR2J">
                             <field name="VAR" id="482fd,dJncnw9gc!||J-">gtag</field>
                             <value name="VALUE">
                               <block type="on_source" id="+Wh8e:fgIu![NmPdKx5d">
                                 <field name="ATTR">state.val</field>
                               </block>
                             </value>
                             <next>
                               <block type="timeouts_cleartimeout" id="=,=/hd8Ltd^Kv/1j/:$7">
                                 <field name="NAME">timeout</field>
                                 <next>
                                   <block type="timeouts_settimeout" id="kZ9zFM*Lrstl1ZJVr+7L">
                                     <field name="NAME">timeout</field>
                                     <field name="DELAY">zeit</field>
                                     <field name="UNIT">ms</field>
                                     <statement name="STATEMENT">
                                       <block type="variables_set" id="YSKyxy%e=?[x5*c3)rse">
                                         <field name="VAR" id="482fd,dJncnw9gc!||J-">gtag</field>
                                         <value name="VALUE">
                                           <block type="logic_boolean" id="R(9KI+vgM4(BL-k4n;/q">
                                             <field name="BOOL">FALSE</field>
                                           </block>
                                         </value>
                                         <next>
                                           <block type="control" id="He_lqRc#Slwe#^7{;z_b">
                                             <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                             <field name="OID">0_userdata.0.Forum.Carport.gtag</field>
                                             <field name="WITH_DELAY">FALSE</field>
                                             <value name="VALUE">
                                               <block type="logic_boolean" id="0b2vq8}^02yTJj;g-`TZ">
                                                 <field name="BOOL">FALSE</field>
                                               </block>
                                             </value>
                                           </block>
                                         </next>
                                       </block>
                                     </statement>
                                     <next>
                                       <block type="procedures_callnoreturn" id="U|v84(QvsCG}0,XL$[tA">
                                         <mutation name="LichtAnAus"></mutation>
                                       </block>
                                     </next>
                                   </block>
                                 </next>
                               </block>
                             </next>
                           </block>
                         </statement>
                         <next>
                           <block type="on_ext" id="4$i@Qw*ne_v)d)lE)PUa" inline="true">
                             <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                             <field name="CONDITION">ne</field>
                             <field name="ACK_CONDITION"></field>
                             <value name="OID0">
                               <shadow type="field_oid" id="j3{eVAXHe8qo?4/D3@8:">
                                 <field name="oid">0_userdata.0.Forum.Carport.bwm</field>
                               </shadow>
                             </value>
                             <statement name="STATEMENT">
                               <block type="variables_set" id="bJeFUWyTt,z.f,4F)!`-">
                                 <field name="VAR" id="|%uxI}jqC0BS,]Bb%_M#">bwm</field>
                                 <value name="VALUE">
                                   <block type="on_source" id="no%e6}0OSQ^.Q0r3*H9^">
                                     <field name="ATTR">state.val</field>
                                   </block>
                                 </value>
                                 <next>
                                   <block type="timeouts_cleartimeout" id="9TY)w8ic`bD+=.D]+[c~">
                                     <field name="NAME">timeout2</field>
                                     <next>
                                       <block type="timeouts_settimeout" id="zTbP7(#rgnnEC:9hFoOj">
                                         <field name="NAME">timeout2</field>
                                         <field name="DELAY">zeit</field>
                                         <field name="UNIT">ms</field>
                                         <statement name="STATEMENT">
                                           <block type="variables_set" id="#s~qMwgfp*v@tc;MNj:|">
                                             <field name="VAR" id="|%uxI}jqC0BS,]Bb%_M#">bwm</field>
                                             <value name="VALUE">
                                               <block type="logic_boolean" id="Fe3^c6C/(DU9EP[+aG;`">
                                                 <field name="BOOL">FALSE</field>
                                               </block>
                                             </value>
                                             <next>
                                               <block type="control" id="U4V2wjhD%=Vhr`c;_]tA">
                                                 <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                 <field name="OID">0_userdata.0.Forum.Carport.bwm</field>
                                                 <field name="WITH_DELAY">FALSE</field>
                                                 <value name="VALUE">
                                                   <block type="logic_boolean" id="ZwL)d[1_fjGy%A8k4qk9">
                                                     <field name="BOOL">FALSE</field>
                                                   </block>
                                                 </value>
                                               </block>
                                             </next>
                                           </block>
                                         </statement>
                                         <next>
                                           <block type="procedures_callnoreturn" id="oz-|u48,hMOwU.w7~1J%">
                                             <mutation name="LichtAnAus"></mutation>
                                           </block>
                                         </next>
                                       </block>
                                     </next>
                                   </block>
                                 </next>
                               </block>
                             </statement>
                           </block>
                         </next>
                       </block>
                     </next>
                   </block>
                   <block type="procedures_defnoreturn" id="L@g#$D$8KPI^`M3qr3+p" x="613" y="38">
                     <field name="NAME">LichtAnAus</field>
                     <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                     <statement name="STACK">
                       <block type="controls_if" id="|/)HE#`X/7$Gyv[8e!2_">
                         <value name="IF0">
                           <block type="logic_operation" id="puQf;(5t;Zw.E9]@/]|U" inline="false">
                             <field name="OP">AND</field>
                             <value name="A">
                               <block type="logic_operation" id="/@C.?p3~}MT%wkC)10_]">
                                 <field name="OP">AND</field>
                                 <value name="A">
                                   <block type="variables_get" id="jBanZq$1dm,{~-[fBS]I">
                                     <field name="VAR" id="482fd,dJncnw9gc!||J-">gtag</field>
                                   </block>
                                 </value>
                                 <value name="B">
                                   <block type="variables_get" id="Oo%0cw-T/*m.V2rccv{4">
                                     <field name="VAR" id="|%uxI}jqC0BS,]Bb%_M#">bwm</field>
                                   </block>
                                 </value>
                               </block>
                             </value>
                             <value name="B">
                               <block type="time_compare_ex" id="|@+Qhr:#ysXZm!2@$=X9">
                                 <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">between</field>
                                 <value name="START_TIME">
                                   <shadow type="text" id="/*[YKNo/?]!wG0/epJk(">
                                     <field name="TEXT">16:00</field>
                                   </shadow>
                                 </value>
                                 <value name="END_TIME">
                                   <shadow type="text" id="6Dw80$),JkKd[9K(B4a@">
                                     <field name="TEXT">02:30</field>
                                   </shadow>
                                 </value>
                               </block>
                             </value>
                           </block>
                         </value>
                         <statement name="DO0">
                           <block type="control" id="RAIPNXQqj4;l`?dXHj64">
                             <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                             <field name="OID">0_userdata.0.Forum.Carport.Licht</field>
                             <field name="WITH_DELAY">FALSE</field>
                             <value name="VALUE">
                               <block type="logic_boolean" id="^rRX;9I[]LE^*7_ru%:M">
                                 <field name="BOOL">TRUE</field>
                               </block>
                             </value>
                             <next>
                               <block type="control" id="SOg3T.TF2u%4u$S=e?zM" inline="false">
                                 <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation>
                                 <field name="OID">0_userdata.0.Forum.Carport.Licht</field>
                                 <field name="WITH_DELAY">TRUE</field>
                                 <field name="DELAY_MS">180</field>
                                 <field name="UNIT">sec</field>
                                 <field name="CLEAR_RUNNING">TRUE</field>
                                 <value name="VALUE">
                                   <block type="logic_boolean" id="cRM/u9%DNuu4Oh|49Lk6">
                                     <field name="BOOL">FALSE</field>
                                   </block>
                                 </value>
                               </block>
                             </next>
                           </block>
                         </statement>
                       </block>
                     </statement>
                   </block>
                  </xml>
                  

                  iobroker läuft unter Docker auf QNAP TS-451+
                  SkriptRecovery: https://forum.iobroker.net/post/930558

                  haselchenH 1 Antwort Letzte Antwort
                  1
                  • F fastfoot

                    @haselchen probiere mal das: zeit ist die zeit in ms in der bwm und gtag auslösen müssen, sonst werden sie zurückgesetzt
                    Carport.PNG

                    <xml xmlns="https://developers.google.com/blockly/xml">
                     <variables>
                       <variable id="kq7=|;83tX^.=$fedLmy">zeit</variable>
                       <variable id="482fd,dJncnw9gc!||J-">gtag</variable>
                       <variable id="|%uxI}jqC0BS,]Bb%_M#">bwm</variable>
                       <variable type="timeout" id="timeout">timeout</variable>
                       <variable type="timeout" id="timeout2">timeout2</variable>
                     </variables>
                     <block type="variables_set" id="[?AI2ok$,F]i@(5BuD]]" x="37" y="12">
                       <field name="VAR" id="kq7=|;83tX^.=$fedLmy">zeit</field>
                       <value name="VALUE">
                         <block type="math_number" id="^55s-sZXy^45E12e`1n)">
                           <field name="NUM">30000</field>
                         </block>
                       </value>
                       <next>
                         <block type="on_ext" id="VMJS6br?7T4zffMaibh." inline="true">
                           <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                           <field name="CONDITION">ne</field>
                           <field name="ACK_CONDITION"></field>
                           <value name="OID0">
                             <shadow type="field_oid" id="fRHtm#/BQPl$$TZqQt)6">
                               <field name="oid">0_userdata.0.Forum.Carport.gtag</field>
                             </shadow>
                           </value>
                           <statement name="STATEMENT">
                             <block type="variables_set" id="I#wYr#2kT0qCc#$uPR2J">
                               <field name="VAR" id="482fd,dJncnw9gc!||J-">gtag</field>
                               <value name="VALUE">
                                 <block type="on_source" id="+Wh8e:fgIu![NmPdKx5d">
                                   <field name="ATTR">state.val</field>
                                 </block>
                               </value>
                               <next>
                                 <block type="timeouts_cleartimeout" id="=,=/hd8Ltd^Kv/1j/:$7">
                                   <field name="NAME">timeout</field>
                                   <next>
                                     <block type="timeouts_settimeout" id="kZ9zFM*Lrstl1ZJVr+7L">
                                       <field name="NAME">timeout</field>
                                       <field name="DELAY">zeit</field>
                                       <field name="UNIT">ms</field>
                                       <statement name="STATEMENT">
                                         <block type="variables_set" id="YSKyxy%e=?[x5*c3)rse">
                                           <field name="VAR" id="482fd,dJncnw9gc!||J-">gtag</field>
                                           <value name="VALUE">
                                             <block type="logic_boolean" id="R(9KI+vgM4(BL-k4n;/q">
                                               <field name="BOOL">FALSE</field>
                                             </block>
                                           </value>
                                           <next>
                                             <block type="control" id="He_lqRc#Slwe#^7{;z_b">
                                               <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                               <field name="OID">0_userdata.0.Forum.Carport.gtag</field>
                                               <field name="WITH_DELAY">FALSE</field>
                                               <value name="VALUE">
                                                 <block type="logic_boolean" id="0b2vq8}^02yTJj;g-`TZ">
                                                   <field name="BOOL">FALSE</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </next>
                                         </block>
                                       </statement>
                                       <next>
                                         <block type="procedures_callnoreturn" id="U|v84(QvsCG}0,XL$[tA">
                                           <mutation name="LichtAnAus"></mutation>
                                         </block>
                                       </next>
                                     </block>
                                   </next>
                                 </block>
                               </next>
                             </block>
                           </statement>
                           <next>
                             <block type="on_ext" id="4$i@Qw*ne_v)d)lE)PUa" inline="true">
                               <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                               <field name="CONDITION">ne</field>
                               <field name="ACK_CONDITION"></field>
                               <value name="OID0">
                                 <shadow type="field_oid" id="j3{eVAXHe8qo?4/D3@8:">
                                   <field name="oid">0_userdata.0.Forum.Carport.bwm</field>
                                 </shadow>
                               </value>
                               <statement name="STATEMENT">
                                 <block type="variables_set" id="bJeFUWyTt,z.f,4F)!`-">
                                   <field name="VAR" id="|%uxI}jqC0BS,]Bb%_M#">bwm</field>
                                   <value name="VALUE">
                                     <block type="on_source" id="no%e6}0OSQ^.Q0r3*H9^">
                                       <field name="ATTR">state.val</field>
                                     </block>
                                   </value>
                                   <next>
                                     <block type="timeouts_cleartimeout" id="9TY)w8ic`bD+=.D]+[c~">
                                       <field name="NAME">timeout2</field>
                                       <next>
                                         <block type="timeouts_settimeout" id="zTbP7(#rgnnEC:9hFoOj">
                                           <field name="NAME">timeout2</field>
                                           <field name="DELAY">zeit</field>
                                           <field name="UNIT">ms</field>
                                           <statement name="STATEMENT">
                                             <block type="variables_set" id="#s~qMwgfp*v@tc;MNj:|">
                                               <field name="VAR" id="|%uxI}jqC0BS,]Bb%_M#">bwm</field>
                                               <value name="VALUE">
                                                 <block type="logic_boolean" id="Fe3^c6C/(DU9EP[+aG;`">
                                                   <field name="BOOL">FALSE</field>
                                                 </block>
                                               </value>
                                               <next>
                                                 <block type="control" id="U4V2wjhD%=Vhr`c;_]tA">
                                                   <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                   <field name="OID">0_userdata.0.Forum.Carport.bwm</field>
                                                   <field name="WITH_DELAY">FALSE</field>
                                                   <value name="VALUE">
                                                     <block type="logic_boolean" id="ZwL)d[1_fjGy%A8k4qk9">
                                                       <field name="BOOL">FALSE</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </next>
                                             </block>
                                           </statement>
                                           <next>
                                             <block type="procedures_callnoreturn" id="oz-|u48,hMOwU.w7~1J%">
                                               <mutation name="LichtAnAus"></mutation>
                                             </block>
                                           </next>
                                         </block>
                                       </next>
                                     </block>
                                   </next>
                                 </block>
                               </statement>
                             </block>
                           </next>
                         </block>
                       </next>
                     </block>
                     <block type="procedures_defnoreturn" id="L@g#$D$8KPI^`M3qr3+p" x="613" y="38">
                       <field name="NAME">LichtAnAus</field>
                       <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                       <statement name="STACK">
                         <block type="controls_if" id="|/)HE#`X/7$Gyv[8e!2_">
                           <value name="IF0">
                             <block type="logic_operation" id="puQf;(5t;Zw.E9]@/]|U" inline="false">
                               <field name="OP">AND</field>
                               <value name="A">
                                 <block type="logic_operation" id="/@C.?p3~}MT%wkC)10_]">
                                   <field name="OP">AND</field>
                                   <value name="A">
                                     <block type="variables_get" id="jBanZq$1dm,{~-[fBS]I">
                                       <field name="VAR" id="482fd,dJncnw9gc!||J-">gtag</field>
                                     </block>
                                   </value>
                                   <value name="B">
                                     <block type="variables_get" id="Oo%0cw-T/*m.V2rccv{4">
                                       <field name="VAR" id="|%uxI}jqC0BS,]Bb%_M#">bwm</field>
                                     </block>
                                   </value>
                                 </block>
                               </value>
                               <value name="B">
                                 <block type="time_compare_ex" id="|@+Qhr:#ysXZm!2@$=X9">
                                   <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">between</field>
                                   <value name="START_TIME">
                                     <shadow type="text" id="/*[YKNo/?]!wG0/epJk(">
                                       <field name="TEXT">16:00</field>
                                     </shadow>
                                   </value>
                                   <value name="END_TIME">
                                     <shadow type="text" id="6Dw80$),JkKd[9K(B4a@">
                                       <field name="TEXT">02:30</field>
                                     </shadow>
                                   </value>
                                 </block>
                               </value>
                             </block>
                           </value>
                           <statement name="DO0">
                             <block type="control" id="RAIPNXQqj4;l`?dXHj64">
                               <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                               <field name="OID">0_userdata.0.Forum.Carport.Licht</field>
                               <field name="WITH_DELAY">FALSE</field>
                               <value name="VALUE">
                                 <block type="logic_boolean" id="^rRX;9I[]LE^*7_ru%:M">
                                   <field name="BOOL">TRUE</field>
                                 </block>
                               </value>
                               <next>
                                 <block type="control" id="SOg3T.TF2u%4u$S=e?zM" inline="false">
                                   <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation>
                                   <field name="OID">0_userdata.0.Forum.Carport.Licht</field>
                                   <field name="WITH_DELAY">TRUE</field>
                                   <field name="DELAY_MS">180</field>
                                   <field name="UNIT">sec</field>
                                   <field name="CLEAR_RUNNING">TRUE</field>
                                   <value name="VALUE">
                                     <block type="logic_boolean" id="cRM/u9%DNuu4Oh|49Lk6">
                                       <field name="BOOL">FALSE</field>
                                     </block>
                                   </value>
                                 </block>
                               </next>
                             </block>
                           </statement>
                         </block>
                       </statement>
                     </block>
                    </xml>
                    

                    haselchenH Offline
                    haselchenH Offline
                    haselchen
                    Most Active
                    schrieb am zuletzt editiert von
                    #49

                    @fastfoot

                    Ich hoffe da kommt noch ein Edit mit Erklärung :grimacing:

                    Das ist dann für mich schon die höhere Blocklykunst

                    Synology DS218+ & 2 x Fujitsu Esprimo (VM/Container) + FritzBox7590 + 2 AVM 3000 Repeater & Homematic & HUE & Osram & Xiaomi, NPM 10.9.4, Nodejs 22.21.0 ,JS Controller 7.0.7 ,Admin 7.7.19

                    F 1 Antwort Letzte Antwort
                    0
                    • haselchenH haselchen

                      @fastfoot

                      Ich hoffe da kommt noch ein Edit mit Erklärung :grimacing:

                      Das ist dann für mich schon die höhere Blocklykunst

                      F Offline
                      F Offline
                      fastfoot
                      schrieb am zuletzt editiert von fastfoot
                      #50

                      @haselchen upps, dachte das sei selbsterklärend. Für gtag und bwm existieren je ein trigger welche eine variable auf true setzen, allerdings nur für 30Sekunden. Dann wird die Routine LichtAnAus aufgerufen welche prüft ob beide wahr sind und die Zeit stimmt und dann das Licht einschaltet. Nach 180 Sekunden wird es dann wieder ausgeschaltet. Mit den Zeiten kannste ja spielen. Die 30 Sekunden habe ich von den 26 Sek. abgeleitet die es gebraucht hat bis nach dem gtag auch der bwm ausgelöst hat

                      Edit: Die beiden Steuere links braucht es nicht, war noch ein Überbleibsel vom Testen!
                      Edit2:. Falls gtag und /oder bwm schon früher von selbst auf false gehen, müsste man statt setze auf Wert halt setze auf Wahr nehmen

                      iobroker läuft unter Docker auf QNAP TS-451+
                      SkriptRecovery: https://forum.iobroker.net/post/930558

                      haselchenH 1 Antwort Letzte Antwort
                      0
                      • F fastfoot

                        @haselchen upps, dachte das sei selbsterklärend. Für gtag und bwm existieren je ein trigger welche eine variable auf true setzen, allerdings nur für 30Sekunden. Dann wird die Routine LichtAnAus aufgerufen welche prüft ob beide wahr sind und die Zeit stimmt und dann das Licht einschaltet. Nach 180 Sekunden wird es dann wieder ausgeschaltet. Mit den Zeiten kannste ja spielen. Die 30 Sekunden habe ich von den 26 Sek. abgeleitet die es gebraucht hat bis nach dem gtag auch der bwm ausgelöst hat

                        Edit: Die beiden Steuere links braucht es nicht, war noch ein Überbleibsel vom Testen!
                        Edit2:. Falls gtag und /oder bwm schon früher von selbst auf false gehen, müsste man statt setze auf Wert halt setze auf Wahr nehmen

                        haselchenH Offline
                        haselchenH Offline
                        haselchen
                        Most Active
                        schrieb am zuletzt editiert von haselchen
                        #51

                        @fastfoot

                        Oooook....mal überlegen.
                        Also, den 2.rechten steuere Block kann ich auch löschen oder?
                        Das Licht soll anbleiben. Ich hab nen Taster im HWR. Dort würde dann das Licht ausgeschaltet werden.

                        Was ist wenn das Blockly prüft ob beide Datenpunkte wahr sind und der BWM schon wieder auf false schaltet während der GTag noch auf wahr ist?

                        Edit:
                        Lach, 2 Dumme 1 Gedanke

                        Edit 2:
                        Das mit true und false bei den beiden Geräten genau hinzubekommen , ist natürlich grosser Sport.
                        Da kommt es auf den Winkel an, in dem der BWM anspringt , wenn wir vorbeifahren.
                        Dein Blockly ist schonmal genial. Ich befürchte aber, dass es mal auslösen wird und mal nicht.

                        Synology DS218+ & 2 x Fujitsu Esprimo (VM/Container) + FritzBox7590 + 2 AVM 3000 Repeater & Homematic & HUE & Osram & Xiaomi, NPM 10.9.4, Nodejs 22.21.0 ,JS Controller 7.0.7 ,Admin 7.7.19

                        F 1 Antwort Letzte Antwort
                        0
                        • haselchenH haselchen

                          @fastfoot

                          Oooook....mal überlegen.
                          Also, den 2.rechten steuere Block kann ich auch löschen oder?
                          Das Licht soll anbleiben. Ich hab nen Taster im HWR. Dort würde dann das Licht ausgeschaltet werden.

                          Was ist wenn das Blockly prüft ob beide Datenpunkte wahr sind und der BWM schon wieder auf false schaltet während der GTag noch auf wahr ist?

                          Edit:
                          Lach, 2 Dumme 1 Gedanke

                          Edit 2:
                          Das mit true und false bei den beiden Geräten genau hinzubekommen , ist natürlich grosser Sport.
                          Da kommt es auf den Winkel an, in dem der BWM anspringt , wenn wir vorbeifahren.
                          Dein Blockly ist schonmal genial. Ich befürchte aber, dass es mal auslösen wird und mal nicht.

                          F Offline
                          F Offline
                          fastfoot
                          schrieb am zuletzt editiert von
                          #52

                          @haselchen Ja klar, wenn nicht ausgeschaltet werden soll kann der weg. Oder den Timeout auf 10Minuten setzen falls der Taster nicht gedrückt wird :-) Den Trigger für den BWM könnte man auch noch auf Größer als stellen, dann löst er nur aus bei Bewegung, nicht wenn er abfällt. Beim Gtag weiss ich nicht ob und wann der abfällt. Falls ja auch auf Größer als stellen

                          iobroker läuft unter Docker auf QNAP TS-451+
                          SkriptRecovery: https://forum.iobroker.net/post/930558

                          haselchenH 1 Antwort Letzte Antwort
                          0
                          • F fastfoot

                            @haselchen Ja klar, wenn nicht ausgeschaltet werden soll kann der weg. Oder den Timeout auf 10Minuten setzen falls der Taster nicht gedrückt wird :-) Den Trigger für den BWM könnte man auch noch auf Größer als stellen, dann löst er nur aus bei Bewegung, nicht wenn er abfällt. Beim Gtag weiss ich nicht ob und wann der abfällt. Falls ja auch auf Größer als stellen

                            haselchenH Offline
                            haselchenH Offline
                            haselchen
                            Most Active
                            schrieb am zuletzt editiert von haselchen
                            #53

                            @fastfoot

                            Der BWM wird nach 15sek zurückgesetzt nach Bewegungserkennung.
                            Der Gtag bleibt auf true solange er in der Umgebung vom Haus ist.

                            Problem ist halt, wann der BWM auslöst.
                            Kommt auf den Vorbeifahrwinkel an.
                            Demnach kann eben erst der Gtag auf true gehen oder eben der BWM.
                            Verzwickter Mist.

                            Synology DS218+ & 2 x Fujitsu Esprimo (VM/Container) + FritzBox7590 + 2 AVM 3000 Repeater & Homematic & HUE & Osram & Xiaomi, NPM 10.9.4, Nodejs 22.21.0 ,JS Controller 7.0.7 ,Admin 7.7.19

                            F 1 Antwort Letzte Antwort
                            0
                            • haselchenH haselchen

                              @fastfoot

                              Der BWM wird nach 15sek zurückgesetzt nach Bewegungserkennung.
                              Der Gtag bleibt auf true solange er in der Umgebung vom Haus ist.

                              Problem ist halt, wann der BWM auslöst.
                              Kommt auf den Vorbeifahrwinkel an.
                              Demnach kann eben erst der Gtag auf true gehen oder eben der BWM.
                              Verzwickter Mist.

                              F Offline
                              F Offline
                              fastfoot
                              schrieb am zuletzt editiert von
                              #54

                              @haselchen dann setze nur den bwm auf größer als. Wenn der gtag aber immer auf true ist solange du zuhause bist dann wird der bwm zum point of failure wenn da ne Katze lang läuft. Aber teste doch erstmal so. Man könnte auch noch einen timeout einbauen dass das Licht erst nach einmal abfallen des gtag wieder angehen darf. Erstmal so testen

                              iobroker läuft unter Docker auf QNAP TS-451+
                              SkriptRecovery: https://forum.iobroker.net/post/930558

                              haselchenH 1 Antwort Letzte Antwort
                              0
                              • F fastfoot

                                @haselchen dann setze nur den bwm auf größer als. Wenn der gtag aber immer auf true ist solange du zuhause bist dann wird der bwm zum point of failure wenn da ne Katze lang läuft. Aber teste doch erstmal so. Man könnte auch noch einen timeout einbauen dass das Licht erst nach einmal abfallen des gtag wieder angehen darf. Erstmal so testen

                                haselchenH Offline
                                haselchenH Offline
                                haselchen
                                Most Active
                                schrieb am zuletzt editiert von
                                #55

                                @fastfoot

                                Deswegen hatte ich den GTag als Trigger.
                                Der Wert ändert sich 1mal auf true sobald er in Hausnähe kommt.
                                Da kann danach der BWM so oft auslösen wie er will, hat keinen Einfluss.

                                Synology DS218+ & 2 x Fujitsu Esprimo (VM/Container) + FritzBox7590 + 2 AVM 3000 Repeater & Homematic & HUE & Osram & Xiaomi, NPM 10.9.4, Nodejs 22.21.0 ,JS Controller 7.0.7 ,Admin 7.7.19

                                1 Antwort Letzte Antwort
                                0
                                • haselchenH haselchen

                                  @lobomau
                                  @Samson71

                                  Hab den HM BWM als Sicherheit mit drin.
                                  An dem müssen wir vorbeifahren zum Carport.
                                  Nun hab ich das vorhin getestet, Licht blieb dunkel.
                                  BWM wurde um 19:55:00 ausgelöst
                                  G Tag um 19:54:34

                                  Also 26sek dazwischen.

                                  3b4b7d37-5fb3-4b5c-9d86-9ee8e0758b2d-grafik.png

                                  Wie kriege ich das hin, dass wenn alle geforderten Werte eingehalten wurden, das Gewollte ausgelöst wird.
                                  Muss alles zeitgleich passieren, damit das Blockly passt?

                                  @paul53

                                  lobomauL Offline
                                  lobomauL Offline
                                  lobomau
                                  schrieb am zuletzt editiert von
                                  #56

                                  @haselchen mit einem zweiten Trigger auf den HM BWM müsste es gehen. Ich würde zusätzlich als Bedingung reinnehmen, dass das Licht auch aus ist um den Funktraffic zu minimieren (Licht muss ja nicht angeschaltet werden, wenn es schon an ist).

                                  Host: NUC8i3 mit Proxmox:

                                  • ioBroker CT Debian 13, npm 10.9.4, nodejs 22.21.0
                                  • Slave: Pi4
                                  M 1 Antwort Letzte Antwort
                                  0
                                  • lobomauL lobomau

                                    @haselchen mit einem zweiten Trigger auf den HM BWM müsste es gehen. Ich würde zusätzlich als Bedingung reinnehmen, dass das Licht auch aus ist um den Funktraffic zu minimieren (Licht muss ja nicht angeschaltet werden, wenn es schon an ist).

                                    M Offline
                                    M Offline
                                    moses123
                                    schrieb am zuletzt editiert von
                                    #57

                                    Viele Wege führen nach Rom ...

                                    Ich habe das Ganze für das Ein- und Ausschalten der HMIP Alarmfunktion mit den GTags und dem BLE- Adapter gemacht.

                                    Der BLE Adapter schreibt alle paar Sekunden die Signalstärke der GTags in einen State pro GTAG.

                                    Jedes mal, wenn die Signalstärke geschrieben wird, dann setzte ich eine Variable auf TRUE, das der entsprechende GTag da ist.

                                    Nur wenn die Variable auf TRUE geändert wird, dann deaktiviere ich die Alarmanlage. Im Fall hier könnte dann das Licht im Carport eingeschaltet werden.

                                    Auf FALSE wird die Variable gesetzt, wenn der Zeitstempel der letzten Änderung der Signalstärke > 60 Sekunden ist. Und nur bei der Änderung der Variable auf FALSE wird die Alarmanlage aktiviert.

                                    Gruß,
                                    Moses123

                                    1 Antwort Letzte Antwort
                                    0
                                    • M Offline
                                      M Offline
                                      marsmännchen
                                      schrieb am zuletzt editiert von
                                      #58

                                      @Maik-0
                                      Ich versuche auch gerade meine Anwesenheitserkennung mit Esp32 und Beacon zu basteln.
                                      Ich hab nur ständige Verbindungsabbrüche des ESP32 zum WLan, und sonstige problemchen.
                                      Wobei du mir aber helfen könntest:
                                      Du bekommst einen RSSI Wert vom ESPHome-Adapter ist das richtig?
                                      Ich mache es jedenfalls so, nur wenn ich den Trigger "falls rssi wurde aktualisiert" benutze und die beacon sind nicht erreichbar, wird der rssi nicht mehr aktualisiert.
                                      Ich habe die absolut wahnsinnige Zauberei um es halbwegs zuverlässig zu erfassen:

                                      <block xmlns="https://developers.google.com/blockly/xml" type="on_ext" id="rGM/6a0x(,3^[f[%$e=." x="513" y="-437">
                                        <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                        <field name="CONDITION">any</field>
                                        <field name="ACK_CONDITION"></field>
                                        <value name="OID0">
                                          <shadow type="field_oid" id="Ke)Im[.t$Xcb$/||[XsD">
                                            <field name="oid">esphome.0.A848FA9B5288.Sensor.3257868514.state</field>
                                          </shadow>
                                        </value>
                                        <statement name="STATEMENT">
                                          <block type="timeouts_setinterval" id=",x_Wi31gf8)n(%qaO8ki">
                                            <field name="NAME">Intervall</field>
                                            <field name="INTERVAL">4</field>
                                            <field name="UNIT">sec</field>
                                            <statement name="STATEMENT">
                                              <block type="update" id="@n}$bxzS:xt}=0e8Ge7p">
                                                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation>
                                                <field name="OID">0_userdata.0.Anwesenheit.Pnutrssi</field>
                                                <field name="WITH_DELAY">TRUE</field>
                                                <field name="DELAY_MS">8</field>
                                                <field name="UNIT">sec</field>
                                                <field name="CLEAR_RUNNING">FALSE</field>
                                                <value name="VALUE">
                                                  <block type="get_value" id="+R*fQ.`WM?fu3@Q_:Kgs">
                                                    <field name="ATTR">val</field>
                                                    <field name="OID">esphome.0.A848FA9B5288.Sensor.3257868514.state</field>
                                                  </block>
                                                </value>
                                              </block>
                                            </statement>
                                            <next>
                                              <block type="controls_if" id="^H%xiJnQ{#f;h53W.2,G">
                                                <mutation else="1"></mutation>
                                                <value name="IF0">
                                                  <block type="logic_compare" id="QnVmO-JQvSY5AC1,j]-.">
                                                    <field name="OP">EQ</field>
                                                    <value name="A">
                                                      <block type="get_value" id="NaV%!cuNA1!4Xs]J$Jxc">
                                                        <field name="ATTR">val</field>
                                                        <field name="OID">0_userdata.0.Anwesenheit.Pnutrssi</field>
                                                      </block>
                                                    </value>
                                                    <value name="B">
                                                      <block type="logic_operation" id="De1sb$x$:gWSRH9H=.fN">
                                                        <field name="OP">OR</field>
                                                        <value name="A">
                                                          <block type="get_value" id="Q{@RL-*lP%*]ij2j}#6H">
                                                            <field name="ATTR">val</field>
                                                            <field name="OID">esphome.0.A848FA9B5288.Sensor.3257868514.state</field>
                                                          </block>
                                                        </value>
                                                        <value name="B">
                                                          <block type="logic_null" id="%9{t2tsMkc`{~0kgjhID"></block>
                                                        </value>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </value>
                                                <statement name="DO0">
                                                  <block type="math_change" id="oZ?mPBj.Rv*VeHctx#,T">
                                                    <field name="VAR" id="@nWK-It]VKg2b:$$U)ww">awayCountP</field>
                                                    <value name="DELTA">
                                                      <shadow type="math_number" id="7!07YDKL7.2yTT[S6Xl]">
                                                        <field name="NUM">1</field>
                                                      </shadow>
                                                    </value>
                                                    <next>
                                                      <block type="variables_set" id="pXe:WH+5wUmtMt68747N">
                                                        <field name="VAR" id="mjIE{DMAN;i0MY~~*3zj">presentCountP</field>
                                                        <value name="VALUE">
                                                          <block type="math_number" id="pzx~p.=w?G%l$.?OVGX#">
                                                            <field name="NUM">0</field>
                                                          </block>
                                                        </value>
                                                        <next>
                                                          <block type="debug" id="d2ue#BIG[QLu9#JG#,at">
                                                            <field name="Severity">debug</field>
                                                            <value name="TEXT">
                                                              <shadow type="text">
                                                                <field name="TEXT">test</field>
                                                              </shadow>
                                                              <block type="text_join" id="Gf6zNnnr~j#FsWO/s:_a">
                                                                <mutation items="3"></mutation>
                                                                <value name="ADD0">
                                                                  <block type="text" id="*|7au5VmBygvu[v?WU{2">
                                                                    <field name="TEXT">awayCount:</field>
                                                                  </block>
                                                                </value>
                                                                <value name="ADD1">
                                                                  <block type="variables_get" id="dG7Tipl~/@R}GzQ8sKlF">
                                                                    <field name="VAR" id="@nWK-It]VKg2b:$$U)ww">awayCountP</field>
                                                                  </block>
                                                                </value>
                                                                <value name="ADD2">
                                                                  <block type="get_value" id="l0n^o^!0I0oRkL.l0(Bk">
                                                                    <field name="ATTR">val</field>
                                                                    <field name="OID">0_userdata.0.Anwesenheit.Pnutrssi</field>
                                                                  </block>
                                                                </value>
                                                              </block>
                                                            </value>
                                                          </block>
                                                        </next>
                                                      </block>
                                                    </next>
                                                  </block>
                                                </statement>
                                                <statement name="ELSE">
                                                  <block type="math_change" id="J#-HL,WRdHR/1xbv,gI.">
                                                    <field name="VAR" id="mjIE{DMAN;i0MY~~*3zj">presentCountP</field>
                                                    <value name="DELTA">
                                                      <shadow type="math_number" id="dit@K0Wk;EE=K#$z]x$e">
                                                        <field name="NUM">1</field>
                                                      </shadow>
                                                    </value>
                                                    <next>
                                                      <block type="variables_set" id="E4eHQdX,._YGqR1|.O-1">
                                                        <field name="VAR" id="@nWK-It]VKg2b:$$U)ww">awayCountP</field>
                                                        <value name="VALUE">
                                                          <block type="math_number" id="][%p#n_BZ82Z{p$-8^K(">
                                                            <field name="NUM">0</field>
                                                          </block>
                                                        </value>
                                                        <next>
                                                          <block type="debug" id="b,`r91eD(%8DNTaC;l=.">
                                                            <field name="Severity">debug</field>
                                                            <value name="TEXT">
                                                              <shadow type="text">
                                                                <field name="TEXT">test</field>
                                                              </shadow>
                                                              <block type="text_join" id="^w-9%o)0a^{-%e_8P:0x">
                                                                <mutation items="2"></mutation>
                                                                <value name="ADD0">
                                                                  <block type="text" id="n..iEeaG+.h}[j-XEtJw">
                                                                    <field name="TEXT">presentCount:</field>
                                                                  </block>
                                                                </value>
                                                                <value name="ADD1">
                                                                  <block type="variables_get" id="deEHCo`E).s.!Bck^r35">
                                                                    <field name="VAR" id="mjIE{DMAN;i0MY~~*3zj">presentCountP</field>
                                                                  </block>
                                                                </value>
                                                              </block>
                                                            </value>
                                                          </block>
                                                        </next>
                                                      </block>
                                                    </next>
                                                  </block>
                                                </statement>
                                                <next>
                                                  <block type="controls_if" id="@crrhoDO#B=iavWIG3+I">
                                                    <value name="IF0">
                                                      <block type="logic_compare" id="pM7-++%2(DwKnm[p`4E~">
                                                        <field name="OP">EQ</field>
                                                        <value name="A">
                                                          <block type="variables_get" id="5QHo#rswQab_`pZ%x8U5">
                                                            <field name="VAR" id="@nWK-It]VKg2b:$$U)ww">awayCountP</field>
                                                          </block>
                                                        </value>
                                                        <value name="B">
                                                          <block type="math_number" id="%Ao_A}Yi(a$:F;Nigg3H">
                                                            <field name="NUM">10</field>
                                                          </block>
                                                        </value>
                                                      </block>
                                                    </value>
                                                    <statement name="DO0">
                                                      <block type="control" id="z2sp:nmr12kP3*rqh3~n">
                                                        <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                        <field name="OID">0_userdata.0.Anwesenheit.Patrick_anweseheit</field>
                                                        <field name="WITH_DELAY">FALSE</field>
                                                        <value name="VALUE">
                                                          <block type="logic_boolean" id="H`##WiJF`MjC.GZUbZ@B">
                                                            <field name="BOOL">FALSE</field>
                                                          </block>
                                                        </value>
                                                        <next>
                                                          <block type="variables_set" id="=/ZWrT1D=RcjUWJOrBi4">
                                                            <field name="VAR" id="@nWK-It]VKg2b:$$U)ww">awayCountP</field>
                                                            <value name="VALUE">
                                                              <block type="math_number" id="ks_;K}^:8o5HonxvUl9S">
                                                                <field name="NUM">0</field>
                                                              </block>
                                                            </value>
                                                          </block>
                                                        </next>
                                                      </block>
                                                    </statement>
                                                    <next>
                                                      <block type="controls_if" id="sl2;W5?aG:?h.=JPUL1/">
                                                        <value name="IF0">
                                                          <block type="logic_compare" id="MN(/Mj`S`r*hfFo6J11+">
                                                            <field name="OP">EQ</field>
                                                            <value name="A">
                                                              <block type="variables_get" id="z|tjgy?uYXO8(rFVSdFZ">
                                                                <field name="VAR" id="mjIE{DMAN;i0MY~~*3zj">presentCountP</field>
                                                              </block>
                                                            </value>
                                                            <value name="B">
                                                              <block type="math_number" id="|:B6J+V,5/E-,lS)~FhQ">
                                                                <field name="NUM">4</field>
                                                              </block>
                                                            </value>
                                                          </block>
                                                        </value>
                                                        <statement name="DO0">
                                                          <block type="control" id="1Zf|bgBtg[EQ;VLMktA?">
                                                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                            <field name="OID">0_userdata.0.Anwesenheit.Patrick_anweseheit</field>
                                                            <field name="WITH_DELAY">FALSE</field>
                                                            <value name="VALUE">
                                                              <block type="logic_boolean" id="RK66d3=~rHgwKW2DG|S5">
                                                                <field name="BOOL">TRUE</field>
                                                              </block>
                                                            </value>
                                                            <next>
                                                              <block type="variables_set" id="_(1g.LSHR+!M92BMy[V)">
                                                                <field name="VAR" id="mjIE{DMAN;i0MY~~*3zj">presentCountP</field>
                                                                <value name="VALUE">
                                                                  <block type="math_number" id="Nv|B-hM3oZuo_:ryL[F:">
                                                                    <field name="NUM">0</field>
                                                                  </block>
                                                                </value>
                                                              </block>
                                                            </next>
                                                          </block>
                                                        </statement>
                                                      </block>
                                                    </next>
                                                  </block>
                                                </next>
                                              </block>
                                            </next>
                                          </block>
                                        </statement>
                                      </block>
                                      

                                      beacon1.JPG

                                      Ich glaube nicht das das wirklich schlau von mir ist, aber.. na ja.
                                      Mein ESPHome Yaml sieht so aus:

                                      esphome:
                                        name: esp32presence
                                        platform: ESP32
                                        board: esp32dev
                                      
                                      # Enable logging
                                      logger:
                                      
                                      # Enable Home Assistant API
                                      api:
                                       
                                      
                                      ota:
                                        
                                      
                                      wifi:
                                        ssid: "DieSSID"
                                        password: "passwort"
                                        power_save_mode: LIGHT
                                      
                                        manual_ip:
                                          static_ip: 192.10.10.10
                                          gateway: 192.10.10.11
                                          subnet: 255.255.255.0
                                      
                                      
                                        
                                        ap:
                                          ssid: "Esp32presence Fallback Hotspot"
                                          password: "passwort"
                                      
                                      captive_portal:
                                      esp32_ble_tracker:
                                        scan_parameters:
                                          window: 300ms
                                        
                                      sensor:
                                        - platform: ble_rssi
                                          mac_address: DF:AA:CA:AA:BB:CC
                                          name: "PatrickNut"
                                      
                                        - platform: ble_rssi
                                          mac_address: 66:CC:DD:FF:57:D7
                                          name: "NicoleNut"    
                                      

                                      Könntest du mir vielleicht mit deinen Scripten weiterhelfen wenn du was funktionierendes hast?
                                      Gruß
                                      Patrick

                                      Raspberry Pi 4 8GB, Debian 11, js-controller: 5.0.12, Nodejs: v18.18.2, NPM: 9.8.1 (Multihost),
                                      Wago PFC200 mit Dali Lichtsteuerung.

                                      M 1 Antwort Letzte Antwort
                                      0
                                      • M marsmännchen

                                        @Maik-0
                                        Ich versuche auch gerade meine Anwesenheitserkennung mit Esp32 und Beacon zu basteln.
                                        Ich hab nur ständige Verbindungsabbrüche des ESP32 zum WLan, und sonstige problemchen.
                                        Wobei du mir aber helfen könntest:
                                        Du bekommst einen RSSI Wert vom ESPHome-Adapter ist das richtig?
                                        Ich mache es jedenfalls so, nur wenn ich den Trigger "falls rssi wurde aktualisiert" benutze und die beacon sind nicht erreichbar, wird der rssi nicht mehr aktualisiert.
                                        Ich habe die absolut wahnsinnige Zauberei um es halbwegs zuverlässig zu erfassen:

                                        <block xmlns="https://developers.google.com/blockly/xml" type="on_ext" id="rGM/6a0x(,3^[f[%$e=." x="513" y="-437">
                                          <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                          <field name="CONDITION">any</field>
                                          <field name="ACK_CONDITION"></field>
                                          <value name="OID0">
                                            <shadow type="field_oid" id="Ke)Im[.t$Xcb$/||[XsD">
                                              <field name="oid">esphome.0.A848FA9B5288.Sensor.3257868514.state</field>
                                            </shadow>
                                          </value>
                                          <statement name="STATEMENT">
                                            <block type="timeouts_setinterval" id=",x_Wi31gf8)n(%qaO8ki">
                                              <field name="NAME">Intervall</field>
                                              <field name="INTERVAL">4</field>
                                              <field name="UNIT">sec</field>
                                              <statement name="STATEMENT">
                                                <block type="update" id="@n}$bxzS:xt}=0e8Ge7p">
                                                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation>
                                                  <field name="OID">0_userdata.0.Anwesenheit.Pnutrssi</field>
                                                  <field name="WITH_DELAY">TRUE</field>
                                                  <field name="DELAY_MS">8</field>
                                                  <field name="UNIT">sec</field>
                                                  <field name="CLEAR_RUNNING">FALSE</field>
                                                  <value name="VALUE">
                                                    <block type="get_value" id="+R*fQ.`WM?fu3@Q_:Kgs">
                                                      <field name="ATTR">val</field>
                                                      <field name="OID">esphome.0.A848FA9B5288.Sensor.3257868514.state</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </statement>
                                              <next>
                                                <block type="controls_if" id="^H%xiJnQ{#f;h53W.2,G">
                                                  <mutation else="1"></mutation>
                                                  <value name="IF0">
                                                    <block type="logic_compare" id="QnVmO-JQvSY5AC1,j]-.">
                                                      <field name="OP">EQ</field>
                                                      <value name="A">
                                                        <block type="get_value" id="NaV%!cuNA1!4Xs]J$Jxc">
                                                          <field name="ATTR">val</field>
                                                          <field name="OID">0_userdata.0.Anwesenheit.Pnutrssi</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="logic_operation" id="De1sb$x$:gWSRH9H=.fN">
                                                          <field name="OP">OR</field>
                                                          <value name="A">
                                                            <block type="get_value" id="Q{@RL-*lP%*]ij2j}#6H">
                                                              <field name="ATTR">val</field>
                                                              <field name="OID">esphome.0.A848FA9B5288.Sensor.3257868514.state</field>
                                                            </block>
                                                          </value>
                                                          <value name="B">
                                                            <block type="logic_null" id="%9{t2tsMkc`{~0kgjhID"></block>
                                                          </value>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <statement name="DO0">
                                                    <block type="math_change" id="oZ?mPBj.Rv*VeHctx#,T">
                                                      <field name="VAR" id="@nWK-It]VKg2b:$$U)ww">awayCountP</field>
                                                      <value name="DELTA">
                                                        <shadow type="math_number" id="7!07YDKL7.2yTT[S6Xl]">
                                                          <field name="NUM">1</field>
                                                        </shadow>
                                                      </value>
                                                      <next>
                                                        <block type="variables_set" id="pXe:WH+5wUmtMt68747N">
                                                          <field name="VAR" id="mjIE{DMAN;i0MY~~*3zj">presentCountP</field>
                                                          <value name="VALUE">
                                                            <block type="math_number" id="pzx~p.=w?G%l$.?OVGX#">
                                                              <field name="NUM">0</field>
                                                            </block>
                                                          </value>
                                                          <next>
                                                            <block type="debug" id="d2ue#BIG[QLu9#JG#,at">
                                                              <field name="Severity">debug</field>
                                                              <value name="TEXT">
                                                                <shadow type="text">
                                                                  <field name="TEXT">test</field>
                                                                </shadow>
                                                                <block type="text_join" id="Gf6zNnnr~j#FsWO/s:_a">
                                                                  <mutation items="3"></mutation>
                                                                  <value name="ADD0">
                                                                    <block type="text" id="*|7au5VmBygvu[v?WU{2">
                                                                      <field name="TEXT">awayCount:</field>
                                                                    </block>
                                                                  </value>
                                                                  <value name="ADD1">
                                                                    <block type="variables_get" id="dG7Tipl~/@R}GzQ8sKlF">
                                                                      <field name="VAR" id="@nWK-It]VKg2b:$$U)ww">awayCountP</field>
                                                                    </block>
                                                                  </value>
                                                                  <value name="ADD2">
                                                                    <block type="get_value" id="l0n^o^!0I0oRkL.l0(Bk">
                                                                      <field name="ATTR">val</field>
                                                                      <field name="OID">0_userdata.0.Anwesenheit.Pnutrssi</field>
                                                                    </block>
                                                                  </value>
                                                                </block>
                                                              </value>
                                                            </block>
                                                          </next>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </statement>
                                                  <statement name="ELSE">
                                                    <block type="math_change" id="J#-HL,WRdHR/1xbv,gI.">
                                                      <field name="VAR" id="mjIE{DMAN;i0MY~~*3zj">presentCountP</field>
                                                      <value name="DELTA">
                                                        <shadow type="math_number" id="dit@K0Wk;EE=K#$z]x$e">
                                                          <field name="NUM">1</field>
                                                        </shadow>
                                                      </value>
                                                      <next>
                                                        <block type="variables_set" id="E4eHQdX,._YGqR1|.O-1">
                                                          <field name="VAR" id="@nWK-It]VKg2b:$$U)ww">awayCountP</field>
                                                          <value name="VALUE">
                                                            <block type="math_number" id="][%p#n_BZ82Z{p$-8^K(">
                                                              <field name="NUM">0</field>
                                                            </block>
                                                          </value>
                                                          <next>
                                                            <block type="debug" id="b,`r91eD(%8DNTaC;l=.">
                                                              <field name="Severity">debug</field>
                                                              <value name="TEXT">
                                                                <shadow type="text">
                                                                  <field name="TEXT">test</field>
                                                                </shadow>
                                                                <block type="text_join" id="^w-9%o)0a^{-%e_8P:0x">
                                                                  <mutation items="2"></mutation>
                                                                  <value name="ADD0">
                                                                    <block type="text" id="n..iEeaG+.h}[j-XEtJw">
                                                                      <field name="TEXT">presentCount:</field>
                                                                    </block>
                                                                  </value>
                                                                  <value name="ADD1">
                                                                    <block type="variables_get" id="deEHCo`E).s.!Bck^r35">
                                                                      <field name="VAR" id="mjIE{DMAN;i0MY~~*3zj">presentCountP</field>
                                                                    </block>
                                                                  </value>
                                                                </block>
                                                              </value>
                                                            </block>
                                                          </next>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </statement>
                                                  <next>
                                                    <block type="controls_if" id="@crrhoDO#B=iavWIG3+I">
                                                      <value name="IF0">
                                                        <block type="logic_compare" id="pM7-++%2(DwKnm[p`4E~">
                                                          <field name="OP">EQ</field>
                                                          <value name="A">
                                                            <block type="variables_get" id="5QHo#rswQab_`pZ%x8U5">
                                                              <field name="VAR" id="@nWK-It]VKg2b:$$U)ww">awayCountP</field>
                                                            </block>
                                                          </value>
                                                          <value name="B">
                                                            <block type="math_number" id="%Ao_A}Yi(a$:F;Nigg3H">
                                                              <field name="NUM">10</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </value>
                                                      <statement name="DO0">
                                                        <block type="control" id="z2sp:nmr12kP3*rqh3~n">
                                                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                          <field name="OID">0_userdata.0.Anwesenheit.Patrick_anweseheit</field>
                                                          <field name="WITH_DELAY">FALSE</field>
                                                          <value name="VALUE">
                                                            <block type="logic_boolean" id="H`##WiJF`MjC.GZUbZ@B">
                                                              <field name="BOOL">FALSE</field>
                                                            </block>
                                                          </value>
                                                          <next>
                                                            <block type="variables_set" id="=/ZWrT1D=RcjUWJOrBi4">
                                                              <field name="VAR" id="@nWK-It]VKg2b:$$U)ww">awayCountP</field>
                                                              <value name="VALUE">
                                                                <block type="math_number" id="ks_;K}^:8o5HonxvUl9S">
                                                                  <field name="NUM">0</field>
                                                                </block>
                                                              </value>
                                                            </block>
                                                          </next>
                                                        </block>
                                                      </statement>
                                                      <next>
                                                        <block type="controls_if" id="sl2;W5?aG:?h.=JPUL1/">
                                                          <value name="IF0">
                                                            <block type="logic_compare" id="MN(/Mj`S`r*hfFo6J11+">
                                                              <field name="OP">EQ</field>
                                                              <value name="A">
                                                                <block type="variables_get" id="z|tjgy?uYXO8(rFVSdFZ">
                                                                  <field name="VAR" id="mjIE{DMAN;i0MY~~*3zj">presentCountP</field>
                                                                </block>
                                                              </value>
                                                              <value name="B">
                                                                <block type="math_number" id="|:B6J+V,5/E-,lS)~FhQ">
                                                                  <field name="NUM">4</field>
                                                                </block>
                                                              </value>
                                                            </block>
                                                          </value>
                                                          <statement name="DO0">
                                                            <block type="control" id="1Zf|bgBtg[EQ;VLMktA?">
                                                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                              <field name="OID">0_userdata.0.Anwesenheit.Patrick_anweseheit</field>
                                                              <field name="WITH_DELAY">FALSE</field>
                                                              <value name="VALUE">
                                                                <block type="logic_boolean" id="RK66d3=~rHgwKW2DG|S5">
                                                                  <field name="BOOL">TRUE</field>
                                                                </block>
                                                              </value>
                                                              <next>
                                                                <block type="variables_set" id="_(1g.LSHR+!M92BMy[V)">
                                                                  <field name="VAR" id="mjIE{DMAN;i0MY~~*3zj">presentCountP</field>
                                                                  <value name="VALUE">
                                                                    <block type="math_number" id="Nv|B-hM3oZuo_:ryL[F:">
                                                                      <field name="NUM">0</field>
                                                                    </block>
                                                                  </value>
                                                                </block>
                                                              </next>
                                                            </block>
                                                          </statement>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </next>
                                                </block>
                                              </next>
                                            </block>
                                          </statement>
                                        </block>
                                        

                                        beacon1.JPG

                                        Ich glaube nicht das das wirklich schlau von mir ist, aber.. na ja.
                                        Mein ESPHome Yaml sieht so aus:

                                        esphome:
                                          name: esp32presence
                                          platform: ESP32
                                          board: esp32dev
                                        
                                        # Enable logging
                                        logger:
                                        
                                        # Enable Home Assistant API
                                        api:
                                         
                                        
                                        ota:
                                          
                                        
                                        wifi:
                                          ssid: "DieSSID"
                                          password: "passwort"
                                          power_save_mode: LIGHT
                                        
                                          manual_ip:
                                            static_ip: 192.10.10.10
                                            gateway: 192.10.10.11
                                            subnet: 255.255.255.0
                                        
                                        
                                          
                                          ap:
                                            ssid: "Esp32presence Fallback Hotspot"
                                            password: "passwort"
                                        
                                        captive_portal:
                                        esp32_ble_tracker:
                                          scan_parameters:
                                            window: 300ms
                                          
                                        sensor:
                                          - platform: ble_rssi
                                            mac_address: DF:AA:CA:AA:BB:CC
                                            name: "PatrickNut"
                                        
                                          - platform: ble_rssi
                                            mac_address: 66:CC:DD:FF:57:D7
                                            name: "NicoleNut"    
                                        

                                        Könntest du mir vielleicht mit deinen Scripten weiterhelfen wenn du was funktionierendes hast?
                                        Gruß
                                        Patrick

                                        M Online
                                        M Online
                                        mrjeschke
                                        schrieb am zuletzt editiert von
                                        #59

                                        @marsmännchen
                                        Ja richtig, ich mache das über den rssi Wert. Bei Aktualisierung wird ein Timeout gestoppt und neu gestartet.
                                        Wenn der rssi Wert nicht mehr aktualisiert wird, läuft er in den Timeout.
                                        Ein passendes Script habe ich doch schon gepostet.

                                        M 1 Antwort Letzte Antwort
                                        1
                                        • M mrjeschke

                                          @marsmännchen
                                          Ja richtig, ich mache das über den rssi Wert. Bei Aktualisierung wird ein Timeout gestoppt und neu gestartet.
                                          Wenn der rssi Wert nicht mehr aktualisiert wird, läuft er in den Timeout.
                                          Ein passendes Script habe ich doch schon gepostet.

                                          M Offline
                                          M Offline
                                          marsmännchen
                                          schrieb am zuletzt editiert von
                                          #60

                                          @maik-0
                                          Ah ich glaube jetzt verstehe ich erst die Logik von deinem Script. Gerade weil es nicht mehr aktualisiert wird, wird auf abwesend geschaltet.

                                          Raspberry Pi 4 8GB, Debian 11, js-controller: 5.0.12, Nodejs: v18.18.2, NPM: 9.8.1 (Multihost),
                                          Wago PFC200 mit Dali Lichtsteuerung.

                                          M 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          525

                                          Online

                                          32.5k

                                          Benutzer

                                          81.7k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe