Bluetooth Devices will not pair on Pop_OS! 20.04 LTS using KDE Plasma 5.18.5
Linux - NewbieThis Linux forum is for members that are new to Linux.
Just starting out and have a question?
If it is not in the man pages or the how-to's this is the place!
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Bluetooth Devices will not pair on Pop_OS! 20.04 LTS using KDE Plasma 5.18.5
I attempted to connect to Sony WH-XB900N Bluetooth Headphones, and in both Plasma's bluetooth settings and Blueman, I was unable to connect, in both cases the device would appear in the selection, but then would get stuck connecting until it timed out and device shutoff. Sometimes it would appear to pair on the computer's end, but the headphones would still be in pairing mode, and audio would not be sent, still using the headphones I have wired in. Bluetooth seemed to stop working after I changed my hostname, and I was curious if this could have anything to do with it.
I was actually able to resolve this earlier today by following Victor's answer here to force Bluetooth to use regular Bluetooth rather than LE (Low energy). Feel free to try it out & let us know if that works for you!
Since I have no reason to use LE, I'm just keeping it disabled long-term.
starting by checking the service status and making sure that nothing is blocked with rfkill is probably a good idea. i didn't ever quite understand what the point of registering additional agents (KeyboardOnly) was, but since both mentioned it i did so. after that using the show command (in bluetoothctl) will let you know if the controller is ready and then info [dev] will let you know the status of the device. help will list the other options you have.
[bluetooth]# info 38:18:4C:03:54:A3
Device 38:18:4C:03:54:A3 (public)
Name: WH-XB900N
Alias: WH-XB900N
Class: 0x00240404
Icon: audio-card
Paired: no
Trusted: no
Blocked: no
Connected: no
LegacyPairing: no
Modalias: usb:v054Cp0CDCd0452
did you run all of these agent KeyboardOnly, default-agent and power on before the above? if so, can you try trusting first to see if that might help with the other two steps?
Did all the agent stuff and nothing seemed to change about my controller, and when I trusted the device, it seemed to attempt to connect, but it never completed, giving Failed to connect: org.bluez.Error.InProgress, and audio would still not play through the device
my situation was fairly similar in that i could get paired and trusted, but not connected (two out of three, but still not working). what helped get the third yes was running journalctl -f in a separate terminal while i ran the whole process with bluetoothctl. journalctl -f will let you see system logs as they are written. hopefully in those messages is an error that is more descriptive and helpful than the one from bluetoothctl
you can try running journalctl -f before you attempt pairing again. that may show an error. if it does not, i would sever the connection entirely (untrust and disconnect - you can probably do those through blueman) and then run journalctl -f as you go through the entire process in case that might yield a more helpful error.
in my case that process helped find a page that said some bluetooth pulseaudio modules weren't loading and that was all i needed to fix to get up and running.
first off, thank you for the use of code tags to make things easier to read. thanks as well for not posting hours worth of logs to try and sift through.
it seems the ones you have posted are right on the money and a more technical way of saying "Failed to pair: org.bluez.Error.AlreadyExists" or "i can't pair with a device that is already paired" even though it is clearly designated as not paired in bluetoothctl.
the way i ran my issue down was to search for the line that seemed most relevant. to me that line is: sysfs: cannot create duplicate filename '/devices/pci0000:00/0000:00:01.3/0000:01:00.0/usb1/1-9/1-9:1.0/bluetooth/hci0/hci0:256'
is it possible you lost power to either device while they were paired? i don't think that helps solve the issue, but might explain why your system still believes they are connected. it might also help avoid the same thing happening again.
those things being said, the oldest computer solve i know is turning it off then back on again. in this case before even running the previously suggested search, i would recommend using bluetoothctl to untrust and disconnect the device. there is also an option to "remove" the device, but i have never used it so i stop short of suggesting you try that. i don't have my bluetooth running just now to check, but if you can look at blueman after this to see if you can remove the headphones from there that might help. after those steps, i would even go so far as to "power off" the controller with bluetoothctl and then do the same if you have a hardware switch or keyboard combination that also does so. i would check rfkill to see if everything was blocked. then i would reboot your computer and power your headphones off.
the idea here is that your computer seems to have some kind of configuration set that links to your headphones at /devices/pci0000:00/0000:00:01.3/0000:01:00.0/usb1/1-9/1-9:1.0/bluetooth/hci0/hci0:256 (where hci0 is your bluetooth adapter located on the usb bus and 256 possibly somehow identifies your headphones) and hopefully severing the connection entirely will remove that configuration.
then start your computer and bluetooth back up with the headphones turned off, make sure the agents are registered and the controller is powered on before powering the headphones on and trying to connect again. since you have seen how journalctl -f works, it probably wouldn't be a bad idea to run it again in case it has any new messages that might be helpful.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.