Fedora 36 a2dp bluetooth audio

After upgrading to F36, the a2dp codecs for bluetooth audio have gone missing. I tried uninstalling
pulseaudio-module-bluetooth and installing pulseaudio-module-bluetooth-freeworld as described here. But that just ended up removing a bunch of necessary stuff. Anybody get this working in F36?

The better way to do what is shown in that link would be to do sudo dnf swap pulseaudio-module-bluetooth pulseaudio-module-bluetooth-freeworld --allowerasing since that will avoid having the removal erase necessary dependencies.

With that said, since pulseaudio was replaced by wireplumber/pipewire most of those packages were obsoleted. This probably accounts for why the packages you are concerned with disappeared.

Have you tried first doing a sudo distro-sync --refresh --allowerasing to get everything audio in sync with the distro to see if it will work for you or not?

It also may be related to having some config file for audio in your home directory that is now interfering with proper audio operation.

I suggest that you do the distro-sync suggested above, then if your regular user still has audio/bluetooth issues create a new user and log in as that user to see if a clean user profile has the same errors. Let us know the results.

My system has no a2dp packages of any kind installed and audio works.

Thanks for that reply. The problem isn’t that the audio doesn’t work, it’s that the default Bluetooth codec (HSP/HFP) sounds bad and that the a2dp sounds much better with a Bluetooth box.

I tried the distro-sync and there were no changes.

I’m now hesitant to swap out the audio.

Do you have an a2dp code available for Bluetooth audio devices?

1 Like

My system has no a2dp packages of any kind installed. I cannot test bluetooth since I do not have bluetooth headphones or speakers but my other audio outputs work well.

1 Like

The plot thickens. I just checked another bluetooth box, it it connects with a2dp flawlessly. But the original one still doesn’t show an a2dp profile. I disconnected and repaired the device, but still there’s no a2dp for the original device.

I. Am. Very. Confused.

Any tips?

Similar problem here.
Fedora 37
Sony WI-C100 bluetooth headphones, manual states connected pc’s must support a2dp
The device shows as paired but does not show up audio output options
I tried sudo dnf swap pulseaudio-module-bluetooth pulseaudio-module-bluetooth-freeworld --allowerasing to no effect.

Hello! I’m experiencing a similar issue. It seems to have started after a dnf update in the last few weeks as my headphones were working just fine since I started using F36 months ago.

My Sony WH-1000XM3 headphones will connect, but are not recognized as an A2DP sink. They only show up with HSP/HFP profiles. My Beats Fit Pro headphones won’t even connect.

None of the solutions for older Fedora versions that come up from a web search seem to be relevant anymore.

Here’s some of my output if it helps anyone:

lsusb:

Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 004: ID 27c6:609c Shenzhen Goodix Technology Co.,Ltd. Goodix USB2.0 MISC
Bus 003 Device 003: ID 0bda:5634 Realtek Semiconductor Corp. Laptop Camera
Bus 003 Device 002: ID 32ac:0002 Framework HDMI Expansion Card
Bus 003 Device 005: ID 8087:0032 Intel Corp. AX210 Bluetooth
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

bluetoothctl [version, devices]:

Version 5.66
Device CC:98:8B:93:D0:18 WH-1000XM3
Device FC:5E:AD:50:67:52 DARK CORE RGB PRO

bluetoothctl show:

Controller 4C:77:CB:F0:4E:DD (public)
	Name: freibergite
	Alias: freibergite
	Class: 0x007c010c
	Powered: yes
	PowerState: on
	Discoverable: no
	DiscoverableTimeout: 0x000000b4
	Pairable: no
	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:v1D6Bp0246d0542
	Discovering: no
	Roles: central
	Roles: peripheral
Advertising Features:
	ActiveInstances: 0x00 (0)
	SupportedInstances: 0x0c (12)
	SupportedIncludes: tx-power
	SupportedIncludes: appearance
	SupportedIncludes: local-name
	SupportedSecondaryChannels: 1M
	SupportedSecondaryChannels: 2M
	SupportedSecondaryChannels: Coded

dmesg | grep -P '[Bb]luetooth|input': (long output)

