2016-05-01 142 views
2

設置(在Ubuntu上)我的藍牙適配器可以檢測到我的AR無人機(MiniSpider)設備。但使用simple Bluez code example來檢測藍牙設備,我無法檢測到無人機設備。我的代碼與前面提到的鏈接中的代碼完全相同。我可以使用該代碼檢測手機(如果手機已自行顯示)。藍牙代碼無法檢測到藍牙設備,但設置可以

任何想法可能是什麼問題?

hcitool lescan輸出:它成功找到了無人機藍牙設備。

須藤hcitool萊斯康
LE掃描...
A0:14:31:48:8C:EB RS_W082091
A0:14:31:48:8C:EB RS_W082091
A0:14: 31:48:8C:EB RS_W082091

+1

的代碼示例是經典的BT掃描不是LE掃描。 – kaylum

回答

1

您使用的代碼片段用於掃描經典的藍牙設備。這相當於從命令行使用hcitool inq,在這種情況下,您可能無法檢測到您的設備。

但是,AR無人機似乎支持藍牙低功耗(BLE),而不是經典的藍牙。因此,使用查詢方法,您無法檢測到它。如果您使用掃描BLE設備的代碼,則可以找到您的設備。你可以看看源下面hcitool.c: -

https://github.com/aguedes/bluez/blob/master/tools/hcitool.c

然後你的出發點是使用hcitool萊斯康代碼: -

static void cmd_lescan(int dev_id, int argc, char **argv) 
{ 
    ... 
}