Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. G-Tag, IBeacon, Anwesenheitserkennung

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    G-Tag, IBeacon, Anwesenheitserkennung

    This topic has been deleted. Only users with topic management privileges can see it.
    • haselchen
      haselchen Most Active last edited by

      @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?

      Samson71 lobomau 2 Replies Last reply Reply Quote 0
      • Samson71
        Samson71 Global Moderator @haselchen last edited by 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.

        haselchen 1 Reply Last reply Reply Quote 1
        • haselchen
          haselchen Most Active @Samson71 last edited by

          @samson71

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

          1 Reply Last reply Reply Quote 0
          • lobomau
            lobomau @haselchen last edited by

            @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).

            haselchen 1 Reply Last reply Reply Quote 0
            • haselchen
              haselchen Most Active @lobomau last edited by

              @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 lobomau 2 Replies Last reply Reply Quote 0
              • F
                fastfoot @haselchen last edited by

                @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>
                

                haselchen 1 Reply Last reply Reply Quote 1
                • haselchen
                  haselchen Most Active @fastfoot last edited by

                  @fastfoot

                  Ich hoffe da kommt noch ein Edit mit Erklärung 😬

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

                  F 1 Reply Last reply Reply Quote 0
                  • F
                    fastfoot @haselchen last edited by 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

                    haselchen 1 Reply Last reply Reply Quote 0
                    • haselchen
                      haselchen Most Active @fastfoot last edited by 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 1 Reply Last reply Reply Quote 0
                      • F
                        fastfoot @haselchen last edited by

                        @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

                        haselchen 1 Reply Last reply Reply Quote 0
                        • haselchen
                          haselchen Most Active @fastfoot last edited by 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 1 Reply Last reply Reply Quote 0
                          • F
                            fastfoot @haselchen last edited by

                            @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

                            haselchen 1 Reply Last reply Reply Quote 0
                            • haselchen
                              haselchen Most Active @fastfoot last edited by

                              @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.

                              1 Reply Last reply Reply Quote 0
                              • lobomau
                                lobomau @haselchen last edited by

                                @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 1 Reply Last reply Reply Quote 0
                                • M
                                  moses123 @lobomau last edited by

                                  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 Reply Last reply Reply Quote 0
                                  • M
                                    marsmännchen last edited by

                                    @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 1 Reply Last reply Reply Quote 0
                                    • M
                                      mrjeschke @marsmännchen last edited by

                                      @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 Reply Last reply Reply Quote 1
                                      • M
                                        marsmännchen @mrjeschke last edited by

                                        @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.

                                        M 1 Reply Last reply Reply Quote 0
                                        • M
                                          mrjeschke @marsmännchen last edited by

                                          @marsmännchen
                                          Genau, wenn der Wert 60 Sekunden nicht mehr aktualisiert wird, schaltet es auf Abwesenheit. Kann sein, das 60 Sekunden etwas knapp ist. Musst du vieleicht etwas höher setzen.

                                          M 1 Reply Last reply Reply Quote 1
                                          • M
                                            marsmännchen @mrjeschke last edited by

                                            @maik-0
                                            Is natürlich die schönere Lösung als meine hilflose Zauberei.
                                            Werd das gleich mal abpausen. Vielen Dank

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

                                            Support us

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

                                            459
                                            Online

                                            31.7k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            g-tag ibeacon anwesenheitserkennung
                                            17
                                            99
                                            8031
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo