Bluetooth problems and Sennheiser PXC 550-II with recent kernel update

The headphones have been working ok on Fedora 38. The headphones have 2 modes. Headset and Handsfree. In headset mode it’s just headphones but in handsfree they also have microphone but the sound is kinda tin-y, like you’re on a phone.

The original issue was that if you were in handsfree mode and you wanted to switch back to headset mode, it would take 2-10 attempts to switch until you actually got sound (switching using the dropdown list of audio devices in the top right corner)

It wasn’t great but it usually eventually worked.

But now after kernel update 6.4.10-200.fc38.x86_64 I got yesterday, things are not working as well. I either have to restart the bluetooth service and turn off/on my headphones to get them to even show up in the audio devices list. And sometimes I’d only get the handsfree mode available and not the headset mode.

I have not configured bluetooth or audio libraries from stock Fedora 38 otherwise. Fresh install on the machine (Dell Inc. XPS 9320 laptop)

Hello @olafurw ,
Welcome to :fedora: discussion.
I have seen around here some issues mentioned by people having troubles with Bluetooth devices after the recent upgrade of the kernel. Perhaps do a search at this site to find the posts, just try “Bluetooth” as the term. Just did and they are “solved” and pertain to F37 latest post. In it the “solution” was to never shutdown Fedora, not exactly a solution IMO. It will be kernel related no doubt, but also may just be that bluetoothctl needs reconfiguration. To get some info, try using bluetoothctl in a terminal. It will open a command line to your bluetooth interface. In that you type help to get the range of commands available to you and start debugging! WooHoo!

I did search around and didn’t find any but I found one in the suggested posts after I made this post.

It had some possible workarounds. I’m trying the one where you copy the default profile and I’ll report back if we are ok or not.

1 Like

So I gave that workaround a try for a couple of days but no, it’s not working.

Sometimes after a reboot, I would only get the Handsfree version of the headphones and it would not show the Headset mode.

I’ve tried changing codecs as some other thread suggested, nothing.
I’ve tried connecting and showing the status from the bluetoothctl menu but it only shows the Handsfree mode, not the headset mode. Even if I try to connect and re-pair through that menu and using the headsets.

Is there a place where I can see the log of the device connecting, perhaps there’s an error log somewhere where it doesn’t handle the headphones with 2 modes correctly?

Here’s what I know so far that might help others reading this. (there’s still a problem but it’s manageable)

If you have a bluetooth device with 2 modes (handsfree and headset for example) and sometimes one of the modes isn’t listed or it’s listed but switching to it does nothing, a restart of the bluetooth device can help (like turning off/on the headphones).

But what I’ve found to be the biggest help is to NOT have the device connecting to two devices. My example is that if I’m using it on my laptop, that I turn off bluetooth on my phone, so the headphones aren’t also connected there.

This made the problem significantly easier to deal with.

But the problem of switching between the 2 modes is still there, sometimes takes 2-10 attempts of switching from handsfree to headset mode before I get any sound in headset mode.

So it’s related to sharing on the Bluetooth network, possibly a priority issue say of the Phone trying to take priority control over the device perhaps? Isn’t that usually sort of seamless with Bluetooth? Like without interruptions? Forgive my ignorance, I use wired connections for my headphones/microphone as a general rule, so my knowledge of Bluetooth is limited to NFC use for sharing content/files.

And now switching between the two modes sometimes crashes wireplumber and gnome. Here’s a link to the crash bugs if anyone else is reading this and having similar issues.

Just an update. I’ve gone though several kernel and audio patches and nothing has fixed the issues. The crashes have gone down (still happens once in a while) but the issue of switching between handsfree and headset mode still is problematic and I have to do it several times for it to actually switch.

So I switched to Ubuntu for an unrelated reason (they have working ipu6 webcam drivers) and I noticed that there have been no crashes with the audio and switching between handsfree and headset mode is instant and always works.

So I guess that’s where the story ends for me at this time.