我正在从事一个项目与比格尔骨黑色无线,其中我需要能够发送音乐控制命令到手机。注意,我不想将音乐流式传输到我的beaglebone。我花了大约一周的时间在网上寻找,几乎找不到关于这方面的信息。
beaglebone的操作系统是Debian Jessie。我可以让像hci0tool,Bluetoothctl,hciconfig这样的东西工作。我可以检测并配对到一个设备。不过,我的连接似乎只在配对过程中持续,之后每次都会失败。
我当前的进程正在执行:
sudo su
bluetoothctl
power on
agent on
default-agent
scan on我得到了mac地址
scan off
pair <MAC Address>
trust <MAC Address>
connect <MAC Address>到目前为止,配对和信任成功了,尽管连接在配对完成后结束。我不知道从哪里开始向手机发送命令。
发布于 2018-06-07 20:31:50
Device1接口上的连接调用将尝试连接设备和适配器之间支持的所有配置文件。这是通过协商或交换支持的配置文件来实现的。
当Adapter不支持设备所需的配置文件的最低要求时,连接可能无法实现。在这种情况下,您可能需要适配器端的A2DP提供程序才能成功连接。是的,这与这个statement是矛盾的。
如果您不想使用设备和适配器之间的所有配置文件进行连接,则可以在Device1接口中使用ConnectProfile方法。
但是bluetoothctl没有提供命令来实现ConnectProfile和你的AVRCP命令。
您需要使用D-Bus调用来获得与Bluetoothd的通信。如果您的应用程序是基于命令行/shell的,则可以使用dbus-send/gdbus命令来寻址D-Bus接口。
虽然bluez-tools实现了media control AVRCP命令,但它没有提供任何使用它的实用程序。您可以将bluez-tools编译为库,并使用媒体控制API或dbus-send/gdbus开发应用程序。
我已经开始了一些使用GDBUS的示例,但还没有用于AVRCP控件。查看此处:https://www.linumiz.com/category/blog/上的https://gist.github.com/parthitce和文档
https://stackoverflow.com/questions/49682000
复制相似问题