NEWS
ESPresence - Blockly Script mit annähern/weggehen
-
Hab mir mal 10 Stück ESP32 mit ESPresence in die Wohnung getackert.
Funktioniert grundsätzlich. Aber VIIEEEEEL zu langsam beim "roaming" (also wenn man zwischen den ESPs mit dem Handy spazieren geht dauert die Umschaltung zu lange weil der Abstandswert sich SEHR langsam ändern.
Hintergrund: Ich will ESPresence zur Türöffnung benutzen. Türen sollen also öffnen wenn ich davor stehe. (kann man ja noch mit Geolocation zusätzlich absichern)
Hier sieht man wie ich zum WC hinlatsche und wie der Wert zu langsam niedrieger wird:
https://www.youtube.com/watch?v=lcYWwVok8eQJetzt meine Idee:
Wenn man sich zwischen 2 ESPs bewegt dann wird ja immer ein Abstands-Wert kleiner und er andere größer. Und das passiert ja schon frühzeitig genug.Aber wie kann ich das mit einem Blockly-Script hinbekommen?
Ich habe schon mal folgendes probiert... aber... bin zu dumm... tut's natürlich nicht.
Hat jemand einen Tip?
-
@roelli sagte: Hat jemand einen Tip?
Wenn
Wert
ein JSON enthält, dann enthält auchvorheriger Wert
ein JSON, also kann der Vergleich so nicht funktionieren.
Wenn die Abstandsänderung eines ESP zu langsam erfolgt, muss die Auswertung der Variablen in einer Funktion erfolgen, die in beiden Triggern aufgerufen wird. Prinzip: -
Mega! Das funktioniert perfekt!
Wie kann man aber Werte von verschiedenen "id" auslesen?
Der Datenpunkt wird sehr oft wiederholt beschrieben und zeigt alle erkannten Geräte in dem JSON file nacheinander an.Es gibt zwei Teile mit jeweils eine eigene ID senden.
"iphone13frank" und "irk:b2c693e5410af5ed7f9e9f112d37aXXb"Und von beiden muss ich separat den Wert "distance" lesen können.
{"id":"iphone13frank","name":"Iphone13Frank","disc":"XX1f0d32870738","idType":250,"rssi@1m":-65,"rssi":-82,"raw":3.06,"distance":3.23,"speed":-0.03,"mac":"XX192572a5be","interval":348}
(wenn ich "setze json auf" "distance" vom Objekt "Wert" mache dann habe ich das Gefühl es wird nur distance ausgelesen unabhängig davon welche id benutzt wird?
-
@roelli sagte: unabhängig davon welche id benutzt wird?
Ist es nicht egal, wer sich zur Haustür hin bewegt?
-
Stimmt!
"abhängig davon welche ID benutzt wird" wäre richtiger. -
Die Entfernung auszuwerten hat nicht gut funktioniert. Das war zu langsam.
Die Richtung zu erkennen war schon etwas besser. Allerdings muss die Info "weggegangen von der Tür" oder "hingegangen zur Tür" nur für z.B. 20 Sekunden aktiv werden, danach wieder deaktiviert werden.
Und dann muss ich es noch so machen, dass der Zutritt nur EINMAL funktioniert. Und erst wieder funktioniert wenn man den Raum/Bereich verlassen hat und DANN wieder kommt. Und als endgültiger Auslöser scheint ein normaler IR Melder vermutlich am besten zu funktionieren.
Und noch abfragen ob man GPS-Positionsmässig auch wirklich zu Hause ist, dann sollte es fast sicher sein.Ganz schön kompliziert!