```console [ 1.316800] input: Lid Switch as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:1b/PNP0C09:00/PNP0C0D:00/input/input0 [ 1.316829] input: Power Button as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0C:00/input/input1 [ 1.413102] input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input2 [ 1.910000] hid-generic 0003:32AC:0002.0001: hiddev96,hidraw0: USB HID v1.11 Device [Framework HDMI Expansion Card] on usb-0000:00:14.0-4/input1 [ 2.207420] input: ImExPS/2 Generic Explorer Mouse as /devices/platform/i8042/serio1/input/input4 [ 2.642688] input: FRMW0001:00 32AC:0006 Wireless Radio Control as /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-1/i2c-FRMW0001:00/0018:32AC:0006.0002/input/input5 [ 2.642805] input: FRMW0001:00 32AC:0006 Consumer Control as /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-1/i2c-FRMW0001:00/0018:32AC:0006.0002/input/input6 [ 2.642960] hid-generic 0018:32AC:0006.0002: input,hidraw1: I2C HID v1.00 Device [FRMW0001:00 32AC:0006] on i2c-FRMW0001:00 [ 2.664788] input: PIXA3854:00 093A:0274 Mouse as /devices/pci0000:00/0000:00:15.3/i2c_designware.2/i2c-2/i2c-PIXA3854:00/0018:093A:0274.0003/input/input7 [ 2.664938] input: PIXA3854:00 093A:0274 Touchpad as /devices/pci0000:00/0000:00:15.3/i2c_designware.2/i2c-2/i2c-PIXA3854:00/0018:093A:0274.0003/input/input8 [ 2.665101] hid-generic 0018:093A:0274.0003: input,hidraw2: I2C HID v1.00 Mouse [PIXA3854:00 093A:0274] on i2c-PIXA3854:00 [ 2.721868] input: PIXA3854:00 093A:0274 Mouse as /devices/pci0000:00/0000:00:15.3/i2c_designware.2/i2c-2/i2c-PIXA3854:00/0018:093A:0274.0003/input/input9 [ 2.721903] input: PIXA3854:00 093A:0274 Touchpad as /devices/pci0000:00/0000:00:15.3/i2c_designware.2/i2c-2/i2c-PIXA3854:00/0018:093A:0274.0003/input/input10 [ 2.721934] hid-multitouch 0018:093A:0274.0003: input,hidraw2: I2C HID v1.00 Mouse [PIXA3854:00 093A:0274] on i2c-PIXA3854:00 [ 4.212952] input: Video Bus as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/LNXVIDEO:00/input/input11 [ 12.391006] input: PC Speaker as /devices/platform/pcspkr/input/input12 [ 12.437112] Bluetooth: Core ver 2.22 [ 12.437142] Bluetooth: HCI device and connection manager initialized [ 12.437147] Bluetooth: HCI socket layer initialized [ 12.437150] Bluetooth: L2CAP socket layer initialized [ 12.437156] Bluetooth: SCO socket layer initialized [ 12.463072] input: Laptop Camera: Laptop Camera as /devices/pci0000:00/0000:00:14.0/usb3/3-7/3-7:1.0/input/input13 [ 12.497352] Bluetooth: hci0: Firmware timestamp 2022.51 buildtype 1 build 56683 [ 12.530355] Bluetooth: hci0: Found device firmware: intel/ibt-0041-0041.sfi [ 12.530427] Bluetooth: hci0: Boot Address: 0x100800 [ 12.530430] Bluetooth: hci0: Firmware Version: 107-51.22 [ 12.530431] Bluetooth: hci0: Firmware already loaded [ 12.674997] snd_hda_codec_idt hdaudioC0D0: inputs: [ 12.756709] input: HDA Intel PCH Mic as /devices/pci0000:00/0000:00:1f.3/sound/card0/input14 [ 12.756750] input: HDA Intel PCH Headphone as /devices/pci0000:00/0000:00:1f.3/sound/card0/input15 [ 12.756781] input: HDA Intel PCH HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input16 [ 12.756813] input: HDA Intel PCH HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input17 [ 12.756845] input: HDA Intel PCH HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input18 [ 12.756874] input: HDA Intel PCH HDMI/DP,pcm=9 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input19 [ 13.355390] Bluetooth: BNEP (Ethernet Emulation) ver 1.3 [ 13.355393] Bluetooth: BNEP filters: protocol multicast [ 13.355397] Bluetooth: BNEP socket layer initialized [ 13.357351] Bluetooth: MGMT ver 1.22 [ 19.267958] rfkill: input handler disabled [ 19.592996] Bluetooth: RFCOMM TTY layer initialized [ 19.593001] Bluetooth: RFCOMM socket layer initialized [ 19.593005] Bluetooth: RFCOMM ver 1.11 [ 23.997250] rfkill: input handler enabled [ 25.089582] rfkill: input handler disabled [ 31.017321] input: WH-1000XM3 (AVRCP) as /devices/virtual/input/input20 [ 969.538007] input: WH-1000XM3 (AVRCP) as /devices/virtual/input/input21 ```

journalctl -b -u bluetooth: (long output)

