我想使用带有 bluez 的 Linux 盒子和蓝牙适配器连接到蓝牙低功耗(BTLE,蓝牙智能)设备。我有 Orico BTA-402 dongle,带有 CSR 芯片组;乌班图14.04。我想出了如何使加密狗显示为手机的设备(hciconfig hci0 Leadv 3)。
我想要的是相反的,让加密狗/Linux 盒子扫描设备、连接到设备、枚举特征以及读/写它们。我怎么做?
答案1
hcitool lescan 的答案不完整。它会循环。您想要一个超时,但超时不会导致 hcitool 出现问题(默认信号会)
持续 5 秒:
timeout -s SIGINT 5s hcitool -i hci0 lescan --passive
然后你可以使用gatttool:
sudo gatttool -i hci1 -b BC:6A:29:AC:2E:B4 -I
有关连接后要执行的操作的更多详细信息:http://joost.damad.be/2013/08/experiments-with-bluetooth-low-energy.html
答案2
被证明是由贾里德沃尔夫您可以使用hcitool
hcitool lescan
您的设备应该显示如下:F4:C7:F8:0A:BF:C9 TWI
。如果没有出现,也许它(您正在搜索的设备)本身并没有做广告。
要连接到设备,您可以使用gatttool
交互模式:
$ gatttool -I
[ ][LE]> connect <BLE ADDRESS>
在里面gatttool
你可以使用char-desc
来获取可用的句柄,char-read-hnd
进行读取和char-write-req
写入,请参阅help
更多详细信息。
答案3
hciconfig hci0 up piscan
(假设“hci0”是您的蓝牙适配器的设备名称)
开关“piscan”启用“pscan”和“iscan”。
手册页摘录:
piscan 启用寻呼和查询扫描。
noscan 禁用寻呼和查询扫描。
iscan 启用查询扫描,禁用页面扫描。
pscan 启用页面扫描,禁用查询扫描。