Qt on Linux embedded:无法获得QBluetoothLocalDevice

时间:2015-07-26 17:47:08

标签: c++ linux qt bluetooth embedded-linux

我有一个使用Linux内核3.17的Linux嵌入式设备和一个WiLink 8无线模块作为蓝牙设备(使用UART)(参见Gumstix AirStorm-y)。另外,我安装了Qt 5.3.2和Bluez 4.101。

我的问题是当我执行我的Qt应用程序时,我无法使用QBluetoothLocalDevice在我的蓝牙设备上获取信息。例如,QBluetoothLocalDevice::allDevices()始终返回空列表,QBluetoothLocalDevice::address()始终返回" 00:00:00:00:00:00"。如果我尝试执行聊天示例,则会收到'Cannot bind chat server to "00:00:00:00:00:00"'错误。

我确定我的蓝牙设备已启动并运行:

hci0:  
Type: BR/EDR Bus: UART  
BD Address: 5C:31:3E:CE:C3:CE ACL MTU: 1021:6 SCO MTU: 180:4  
UP RUNNING PSCAN  
RX bytes:657 acl:0 sco:0 events:37 errors:0  
TX bytes:979 acl:0 sco:0 commands:37 errors:0  

我也可以使用hcitools进行扫描 Dbus也正常运行,当我dbus-send --system --dest=org.bluez --print-reply / org.bluez.Manager.DefaultAdapter时,我得到了:

method return sender=:1.5 -> dest=:1.12 reply_serial=2  
object path "/org/bluez/1743/hci0"

在我的应用程序中,其他一切似乎都运行得很好(我有一个QTCP服务器和QFileSystemWatcher的文件管理器),它只是我无法使其工作的BLuetooth部分。

0 个答案:

没有答案