```console Feb 10 06:56:56 freibergite systemd[1]: Starting bluetooth.service - Bluetooth service... Feb 10 06:56:56 freibergite systemd[1370]: ConfigurationDirectory 'bluetooth' already exists but the mode is different. (File system: 755 ConfigurationDirectoryMode: 555) Feb 10 06:56:56 freibergite bluetoothd[1370]: Bluetooth daemon 5.66 Feb 10 06:56:56 freibergite bluetoothd[1370]: Starting SDP server Feb 10 06:56:56 freibergite bluetoothd[1370]: profiles/audio/vcp.c:vcp_init() D-Bus experimental not enabled Feb 10 06:56:56 freibergite bluetoothd[1370]: src/plugin.c:plugin_init() Failed to init vcp plugin Feb 10 06:56:56 freibergite bluetoothd[1370]: profiles/audio/mcp.c:mcp_init() D-Bus experimental not enabled Feb 10 06:56:56 freibergite bluetoothd[1370]: src/plugin.c:plugin_init() Failed to init mcp plugin Feb 10 06:56:56 freibergite bluetoothd[1370]: profiles/audio/bap.c:bap_init() D-Bus experimental not enabled Feb 10 06:56:56 freibergite bluetoothd[1370]: src/plugin.c:plugin_init() Failed to init bap plugin Feb 10 06:56:56 freibergite bluetoothd[1370]: Bluetooth management interface 1.22 initialized Feb 10 06:56:56 freibergite systemd[1]: Started bluetooth.service - Bluetooth service. Feb 10 06:56:56 freibergite bluetoothd[1370]: src/device.c:device_set_wake_support() Unable to set wake_support without RPA resolution Feb 10 06:57:02 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.63 path=/MediaEndpoint/A2DPSource/ldac Feb 10 06:57:02 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.63 path=/MediaEndpoint/A2DPSink/aac Feb 10 06:57:02 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.63 path=/MediaEndpoint/A2DPSource/aac Feb 10 06:57:02 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.63 path=/MediaEndpoint/A2DPSink/sbc Feb 10 06:57:02 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.63 path=/MediaEndpoint/A2DPSource/sbc Feb 10 06:57:02 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.63 path=/MediaEndpoint/A2DPSink/sbc_xq Feb 10 06:57:02 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.63 path=/MediaEndpoint/A2DPSource/sbc_xq Feb 10 06:57:02 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.63 path=/MediaEndpoint/A2DPSource/faststream Feb 10 06:57:02 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.63 path=/MediaEndpoint/A2DPSource/faststream_duplex Feb 10 06:57:02 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.63 path=/MediaEndpoint/A2DPSink/opus_05 Feb 10 06:57:02 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.63 path=/MediaEndpoint/A2DPSource/opus_05 Feb 10 06:57:02 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.63 path=/MediaEndpoint/A2DPSink/opus_05_duplex Feb 10 06:57:02 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.63 path=/MediaEndpoint/A2DPSource/opus_05_duplex Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint unregistered: sender=:1.63 path=/MediaEndpoint/A2DPSource/ldac Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint unregistered: sender=:1.63 path=/MediaEndpoint/A2DPSink/aac Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint unregistered: sender=:1.63 path=/MediaEndpoint/A2DPSource/aac Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint unregistered: sender=:1.63 path=/MediaEndpoint/A2DPSink/sbc Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint unregistered: sender=:1.63 path=/MediaEndpoint/A2DPSource/sbc Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint unregistered: sender=:1.63 path=/MediaEndpoint/A2DPSink/sbc_xq Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint unregistered: sender=:1.63 path=/MediaEndpoint/A2DPSource/sbc_xq Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint unregistered: sender=:1.63 path=/MediaEndpoint/A2DPSource/faststream Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint unregistered: sender=:1.63 path=/MediaEndpoint/A2DPSource/faststream_duplex Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint unregistered: sender=:1.63 path=/MediaEndpoint/A2DPSink/opus_05 Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint unregistered: sender=:1.63 path=/MediaEndpoint/A2DPSource/opus_05 Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint unregistered: sender=:1.63 path=/MediaEndpoint/A2DPSink/opus_05_duplex Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint unregistered: sender=:1.63 path=/MediaEndpoint/A2DPSource/opus_05_duplex Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.82 path=/MediaEndpoint/A2DPSource/ldac Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.82 path=/MediaEndpoint/A2DPSink/aac Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.82 path=/MediaEndpoint/A2DPSource/aac Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.82 path=/MediaEndpoint/A2DPSink/sbc Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.82 path=/MediaEndpoint/A2DPSource/sbc Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.82 path=/MediaEndpoint/A2DPSink/sbc_xq Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.82 path=/MediaEndpoint/A2DPSource/sbc_xq Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.82 path=/MediaEndpoint/A2DPSource/faststream Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.82 path=/MediaEndpoint/A2DPSource/faststream_duplex Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.82 path=/MediaEndpoint/A2DPSink/opus_05 Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.82 path=/MediaEndpoint/A2DPSource/opus_05 Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.82 path=/MediaEndpoint/A2DPSink/opus_05_duplex Feb 10 06:57:07 freibergite bluetoothd[1370]: Endpoint registered: sender=:1.82 path=/MediaEndpoint/A2DPSource/opus_05_duplex Feb 10 07:07:18 freibergite bluetoothd[1370]: Pair device failed: Timeout (0x08) Feb 10 07:12:46 freibergite bluetoothd[1370]: Failed to set mode: Failed (0x03) ```

And, of course because I posted something about it, A2DP is working now. Checking journalctl shows:

Feb 10 07:07:18 freibergite bluetoothd[1370]: Pair device failed: Timeout (0x08)
Feb 10 07:12:46 freibergite bluetoothd[1370]: Failed to set mode: Failed (0x03)
Feb 10 08:13:45 freibergite bluetoothd[1370]: /org/bluez/hci0/dev_CC_98_8B_93_D0_18/sep1/fd1: fd(34) ready

It seems like bluez didn’t ready the device for about an hour after it was paired.

I opened an issue in bluez to see if the devs have any input (no pun intended).