NEWS
Pi 3 als Bluetooth LE Scanner (Beispielscript)
-
Gesendet von meinem iPhone mit Tapatalk `
Hat das eigentlich geklappt?
Es ging um die Variable serviceUUIDs. Mir viel dann noch ein, dass ich noch gar nicht getestet hatte, ob dort die Mac-Adresse rein muss oder die UUID. Ich gehe mal von der Mac-Adresse aus.
-
habe nun mein RPi3 neu aufgesetzt
nach anleitung installiert
und es läuft :!:
Nun mal schauen was alles so gesehen wird
Gruß
Jürgen
-
es wird nun ein Gerät gefunden (Welches auch immer ? )
Tab4 nicht
SmatePhone nicht
BlackBarry nicht
(mal eine Nacht drüber schlafen)
Gruß
Jürgen
-
Hi Jürgen,
danke für das Feedback!
Tab4, SmartPhone und BlackBerry sind keine BLE Geräte.
Mein iPhone, iPads und Macs werden auch nicht angezeigt.
Gefunden werden Geräte, die dauerhaft Bluetooth aussenden, wie Fitnessarmbänder, Bluetooth Tags und Geräte, die sich über Bluetooth zur Konfiguration bemerkbar machen, wie der Aura Lichtwecker.
Warum der Samsung Fernseher der Nachbarn ständig funkt, wenn er an ist… so kann ich denen einen monatlichen Report über deren Fernsehkonsum erstellen
ich hoffe, dass der Gigaset G-tag dazugehört. Am Wochenende werde ich es wissen.
wenn ja kommt der G-tag ans Schlüsselbund und ergänzt meine Anwesenheitserkennung um die dann zuverlässigste Methode.
Bisher mache ich das per:
- Ping auf die iPhones
(in der jetzigen ioBroker Installation gestoppt, da der Ping Adapter auf dem iMac Probleme macht). Funktioniert auch nur, wenn man bei Ankunft den Bildschirm vom iPhone aktiviert oder es am Ladegerät hängt
- ein Raspberry Pi 2 mit Bluetooth Stick als iBeacon und Geofency. Funktioniert besser als die Erkennung über WLAN und Ping. Ist aber auch nicht ganz perfekt. Wenn der Akku vom iPhone leer ist z.B. nicht und manchmal schwankt die Erkennung. Und es zerrt am Akku.
Den Schlüssel hat man immer bei sich und die Batterie soll über ein Jahr halten.
Fitnissarmbänder oder Sticks, wie den Fitbit One sind auch schon oft vorhanden und werden auch oft dauerhaft getragen.
Danke schon einmal für Dein Feedback!
Würde mich interessieren, was da bei dir funkt. Dürfte aber nicht so einfach rauszufinden sein
Gesendet von iPhone mit Tapatalk
-
Hallo Jürgen,
eine kleine Ergänzung. Wenn Du aus Deinen Androids ein Bacon machst, dann dürften die auch funktionieren.
ich habe mal nach einer passenden App gegoogelt:
https://play.google.com/store/apps/deta … uickbeacon
Gruß,
Michael
-
nun sind es bereis 6 Geräte geworden
Gruß
Jürgen
-
nun sind es bereis 6 Geräte geworden `
Hi Jürgen,
Danke für die Info! Laut Screenshot sind es bei Dir nur zwei Geräte (CountAll = 2), ein Gigaset G-tag und ein Samsung TV.
Freue mich gerade. D.h. das G-Tag wird funktionieren
Sind das Deine Geräte (Samsung Fernseher und das/der G-tag)?
VG,
Michael
-
Laut Screenshot sind es bei Dir nur zwei Geräte `
stimmt. Da hatte ich das Bild gemacht.
inzwischen hat er bereits 11 devices gesehen.
und Ja
Es ist ein Samsung TV und
ein Gigaset ?
Gruß
Jürgen
-
ein Gigaset ? `
Ein Gigaset G-tag:
http://www.amazon.de/Gigaset-Bluetooth- … aset+g-tag
Wenn es nicht Deins ist, dann war vielleicht jemand in der Nähe mit so einem Ding.
Auf jeden Fall geht es mir u.a. darum. Ich hab eins zum Test bestellt und mich schon gefreut, dass es bei Dir erkannt wird
-
ok
dann ist es wohl vorbei gefahren
der Wert "32.73" bei "Bluetooth Device Distanz" sind wohl Meter Entfernung?
ich dachte erst es sei mein Gigaset Telefon SX353isdn mit BT
NAchdem ich mein SamsungTV nun ausgeschaltet habe ist der OnlineZähler auf 0
Gruß
Jürgen
-
32,73 sollen m sein. Die Formel zur Berechnung der Distanz war inspiriert von dem Projekt: https://medium.com/truth-labs/beacon-tr … .9ou5pmul5.
Allerdings sind es gefühlt eher Feet, wenn ich das bei mir verglichen habe. Und es springt schon argh hin un her.
Vorbeigefahren glaube ich eher nicht. Vielleicht hatte der Briefträger so ein Ding am Schlüsselbund. 7:36 Uhr?
-
Interessantes Skript, würde sich auch als Adapter gut machen (ähnlich dem Ping Adapter).
Die Entfernung bei Beacons muss im Beacon kalibriert werden:
zu erst sendet man mit dem Beacon die Bluetooth advertising packets und guckt mit einem Empfänger wie stark der Empfang in einem Meter Entfernung ist. Diesen Wert trägt man dann wiederum im Beacon ein, das den Wert dann glaube ich in den advertising packets mitsendet. Der Empfänger kann dann mit dem aktuellen Empfangswert und dem bekannten Wert bei einem Meter Entfernung seine eigene Distanz berechnen.
Bei dem Skript müsste man das dann eher umgekehrt machen, also im Skript pro Gerät die Empfangsstärke bei einer gewissen Entfernung eingeben und danach die aktuelle Distanz berechnen.
Ohne die Formel studiert zu haben denke ich, dass es die Variable txPower ist, welche man pro Gerät justieren müsste.
-
Interessantes Skript, würde sich auch als Adapter gut machen (ähnlich dem Ping Adapter).
Die Entfernung bei Beacons muss im Beacon kalibriert werden:
zu erst sendet man mit dem Beacon die Bluetooth advertising packets und guckt mit einem Empfänger wie stark der Empfang in einem Meter Entfernung ist. Diesen Wert trägt man dann wiederum im Beacon ein, das den Wert dann glaube ich in den advertising packets mitsendet. Der Empfänger kann dann mit dem aktuellen Empfangswert und dem bekannten Wert bei einem Meter Entfernung seine eigene Distanz berechnen.
Bei dem Skript müsste man das dann eher umgekehrt machen, also im Skript pro Gerät die Empfangsstärke bei einer gewissen Entfernung eingeben und danach die aktuelle Distanz berechnen.
Ohne die Formel studiert zu haben denke ich, dass es die Variable txPower ist, welche man pro Gerät justieren müsste. `
Hallo Pman,
vielen Dank für die Erklärung zur Entfernung. Ich schaue mir das an.
Ich möchte noch etwas an dem Skript basteln und wenn es Sinn macht dann in der Tat auf der daraus gewonnen Erfahrung einen zweiten Adapter basteln. So etwas dauert bei mir nur etwas Vielleicht kommt mir auch Bluefox zuvor http://forum.iobroker.net/viewtopic.php … 507#p22238.
-
Interessantes Skript, würde sich auch als Adapter gut machen (ähnlich dem Ping Adapter).
Die Entfernung bei Beacons muss im Beacon kalibriert werden:
zu erst sendet man mit dem Beacon die Bluetooth advertising packets und guckt mit einem Empfänger wie stark der Empfang in einem Meter Entfernung ist. Diesen Wert trägt man dann wiederum im Beacon ein, das den Wert dann glaube ich in den advertising packets mitsendet. Der Empfänger kann dann mit dem aktuellen Empfangswert und dem bekannten Wert bei einem Meter Entfernung seine eigene Distanz berechnen.
Bei dem Skript müsste man das dann eher umgekehrt machen, also im Skript pro Gerät die Empfangsstärke bei einer gewissen Entfernung eingeben und danach die aktuelle Distanz berechnen.
Ohne die Formel studiert zu haben denke ich, dass es die Variable txPower ist, welche man pro Gerät justieren müsste. `
Hallo Pman,
vielen Dank für die Erklärung zur Entfernung. Ich schaue mir das an.
Ich möchte noch etwas an dem Skript basteln und wenn es Sinn macht dann in der Tat auf der daraus gewonnen Erfahrung einen zweiten Adapter basteln. So etwas dauert bei mir nur etwas Vielleicht kommt mir auch Bluefox zuvor http://forum.iobroker.net/viewtopic.php … 507#p22238. `
Ich habe gesagt ich habe Willen dazu. Ich habe aber wirklich keine Möglichkeit.Fang an wir werden helfen.
-
Ich habe gesagt ich habe Willen dazu. Ich habe aber wirklich keine Möglichkeit.
Fang an wir werden helfen. `
Ja. Ich werde das schon machen. Habe ich Lust drauf.
Wird halt nur wirklich was dauern
Danke! Und einen schönen Urlaub!
-
Der Gigaset G-Tag ist ist heute angekommen. Ein kurzes Feedback dazu.
http://www.amazon.de/Gigaset-Bluetooth- … aset+g-tag
-
Batterieschutz entfernt, der G-Tag wird in den Objekte sofort angezeigt
-
G-Tag App im Apple Store heruntergeladen und den G-Tag dort angemeldet. In dem Moment verschwindet der G-Tag aus den Objekten (lastState: false).
-
G-Tag in der App wieder gelöscht. lastState geht sofort wieder auf true
-
der G-Tag ist etwas dicker als gedacht.
Fazit:
-
der G-Tag kann zur Anwesenheitserkennung genutzt werden, kann dann aber nicht parallel in der G-Tag App genutzt werden
-
Fitnesstools, wie der Fitbit One oder das Mi-Band sind eine Alternative und senden dauerhaft
-
-
Interessantes Skript, würde sich auch als Adapter gut machen (ähnlich dem Ping Adapter).
Die Entfernung bei Beacons muss im Beacon kalibriert werden:
zu erst sendet man mit dem Beacon die Bluetooth advertising packets und guckt mit einem Empfänger wie stark der Empfang in einem Meter Entfernung ist. Diesen Wert trägt man dann wiederum im Beacon ein, das den Wert dann glaube ich in den advertising packets mitsendet. Der Empfänger kann dann mit dem aktuellen Empfangswert und dem bekannten Wert bei einem Meter Entfernung seine eigene Distanz berechnen.
Bei dem Skript müsste man das dann eher umgekehrt machen, also im Skript pro Gerät die Empfangsstärke bei einer gewissen Entfernung eingeben und danach die aktuelle Distanz berechnen.
Ohne die Formel studiert zu haben denke ich, dass es die Variable txPower ist, welche man pro Gerät justieren müsste. `
Danke für die Erläuterung und die Anregung!
Die Möglichkeit zur Kalibrierung der einzelnen Geräte, sowie die Optimierung der Distanzbrechung ist im Skript nun eingebaut.
-
Hallo ruhr,
vielen Dank für das script.
Ich habe es nach Anleitung installiert, bekomme aber leider relativ schnell eine exception:
! ````
host-Raspi31 2016-03-29 16:58:24 info Restart adapter system.adapter.javascript.1 because enabled
host-Raspi31 2016-03-29 16:58:24 error instance system.adapter.javascript.1 terminated with code 6 (uncaught exception)
SyntaxError: 2016-03-29 16:58:24 error at Timer.listOnTimeout (timers.js:92:15)
SyntaxError: 2016-03-29 16:58:24 error at ontimeout [as _onTimeout] (timers.js:209:34)
SyntaxError: 2016-03-29 16:58:24 error at null. (/root/node_modules/iobroker.javascript/javascript.js:1720:44)
SyntaxError: 2016-03-29 16:58:24 error at Object.stopScan (script.js.Test.Bluetooth_Scanner:943:67)
SyntaxError: 2016-03-29 16:58:24 error at Object.parse (native)
SyntaxError: 2016-03-29 16:58:24 error Unexpected end of input
uncaught 2016-03-29 16:58:24 error exception: Unexpected end of input
javascript-1 2016-03-29 16:58:24 info script.js.Test.Bluetooth_Scanner: debug0: Bluetooth Scan 1 OK. Devices gescannt: 0, davon neu: 0 / Devices in DB: 0, davon nicht erreichbar: 0
history-0 2016-03-29 16:58:17 info sendTo "getHistory" to system.adapter.web.0 from system.adapter.history.0: {"result":[{"ts":1459263355,"val":null}],"step":300,"error":null}
web-0 2016-03-29 16:58:17 info sendTo "getHistory" to system.adapter.history.0 from system.adapter.web.0: {"id":"hm-rpc.0.GEQ0015983.1.TEMPERATURE","options":{"start":1459263205,"end":1459263505,"ignoreNull":false,"aggregate":"ave
javascript-1 2016-03-29 16:58:14 info script.js.Test.Bluetooth_Scanner: debug1: ####### start scanning - Durchlauf (1) #######
javascript-1 2016-03-29 16:58:14 info script.js.Test.Bluetooth_Scanner: debug2: Kommando Bluetooth Scanner an: true
javascript-1 2016-03-29 16:58:13 info script.js.Test.Bluetooth_Scanner: registered 0 subscriptions and 0 schedules
javascript-1 2016-03-29 16:58:13 info script.js.Test.Bluetooth_Scanner: debug1: dpAnlegen() - Datenpunkte angelegt (createState) in javascript.1.Bluetooth.
javascript-1 2016-03-29 16:58:13 info script.js.Test.Bluetooth_Scanner: debug1: Vars, Loglevel und Scriptname gesetzt
javascript-1 2016-03-29 16:58:13 info script.js.Test.Bluetooth_Scanner: --== script.js.Test.Bluetooth_Scanner ==-- gestartet. Instanz: "javascript.1.", Loglevel: debug2
javascript-1 2016-03-29 16:58:13 info Start javascript script.js.Test.Bluetooth_ScannerHast Du eine Idee woran das liegen könnte? Danbke und Gruß,
-
Ich habe es nach Anleitung installiert, bekomme aber leider relativ schnell eine exception:
[…]
Hast Du eine Idee woran das liegen könnte?
Danbke und Gruß, `
Danke erst einmal fürs Testen!
Was mir auffällt, dass nach dem ersten Durchlauf kein Gerät gefunden wurde. Ich schau mal, ob ich mit der Situation (0 Geräte) noch einen Fehler drin habe.
Hab die Situation bei mir nicht. Bei mir werden im ersten Durchlauf schon immer mind. 6 Geräte gefunden. Deswegen bin ich für jeden Test dankbar!
-
Hallo ruhr,
vielen Dank für das script.
Ich habe es nach Anleitung installiert, bekomme aber leider relativ schnell eine exception:
! ````
host-Raspi31 2016-03-29 16:58:24 info Restart adapter system.adapter.javascript.1 because enabled
host-Raspi31 2016-03-29 16:58:24 error instance system.adapter.javascript.1 terminated with code 6 (uncaught exception)
SyntaxError: 2016-03-29 16:58:24 error at Timer.listOnTimeout (timers.js:92:15)
SyntaxError: 2016-03-29 16:58:24 error at ontimeout [as _onTimeout] (timers.js:209:34)
SyntaxError: 2016-03-29 16:58:24 error at null. (/root/node_modules/iobroker.javascript/javascript.js:1720:44)
SyntaxError: 2016-03-29 16:58:24 error at Object.stopScan (script.js.Test.Bluetooth_Scanner:943:67)
SyntaxError: 2016-03-29 16:58:24 error at Object.parse (native)
SyntaxError: 2016-03-29 16:58:24 error Unexpected end of input
uncaught 2016-03-29 16:58:24 error exception: Unexpected end of input
javascript-1 2016-03-29 16:58:24 info script.js.Test.Bluetooth_Scanner: debug0: Bluetooth Scan 1 OK. Devices gescannt: 0, davon neu: 0 / Devices in DB: 0, davon nicht erreichbar: 0
history-0 2016-03-29 16:58:17 info sendTo "getHistory" to system.adapter.web.0 from system.adapter.history.0: {"result":[{"ts":1459263355,"val":null}],"step":300,"error":null}
web-0 2016-03-29 16:58:17 info sendTo "getHistory" to system.adapter.history.0 from system.adapter.web.0: {"id":"hm-rpc.0.GEQ0015983.1.TEMPERATURE","options":{"start":1459263205,"end":1459263505,"ignoreNull":false,"aggregate":"ave
javascript-1 2016-03-29 16:58:14 info script.js.Test.Bluetooth_Scanner: debug1: ####### start scanning - Durchlauf (1) #######
javascript-1 2016-03-29 16:58:14 info script.js.Test.Bluetooth_Scanner: debug2: Kommando Bluetooth Scanner an: true
javascript-1 2016-03-29 16:58:13 info script.js.Test.Bluetooth_Scanner: registered 0 subscriptions and 0 schedules
javascript-1 2016-03-29 16:58:13 info script.js.Test.Bluetooth_Scanner: debug1: dpAnlegen() - Datenpunkte angelegt (createState) in javascript.1.Bluetooth.
javascript-1 2016-03-29 16:58:13 info script.js.Test.Bluetooth_Scanner: debug1: Vars, Loglevel und Scriptname gesetzt
javascript-1 2016-03-29 16:58:13 info script.js.Test.Bluetooth_Scanner: --== script.js.Test.Bluetooth_Scanner ==-- gestartet. Instanz: "javascript.1.", Loglevel: debug2
javascript-1 2016-03-29 16:58:13 info Start javascript script.js.Test.Bluetooth_ScannerHast Du eine Idee woran das liegen könnte? Danbke und Gruß, `
Kannst Du bitte die neue Version im Post Nr. 3 http://forum.iobroker.net/viewtopic.php … 513#p22234 ausprobieren.
Ich hab es recht schwer die Situation mit 0 gefundenen Devices nachzustellen