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. Anwesenheitserkennung mit ESPresense

NEWS

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

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

Anwesenheitserkennung mit ESPresense

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
68 Beiträge 20 Kommentatoren 13.9k Aufrufe 24 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.
  • H Offline
    H Offline
    higginsd
    schrieb am zuletzt editiert von
    #17

    Mal eine Frage: erzielt mit den ESP32 irgendjemand ein auch nur halbwegs brauchbares Ergebnis? Bei mir zeigen die Dinger z.B. bei der Entfernung irgendwas an, aber zu 95% nichts, was der realen Entfernung entspricht. Mein Handy liegt 30-50cm neben dem ESP32 - und plötzlich erkennt er das Handy als nicht mehr im Raum (bzw. in der Nähe). So ist das Zeugs für mich zumindest nicht brauchbar, aber vielleicht mache ich ja auch etwas falsch...

    amg_666A OliverIOO 2 Antworten Letzte Antwort
    0
    • H higginsd

      Mal eine Frage: erzielt mit den ESP32 irgendjemand ein auch nur halbwegs brauchbares Ergebnis? Bei mir zeigen die Dinger z.B. bei der Entfernung irgendwas an, aber zu 95% nichts, was der realen Entfernung entspricht. Mein Handy liegt 30-50cm neben dem ESP32 - und plötzlich erkennt er das Handy als nicht mehr im Raum (bzw. in der Nähe). So ist das Zeugs für mich zumindest nicht brauchbar, aber vielleicht mache ich ja auch etwas falsch...

      amg_666A Offline
      amg_666A Offline
      amg_666
      schrieb am zuletzt editiert von
      #18

      @higginsd Ne, die Teile sind schon extrem ungenau (kann man wohl auch für so Billigteile wie ESP32 nicht anders erwarten...).
      In der aktuellen Version (ESPresense Version: v3.1.0) kann man aber noch im Webfrontend nachjustieren.
      Mein Handy liegt grade direkt vor einem D1 Mini, laut DP ist es 63cm entfernt. Mein mifit Armband ist ca 60cm vom D1 entfernt, DP sagt 1,69m.
      Also zum ermitteln ob sich was eingebucht hat ist es ok, aber Entfernungen messen kannst du imho vergessen.

      iobroker auf proxmox container

      H 1 Antwort Letzte Antwort
      1
      • D Online
        D Online
        DarkDevil
        schrieb am zuletzt editiert von
        #19

        Wie habt ihr denn eure Apple Watch eingebunden bekommen? Ich habe eine Anleitung gesehen, dazu wurde allerdings ein Mac benötigt
        Die Entfernung klappt bei mir relativ zuverlässig. Ich würde sagen +/- 20%

        ? 1 Antwort Letzte Antwort
        0
        • D DarkDevil

          Wie habt ihr denn eure Apple Watch eingebunden bekommen? Ich habe eine Anleitung gesehen, dazu wurde allerdings ein Mac benötigt
          Die Entfernung klappt bei mir relativ zuverlässig. Ich würde sagen +/- 20%

          ? Offline
          ? Offline
          Ein ehemaliger Benutzer
          schrieb am zuletzt editiert von
          #20

          @darkdevil so wie verdrahtet das in sein Video zeigt. Klappte wunderbar und ist sehr zuverlässig. Hab das nur in blockly ein bisschen anders gemacht als er.

          L 1 Antwort Letzte Antwort
          0
          • ? Ein ehemaliger Benutzer

            @darkdevil so wie verdrahtet das in sein Video zeigt. Klappte wunderbar und ist sehr zuverlässig. Hab das nur in blockly ein bisschen anders gemacht als er.

            L Offline
            L Offline
            leachim200
            schrieb am zuletzt editiert von
            #21

            @ciddi89 würdest du dein blockly posten?

            ? 1 Antwort Letzte Antwort
            0
            • L leachim200

              @ciddi89 würdest du dein blockly posten?

              ? Offline
              ? Offline
              Ein ehemaliger Benutzer
              schrieb am zuletzt editiert von
              #22

              @leachim200 said in Anwesenheitserkennung mit ESPresense:

              @ciddi89 würdest du dein blockly posten?

              Klar gerne, musst nur die Werte/Objekte anpassen. TS ist der Abstand.

              D201D39C-72E0-4ACE-90F1-7A4FCD2A40A2.jpeg

              Und hier der Code:

              <xml xmlns="https://developers.google.com/blockly/xml">
                <variables>
                  <variable id="x,g!9R-?-y?uik88((``">ts</variable>
                </variables>
                <block type="comment" id="UIL)mlPvZ~eXUZbf~aje" x="87" y="13">
                  <field name="COMMENT">Küche / iwatch</field>
                  <next>
                    <block type="on_ext" id="gu9z%F:Gjo!b+$67Wg9J">
                      <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="umJYy]!W1-.kek.eGQqc">
                          <field name="oid">mqtt.0.espresense.devices.apple:1005:9-26.kueche</field>
                        </shadow>
                      </value>
                      <statement name="STATEMENT">
                        <block type="variables_set" id="mrG9S[kI^;NedP^8;AQr">
                          <field name="VAR" id="x,g!9R-?-y?uik88((``">ts</field>
                          <value name="VALUE">
                            <block type="get_attr" id="V|M};;]g4en}0jggg0#)">
                              <value name="PATH">
                                <shadow type="text" id="=C]-|RbROv_vX|4VP|Ku">
                                  <field name="TEXT"></field>
                                </shadow>
                                <block type="text" id="CarC*I?5KWFedXc00yg7">
                                  <field name="TEXT">distance</field>
                                </block>
                              </value>
                              <value name="OBJECT">
                                <block type="on_source" id="Z^z5HttPOcNxH}j`_1D,">
                                  <field name="ATTR">state.val</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <next>
                            <block type="debug" id="2P=wOuhe+~#7WuUs_5%0" disabled="true">
                              <field name="Severity">log</field>
                              <value name="TEXT">
                                <shadow type="text" id="E]jmf46j#Xc#C#z.EoOq">
                                  <field name="TEXT">test</field>
                                </shadow>
                                <block type="variables_get" id="x4Mw^WYGAYdhQgYD(tQs">
                                  <field name="VAR" id="x,g!9R-?-y?uik88((``">ts</field>
                                </block>
                              </value>
                              <next>
                                <block type="controls_if" id="7b69u]?=B0hyQhl98V@:">
                                  <mutation elseif="1"></mutation>
                                  <value name="IF0">
                                    <block type="logic_compare" id="y/B=-HFUis?RxD$lm${f">
                                      <field name="OP">LTE</field>
                                      <value name="A">
                                        <block type="variables_get" id="Yh_Q9Q0cp|Hs^#6VTz{9">
                                          <field name="VAR" id="x,g!9R-?-y?uik88((``">ts</field>
                                        </block>
                                      </value>
                                      <value name="B">
                                        <block type="text" id="0xTSl_n.N.7qP(Mmz%Yy">
                                          <field name="TEXT">4</field>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                  <statement name="DO0">
                                    <block type="control" id="RFZ$`tn1)4=,E4SN4|Ge">
                                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                      <field name="OID">0_userdata.0.Haus.Anwesenheit_Raum.Kueche.Anwesenheit_Allgemein</field>
                                      <field name="WITH_DELAY">FALSE</field>
                                      <value name="VALUE">
                                        <block type="logic_boolean" id="5F:_R]^OdsWXv26[XxwQ">
                                          <field name="BOOL">TRUE</field>
                                        </block>
                                      </value>
                                      <next>
                                        <block type="control" id="Q30D)[#:~2=Mzz8O5|0g">
                                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                          <field name="OID">0_userdata.0.Haus.Anwesenheit_Raum.Kueche.Christian</field>
                                          <field name="WITH_DELAY">FALSE</field>
                                          <value name="VALUE">
                                            <block type="logic_boolean" id="!X=t!RL.^x~B;4]4wx=J">
                                              <field name="BOOL">TRUE</field>
                                            </block>
                                          </value>
                                        </block>
                                      </next>
                                    </block>
                                  </statement>
                                  <value name="IF1">
                                    <block type="logic_compare" id="yV[jh~{3{];Q0Tg|!rs@">
                                      <field name="OP">GT</field>
                                      <value name="A">
                                        <block type="variables_get" id=":zXhhiC/YLZf]8f?Wu!@">
                                          <field name="VAR" id="x,g!9R-?-y?uik88((``">ts</field>
                                        </block>
                                      </value>
                                      <value name="B">
                                        <block type="text" id="mEt2}s3a:XLhdE=3+mk)">
                                          <field name="TEXT">4</field>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                  <statement name="DO1">
                                    <block type="control" id="SrozxdKX{Ra-F1_nq9n]">
                                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                      <field name="OID">0_userdata.0.Haus.Anwesenheit_Raum.Kueche.Anwesenheit_Allgemein</field>
                                      <field name="WITH_DELAY">FALSE</field>
                                      <value name="VALUE">
                                        <block type="logic_boolean" id="JJBM%[9=f*mwA:jOB|Vb">
                                          <field name="BOOL">FALSE</field>
                                        </block>
                                      </value>
                                      <next>
                                        <block type="control" id="#4H%Qz6L9m$?yr=?QfB9">
                                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                          <field name="OID">0_userdata.0.Haus.Anwesenheit_Raum.Kueche.Christian</field>
                                          <field name="WITH_DELAY">FALSE</field>
                                          <value name="VALUE">
                                            <block type="logic_boolean" id="_Z;7$Y^U=fY%Mp@;HUdx">
                                              <field name="BOOL">FALSE</field>
                                            </block>
                                          </value>
                                        </block>
                                      </next>
                                    </block>
                                  </statement>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </statement>
                      <next>
                        <block type="comment" id="`yfOd?rWhbYjwNPCt5]S">
                          <field name="COMMENT">Büro / iwatch</field>
                          <next>
                            <block type="on_ext" id="Q!s7W*vp@E.!glDCfL8V">
                              <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="N}k-L%x~|hyqTf?T@jbN">
                                  <field name="oid">mqtt.0.espresense.devices.apple:1005:9-26.buero</field>
                                </shadow>
                              </value>
                              <statement name="STATEMENT">
                                <block type="variables_set" id="jFrxvsT7g{=H9d)6DgVC">
                                  <field name="VAR" id="x,g!9R-?-y?uik88((``">ts</field>
                                  <value name="VALUE">
                                    <block type="get_attr" id="E94Er}iXnkOt#muz:GaB">
                                      <value name="PATH">
                                        <shadow type="text">
                                          <field name="TEXT"></field>
                                        </shadow>
                                        <block type="text" id=";,#T/^D5eNU-a#$8/J`p">
                                          <field name="TEXT">distance</field>
                                        </block>
                                      </value>
                                      <value name="OBJECT">
                                        <block type="on_source" id="[p6`X=[Rfw@3EnrcP#h2">
                                          <field name="ATTR">state.val</field>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                  <next>
                                    <block type="debug" id="#b?NdI@lX=!E6|PBgmo_" disabled="true">
                                      <field name="Severity">log</field>
                                      <value name="TEXT">
                                        <shadow type="text">
                                          <field name="TEXT">test</field>
                                        </shadow>
                                        <block type="variables_get" id="#u=S9#@bJd03-*ED+ZWP">
                                          <field name="VAR" id="x,g!9R-?-y?uik88((``">ts</field>
                                        </block>
                                      </value>
                                      <next>
                                        <block type="controls_if" id="LunffVj-]tT:(,z9^,_q">
                                          <mutation elseif="1"></mutation>
                                          <value name="IF0">
                                            <block type="logic_compare" id="IL@IJ8s]c5tui:O$W}|=">
                                              <field name="OP">LTE</field>
                                              <value name="A">
                                                <block type="variables_get" id="!p{~,OB{Uw!(Z~,A!NV(">
                                                  <field name="VAR" id="x,g!9R-?-y?uik88((``">ts</field>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <block type="text" id="]R*Ant$bl]NTd~;uhSsH">
                                                  <field name="TEXT">2.5</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                          <statement name="DO0">
                                            <block type="control" id="KQu2tz`!kh7VgiF/p?OD">
                                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                              <field name="OID">0_userdata.0.Haus.Anwesenheit_Raum.Buero.Anwesenheit_Allgemein</field>
                                              <field name="WITH_DELAY">FALSE</field>
                                              <value name="VALUE">
                                                <block type="logic_boolean" id="2(W~};5ckX#K3t#A.#]j">
                                                  <field name="BOOL">TRUE</field>
                                                </block>
                                              </value>
                                              <next>
                                                <block type="control" id="dHVt69l3ZKj[eWo_rSQo">
                                                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                  <field name="OID">0_userdata.0.Haus.Anwesenheit_Raum.Buero.Christian</field>
                                                  <field name="WITH_DELAY">FALSE</field>
                                                  <value name="VALUE">
                                                    <block type="logic_boolean" id="ucQI!Ze!;Iol0c3l5[]a">
                                                      <field name="BOOL">TRUE</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </next>
                                            </block>
                                          </statement>
                                          <value name="IF1">
                                            <block type="logic_compare" id="^d:,tJ=JS7kq8fM:~hK{">
                                              <field name="OP">GT</field>
                                              <value name="A">
                                                <block type="variables_get" id="JKP|}jp5{d!983jp%Zz{">
                                                  <field name="VAR" id="x,g!9R-?-y?uik88((``">ts</field>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <block type="text" id="@Y|bK89s*[lCI1d;,m5l">
                                                  <field name="TEXT">2.5</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                          <statement name="DO1">
                                            <block type="control" id="tSITJf25jA?9-,JVBp{E">
                                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                              <field name="OID">0_userdata.0.Haus.Anwesenheit_Raum.Buero.Anwesenheit_Allgemein</field>
                                              <field name="WITH_DELAY">FALSE</field>
                                              <value name="VALUE">
                                                <block type="logic_boolean" id="F3:/}9%Gu20CICf80.bN">
                                                  <field name="BOOL">FALSE</field>
                                                </block>
                                              </value>
                                              <next>
                                                <block type="control" id="`q~riE*r-/YR*uO!;ZC(">
                                                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                  <field name="OID">0_userdata.0.Haus.Anwesenheit_Raum.Buero.Christian</field>
                                                  <field name="WITH_DELAY">FALSE</field>
                                                  <value name="VALUE">
                                                    <block type="logic_boolean" id=")v$d2$r^B?dVnk).~fGL">
                                                      <field name="BOOL">FALSE</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </next>
                                            </block>
                                          </statement>
                                        </block>
                                      </next>
                                    </block>
                                  </next>
                                </block>
                              </statement>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </xml>
              
              

              1 Antwort Letzte Antwort
              1
              • H higginsd

                Mal eine Frage: erzielt mit den ESP32 irgendjemand ein auch nur halbwegs brauchbares Ergebnis? Bei mir zeigen die Dinger z.B. bei der Entfernung irgendwas an, aber zu 95% nichts, was der realen Entfernung entspricht. Mein Handy liegt 30-50cm neben dem ESP32 - und plötzlich erkennt er das Handy als nicht mehr im Raum (bzw. in der Nähe). So ist das Zeugs für mich zumindest nicht brauchbar, aber vielleicht mache ich ja auch etwas falsch...

                OliverIOO Offline
                OliverIOO Offline
                OliverIO
                schrieb am zuletzt editiert von
                #23

                @higginsd
                Evtl sendet das Gerät dann auch kein Bluetooth-Signal mehr?

                Meine Adapter und Widgets
                TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                Links im Profil

                1 Antwort Letzte Antwort
                0
                • amg_666A amg_666

                  @higginsd Ne, die Teile sind schon extrem ungenau (kann man wohl auch für so Billigteile wie ESP32 nicht anders erwarten...).
                  In der aktuellen Version (ESPresense Version: v3.1.0) kann man aber noch im Webfrontend nachjustieren.
                  Mein Handy liegt grade direkt vor einem D1 Mini, laut DP ist es 63cm entfernt. Mein mifit Armband ist ca 60cm vom D1 entfernt, DP sagt 1,69m.
                  Also zum ermitteln ob sich was eingebucht hat ist es ok, aber Entfernungen messen kannst du imho vergessen.

                  H Offline
                  H Offline
                  higginsd
                  schrieb am zuletzt editiert von
                  #24

                  @amg_666 Das ist mir schon klar und ich will auch gar keine Entfernungen messen. Aber es ist natürlich für den Sinn einer Personenerkennung im Raum nicht hilfreich, wenn der Sensor plötzlich das (mein) iPhone nicht mehr erkennt und die Software im ioBroker dahinter mich dann aus dem Raum "ausbucht".

                  Ich habe auch noch keine brauchbare Zeit gefunden, nach der man sagen kann: "jetzt kommen keine Meldungen mehr zu dem iPhone, also ist es nicht mehr in der Nähe/im Raum". Manchmal sendet der ESP32 alle 5 Sekunden, dann wieder häufiger, tja und gelegentlich auch erst wieder nach 30-40 Sekunden. Da ist für mich dann aber schon der Zeitpunkt erreicht, ab dem ich sage, daß die Person nicht mehr im Raum ist.

                  Woran liegt das, daß da so unregelmäßig Meldungen kommen? Bedeutet es, daß wenn nach 5 Sekunden keine Meldung kommt, das iPhone dann auch nicht erkannt wurde?

                  Das eine ich mit "wenig brauchbar". Aber ok, hatte wohl zu viel erwartet. Und das "Nachjustieren" im Frontend bringt rein gar nichts, damit habe ich schon stundenlang rumprobiert.

                  @OliverIO Warum sollte ein iPhone plötzlich für 40 Sekunden aufhören, Bluetooth zu senden? Leuchtet mir nicht ganz ein. Wie funktioniert denn dann eigentlich der ESP32-Sensor? Er schickt jedesmal, wenn er eine Bluetooth (KeepAlive?) Nachricht von einem Gerät empfängt, welches auf der WhiteList steht, eine Nachricht über mqtt raus? Oder prüft der Sensor regelmäßig, ob noch Kontakt zu dem Device in der WhiteList besteht und sendet dann eine Nachricht?

                  Ich will es verstehen, um den Fehler zu finden oder meine Erkennung anzupassen.

                  Viele Grüße
                  Dirk

                  OliverIOO amg_666A 2 Antworten Letzte Antwort
                  0
                  • H higginsd

                    @amg_666 Das ist mir schon klar und ich will auch gar keine Entfernungen messen. Aber es ist natürlich für den Sinn einer Personenerkennung im Raum nicht hilfreich, wenn der Sensor plötzlich das (mein) iPhone nicht mehr erkennt und die Software im ioBroker dahinter mich dann aus dem Raum "ausbucht".

                    Ich habe auch noch keine brauchbare Zeit gefunden, nach der man sagen kann: "jetzt kommen keine Meldungen mehr zu dem iPhone, also ist es nicht mehr in der Nähe/im Raum". Manchmal sendet der ESP32 alle 5 Sekunden, dann wieder häufiger, tja und gelegentlich auch erst wieder nach 30-40 Sekunden. Da ist für mich dann aber schon der Zeitpunkt erreicht, ab dem ich sage, daß die Person nicht mehr im Raum ist.

                    Woran liegt das, daß da so unregelmäßig Meldungen kommen? Bedeutet es, daß wenn nach 5 Sekunden keine Meldung kommt, das iPhone dann auch nicht erkannt wurde?

                    Das eine ich mit "wenig brauchbar". Aber ok, hatte wohl zu viel erwartet. Und das "Nachjustieren" im Frontend bringt rein gar nichts, damit habe ich schon stundenlang rumprobiert.

                    @OliverIO Warum sollte ein iPhone plötzlich für 40 Sekunden aufhören, Bluetooth zu senden? Leuchtet mir nicht ganz ein. Wie funktioniert denn dann eigentlich der ESP32-Sensor? Er schickt jedesmal, wenn er eine Bluetooth (KeepAlive?) Nachricht von einem Gerät empfängt, welches auf der WhiteList steht, eine Nachricht über mqtt raus? Oder prüft der Sensor regelmäßig, ob noch Kontakt zu dem Device in der WhiteList besteht und sendet dann eine Nachricht?

                    Ich will es verstehen, um den Fehler zu finden oder meine Erkennung anzupassen.

                    Viele Grüße
                    Dirk

                    OliverIOO Offline
                    OliverIOO Offline
                    OliverIO
                    schrieb am zuletzt editiert von
                    #25

                    @higginsd
                    aus energiespargründen.
                    warum sollte ein gerät kontinuierlich ein signal senden?

                    das selbe haben wir bei einigen iphones (leider nicht bei allen und ein schema lässt sich aktuell nicht ableiten), die nicht ständig im wlan angemeldet sind
                    und erst durch ein wecksignal wieder im wlan sichtbar sind.

                    Meine Adapter und Widgets
                    TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                    Links im Profil

                    1 Antwort Letzte Antwort
                    0
                    • H higginsd

                      @amg_666 Das ist mir schon klar und ich will auch gar keine Entfernungen messen. Aber es ist natürlich für den Sinn einer Personenerkennung im Raum nicht hilfreich, wenn der Sensor plötzlich das (mein) iPhone nicht mehr erkennt und die Software im ioBroker dahinter mich dann aus dem Raum "ausbucht".

                      Ich habe auch noch keine brauchbare Zeit gefunden, nach der man sagen kann: "jetzt kommen keine Meldungen mehr zu dem iPhone, also ist es nicht mehr in der Nähe/im Raum". Manchmal sendet der ESP32 alle 5 Sekunden, dann wieder häufiger, tja und gelegentlich auch erst wieder nach 30-40 Sekunden. Da ist für mich dann aber schon der Zeitpunkt erreicht, ab dem ich sage, daß die Person nicht mehr im Raum ist.

                      Woran liegt das, daß da so unregelmäßig Meldungen kommen? Bedeutet es, daß wenn nach 5 Sekunden keine Meldung kommt, das iPhone dann auch nicht erkannt wurde?

                      Das eine ich mit "wenig brauchbar". Aber ok, hatte wohl zu viel erwartet. Und das "Nachjustieren" im Frontend bringt rein gar nichts, damit habe ich schon stundenlang rumprobiert.

                      @OliverIO Warum sollte ein iPhone plötzlich für 40 Sekunden aufhören, Bluetooth zu senden? Leuchtet mir nicht ganz ein. Wie funktioniert denn dann eigentlich der ESP32-Sensor? Er schickt jedesmal, wenn er eine Bluetooth (KeepAlive?) Nachricht von einem Gerät empfängt, welches auf der WhiteList steht, eine Nachricht über mqtt raus? Oder prüft der Sensor regelmäßig, ob noch Kontakt zu dem Device in der WhiteList besteht und sendet dann eine Nachricht?

                      Ich will es verstehen, um den Fehler zu finden oder meine Erkennung anzupassen.

                      Viele Grüße
                      Dirk

                      amg_666A Offline
                      amg_666A Offline
                      amg_666
                      schrieb am zuletzt editiert von
                      #26

                      @higginsd sagte in Anwesenheitserkennung mit ESPresense:

                      Woran liegt das, daß da so unregelmäßig Meldungen kommen?

                      Das kann ich dir nicht beantworten, ich vermute aber dass es am Device liegt. Mein Samsung Handy bucht sich sehr zeitnah in espresence ein wenn ich den Raum wechsle, mein Fitnesstracker ist mal schnell, mal nicht wie von dir für dein iPhone beschrieben.

                      iobroker auf proxmox container

                      1 Antwort Letzte Antwort
                      0
                      • S Offline
                        S Offline
                        Stefan_TR96
                        schrieb am zuletzt editiert von
                        #27

                        Bin ebenfalls gerade am rumspielen mit esp32 dev kit c v4 mit espresense. Aktuell habe ich 2 Module in 2 Räumen im einsatz welche ein iphone und eine Garmin Smartwatch tracken.

                        Bin leider mit den Ergebnissen absolut nicht zufrieden, da die Entfernungsangaben absolut nicht stimmen. iphone und watch liegen beide ohne hindernisse an verschiedenen Positionen ca 3m vom Esp32 entfernt. Iphone sagt 1,2m, watch sagt 5,5m. Wenn ich beide geräte in den Nebenraum lege - ca 6m vom esp entfernt ändert sich die watch auf 4,9m und das iphone auf 2,5m

                        Habe heute einen Radarbewegungsmelder RCWL-0516 and das ESP angeschlossen, ist aber auch nicht zufriedenstellend. Auf 3m Distanz erkennt er nur massive Bewegungen.

                        Bin dann bei weiterer Recherche auf diesen thermischen Präsenzsensor gestossen. Wenn dich dieser einbinden lässt wäre es vielleicht eine vernünftige Lösung.

                        D6T1A02 Thermischer MEMS-Präsenzsensor

                        OliverIOO David G.D amg_666A 3 Antworten Letzte Antwort
                        0
                        • S Stefan_TR96

                          Bin ebenfalls gerade am rumspielen mit esp32 dev kit c v4 mit espresense. Aktuell habe ich 2 Module in 2 Räumen im einsatz welche ein iphone und eine Garmin Smartwatch tracken.

                          Bin leider mit den Ergebnissen absolut nicht zufrieden, da die Entfernungsangaben absolut nicht stimmen. iphone und watch liegen beide ohne hindernisse an verschiedenen Positionen ca 3m vom Esp32 entfernt. Iphone sagt 1,2m, watch sagt 5,5m. Wenn ich beide geräte in den Nebenraum lege - ca 6m vom esp entfernt ändert sich die watch auf 4,9m und das iphone auf 2,5m

                          Habe heute einen Radarbewegungsmelder RCWL-0516 and das ESP angeschlossen, ist aber auch nicht zufriedenstellend. Auf 3m Distanz erkennt er nur massive Bewegungen.

                          Bin dann bei weiterer Recherche auf diesen thermischen Präsenzsensor gestossen. Wenn dich dieser einbinden lässt wäre es vielleicht eine vernünftige Lösung.

                          D6T1A02 Thermischer MEMS-Präsenzsensor

                          OliverIOO Offline
                          OliverIOO Offline
                          OliverIO
                          schrieb am zuletzt editiert von
                          #28

                          @stefan_tr96
                          Problem ist halt Funkstrahlen reflektieren mal und mal nicht. So kann jemand im Nachbar Raum eine geringere Dämpfung des Signals haben wie jemand im gleichen Raum hinter einer Pflanze
                          Wasser schluckt mehr von dem 2.4 ghz Signal wie andere Stoffe.
                          Irgendwo bei github habe ich mal eine ki. Gesehen die das lernen kann. Aber zaubern kann die auch nicht. Im Zweifel benötigt man pro Raum 2 oder gar 3 Empfänger (triangulation) um genau zu ermitteln wo sich jemand befindet

                          Meine Adapter und Widgets
                          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                          Links im Profil

                          1 Antwort Letzte Antwort
                          0
                          • S Stefan_TR96

                            Bin ebenfalls gerade am rumspielen mit esp32 dev kit c v4 mit espresense. Aktuell habe ich 2 Module in 2 Räumen im einsatz welche ein iphone und eine Garmin Smartwatch tracken.

                            Bin leider mit den Ergebnissen absolut nicht zufrieden, da die Entfernungsangaben absolut nicht stimmen. iphone und watch liegen beide ohne hindernisse an verschiedenen Positionen ca 3m vom Esp32 entfernt. Iphone sagt 1,2m, watch sagt 5,5m. Wenn ich beide geräte in den Nebenraum lege - ca 6m vom esp entfernt ändert sich die watch auf 4,9m und das iphone auf 2,5m

                            Habe heute einen Radarbewegungsmelder RCWL-0516 and das ESP angeschlossen, ist aber auch nicht zufriedenstellend. Auf 3m Distanz erkennt er nur massive Bewegungen.

                            Bin dann bei weiterer Recherche auf diesen thermischen Präsenzsensor gestossen. Wenn dich dieser einbinden lässt wäre es vielleicht eine vernünftige Lösung.

                            D6T1A02 Thermischer MEMS-Präsenzsensor

                            David G.D Online
                            David G.D Online
                            David G.
                            schrieb am zuletzt editiert von
                            #29

                            @stefan_tr96 sagte in Anwesenheitserkennung mit ESPresense:

                            D6T1A02 Thermischer MEMS-Präsenzsensor

                            Denkst du, das klappt zuverlässig?
                            Vom ersten lesen her gibt das Teil die durchschnittliche Temperatur seiner Zellen aus.

                            Was ist wenn der Raum wärmer wird während man drinnen ist? Erkennt er einen dann noch im Übergangsberech?

                            Zeigt eure Lovelace-Visualisierung klick
                            (Auch ideal um sich Anregungen zu holen)

                            Meine Tabellen für eure Visualisierung klick

                            S 1 Antwort Letzte Antwort
                            0
                            • David G.D David G.

                              @stefan_tr96 sagte in Anwesenheitserkennung mit ESPresense:

                              D6T1A02 Thermischer MEMS-Präsenzsensor

                              Denkst du, das klappt zuverlässig?
                              Vom ersten lesen her gibt das Teil die durchschnittliche Temperatur seiner Zellen aus.

                              Was ist wenn der Raum wärmer wird während man drinnen ist? Erkennt er einen dann noch im Übergangsberech?

                              S Offline
                              S Offline
                              Stefan_TR96
                              schrieb am zuletzt editiert von
                              #30

                              @david-g

                              Ich denke es könnte funktionieren, habe diese info im room-Assistent projekt gefunden:

                              Präsenzerkennung mit Omron D6T

                              Eventuell wäre der Grid Eye Sensor auch eine Möglichkeit

                              Grid Eye

                              1 Antwort Letzte Antwort
                              0
                              • S Stefan_TR96

                                Bin ebenfalls gerade am rumspielen mit esp32 dev kit c v4 mit espresense. Aktuell habe ich 2 Module in 2 Räumen im einsatz welche ein iphone und eine Garmin Smartwatch tracken.

                                Bin leider mit den Ergebnissen absolut nicht zufrieden, da die Entfernungsangaben absolut nicht stimmen. iphone und watch liegen beide ohne hindernisse an verschiedenen Positionen ca 3m vom Esp32 entfernt. Iphone sagt 1,2m, watch sagt 5,5m. Wenn ich beide geräte in den Nebenraum lege - ca 6m vom esp entfernt ändert sich die watch auf 4,9m und das iphone auf 2,5m

                                Habe heute einen Radarbewegungsmelder RCWL-0516 and das ESP angeschlossen, ist aber auch nicht zufriedenstellend. Auf 3m Distanz erkennt er nur massive Bewegungen.

                                Bin dann bei weiterer Recherche auf diesen thermischen Präsenzsensor gestossen. Wenn dich dieser einbinden lässt wäre es vielleicht eine vernünftige Lösung.

                                D6T1A02 Thermischer MEMS-Präsenzsensor

                                amg_666A Offline
                                amg_666A Offline
                                amg_666
                                schrieb am zuletzt editiert von
                                #31

                                @stefan_tr96 sagte in Anwesenheitserkennung mit ESPresense:

                                da die Entfernungsangaben absolut nicht stimmen.

                                Richtig, daher werte ich auch aus, wann wo sich das Device zuletzt angemeldet hat (bei welchem ESP in welchem Raum) und dann habe ich eine ziemlich zuverlässige "Ortung" (Samsung Galaxy Smartphone iom Test).
                                Eine thermische Präsenzmessung hat m.E. den gravierenden Nachteil, dass man nur feststellt "da ist jemand im Raum". ich möchte aber idealerweise auch wissen WER da im Raum ist (bzw wessen Handy/Fitnesstracker)

                                iobroker auf proxmox container

                                S 1 Antwort Letzte Antwort
                                0
                                • amg_666A amg_666

                                  @stefan_tr96 sagte in Anwesenheitserkennung mit ESPresense:

                                  da die Entfernungsangaben absolut nicht stimmen.

                                  Richtig, daher werte ich auch aus, wann wo sich das Device zuletzt angemeldet hat (bei welchem ESP in welchem Raum) und dann habe ich eine ziemlich zuverlässige "Ortung" (Samsung Galaxy Smartphone iom Test).
                                  Eine thermische Präsenzmessung hat m.E. den gravierenden Nachteil, dass man nur feststellt "da ist jemand im Raum". ich möchte aber idealerweise auch wissen WER da im Raum ist (bzw wessen Handy/Fitnesstracker)

                                  S Offline
                                  S Offline
                                  Stefan_TR96
                                  schrieb am zuletzt editiert von
                                  #32

                                  @amg_666 habe ich auch schon versucht, bringt bei mir aber auch keine sauberen Ergebnisse. Die meines Erachtens vernünftigste Lösung ist der Ansatz: stelle mit möglichst hoher Zuverlässigkeit fest ob sich jemand im Raum befindet um gewisse Grunzustände (Heizung/Licht) herzustellen bzw zu halten und in einem weiteren Schritt wer sich im Raum befindet um personenspezifische Zustände zu halten bzw herzustellen. Am besten beides in einem Sensor vereint. Auch da ich nicht rund um die uhr mein Handy oder meine Smartwatch am Körper habe.

                                  Hab heute mal ein wenig in die Sache reingelesen und es gibt Projekte mit BLE Triangulation bzw. Trilateration und „raumweisen lernen“. Sind leider alle mehrere Jahre alt.

                                  OliverIOO 1 Antwort Letzte Antwort
                                  0
                                  • S Stefan_TR96

                                    @amg_666 habe ich auch schon versucht, bringt bei mir aber auch keine sauberen Ergebnisse. Die meines Erachtens vernünftigste Lösung ist der Ansatz: stelle mit möglichst hoher Zuverlässigkeit fest ob sich jemand im Raum befindet um gewisse Grunzustände (Heizung/Licht) herzustellen bzw zu halten und in einem weiteren Schritt wer sich im Raum befindet um personenspezifische Zustände zu halten bzw herzustellen. Am besten beides in einem Sensor vereint. Auch da ich nicht rund um die uhr mein Handy oder meine Smartwatch am Körper habe.

                                    Hab heute mal ein wenig in die Sache reingelesen und es gibt Projekte mit BLE Triangulation bzw. Trilateration und „raumweisen lernen“. Sind leider alle mehrere Jahre alt.

                                    OliverIOO Offline
                                    OliverIOO Offline
                                    OliverIO
                                    schrieb am zuletzt editiert von
                                    #33

                                    @stefan_tr96
                                    Das war das was ich oben mit ki meinte.
                                    Ideale Ergebnisse müsste man erreichen wenn man je Raum 3! Bluetooth Sensoren hat.
                                    Allerdings erzeugen die auch entsprechend Traffic das 2.4ghz wlan (je nachdem wie oft die Geräte angefragt werden) uU in Mitleidenschaft gezogen wird.

                                    Meine Adapter und Widgets
                                    TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                    Links im Profil

                                    S 1 Antwort Letzte Antwort
                                    0
                                    • OliverIOO OliverIO

                                      @stefan_tr96
                                      Das war das was ich oben mit ki meinte.
                                      Ideale Ergebnisse müsste man erreichen wenn man je Raum 3! Bluetooth Sensoren hat.
                                      Allerdings erzeugen die auch entsprechend Traffic das 2.4ghz wlan (je nachdem wie oft die Geräte angefragt werden) uU in Mitleidenschaft gezogen wird.

                                      S Offline
                                      S Offline
                                      Stefan_TR96
                                      schrieb am zuletzt editiert von
                                      #34

                                      @oliverio mit der ki bin ich bei dir, jedoch denke ich, dass es möglich sein müsste mit 3 bis 5 Sensoren pro Wohneinheit und entsprechendem Anlernen eine Art „RSSI Profil“ je Gerät zu erstellen da ja die BLE Verbindung durch Wände nicht zwangsweise abreisst. Eventuelle Überschneidungen müssten sich gerade in den eigenen vier Wänden durch Bewegungs bzw Präsenzmelder aufklären lassen.

                                      Quasi: nach BLE Ortung könnte sich die Person in der Küche oder im Bad aufhalten (Überschneidung), da jedoch der BM oder PM in der Küche ausgelöst und jener im Badezimmer nicht-> Person ist in der Küche
                                      Also eine sehr zuverlässige aber undetaillierte Technik mit einer sehr detaillierten aber eher unzuverlässigen verbinden.

                                      Wäre meine laienhafte Meinung hierzu da ich keine Ahnung betreffend der Umsetzung habe.

                                      OliverIOO 1 Antwort Letzte Antwort
                                      0
                                      • S Stefan_TR96

                                        @oliverio mit der ki bin ich bei dir, jedoch denke ich, dass es möglich sein müsste mit 3 bis 5 Sensoren pro Wohneinheit und entsprechendem Anlernen eine Art „RSSI Profil“ je Gerät zu erstellen da ja die BLE Verbindung durch Wände nicht zwangsweise abreisst. Eventuelle Überschneidungen müssten sich gerade in den eigenen vier Wänden durch Bewegungs bzw Präsenzmelder aufklären lassen.

                                        Quasi: nach BLE Ortung könnte sich die Person in der Küche oder im Bad aufhalten (Überschneidung), da jedoch der BM oder PM in der Küche ausgelöst und jener im Badezimmer nicht-> Person ist in der Küche
                                        Also eine sehr zuverlässige aber undetaillierte Technik mit einer sehr detaillierten aber eher unzuverlässigen verbinden.

                                        Wäre meine laienhafte Meinung hierzu da ich keine Ahnung betreffend der Umsetzung habe.

                                        OliverIOO Offline
                                        OliverIOO Offline
                                        OliverIO
                                        schrieb am zuletzt editiert von
                                        #35

                                        @stefan_tr96
                                        Genau wie bei WLAN bekommst du 2 Informationen
                                        Einmal eine eindeutige id und einen dämpfungswert in Dezibel. Aber keine richtungsinformation
                                        Anhand der Dezibel kannst du ungefähr auf die Entfernung schließen.
                                        Was du nicht weißt ist ob das Signal direkt oder reflektiert über dämpfende Materialien oder durch dämpfende Materialien geht.
                                        Der selbe gedämpfte wert bedeutet je nach Situation unterschiedliche Entfernungen.
                                        Diese sind Formation hat der Empfänger aber nicht.
                                        Sobald du weitere Empfänger hinzufügst (bspw je Raum ein Empfänger) könntest du aus den dezibelwerten von Raum 1 und Raum 2 unter idealbesingungen ermitteln wo sich der Sender befindet.
                                        Wenn die idealbedingungen Nicht erreicht werden wird es schwieriger

                                        Meine Adapter und Widgets
                                        TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                        Links im Profil

                                        S 1 Antwort Letzte Antwort
                                        0
                                        • OliverIOO OliverIO

                                          @stefan_tr96
                                          Genau wie bei WLAN bekommst du 2 Informationen
                                          Einmal eine eindeutige id und einen dämpfungswert in Dezibel. Aber keine richtungsinformation
                                          Anhand der Dezibel kannst du ungefähr auf die Entfernung schließen.
                                          Was du nicht weißt ist ob das Signal direkt oder reflektiert über dämpfende Materialien oder durch dämpfende Materialien geht.
                                          Der selbe gedämpfte wert bedeutet je nach Situation unterschiedliche Entfernungen.
                                          Diese sind Formation hat der Empfänger aber nicht.
                                          Sobald du weitere Empfänger hinzufügst (bspw je Raum ein Empfänger) könntest du aus den dezibelwerten von Raum 1 und Raum 2 unter idealbesingungen ermitteln wo sich der Sender befindet.
                                          Wenn die idealbedingungen Nicht erreicht werden wird es schwieriger

                                          S Offline
                                          S Offline
                                          senger1985
                                          schrieb am zuletzt editiert von senger1985
                                          #36

                                          Hallo miteinander,
                                          jetzt habe ich mich auch mal an das Projekt ESPresense gewagt und die Software, auf einen ESP32 geflasht.
                                          Soweit läuft, die Software auch, auf dem ESP.
                                          Aber jetzt zu meinem Problem:
                                          Wenn ich jetzt ins Terminal gehe, um meinen G-Tag zu identifizieren, bekomme ich mehrere Geräte angezeigt. Check
                                          Wenn ich jetzt aber den G-Tag von dem ESP entferne, um mir anzeigen zu lassen, welches Gerät "Close", oder "Left" ist, wird mir das nicht angezeigt und die Liste aktualisiert sich nicht.

                                          Wo könnte da der Fehler liegen?

                                          Danke euch

                                          amg_666A 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

                                          760

                                          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