Marley Exodus ANC 蓝牙耳机无法在 21.04 中配对

Marley Exodus ANC 蓝牙耳机无法在 21.04 中配对

我刚买了一款新的蓝牙耳机 Marley Exodus ANC,但它无法与 Ubuntu 21.04 中的 PC(Intel NUC)配对。当尝试从 GNOME 设置连接时,它会尝试配对,但它只是放弃而没有出现错误消息。

我还尝试使用以下方法手动连接bluetoothctl

$ bluetoothctl
[bluetooth]# show
Controller 04:EA:56:86:78:50 (public)
        Name: saibot
        Alias: saibot
        Class: 0x003c0104
        Powered: yes
        Discoverable: no
        DiscoverableTimeout: 0x00000000
        Pairable: yes
        UUID: Message Notification Se.. (00001133-0000-1000-8000-00805f9b34fb)
        UUID: A/V Remote Control        (0000110e-0000-1000-8000-00805f9b34fb)
        UUID: OBEX Object Push          (00001105-0000-1000-8000-00805f9b34fb)
        UUID: Message Access Server     (00001132-0000-1000-8000-00805f9b34fb)
        UUID: PnP Information           (00001200-0000-1000-8000-00805f9b34fb)
        UUID: IrMC Sync                 (00001104-0000-1000-8000-00805f9b34fb)
        UUID: Vendor specific           (00005005-0000-1000-8000-0002ee000001)
        UUID: Headset                   (00001108-0000-1000-8000-00805f9b34fb)
        UUID: Headset AG                (00001112-0000-1000-8000-00805f9b34fb)
        UUID: A/V Remote Control Target (0000110c-0000-1000-8000-00805f9b34fb)
        UUID: Generic Attribute Profile (00001801-0000-1000-8000-00805f9b34fb)
        UUID: Phonebook Access Server   (0000112f-0000-1000-8000-00805f9b34fb)
        UUID: Audio Sink                (0000110b-0000-1000-8000-00805f9b34fb)
        UUID: Device Information        (0000180a-0000-1000-8000-00805f9b34fb)
        UUID: Generic Access Profile    (00001800-0000-1000-8000-00805f9b34fb)
        UUID: Audio Source              (0000110a-0000-1000-8000-00805f9b34fb)
        UUID: OBEX File Transfer        (00001106-0000-1000-8000-00805f9b34fb)
        Modalias: usb:v1D6Bp0246d0538
        Discovering: no
        Roles: central
        Roles: peripheral
        Roles: central-peripheral
Advertising Features:
        ActiveInstances: 0x00 (0)
        SupportedInstances: 0x06 (6)
        SupportedIncludes: tx-power
        SupportedIncludes: appearance
        SupportedIncludes: local-name
        SupportedSecondaryChannels: 1M
        SupportedSecondaryChannels: 2M
        SupportedSecondaryChannels: Coded

[bluetooth]# scan on
Discovery started   

[NEW] Device 00:1E:7C:89:26:C8 Exodus ANC

[bluetooth]# connect 00:1E:7C:89:26:C8
Attempting to connect to 00:1E:7C:89:26:C8
Failed to connect: org.bluez.Error.Failed

[bluetooth]# pair 00:1E:7C:89:26:C8
Attempting to pair with 00:1E:7C:89:26:C8
Failed to pair: org.bluez.Error.AuthenticationTimeout

我还查找了系统错误:

$ sudo journalctl -xb
bluetoothd[1208]: 00:1E:7C:89:26:C8: error updating services: Function not implemented (38)

$ dmesh
Bluetooth: hci0: advertising data len corrected

我有另一款蓝牙耳机,我可以完美配对。我可以将 Exodus ANC 与我的 Android 手机完美配对。但我注意到,当将 Exodus ANC 与 Android 配对时,Android 会显示来自 Exodus ANC 的 PIN 码,然后我可以确认配对。这个 PIN 码可能会导致在 Ubuntu 中配对失败。我该怎么做才能在 Ubuntu 中配对这款耳机?

