我的任务是计算一个树莓派和几个蓝牙低能耗信标之间的距离(当然是使用蓝牙)。
这似乎是一个相对常见的想法,但到目前为止,我找到的所有答案要么不完整,要么不合适,通常是因为管理蓝牙低能耗设备和设置的规则不同,比如,将两部手机连接在一起。
我的代码看起来类似于这个示例,尽管有一些小的改动:
https://github.com/tholum/bluez/blob/master/blue.py
这就是说,我可以获得信标的MAC地址、UUID、主要和次要数字以及"TX Power“的值,但是我显然需要另一个值-由Raspberry Pi记录的当前RSSI,该值用于描述信号有多强。
我可以通过终端获得RSSI (这样我就知道它是受支持的),使用
sudo btmon & hcitool lescan
但我想通过Python获得它,这样我就可以做一些计算并计算出以米为单位的距离(我知道干扰可能会破坏这些读数,但我可以处理)。
有什么建议吗?
发布于 2017-10-09 01:26:13
为了获得RSSI,我使用了bluepy模块,它显示了RSSI:
Device c2:d9:46:fa:67:82 (random), RSSI=-67 dB
Flags = 04
Tx Power = fa
16b Service Data = 0a180804951e0000
Incomplete 128b Services = ba5689a6fabfa2bd01467d6e00fbabad
https://stackoverflow.com/questions/37029340
复制相似问题