加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

Linux BlueZ dbus通信

发布时间:2020-12-13 22:58:00 所属栏目:Linux 来源:网络整理
导读:我使用BlueZ 5.30和内核3.13.0-32,我需要通过DBus在我的app中实现读/写特性功能. 我正在使用BlueZ测试脚本建立连接: “测试发现”,然后是“测试设备连接”. 问题是我没有在DBus(org.bluez)中看到任何服务.使用d-feet app我只能看到: “/组织/ bluez的/ hci
我使用BlueZ 5.30和内核3.13.0-32,我需要通过DBus在我的app中实现读/写特性功能.

我正在使用BlueZ测试脚本建立连接:

“测试发现”,然后是“测试设备连接”.

问题是我没有在DBus(org.bluez)中看到任何服务.使用d-feet app我只能看到:

“/组织/ bluez的/ hci0 / dev_btaddr”
????接口
????org.bluez.Device1
????org.freedesktop / DBus.Introspectable
????org.freedesktop.DBus.Properties

在“/ var / log / syslog”中我可以看到很多:

“bluetoothd [715]:无法为设备注册带有句柄0x0045的GATT服务……”

使用gatttool我能够读/写特性,原色等.在hcidump下我看到所有特性都被正确读取.

但是,从DBus PoV只有Device1接口可用.

这是我的BlueZ配置:

./configure –prefix = / usr –mandir = /usr/share / man –sysconfdir = / etc –localstatedir = / var –enable-library –disable-systemd –enable-experimental –enable-维护者模式–enable-debug

我在这里看:“http://i-miss-erin.blogspot.com/2010/12/gatt-related-dbus-api.html”,但正如我所提到的,没有任何显示在这里的界面或服务.

对于测试我使用接近和隐藏设备.
在隐藏的情况下,在正确连接后,我可以在终端窗口中看到字符(隐藏键盘设备),所以我认为它可以正常工作.

有什么建议?

解决方法

您必须激活蓝牙设备的实验性功能才能启用GATT服务.

在Debian系统上,您可以通过put实现此目的

NOPLUGIN_OPTION="-E"

进入/ etc / default / bluetooth文件.

重新启动后,为了让我的设备(Logitech MX Master)在我的Debian Stretch上正常工作,我还必须使用bluetoothctl命令手动配对并信任它.我没有成功使用Gnome的图形蓝牙工具.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读