$ dpkg -l | grep blue
ii  bluez                                      5.56-0ubuntu4.2                                                      amd64        Bluetooth tools and daemons
ii  bluez-cups                                 5.56-0ubuntu4.2                                                      amd64        Bluetooth printer driver for CUPS
ii  bluez-obexd                                5.56-0ubuntu4.2                                                      amd64        bluez obex daemon
ii  gir1.2-gnomebluetooth-1.0:amd64            3.34.5-1                                                             amd64        Introspection data for GnomeBluetooth
ii  gnome-bluetooth                            3.34.5-1                                                             amd64        GNOME Bluetooth tools
ii  libbluetooth3:amd64                        5.56-0ubuntu4.2                                                      amd64        Library to use the BlueZ Linux Bluetooth stack
ii  libgnome-bluetooth13:amd64                 3.34.5-1                                                             amd64        GNOME Bluetooth tools - support library
rc  libkf5bluezqt-data                         5.80.0-0ubuntu1                                                      all          data files for bluez-qt
ii  pulseaudio-module-bluetooth                1:14.2-1ubuntu1.1                                                    amd64        Bluetooth module for PulseAudio sound server
ii  python-bluez                               0.22+really0.22-1build2                                              amd64        Python 2 wrappers around BlueZ for rapid bluetooth development

更新:

根据 fabatera 的指示添加额外的调试信息。

$ sudo systemctl stop bluetooth
$ sudo bluetoothd -d -C -E -n                                                                                        
bluetoothd[122796]: Bluetooth daemon 5.56
bluetoothd[122796]: src/agent.c:agent_ref() 0x5592e4338bd0: ref=2
bluetoothd[122796]: src/device.c:bonding_request_new() Requesting bonding for 00:1E:7C:89:26:C8
bluetoothd[122796]: src/agent.c:agent_ref() 0x5592e4338bd0: ref=3
bluetoothd[122796]: src/agent.c:agent_unref() 0x5592e4338bd0: ref=2
bluetoothd[122796]: src/adapter.c:suspend_discovery() 
bluetoothd[122796]: src/adapter.c:adapter_bonding_attempt() hci0 bdaddr 00:1E:7C:89:26:C8 type 0 io_cap 0x04
bluetoothd[122796]: src/adapter.c:connect_failed_callback() hci0 00:1E:7C:89:26:C8 status 8
bluetoothd[122796]: plugins/policy.c:conn_fail_cb() status 8
bluetoothd[122796]: src/adapter.c:bonding_attempt_complete() hci0 bdaddr 00:1E:7C:89:26:C8 type 0 status 0x8
bluetoothd[122796]: src/device.c:device_bonding_complete() bonding 0x5592e433eb20 status 0x08
bluetoothd[122796]: src/device.c:device_bonding_failed() status 8
bluetoothd[122796]: src/agent.c:agent_unref() 0x5592e4338bd0: ref=1
bluetoothd[122796]: src/adapter.c:resume_discovery() 
bluetoothd[122796]: src/adapter.c:pair_device_complete() Timeout (0x08)
bluetoothd[122796]: src/adapter.c:bonding_attempt_complete() hci0 bdaddr 00:1E:7C:89:26:C8 type 0 status 0x8
bluetoothd[122796]: src/device.c:device_bonding_complete() bonding (nil) status 0x08
bluetoothd[122796]: src/device.c:device_bonding_failed() status 8
bluetoothd[122796]: src/adapter.c:resume_discovery() 
bluetoothd[122796]: src/device.c:connect_profiles() /org/bluez/hci0/dev_00_1E_7C_89_26_C8 (all), client :1.829
bluetoothd[122796]: src/device.c:connect_profiles() Resolving services for /org/bluez/hci0/dev_00_1E_7C_89_26_C8
bluetoothd[122796]: src/adapter.c:connect_failed_callback() hci0 00:1E:7C:89:26:C8 status 8
bluetoothd[122796]: plugins/policy.c:conn_fail_cb() status 8
bluetoothd[122796]: src/adapter.c:bonding_attempt_complete() hci0 bdaddr 00:1E:7C:89:26:C8 type 0 status 0x8
bluetoothd[122796]: src/device.c:device_bonding_complete() bonding (nil) status 0x08
bluetoothd[122796]: src/device.c:device_bonding_failed() status 8
bluetoothd[122796]: src/adapter.c:resume_discovery() 
bluetoothd[122796]: src/device.c:search_cb() 00:1E:7C:89:26:C8: error updating services: Function not implemented (38)
bluetoothd[122796]: src/device.c:device_svc_resolved() /org/bluez/hci0/dev_00_1E_7C_89_26_C8 err -38
$ sudo btmon
Bluetooth monitor ver 5.56
= Note: Linux version 5.11.0-25-generic (x86_64)     
= Note: Bluetooth subsystem version 2.22             
= New Index: 04:EA:56:86:78:50 (Primary,USB,hci0)    
= bluetoothd: Bluetooth daemon 5.56                  
@ MGMT Open: bluetoothd (privileged) version 1.19

