在Ubuntu 16.04中自动连接到蓝牙音箱

BT在启动时启用。 这很好。 但它不会自动配对/连接到设备,即使它曾经配对并获得“受信任”状态。 通过选择设备,我可以使用该工具连接到扬声器,并“连接到音频输出”。 怎么能在启动时自动完成? 我也可以用“bluetoothctl”和“connect”来做到这一点,但这是互动的,似乎不是可编写脚本的。

第二步,BT成为默认音频接收器。
这不是一般的用例吗?

(我在这里发现了一些页面,大多数都已过时了。) 自动连接蓝牙设备 :加载模块模块 – 交换机连接对我不起作用。

我还安装了bt-autoconnect。 但是有几个问题: – 它没有提供BT适配器 – 按钮音频设置什么也没做 – 保存和退出并不是什么都没有

对于第二部分(自动切换到BT扬声器作为接收器),我找到了一个解决方案。 已经发布在这里:

# /etc/pulse/default.pa .ifexists module-bluetooth-discover.so load-module module-bluetooth-discover load-module module-switch-on-connect # this is new! .endif 

但是 :一旦可用,BT服务器如何自动与扬声器配对? 救命!


编辑:为第一个问题找到了一个(不是最好的imho)解决方案:

 echo "connect AA:BB:CC:DD:EE:FF" | bluetoothctl 

但是 :更好的是,对于所有已经连接和信任的设备,没有此MAC的情况。

要自动连接到Audio Sink,您可以在:/etc/rc.local中添加以下行

(睡6;回声“连接AA:BB:CC:DD:EE:FF \ nquit”| bluetoothctl)&

更新地址。 您可以通过命令行validation: echo -e“devices \ nquit”| bluetoothctl

在我的情况下,睡眠6是很好的 – 但也许在你的计算机上它必须增加,以允许其他蓝牙连接步骤完全完成。

通常在结尾处带有“&”符号,您将开始进程,该进程将在6秒内执行,而不会阻止启动正常蓝牙连接function的下一个进程。 如果rc.local不存在(在我的情况下),您可以创建它或在启动时使用其他文件启动。