Unable to use AirPod Pro headset with Rocky Linux 9.4

I recently switched from Fedora 40 to Rocky Linux 9.4. AirPod Pro worked flawlessly with Fedora, but is unable to work with Rocky. The device appears to be paired successfully. Upon opening the headphone case, udevadm monitor shows the device was initially added, but was quickly got removed.

Below are some outputs from udevadm monitor, journald log, and bluetoothctl. Any suggestions would be greatly appreciated. :saluting_face:

[root@localhost ~]# udevadm monitor 
monitor will print the received events for:
UDEV - the event which udev sends out after rule processing
KERNEL - the kernel uevent

KERNEL[2065.773923] add      /devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.0/bluetooth/hci0/hci0:2048 (bluetooth)
UDEV  [2065.788141] add      /devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.0/bluetooth/hci0/hci0:2048 (bluetooth)
KERNEL[2066.323759] add      /devices/virtual/input/input39 (input)
KERNEL[2066.324442] add      /devices/virtual/input/input39/event25 (input)
UDEV  [2066.327018] add      /devices/virtual/input/input39 (input)
UDEV  [2066.360100] add      /devices/virtual/input/input39/event25 (input)
KERNEL[2069.567631] remove   /devices/virtual/input/input39/event25 (input)
KERNEL[2069.573388] remove   /devices/virtual/input/input39 (input)
UDEV  [2069.575655] remove   /devices/virtual/input/input39/event25 (input)
UDEV  [2069.576911] remove   /devices/virtual/input/input39 (input)
KERNEL[2069.737428] remove   /devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.0/bluetooth/hci0/hci0:2048 (bluetooth)
UDEV  [2069.739558] remove   /devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.0/bluetooth/hci0/hci0:2048 (bluetooth)

Below are related entries from journald log:

Aug 18 22:32:31 localhost.localdomain kernel: input: AirPlus Pro (AVRCP) as /devices/virtual/input/input39
Aug 18 22:32:31 localhost.localdomain systemd-logind[1215]: Watching system buttons on /dev/input/event25 (AirPlus Pro (AVRCP))

And some outputs from bluetoothctl:

[bluetooth]# show
Controller F4:4E:FC:FA:FB:AC (public)
	Name: BlueZ 5.64
	Alias: BlueZ 5.64
	Class: 0x007c0104
	Powered: yes
	Discoverable: yes
	DiscoverableTimeout: 0x000000b4
	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: 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: Handsfree Audio Gateway   (0000111f-0000-1000-8000-00805f9b34fb)
	UUID: Audio Source              (0000110a-0000-1000-8000-00805f9b34fb)
	UUID: OBEX File Transfer        (00001106-0000-1000-8000-00805f9b34fb)
	UUID: Handsfree                 (0000111e-0000-1000-8000-00805f9b34fb)
	Modalias: usb:v1D6Bp0246d0540
	Discovering: yes
	Roles: central
	Roles: peripheral
Advertising Features:
	ActiveInstances: 0x00 (0)
	SupportedInstances: 0x05 (5)
	SupportedIncludes: tx-power
	SupportedIncludes: appearance
	SupportedIncludes: local-name

[bluetooth]# paired-devices
Device 3E:83:1D:16:5F:15 AirPlus Pro

[bluetooth]# info 3E:83:1D:16:5F:15
Device 3E:83:1D:16:5F:15 (public)
	Name: AirPlus Pro
	Alias: AirPlus Pro
	Class: 0x00240404
	Icon: audio-headset
	Paired: yes
	Trusted: yes
	Blocked: no
	Connected: no
	LegacyPairing: no
	UUID: Audio Sink                (0000110b-0000-1000-8000-00805f9b34fb)
	UUID: A/V Remote Control Target (0000110c-0000-1000-8000-00805f9b34fb)
	UUID: Advanced Audio Distribu.. (0000110d-0000-1000-8000-00805f9b34fb)
	UUID: A/V Remote Control        (0000110e-0000-1000-8000-00805f9b34fb)
	ManufacturerData Key: 0x7262
	ManufacturerData Value:
  32 32 78 78 11 22 33 44 55 66 aa bb 00 00        22xx."3DUf....  
	RSSI: -74

Here are some additional discoveries…If using bluetoothctl connect command, the headset appears connected.

[bluetooth]# connect 3E:83:1D:16:5F:15
Attempting to connect to 3E:83:1D:16:5F:15
[CHG] Device 3E:83:1D:16:5F:15 Connected: yes

And udevadm monitor would stabilize with no remove messages afterwards:

KERNEL[3535.292905] add      /devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.0/bluetooth/hci0/hci0:2048 (bluetooth)
UDEV  [3535.302999] add      /devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.0/bluetooth/hci0/hci0:2048 (bluetooth)

There is however no option for the headphone under the GNOME Sound Output Device list:

As soon as a music file was played, journald showed following messages:

Aug 18 22:57:42 localhost.localdomain bluetoothd[1198]: profiles/audio/avdtp.c:avdtp_connect_cb() connect to 3E:83:1D:16:5F:15: Connection refused (111)
Aug 18 22:58:27 localhost.localdomain bluetoothd[1198]: profiles/audio/avdtp.c:avdtp_connect_cb() connect to 3E:83:1D:16:5F:15: Connection refused (111)

The headset would remain connected afterwards, but just did not work.

More additional findings with a positive progress…

After using bluetoothctl connect to manually connect the headset as mentioned above, I put the headset back to its case and close the case cover. udevadm showed the device was removed:

KERNEL[5253.230365] remove   /devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.0/bluetooth/hci0/hci0:2048 (bluetooth)
UDEV  [5253.238164] remove   /devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.0/bluetooth/hci0/hci0:2048 (bluetooth)

I then reopened the case and put on the headsets, udevadm showed add messages and became stabilized:

KERNEL[5259.948342] add      /devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.0/bluetooth/hci0/hci0:2048 (bluetooth)
UDEV  [5259.957806] add      /devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.0/bluetooth/hci0/hci0:2048 (bluetooth)
KERNEL[5260.418704] add      /devices/virtual/input/input45 (input)
KERNEL[5260.418791] add      /devices/virtual/input/input45/event25 (input)
UDEV  [5260.422189] add      /devices/virtual/input/input45 (input)
UDEV  [5260.447238] add      /devices/virtual/input/input45/event25 (input)

And the headset option appeared in the Output Device list. The headphone became functional:

However, this was only a half baked workaround… As I put the headset back to its case, closed and reopened the case cover, it went back to what was described at the very beginning: the device was initially added but was soon removed according to the udevadm messages. I had to manually run bluetoothctl connect to get it working again. Though it is now better than before, any suggestions to make this process fully functional are highly appreciated. :saluting_face:

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.