gpt4 book ai didi

raspberry-pi - 从 Raspberry Pi 检测 iPhone 5s 的接近度

转载 作者:行者123 更新时间:2023-12-04 02:07:40 27 4
gpt4 key购买 nike

我最近买了几个 Raspberry Pi 和 CSR 蓝牙 4.0 USB 加密狗。我已经尝试了所有的博客和教程(其中最好的来自 Radius NetworksAdafruit),但我错过了重要的行为行为或配置步骤。

我使用的是从源代码编译的 Bluez 5.17。我的 CSR 4.0 BLE 加密狗似乎也能正常工作:

$ sudo hciconfig
hci0: Type: BR/EDR Bus: USB
BD Address: 00:1A:7D:DA:71:0F ACL MTU: 310:10 SCO MTU: 64:8
UP RUNNING PSCAN
RX bytes:12649 acl:0 sco:0 events:464 errors:0
TX bytes:2658 acl:0 sco:0 commands:124 errors

当我开始 lescan 时,我什么也看不到。我的 iPhone 5s 启用了蓝牙。

$ sudo hcitool lescan
LE Scan ...

我从我的 iPhone 5s 启动“Beacon Toolkit”,创建一个带有随机 UUID 的新 iBeacon 并激活它。许多 lescan 事件被拾取。

$ sudo hcitool lescan
LE Scan ...
5E:EE:91:0C:BE:2E (unknown)
5E:EE:91:0C:BE:2E (unknown)
5E:EE:91:0C:BE:2E (unknown)
...

所以我决定尝试做广告:

$ sudo 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
< HCI Command: ogf 0x08, ocf 0x0008, plen 32
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
> HCI Event: 0x0e plen 4
01 08 20 00
$ sudo hciconfig hci0 leadv 3

我不知道此时我应该期待什么。 “Locate iBeacon”应用程序就位于 Locate iBeacons View 中,带有“Looking for iBeacons...”。没有任何反应。

无论哪种方式,此测试的全部目的是查看我是否可以获得 RaspberryPi/Linux 以通过 BLE 检测我的 iPhone 5s 与它的接近度。

这可能吗?所有 iBeacon 和 BLE 博客和教程都完全不清楚这种技术或它们涵盖的工具的实际可能性。其一,为了测量接近度而必须不断运行应用程序不是很实际。

如何让我的 iPhone 5s 在不运行应用程序的情况下宣传自己?

提前感谢您提供任何提示。我认为我们中有几个人在摸索,试图了解如何在应用程序内场景之外使用此功能。

最佳答案

当您在 Raspberry Pi 上扫描 iBeacon 时,您需要一个脚本来解析 iBeacon 标识符。我公司贴了一个here.

The "Locate iBeacon" app just sits there at the Locate iBeacons view with "Looking for iBeacons...". Nothing happens.

你无法在 iOS 上看到 iBeacon,除非你先告诉 iOS 去寻找它的 proximityUUID。在您的情况下,您正在使用 proximityUUID E20A39F4-73F5-4BC4-A12F-17D1AD07A961 进行 Raspberry Pi 传输。您必须使用此 proximityUUID 为 iBeacon 配置 Locate 才能使其可见。

How can I get my iPhone 5s to advertise itself without having an app running?

不幸的是,你不能。 iOS 设备需要运行一个应用程序才能让自己发送 iBeacon 传输。如果您想让 Raspberry Pi 成为接收器,您必须让手机用户激活一个应用程序并将其放在前台。

另一种方法是让 Raspberry Pi 作为发射器。手机仍然需要安装一个应用程序来检测 Pi 和测量距离,但该应用程序可以在后台运行。当 iOS 首次检测到 iBeacon 时,它会在后台短暂启动寻找 iBeacon 的应用程序,它可以在其中进行快速距离估计,然后请求用户允许到前台进行更多测距。

考虑到 iOS 安全模型,恐怕这是您能做的最好的了。 Android 对于这种用例要灵活得多,应用程序可以在后台完成所有范围(尽管 Android 不能充当发​​射器)。

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

关于raspberry-pi - 从 Raspberry Pi 检测 iPhone 5s 的接近度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22877054/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com