我目前正在运行 Kubuntu 20.04,并尝试连接新耳机(Sennheiser Momentum true wireless 2),但耳机连接后一秒钟断开连接,然后再次尝试连接,依此类推。我尝试连接其他耳机(Samsung Gear IconX2018),它工作正常。PC 上的蓝牙适配器和笔记本电脑蓝牙也是如此。还从 USB 棒运行了 Win7 便携式电脑,它找到了 MS 的驱动程序,连接正常。
bluetootsctl 输出:
Agent registered
[CHG] Controller 00:1A:7D:DA:71:09 Discovering: yes
[NEW] Device 00:1B:66:BC:2E:F9 MOMENTUM TW 2
[CHG] Device 00:1B:66:BC:2E:F9 RSSI: -66
[CHG] Device 00:1B:66:BC:2E:F9 TxPower: -12
[CHG] Device 00:1B:66:BC:2E:F9 UUIDs: 0000180a-0000-1000-8000-00805f9b34fb
[CHG] Device 00:1B:66:BC:2E:F9 UUIDs: 0000180f-0000-1000-8000-00805f9b34fb
[CHG] Device 00:1B:66:BC:2E:F9 UUIDs: 0000fdce-0000-1000-8000-00805f9b34fb
[NEW] Device B0:FA:EB:2F:9E:3D B0FAEB2F9E3C
[NEW] Device D0:20:92:CF:BE:8B fenix 3
[CHG] Device 00:1B:66:BC:2E:F9 RSSI: -93
[CHG] Device 00:1B:66:BC:2E:F9 RSSI: -59
[NEW] Device F4:7D:EF:FF:9E:87 Galaxy Fitⓔ (9E87)
[CHG] Controller 00:1A:7D:DA:71:09 Discovering: no
[CHG] Device F4:7D:EF:FF:9E:87 RSSI is nil
[CHG] Device D0:20:92:CF:BE:8B RSSI is nil
[CHG] Device B0:FA:EB:2F:9E:3D RSSI is nil
[CHG] Device 00:1B:66:BC:2E:F9 TxPower is nil
[CHG] Device 00:1B:66:BC:2E:F9 RSSI is nil
[CHG] Device 00:1B:66:BC:2E:F9 Connected: yes
[CHG] Device 00:1B:66:BC:2E:F9 Modalias: usb:v1377p7001d0480
[CHG] Device 00:1B:66:BC:2E:F9 UUIDs: 00001101-0000-1000-8000-00805f9b34fb
[CHG] Device 00:1B:66:BC:2E:F9 UUIDs: 00001108-0000-1000-8000-00805f9b34fb
[CHG] Device 00:1B:66:BC:2E:F9 UUIDs: 0000110a-0000-1000-8000-00805f9b34fb
[CHG] Device 00:1B:66:BC:2E:F9 UUIDs: 0000110b-0000-1000-8000-00805f9b34fb
[CHG] Device 00:1B:66:BC:2E:F9 UUIDs: 0000110c-0000-1000-8000-00805f9b34fb
[CHG] Device 00:1B:66:BC:2E:F9 UUIDs: 0000110e-0000-1000-8000-00805f9b34fb
[CHG] Device 00:1B:66:BC:2E:F9 UUIDs: 0000111e-0000-1000-8000-00805f9b34fb
[CHG] Device 00:1B:66:BC:2E:F9 UUIDs: 00001200-0000-1000-8000-00805f9b34fb
[CHG] Device 00:1B:66:BC:2E:F9 UUIDs: 0000eb03-d102-11e1-9b23-00025b00a5a5
[CHG] Device 00:1B:66:BC:2E:F9 ServicesResolved: yes
[CHG] Device 00:1B:66:BC:2E:F9 Paired: yes
[CHG] Device 00:1B:66:BC:2E:F9 Trusted: yes
[CHG] Device 00:1B:66:BC:2E:F9 ServicesResolved: no
[CHG] Device 00:1B:66:BC:2E:F9 Connected: no
[CHG] Device 00:1B:66:BC:2E:F9 Connected: yes
[CHG] Device 00:1B:66:BC:2E:F9 Connected: no
[CHG] Device 00:1B:66:BC:2E:F9 Connected: yes
[CHG] Device 00:1B:66:BC:2E:F9 Connected: no
请参阅lspci-knn| grep 网络-A3; lsusb:
Bus 002 Device 007: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 002 Device 006: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
Bus 002 Device 005: ID 046d:0843 Logitech, Inc. Webcam C930e
Bus 002 Device 004: ID 05e3:0610 Genesys Logic, Inc. 4-port hub
Bus 002 Device 002: ID 05e3:0610 Genesys Logic, Inc. 4-port hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 008 Device 002: ID 046d:c333 Logitech, Inc. Gaming Keyboard G610
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 003: ID 0bda:5411 Realtek Semiconductor Corp.
Bus 001 Device 002: ID 0bda:5411 Realtek Semiconductor Corp. 4-Port USB 2.0 Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 009 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 010 Device 003: ID 0bda:0411 Realtek Semiconductor Corp.
Bus 010 Device 002: ID 0bda:0411 Realtek Semiconductor Corp. 4-Port USB 3.0 Hub
Bus 010 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
journalctl -u 蓝牙| 尾部:
bluetoothd[965]: Endpoint registered: sender=:1.77 path=/MediaEndpoint/A2DPSource/sbc
bluetoothd[965]: /org/bluez/hci0/dev_88_BD_45_D1_39_35/sep2/fd0: fd(58) ready
bluetoothd[965]: a2dp-source profile connect failed for 00:1B:66:BC:2E:F9: Device or resource busy
bluetoothd[965]: No reply to Start request
bluetoothd[965]: Unable to get io data for Headset Voice gateway: getpeername: Transport endpoint is not connected (107)
bluetoothd[965]: No reply to Start request
bluetoothd[965]: Unable to get io data for Headset Voice gateway: getpeername: Transport endpoint is not connected (107)
bluetoothd[965]: connect error: Connection refused (111)
bluetoothd[965]: connect error: Connection refused (111)
bluetoothd[965]: Unable to get io data for Headset Voice gateway: getpeername: Transport endpoint is not connected (107)
bluetoothd[965]: No reply to Start request
bluetoothd[965]: Unable to get io data for Headset Voice gateway: getpeername: Transport endpoint is not connected (107)
bluetoothd[965]: No reply to Start request
bluetoothd[965]: Unable to get io data for Headset Voice gateway: getpeername: Transport endpoint is not connected (107)
bluetoothd[965]: No reply to Start request
bluetoothd[965]: Unable to get io data for Headset Voice gateway: getpeername: Transport endpoint is not connected (107)
bluetoothd[965]: No reply to Start request
bluetoothd[965]: Unable to get io data for Headset Voice gateway: getpeername: Transport endpoint is not connected (107)
systemctl 状态蓝牙:
● bluetooth.service - Bluetooth service
Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2020-07-06 20:25:17 CEST; 15h ago
Docs: man:bluetoothd(8)
Main PID: 965 (bluetoothd)
Status: "Running"
Tasks: 1 (limit: 14263)
Memory: 3.5M
CGroup: /system.slice/bluetooth.service
└─965 /usr/lib/bluetooth/bluetoothd
bluetoothd[965]: connect error: Connection refused (111)
bluetoothd[965]: Unable to get io data for Headset Voice gateway: getpeername: Transport endpoint is not connected (107)
bluetoothd[965]: No reply to Start request
bluetoothd[965]: Unable to get io data for Headset Voice gateway: getpeername: Transport endpoint is not connected (107)
bluetoothd[965]: No reply to Start request
bluetoothd[965]: Unable to get io data for Headset Voice gateway: getpeername: Transport endpoint is not connected (107)
bluetoothd[965]: No reply to Start request
bluetoothd[965]: Unable to get io data for Headset Voice gateway: getpeername: Transport endpoint is not connected (107)
bluetoothd[965]: No reply to Start request
bluetoothd[965]: Unable to get io data for Headset Voice gateway: getpeername: Transport endpoint is not connected (107)
dpkg -l | grep 蓝色
ii bluedevil 4:5.18.4.1-0ubuntu1 amd64 KDE Bluetooth stack
ii bluez 5.53-0ubuntu3 amd64 Bluetooth tools and daemons
ii bluez-cups 5.53-0ubuntu3 amd64 Bluetooth printer driver for CUPS
ii bluez-obexd 5.53-0ubuntu3 amd64 bluez obex daemon
ii libbluetooth3:amd64 5.53-0ubuntu3 amd64 Library to use the BlueZ Linux Bluetooth stack
ii libkf5bluezqt-data 5.68.0-0ubuntu1 all data files for bluez-qt
ii libkf5bluezqt6:amd64 5.68.0-0ubuntu1 amd64 Qt wrapper for bluez
ii pulseaudio-module-bluetooth 1:13.99.1-1ubuntu3.3 amd64 Bluetooth module for PulseAudio sound server
ii qml-module-org-kde-bluezqt:amd64 5.68.0-0ubuntu1 amd64 QML wrapper for bluez
任何帮助和提示都值得感激。如果需要更多信息,请告知。
答案1
我也遇到过这个问题,花了很多时间试图解决它。我将其缩小到 AVRCP 配置文件(控制媒体按钮)的问题。
解决方法是完全禁用 AVRCP。耳机应该可以正常工作,只是没有触摸控制。编辑文件/lib/systemd/system/bluetooth.service
并添加--noplugin=avrcp
到第 9 行末尾(ExecStart
)。
例如
[Unit]
Description=Bluetooth service
Documentation=man:bluetoothd(8)
ConditionPathIsDirectory=/sys/class/bluetooth
[Service]
Type=dbus
BusName=org.bluez
ExecStart=/usr/local/libexec/bluetooth/bluetoothd --noplugin=avrcp
NotifyAccess=main
#WatchdogSec=10
#Restart=on-failure
CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE
LimitNPROC=1
ProtectHome=true
ProtectSystem=full
[Install]
WantedBy=bluetooth.target
Alias=dbus-org.bluez.service
答案2
看来该问题已在 Bluez 5.55 中修复。
来自变更日志:
Fix issue with handling AVRCP notification events.
Fix issue with handling AVRCP list player attributes.
Fix issue with handling AVRCP category 1 player settings.
Fix issue with handling AVRCP media player passthrough bitmask.
我在 Ubuntu 18.04 上,Bluez 是 5.48。
正在重建bluez/主线(c96d5ec7aafc
在撰写本文时)并且仅使用生成的bluetoothd
二进制文件代替/usr/lib/bluetooth/bluetoothd
修复了问题,而无需使用标志--noplugin=avrcp
。
我建议make install
无论如何都使用以避免任何可能的冲突。
我还可以确认播放按钮(暂停、前进、后退)检测有效并被 Rhythmbox 正确处理。
是否可以使用麦克风以及将设备设置为headset_head_unit
(man pactl
有关详细信息,请参阅),这样音频质量会很差,但总比没有好(我想?)。
从源代码构建 bluez 非常简单,只需按照自述文件即可,无论如何,让我们希望该包能够尽快上传。