微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

覆盆子信标可以检索任何数据吗

如何解决覆盆子信标可以检索任何数据吗

我想用 RaspBerry Pi Zero W 和 iOS 和 Android 应用程序(我将开发)构建一个 BLE Beacon 我将列出信标并选择一个来发送 4-6 字节的数据以触发一些操作圆周率。信标可以做到吗,还是我应该使用其他东西。我正在用 Go 编写代码,但我不想配对设备。

解决方法

是的,可以对 Raspberry Pi 零 W 扫描信标并对其看到的标识符采取行动。 (但请注意,这必须是零 W。基本的 Raspberry Pi Zero 没有无线功能。)

您不会在 Raspberry Pi 上的 Go 中找到信标检测代码,因此您最好的选择是使用本机 C 程序来完成信标扫描部分,并将其作为 Go 程序中的 shell 脚本调用。以下 C 程序是我在 Raspberry Pi 上用来扫描信标的程序:

https://gist.github.com/davidgyoung/0a18028b4338ff6cb201fba274502662

该程序必须使用 cc scanner.c -lbluetooth -o scanner 在 Raspberry Pi 上编译,之后您可以仅使用 scanner 启动扫描仪。程序的输出将是这样的:

B8:27:EB:1F:93:4D -68 02 01 06 11 06 82 75 25 D9 37 9D D7 8F 5F 4A F4 20 00 00 75 30
71:5C:23:9D:BC:7F -68 02 01 1A 02 0A 0C 0B FF 4C 00 10 06 03 1A 3B D4 B2 EB
B8:27:EB:1F:93:4D -68 02 01 06 11 06 82 75 25 D9 37 9D D7 8F 5F 4A F4 20 00 00 75 30
4A:53:7F:64:71:EC -91 03 03 9F FE 17 16 9F FE 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
69:0D:FF:7B:75:65 -73 02 01 1A 02 0A 0C 0A FF 4C 00 10 05 03 1C 27 BB 63
61:39:71:E9:1D:C9 -93 02 01 1A 02 0A 18 0A FF 4C 00 10 05 01 18 3B 24 12
B8:27:EB:1F:93:4D -68 02 01 06 11 06 82 75 25 D9 37 9D D7 8F 5F 4A F4 20 00 00 75 30

上面的每一行显示了检测到的蓝牙设备的 MAC 地址,然后是信号强度 RSSI,然后是广告的十六进制字节。

您的 Go 程序将需要读取 scanner 输出的每一行,然后解析广告的字节以查找信标模式以在看到具有特定字节模式的数据包时执行各种功能(表明一部手机发出了那个数据包。)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。