# pair attempt:

@ MGMT Command: Pair Device (0x0019) plen 8                                                                                                                                                                                                                      {0x0001} [hci0] 154.081112 
        BR/EDR Address: 00:1E:7C:89:26:C8 (Taiwick Limited)                                                                                                                                                                                                                                 
        Capability: KeyboardDisplay (0x04)                             
< HCI Command: Create Connection (0x01|0x0005) plen 13                                                                                                                                                                                                               #141 [hci0] 154.081177 
        Address: 00:1E:7C:89:26:C8 (Taiwick Limited)
        Packet type: 0xcc18                                            
          DM1 may be used                                              
          DH1 may be used                                              
          DM3 may be used                                              
          DH3 may be used                                              
          DM5 may be used                                              
          DH5 may be used                                              
        Page scan repetition mode: R2 (0x02)                           
        Page scan mode: Mandatory (0x00)                                                                                                                                                                                                                                                    
        Clock offset: 0x0000                                           
        Role switch: Allow slave (0x01)                                
> HCI Event: Command Status (0x0f) plen 4                                                                                                                                                                                                                            #142 [hci0] 154.197141
      Create Connection (0x01|0x0005) ncmd 1                           
        Status: Success (0x00)                                                                                                                                                                                                                                                              
> HCI Event: Connect Complete (0x03) plen 11                                                                                                                                                                                                                         #143 [hci0] 186.684630 
        Status: LMP Response Timeout / LL Response Timeout (0x22)      
        Handle: 65535                                                                                                                                                                                                                                                                       
        Address: 00:1E:7C:89:26:C8 (Taiwick Limited)                   
        Link type: ACL (0x01)                                          
        Encryption: Disabled (0x00)                                    
@ MGMT Event: Connect Failed (0x000d) plen 8                                                                                                                                                                                                                     {0x0001} [hci0] 186.684678 
        BR/EDR Address: 00:1E:7C:89:26:C8 (Taiwick Limited)
        Status: Timeout (0x08)                                         
@ MGMT Event: Command Complete (0x0001) plen 10                                                                                                                                                                                                                  {0x0001} [hci0] 186.684696 
      Pair Device (0x0019) plen 7                                      
        Status: Timeout (0x08)                                         
        BR/EDR Address: 00:1E:7C:89:26:C8 (Taiwick Limited)

# connect attempt:

< HCI Command: Create Connection (0x01|0x0005) plen 13                                                                                                                                                                                                               #144 [hci0] 818.218687
        Address: 00:1E:7C:89:26:C8 (Taiwick Limited)
        Packet type: 0xcc18
          DM1 may be used
          DH1 may be used
          DM3 may be used
          DH3 may be used
          DM5 may be used
          DH5 may be used
        Page scan repetition mode: R2 (0x02)
        Page scan mode: Mandatory (0x00)
        Clock offset: 0x0000
        Role switch: Allow slave (0x01)
> HCI Event: Command Status (0x0f) plen 4                                                                                                                                                                                                                            #145 [hci0] 818.333626
      Create Connection (0x01|0x0005) ncmd 1
        Status: Success (0x00)
> HCI Event: Connect Complete (0x03) plen 11                                                                                                                                                                                                                         #146 [hci0] 850.041050
        Status: LMP Response Timeout / LL Response Timeout (0x22)
        Handle: 65535
        Address: 00:1E:7C:89:26:C8 (Taiwick Limited)
        Link type: ACL (0x01)
        Encryption: Disabled (0x00)
@ MGMT Event: Connect Failed (0x000d) plen 8                                                                                                                                                                                                                     {0x0001} [hci0] 850.041111
        BR/EDR Address: 00:1E:7C:89:26:C8 (Taiwick Limited)
        Status: Timeout (0x08)
