【问题标题】:ibeacon does not apear in iPhone 4Sibeacon 没有出现在 iPhone 4S 中
【发布时间】:2014-03-28 12:44:30
【问题描述】:

我正在尝试制作 Raspberry ibeacon,并且设置已完成。但我在 iPhone 4S (iOS7.1) 上看不到任何信标。我正在使用的应用是 Locate iBeacon(来自 Radius Networks),我在应用中注册了我的 UUID 以进行搜索。

StackOverflow 中有很多问题和答案,但这些对我没有帮助。或者我找不到适合我的情况的东西,真的很抱歉,但请帮助我。 我用 CSR 和 Broadcom BT4.0 加密狗测试了 Raspberry、Fedora。并尝试在命令结束时在功率值之后删除或添加填充。我还在应用程序中为我的命令尝试了示例 UUID。但结果是一样的。

root@raspberrypi:/home/pi# hciconfig
hci0:   Type: BR/EDR  Bus: USB
BD Address: 00:19:0E:14:BD:AD  ACL MTU: 1021:8  SCO MTU: 64:1
UP RUNNING 
RX bytes:85780 acl:42 sco:0 events:2848 errors:0
TX bytes:4651 acl:40 sco:0 commands:207 errors:0

root@raspberrypi:/home/pi# hciconfig hci0 leadv 3

root@raspberrypi:/home/pi# hciconfig hci0 noscan

root@raspberrypi:/home/pi# hcitool -i hci0 cmd 0x08 0x0008 1E 02 01 1A 1A FF 4C 00 02 15 E2 0A 39 F4 73 F5 4B C4 A1 2F 17 D1 AD 07 A9 61 00 00 00 00 C8 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 0A 39 F4 73 F5 4B C4 A1 2F 
  17 D1 AD 07 A9 61 00 00 00 00 C8 00 00 00 00 00 00 00 00 00 
  00 00 00 00 
>HCI Event: 0x0e plen 4
  01 08 20 00

我在应用程序中输入了 UUID E20A39F4-73F5-4BC4-A12F-17D1AD07A961。

有人有什么建议吗?

仅供参考,l2ping 到我的 iPhone 可以,如下所示

root@raspberrypi:/home/pi# l2ping C8:33:4B:40:B6:5A
Ping: C8:33:4B:40:B6:5A from 00:19:0E:14:BD:AD (data size 44) ...
44 bytes from C8:33:4B:40:B6:5A id 0 time 723.65ms
44 bytes from C8:33:4B:40:B6:5A id 1 time 158.29ms
44 bytes from C8:33:4B:40:B6:5A id 2 time 185.56ms
44 bytes from C8:33:4B:40:B6:5A id 3 time 129.81ms

谢谢。

【问题讨论】:

    标签: ibeacon


    【解决方案1】:

    编辑:解决方案最终只是简单地重新启动 iPhone,如下面的 cmets 所述。

    不幸的是,带有Locate for iBeacon(或类似的 iBeacon 应用程序)的 iPhone 并不是一个很好的故障排除工具,用于测试您的 Raspberry Pi 是否正在传输。只有在完全匹配 UUID 的情况下一切都完美运行时,它才会给您一个确认。

    听起来您已经完成了确保广告配置没有格式错误的作业。下一个可能性是您的 Raspberry Pi 根本没有传输广告。

    您需要验证您的 Raspberry Pi 是否确实在使用您的 BLE 加密狗传输任何广告。很多事情都可能导致此失败,包括 BLE 棒硬件、BlueZ 配置等。有一些适用于 iOS 的蓝牙 LE 扫描应用程序(不幸的是,没有免费的)可能会告诉您您的设备是否正在传输广告,但 iOS 没有让您查看传输的原始字节,这样这些应用程序就无法告诉您广告是否格式错误。

    也有适用于 OSX、Android 和 Linux 的应用程序。 (哎呀,如果你有第二个树莓派,你可以输入命令sudo hcitool lescan --duplicates 来查看所有广告。)

    最后,您可以尝试确保您的蓝牙棒没有处于不良状态的一件事是在其他命令之前发出以下命令:

    hciconfig hci0 reset

    如果您完全陷入困境,Radius Networks 可以以 20 美元的价格向您发送带有已知工作软件的 SD card。或者full assembly for $100.你可以得到一个已知可以工作的蓝牙加密狗here.

    全面披露:我是 Radius Networks 的首席工程师。

    【讨论】:

    • 大卫!感谢您的建议。我有另一套 linux 机器并使用您的脚本运行扫描。它显示了准确的 UUID,如下所示。这意味着覆盆子和BLE加密狗似乎没有问题。
    • [root@localhost ~]# hcitool lescan --duplicates & [root@localhost ~]# ./ibeacon_scan 设置扫描参数失败:输入/输出错误 00:19:0E:14:BD: AD(未知)00:19:0E:14:BD:AD(未知)UUID:E20A39F4-73F5-4BC4-A12F-17D1AD07A961 主要:0 次要:0 功率:-56 00:19:0E:14:BD:AD (未知)UUID:E20A39F4-73F5-4BC4-A12F-17D1AD07A961 主要:0 次要:0 功率:-56 00:19:0E:14:BD:AD (未知)UUID:E20A39F4-73F5-4BC4-A12F-17D1AD07A961 主要:0 次要:0 功率:-56 00:19:0E:14:BD:AD(未知)UUID:E20A39F4-73F5-4BC4-A12F-17D1AD07A961 主要:0 次要:0 功率:-56 00:19:0E: 14:BD:AD(未知)
    • 所以,我的另一个问题是,iPhone 4S 上 iOS7.1 上的苹果 ibeacon API 是否可能会有所不同..? David,您或您的团队是否在 iOS7.1 的 iPhone 4S 上使用您的应用(定位 iBeacon)测试了 iBeacon?
    • 是的,我实际上使用带有 iOS7.1 的 iPhone 4S 作为我的主要测试设备,所以我知道 Raspberry Pi iBeacon 发射器适用于该配置。您是否尝试过不同的 iBeacon 源来查看您的 iPhone 是否可以接收到它?
    • 大卫,谢谢。我已经在 2 周前订购了 estimote .. 还没到 : ( 如果我用它和 estimote 应用程序失败了,我的 iPhone 4S 就会出现故障..
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-10-26
    • 1970-01-01
    • 2023-03-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-10
    相关资源
    最近更新 更多