Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Raspberry pi 树莓皮iBeacon扫描解析响应_Raspberry Pi_Bluetooth Lowenergy_Ibeacon - Fatal编程技术网

Raspberry pi 树莓皮iBeacon扫描解析响应

Raspberry pi 树莓皮iBeacon扫描解析响应,raspberry-pi,bluetooth-lowenergy,ibeacon,Raspberry Pi,Bluetooth Lowenergy,Ibeacon,我使用了树莓pi来检测ibeacons,并阅读了Radius Networks提供的教程。我制作了一个小脚本,首先打开lescan并将输出重定向到/dev/null。然后,它将hcidump打开管道,将其输出到脚本 脚本显示的输出很慢。虽然以毫秒为单位发送广告分组,但是在终端上的结果是缓慢的。因此,即使关闭变送器,该命令也会持续显示新输出。我的理解告诉我,解析需要时间,而HCIDUMP数据在sed队列中等待 为了根据邻近性触发适当的操作,需要最短的解析时间,以便在接收到所有数据包时对其进行解析

我使用了树莓pi来检测ibeacons,并阅读了Radius Networks提供的教程。我制作了一个小脚本,首先打开lescan并将输出重定向到/dev/null。然后,它将hcidump打开管道,将其输出到脚本

脚本显示的输出很慢。虽然以毫秒为单位发送广告分组,但是在终端上的结果是缓慢的。因此,即使关闭变送器,该命令也会持续显示新输出。我的理解告诉我,解析需要时间,而HCIDUMP数据在sed队列中等待

为了根据邻近性触发适当的操作,需要最短的解析时间,以便在接收到所有数据包时对其进行解析

如果使用Radius Networks提供的蓝牙开发工具包,我是否错过了什么或者解析速度更快?如果是,是什么让它更快


谢谢,

您是正确的,当检测到大量iBeacon广告时,脚本的输出确实会滞后。为了简单起见,解析脚本是用bash编写的,因此其速度会受到影响——通过管道传输到
sed
来存储每个标识符既慢又低效。这个脚本是用Ruby重写的,速度更快,响应速度更快。Ruby和其他高级编程语言更适合解析和转换原始iBeacon数据包数据。可以下载带有此新脚本的开发工具包的磁盘映像


您还可以尝试实现另一个iBeacon-Raspberry-Pi扫描脚本,该脚本是用Python编写的,可以找到。我还没有亲自尝试过这个方法,但它似乎是另一个很好的解决方案。

是的,我正在考虑使用Python。遵循inquiry-with-rssi.py格式的模式。从理解的角度来看,bash脚本做得很好。感谢您的帮助。看起来指向Beacon开发工具包的链接是404。经过一点搜索,Radius Networks可能不再提供此功能。@ElliotLarson您说得对,Beacon开发工具包现在以最新版本出售。我会更新链接。