Ubuntu 22.10连接蓝牙耳机报错br-connection-profile-unavailable解决方法

今天新版 Ubuntu 22.10 发布,高高兴兴升级完成后,发现:1.Flameshot 异常;2.没法连接 AirPods Pro2 耳机了;3.定制 ibus 的 gnome 插件不兼容(预料之中)。

蓝牙耳机连不上的的时候,症状为 Failed to connect: org.bluez.Error.Failed br-connection-profile-unavailable

1    [bluetooth]# connect C0:95:6D:C0:A3:92
2    Attempting to connect to C0:95:6D:C0:A3:92
3    Failed to connect: org.bluez.Error.Failed br-connection-profile-unavailable

bluetooth 服务提示: src/service.c:btd_service_connect() a2dp-sink profile connect failed for C0:95:6D:C0:A3:92: Protocol not available

 1    ➜  systemctl status bluetooth.service
 2    ● bluetooth.service - Bluetooth service
 3        Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; preset: enabled)
 4        Active: active (running) since Fri 2022-10-21 14:21:09 CST; 4min 56s ago
 5        Docs: man:bluetoothd(8)
 6    Main PID: 2973 (bluetoothd)
 7        Status: "Running"
 8        Tasks: 1 (limit: 18897)
 9        Memory: 1.6M
10            CPU: 451ms
11        CGroup: /system.slice/bluetooth.service
12                └─2973 /usr/lib/bluetooth/bluetoothd
13
14    Oct 21 14:21:09 workpc systemd[1]: Started Bluetooth service.
15    Oct 21 14:21:09 workpc bluetoothd[2973]: Bluetooth management interface 1.22 initialized
16    Oct 21 14:22:13 workpc bluetoothd[2973]: src/service.c:btd_service_connect() a2dp-sink profile connect failed for C0:95:6D:C0:A3:92: Protocol not available
17    Oct 21 14:22:14 workpc bluetoothd[2973]: src/service.c:btd_service_connect() a2dp-sink profile connect failed for C0:95:6D:C0:A3:92: Protocol not available
18    Oct 21 14:23:24 workpc bluetoothd[2973]: src/service.c:btd_service_connect() a2dp-sink profile connect failed for C0:95:6D:C0:A3:92: Protocol not available
19    Oct 21 14:23:26 workpc bluetoothd[2973]: src/service.c:btd_service_connect() a2dp-sink profile connect failed for C0:95:6D:C0:A3:92: Protocol not available
20    Oct 21 14:23:39 workpc bluetoothd[2973]: src/service.c:btd_service_connect() a2dp-sink profile connect failed for C0:95:6D:C0:A3:92: Protocol not available
21    Oct 21 14:24:23 workpc bluetoothd[2973]: src/service.c:btd_service_connect() a2dp-sink profile connect failed for C0:95:6D:C0:A3:92: Protocol not available
22    Oct 21 14:24:34 workpc bluetoothd[2973]: src/service.c:btd_service_connect() a2dp-sink profile connect failed for C0:95:6D:C0:A3:92: Protocol not available
23    Oct 21 14:24:36 workpc bluetoothd[2973]: src/service.c:btd_service_connect() a2dp-sink profile connect failed for C0:95:6D:C0:A3:92: Protocol not available

这就是 linux 用户的日常,搜索后确定大致原因为,Ubuntu 22.10 桌面版本音频服务从 PulseAudio 切换到 PipeWire, 导致的服务异常。

解决方法

    1. 安装依赖包
    1  sudo apt install wireplumber libspa-0.2-bluetooth wireplumber-doc
    

依赖包解释说明

  • WirePlumber is a modular session / policy manager for PipeWire

  • libspa-0.2-bluetooth libraries for the PipeWire multimedia server bluetooth plugins

    1. 重启 wireplumber
    1systemctl --user restart wireplumber
    
    1. 重新连接 AirPods 耳机, 看最后返回 successful
     1➜  bluetoothctl
     2Agent registered
     3[bluetooth]# connect C0:95:6D:C0:A3:92
     4Attempting to connect to C0:95:6D:C0:A3:92
     5[CHG] Device C0:95:6D:C0:A3:92 Connected: yes
     6[NEW] Endpoint /org/bluez/hci0/dev_C0_95_6D_C0_A3_92/sep1
     7[NEW] Endpoint /org/bluez/hci0/dev_C0_95_6D_C0_A3_92/sep2
     8[NEW] Endpoint /org/bluez/hci0/dev_C0_95_6D_C0_A3_92/sep3
     9[NEW] Transport /org/bluez/hci0/dev_C0_95_6D_C0_A3_92/sep1/fd0
    10[CHG] Transport /org/bluez/hci0/dev_C0_95_6D_C0_A3_92/sep1/fd0 Delay: 0x05dc (1500)
    11Connection successful
    

如果你还有其它疑问,比如不知道获取你的设备 mac 地址,可以以查看我以前写了另外一个文章

最后修改于: Monday, August 28, 2023
欢迎关注微信公众号,留言交流。

相关文章:

翻译: