我正在寻找一种方法来进行蓝牙设备扫描并获取所有可以通过距离发现的设备。如果可以,我可以将其存档而不进行配对吗?
我假设iBeacons使用了类似的逻辑,其中应用程序可以与信标保持距离而不与其配对。
答案 0 :(得分:3)
您使用的是linux / Bluez吗?您可以做的一件事是使用一些自定义代码或
扫描设备hcitool scan
然后您只需要使用hcidump或类似的东西进行监控,您就可以根据RSSI值获得相对距离位置。以下是输出示例:
hcidump -a
< HCI Command: Inquiry (0x01|0x0001) plen 5
lap 0x9e8b33 len 8 num 0
> HCI Event: Command Status (0x0f) plen 4
Inquiry (0x01|0x0001) status 0x00 ncmd 1
> HCI Event: Extended Inquiry Result (0x2f) plen 255
bdaddr 11:22:33:44:55:66 mode 1 clkoffset 0x129e class 0x7a020c rssi -89
当然,您可能希望进行扫描循环,以便不断获得RSSI。