= bluetoothd: src/device.c:search_cb() 00:1E:7C:89:26:C8: error updating services: Function not implemented (38)                                                                                                                                                                 850.045357
$ bluetoothctl
[bluetooth]# power on
Changing power on succeeded

[bluetooth]# agent on
Agent is already registered

[bluetooth]# default-agent
Default agent request successful

[bluetooth]# info 00:1E:7C:89:26:C8
Device 00:1E:7C:89:26:C8 (public)
        Name: Exodus ANC
        Alias: Exodus ANC
        Class: 0x00240404
        Icon: audio-card
        Paired: no
        Trusted: yes
        Blocked: no
        Connected: no
        LegacyPairing: no

[bluetooth]# pair 00:1E:7C:89:26:C8
Attempting to pair with 00:1E:7C:89:26:C8
Failed to pair: org.bluez.Error.AuthenticationTimeout

[bluetooth]# connect 00:1E:7C:89:26:C8
Attempting to connect to 00:1E:7C:89:26:C8
Failed to connect: org.bluez.Error.Failed

更新2:

我刚刚在运行 Ubuntu 20.04 的 Dell Latitude 5280 笔记本电脑上测试了这些耳机,配对得很好!戴尔笔记本电脑使用的是Intel Wireless Bluetooth(设备信息没有提供更多信息)。我的英特尔 NUC 有一个Bluetooth 9460/9560 Jefferson Peak,也是英特尔的,配对失败。我还有一台联想 Thinkpad T14,但配对也失败了。所以我买了一个 USB 蓝牙适配器,ASUS Bluetooth Adapter USB-BT500但配对仍然失败。我需要什么样的蓝牙适配器?

更新 3:

显然,更多人遇到了这些蓝牙适配器的问题:

更新 4:

我买了一堆 USB 蓝牙适配器,看看它们是否能用。以下是迄今为止的结果:

  1. 华硕 USB-BT500 蓝牙 5.0:无法配对
  2. Edimax BT-8500 蓝牙 5.0:无法配对
  3. TP-LINK UB400 蓝牙 4.0:可以配对,可以连接,连接到标准 USB 3.1 端口(蓝色端口)时声音不断抖动,但连接到 USB 3.1 常开端口(黄色端口)时声音正常。

答案1

尝试在此处添加更多信息:

在调试、兼容、实验中启动守护进程

systemctl stop bluetooth
bluetoohd -d -C -E -n

在另一个终端中:

btmon

在另一个终端中:

bluetoothctl 
power on
pairable on
agent KeyboardOnly
default-agent 
info <head phone mac address>
pair <head phone mac address>

答案2

这实际上不是一个解决方案,而是一种变通方法。我在几台不同的计算机上尝试了这些耳机,所有计算机都运行 Ubuntu 20.04,并使用不同的蓝牙 USB 适配器。在某些计算机上,我可以毫无问题地配对这些耳机,而在其他计算机上配对失败。因此,配对是否有效显然取决于蓝牙适配器。请注意,我测试的所有计算机都可以与不同的耳机配对,因此并不是蓝牙适配器有缺陷。

无论如何,这些是我迄今为止的结果。也许这可以帮助您找到真正适用于这些耳机的硬件:

作品:

  • 英特尔 NUC NUC6i3SYH(英特尔无线蓝牙)
  • 联想 Thinkpad T420s(英特尔无线蓝牙)
  • 戴尔 Latitude 5280(英特尔无线蓝牙)
  • TP-LINK UB400 蓝牙 4.0 适配器

不起作用:

  • 英特尔 NUC NUC8i3BEH(蓝牙 9460/9560 Jefferson Peak)
  • 联想 Thinkpad T14 Gen 2(英特尔无线蓝牙)
  • 华硕 USB-BT500 蓝牙 5.0 适配器
  • Edimax BT-8500 蓝牙 5.0 适配器

答案3

我在联想上解决了这个问题。我在 Airpods Max 上也遇到了同样的问题,这是我在 House of Marley ANC 之后买的新耳机。

sudo nano /etc/bluetooth/main.conf

查找行:#ControllerMode = dual

用。。。来代替:ControllerMode = bredr

保存并退出

sudo /etc/init.d/bluetooth restart

相关内容