Mess-Nähe mit bluetooth auf raspberry Pi
Ich habe versucht, verwenden Sie dieses Skript, https://github.com/karulis/pybluez/blob/master/examples/advanced/inquiry-with-rssi.py aber es scheint, dass sock = bluez.hci_open_dev(dev_id)
gibt eine nicht funktionierende Steckdose. Jedes mal, wenn Socke ist, die einer Funktion übergeben error(9, 'Bad file descriptor')
geworfen wird.
Dieses Skript ist ziemlich alt, so gibt es eine gute chance, es funktioniert nicht mehr. Also ich habe zwei Fragen. Weiß jemand, wie die pybluez Bibliothek (oder ein moderneres äquivalent) zum Messen der Nähe von einem bluetooth-Gerät mit einem raspberry pi?
Was mache ich falsch mit diesem Skript werden, dass verursacht me zu bauen, einen gebrochenen Steckdose?
Dank.
Es ist schon eine Weile jetzt, aber ich glaube, das ist das gleiche script.
InformationsquelleAutor Daniel Nill | 2014-03-16
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen Sie dies:
Laufen
hcitool dev
um die Adresse Ihres bluetooth-Geräts.In das Skript verknüpft ist, ändern Sie Zeile 120 aus:
:
Messen, Nähe, ruft das Skript die Funktion
dem drucken soll eine Liste der bluetooth-Geräte-ids und die entsprechenden RSSI-Werte (siehe Zeilen 95-102). In der Regel, die Geräte müssen in den pairing-Modus zu zeigen, bis in der Anfrage-Ergebnisse. Die Funktion liefert die Liste der IDs/RSSIs als ein array, so können Sie rufen Sie es von Ihrem eigenen code und Verarbeitung der zurückgegebenen Ergebnisse. Der RSSI-Wert gibt die Signalstärke des Geräts, und so ist ein indirektes Maß für die Nähe (siehe Finden die Entfernung von RSSI-Wert von Bluetooth Low Energy fähigen Gerät ).
Tut mir Leid, dass; ich habe überarbeitet die Antwort. Anstelle von NULL, -1
Ich denke dev_id = bluez.hci_get_route() funktionieren auch.
Ich habe bearbeitet, die Antwort auf eine funktionierende Lösung.
InformationsquelleAutor imjosh
Je nach Gerät, das Sie verwenden möchten, Bluepy in Python könnte eine bessere Methode. Habe ich eine Pi3 Messen RSSI von Bluetooth-Modulen (HM-10, CC254x-basierten Geräten) und war in der Lage, angemessene Schätzungen der Distanz. Es gibt eine Tonne von Lärm in der RSSI, so dass Ungenauigkeiten von nicht weniger als 1m mit einigen signal-Verarbeitung. Ich schrieb einen blog-post auf RSSI von HM-10 und des Rpi, check it out für eine mehr in die Tiefe Methode wie ich es mache. Ich habe sogar einige Python-code:
https://engineersportal.com/blog/2017/12/31/using-raspberry-pi-hm-10-and-bluepy-to-develop-an-ibeacon-mesh-network-part-1
InformationsquelleAutor Joshua Hrisko