Raspberry Pi iBeacon-Verbindung-timing aus
Ich bin derzeit versucht, den Raspberry Pi iBeacon-tutorial geschrieben von RadiusNetworks bei
http://developer.radiusnetworks.com/2013/10/09/how-to-make-an-ibeacon-out-of-a-raspberry-pi.html
aber ich habe Probleme mit der connection Timeout nach ein paar Sekunden. Ich habe ausgeführt, ein frisches build von raspbian und habe versucht mit 2 verschiedenen dongles (AZIO V400 und IOGEAR GBU521), und ich habe versucht mit Bluez 5.8 pro tutorial sowie Bluez 5.11, sowohl auf frischen Raspbian geladen.
Wenn ich das start-script sehe ich:
pi@piBlueTest ~ $ ./start
Launching virtual iBeacon...
LE set advertise enable on hci0 returned status 12
< HCI Command: ogf 0x08, ocf 0x0008, plen 44
1E 02 01 1A 1A FF 4C 00 02 15 E2 C5 6D B5 DF FB 48 D2 B0 60
D0 F5 A7 10 96 E0 00 00 00 00 C9 00 00 00 00 00 00 00 00 00
00 00 00 00
> HCI Event: 0x0e plen 4
01 08 20 00
Complete
Dies löst ein "Haben" - event auf dem iPhone mit der "Suchen iBeacon" - app und zeigt eine Distanz in Meter für ein paar Sekunden. Es zeigt dann "Abstand: unbekannt", da der Bereich für mehrere Sekunden, gefolgt durch eine "exit" - Ereignis Auftritt. Wenn ich die Sequenz mit "hcidump" läuft, bekomme ich
HCI sniffer - Bluetooth packet analyzer ver 5.11
device: hci0 snap_len: 1500 filter: 0xffffffff
< HCI Command: LE Set Advertise Enable (0x08|0x000a) plen 1
> HCI Event: Command Complete (0x0e) plen 4
LE Set Advertise Enable (0x08|0x000a) ncmd 1
status 0x0c
Error: Command Disallowed
< HCI Command: LE Set Advertising Data (0x08|0x0008) plen 44
> HCI Event: Command Complete (0x0e) plen 4
LE Set Advertising Data (0x08|0x0008) ncmd 1
status 0x00
< HCI Command: LE Set Advertising Parameters (0x08|0x0006) plen 15
min 1280.000ms, max 1280.000ms
type 0x00 (ADV_IND - Connectable undirected advertising) ownbdaddr 0x00 (Public)
directbdaddr 0x00 (Public) 00:00:00:00:00:00
channelmap 0x07 filterpolicy 0x00 (Allow scan from any, connection from any)
> HCI Event: Command Complete (0x0e) plen 4
LE Set Advertising Parameters (0x08|0x0006) ncmd 1
status 0x00
< HCI Command: LE Set Advertise Enable (0x08|0x000a) plen 1
> HCI Event: Command Complete (0x0e) plen 4
LE Set Advertise Enable (0x08|0x000a) ncmd 1
status 0x00
> HCI Event: LE Meta Event (0x3e) plen 19
LE Connection Complete
status 0x00 handle 64, role slave
bdaddr B8:F6:B1:1C:15:C8 (Public)
> ACL data: handle 64 flags 0x02 dlen 11
ATT: Read By Type req (0x08)
start 0x0001, end 0xffff
type-uuid 0x2a00
> HCI Event: Disconn Complete (0x05) plen 4
status 0x00 handle 64 reason 0x13
Reason: Remote User Terminated Connection
Scheint es, dass das iPhone versucht zu initiieren, eine Verbindung zum pi, und dann scheitert bei Verhandlungen, die Verbindung, die dann endet die Werbung.
Ich habe bereits die Schritte aus der Anleitung auf den Brief und kann nicht scheinen, um zu bestimmen, was die Ursache für die Verbindung trennen. Ich habe versucht, die änderung bluez-Versionen, und versucht, verschiedene hardware, aber ohne Erfolg. Irgendwelche Ideen welchen Schritt kann ich fehlen? Ich habe alles durchsucht ich denken kann für die Hinweise, haben aber nicht die Antwort gefunden noch. Vielen Dank im Voraus für jeden Rat!
- Chris, nach dem dies geschieht, wenn Sie neu starten, LE-Werbung auf dem Pi, hat iBeacon Suchen, starten Sie die Verfolgung wieder?
- Hallo David, danke für die Antwort. Ja, ich kann halten, Neustart, und es bleiben die gleichen Muster, sobald ich neu starten, wird es auslösen eine "Enter" - Ereignis, Berichterstattung Abstand für ein paar Sekunden, dann unbekannt, für mehrere weitere, dann in hcidump ich werde sehen, die trennen, gefolgt von der "Exit" - Ereignis.
- Hmmm. Ich habe nie gesehen, dieses Verhalten. Ich Frage mich, ob es ein Problem mit dem BLE-dongle, ein Unterschied in der Art und Weise haben Sie bluez konfiguriert, oder eine Kombination von beiden.
- Es ist sicherlich seltsam. Nur um sicher zu sein, Letzte Nacht habe ich wieder ein frisches build von 2013-09-25-wheezy-raspbian.zip die einzigen änderungen waren auf Gebietsschema ändern "Einstellungen", ändern Sie den Hostnamen, und starten Sie update und upgrade. Ich folgte dem tutorial, um die Buchstaben mit den iogear-dongle, und haben exakt das gleiche Ergebnis.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen Sie, das Gerät zu "werben und nicht-connectable" (3 statt 0) an Stelle von "werben und Anschließbare"
So hatten wir plötzlich ein Leuchtturm hinunter nach wenigen Sekunden wegen einem laptop versucht zu verbinden. Die Einstellung der Geräte für nicht-verbindungsfähigen das problem gelöst.
LE set advertise enable on hci0 returned status 12
nach dem ausführen des Befehls?Sieht aus wie haben Sie es gelöst, aber ich werde weitermachen und posten für andere, die vielleicht das gleiche problem hatte ich, und finde diesen thread.
Wie Chris, ich habe die Schritte aus dem tutorial mit der Ausnahme der Verwendung von bluez 5.11. Nach einigen Experimenten musste ich ändern Sie die Reihenfolge der Schritte in der "start" - Skript. Nicht sicher, warum, aber das scheint das einzige zu sein, in welcher Reihenfolge es korrekt funktioniert. Vielleicht habe ich etwas falsch gemacht?
Vielleicht können Sie dies verhindern, indem Sie was auch immer Gerät versucht, eine Verbindung zu stoppen, dies zu tun. Das ist nicht normal für iOS. Haben Sie sagen, es zu versuchen, eine Verbindung? Sind Sie sicher, es ist das iOS-Gerät, dies zu tun? Vielleicht ist es Ihr computer?
Alternativ, wenn Sie nicht bekommen kann es arbeiten selbst, kann ich bieten einen kostenlosen .die iso-Datei mit der genauen code, den wir auf die Einheiten, die wir verkaufen, vormontiert. Diese beseitigen könnte ein build-problem. Bitte senden Sie eine Notiz über unseren Vertrieb wenden, wenn Sie wollen, dies zu versuchen.