iBeacon 广播间隔 Raspberry Pi
iBeacon Broadcast Interval with Raspberry Pi
我的 Raspberry Pi 有一个每 ~1280 毫秒广播一次的 iBeacon,但我需要它每 ~100 毫秒广播一次,我该如何配置它?
我的设置方式:
我遵循了这个指南:
http://www.wadewegner.com/2014/05/create-an-ibeacon-transmitter-with-the-raspberry-pi/
我有一个 Cambridge Silicon Radio, Ltd 蓝牙加密狗(HCI 模式)
我的配置字符串:
hcitool -i hci0 cmd 0x08 0x0008 1E 02 01 1A 1A FF 4C 00 02 15 63 6F 3F 8F 64 91 4B EE 95 F7 D8 CC 64 A8 63 B5 00 00 00 00 C8 00
在我的 phone 上,我看到我的 iBeacon,UUID 是正确的,Major 和 Minor 版本是正确的。我遇到的问题是广播速率。
我可以将它从 ~1.2 秒更改为 ~100 毫秒吗?
更新 1:
我仍然遇到错误。
pi@raspberrypi ~ $ sudo hciconfig hci0 up
pi@raspberrypi ~ $ sudo hcitool -i hci0 cmd 0x08 0x0008 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 c5 00 00 00 00 00 00 00 00 00 00 00 00 00
< 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 C5 00 00 00 00 00 00 00 00 00
00 00 00 00
> HCI Event: 0x0e plen 4
01 08 20 12
pi@raspberrypi ~ $ sudo hcitool -i hci0 cmd 0x08 0x0006 A0 00 A0 00 03 00 00 00 00 00 00 00 00 07 00
< HCI Command: ogf 0x08, ocf 0x0006, plen 15
A0 00 A0 00 03 00 00 00 00 00 00 00 00 07 00
> HCI Event: 0x0e plen 4
01 06 20 0C
pi@raspberrypi ~ $ sudo hcitool -i hci0 cmd 0x08 0x000a 01
< HCI Command: ogf 0x08, ocf 0x000a, plen 1
01
> HCI Event: 0x0e plen 4
01 0A 20 0C
更新 2:
我找到了让它工作的方法:
hciconfig hci0 down
hciconfig hci0 up
hcitool -i hci0 cmd 0x08 0x0008 1E 02 01 1A 1A FF 4C 00 02 15 63 6F 3F 8F 64 91 4B EE 95 F7 D8 CC 64 A8 63 B5 00 00 00 00 C8 00
hcitool -i hci0 cmd 0x08 0x0006 20 00 A0 00 00 00 00 00 00 00 00 00 00 07 00
hcitool -i hci0 cmd 0x08 0x000A 01
hciconfig hci0 noscan
我认为关键是 noscan 部分。我想如果扫描打开我就不能改变广告频率。
我发现有用的其他资源:
https://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=229737
特别是第 2 卷,E 部分,第 7.8 节这给了我发送的命令的实际描述,而不是复制和粘贴编程。
您可以像这样将广告率提高到 10 Hz:
sudo hciconfig hci0 up
sudo hcitool -i hci0 cmd 0x08 0x0008 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 c5 00 00 00 00 00 00 00 00 00 00 00 00 00
sudo hcitool -i hci0 cmd 0x08 0x0006 A0 00 A0 00 03 00 00 00 00 00 00 00 00 07 00
sudo hcitool -i hci0 cmd 0x08 0x000a 01
有关详细信息,请参阅此处:
Is there a way to increase BLE advertisement frequency in BlueZ?
我的 Raspberry Pi 有一个每 ~1280 毫秒广播一次的 iBeacon,但我需要它每 ~100 毫秒广播一次,我该如何配置它?
我的设置方式:
我遵循了这个指南: http://www.wadewegner.com/2014/05/create-an-ibeacon-transmitter-with-the-raspberry-pi/
我有一个 Cambridge Silicon Radio, Ltd 蓝牙加密狗(HCI 模式)
我的配置字符串:
hcitool -i hci0 cmd 0x08 0x0008 1E 02 01 1A 1A FF 4C 00 02 15 63 6F 3F 8F 64 91 4B EE 95 F7 D8 CC 64 A8 63 B5 00 00 00 00 C8 00
在我的 phone 上,我看到我的 iBeacon,UUID 是正确的,Major 和 Minor 版本是正确的。我遇到的问题是广播速率。
我可以将它从 ~1.2 秒更改为 ~100 毫秒吗?
更新 1: 我仍然遇到错误。
pi@raspberrypi ~ $ sudo hciconfig hci0 up
pi@raspberrypi ~ $ sudo hcitool -i hci0 cmd 0x08 0x0008 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 c5 00 00 00 00 00 00 00 00 00 00 00 00 00
< 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 C5 00 00 00 00 00 00 00 00 00
00 00 00 00
> HCI Event: 0x0e plen 4
01 08 20 12
pi@raspberrypi ~ $ sudo hcitool -i hci0 cmd 0x08 0x0006 A0 00 A0 00 03 00 00 00 00 00 00 00 00 07 00
< HCI Command: ogf 0x08, ocf 0x0006, plen 15
A0 00 A0 00 03 00 00 00 00 00 00 00 00 07 00
> HCI Event: 0x0e plen 4
01 06 20 0C
pi@raspberrypi ~ $ sudo hcitool -i hci0 cmd 0x08 0x000a 01
< HCI Command: ogf 0x08, ocf 0x000a, plen 1
01
> HCI Event: 0x0e plen 4
01 0A 20 0C
更新 2: 我找到了让它工作的方法:
hciconfig hci0 down
hciconfig hci0 up
hcitool -i hci0 cmd 0x08 0x0008 1E 02 01 1A 1A FF 4C 00 02 15 63 6F 3F 8F 64 91 4B EE 95 F7 D8 CC 64 A8 63 B5 00 00 00 00 C8 00
hcitool -i hci0 cmd 0x08 0x0006 20 00 A0 00 00 00 00 00 00 00 00 00 00 07 00
hcitool -i hci0 cmd 0x08 0x000A 01
hciconfig hci0 noscan
我认为关键是 noscan 部分。我想如果扫描打开我就不能改变广告频率。
我发现有用的其他资源: https://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=229737 特别是第 2 卷,E 部分,第 7.8 节这给了我发送的命令的实际描述,而不是复制和粘贴编程。
您可以像这样将广告率提高到 10 Hz:
sudo hciconfig hci0 up
sudo hcitool -i hci0 cmd 0x08 0x0008 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 c5 00 00 00 00 00 00 00 00 00 00 00 00 00
sudo hcitool -i hci0 cmd 0x08 0x0006 A0 00 A0 00 03 00 00 00 00 00 00 00 00 07 00
sudo hcitool -i hci0 cmd 0x08 0x000a 01
有关详细信息,请参阅此处:
Is there a way to increase BLE advertisement frequency in BlueZ?