How To Pair And Use Bluetooth Devices On Linux
Unlike a lot of aspects of Linux, the Bluetooth support is not automatic by the Linux kernel. This is in large part due to the Bluetooth stack and how it interacts with the overall Linux system. To make up for this, user friendly distributions like Ubuntu, Elementary, etc try very hard to set up Bluetooth for users. However, not all Linuxes do this. Various services, and Bluetooth clients need to be installed. In addition, every Bluetooth radio is different (and some do not have open source drivers) meaning these need to be installed after the fact. Here’s how to pair and use Bluetooth devices on Linux.
SPOILER ALERT: Scroll down and watch the video tutorial at the end of this article.
Note: Using Ubuntu? If so, your PC may already have stellar Bluetooth support, and there is no need to configure it with this article.
Arch Linux
sudo pacman -S bluez bluez-utils
Fedora
sudo dnf install bluez bluez-tools
OpenSUSE
Getting the Bluetooth tools and services on SUSE is done with the OBS. Go to this page, and click the quick-install button. From here, YaST will install everything.
Debian
sudo apt-get install bluez*
Other Linuxes
The bluez bluetooth stack is compatible with all Linux distributions, even Chrome OS! It is because of this, users on lesser-known, alternative Linux distributions will have no issue getting these tools working. To install them, open your package manager, and search for “bluez”. Install everything with the word “bluez” in it, to be safe.
Alternatively, go to the download site, grab the source code and build it manually.
Getting The Blueman Client
Installing Bluez allows your Linux desktop environment to directly use Bluetooth. This means if you use KDE Plasma, it’ll work directly with the KDE Bluetooth client. The same goes for the Gnome Shell built in client. So, no need to install Blueman.
If you’re using a Linux desktop environment, or window manager that does not have a built-in Bluetooth manager, consider installing Blueman. It’s a light-weight connection tool that makes interacting with devices much, much easier.
Arch Linux
sudo pacman -S blueman
Fedora
sudo dnf install blueman
OpenSUSE
sudo zypper install blueman
Debian
sudo apt-get install blueman
Other Linuxes
The Blueman connection tool is widely used on Linux. To find it on alternative Linux distributions, open your package manager (or software browser), search for “blueman” and install it. Can’t find it in the software sources? Download it from sourceforge instead!
Configuration
Downloading the Bluez Bluetooth stack and installing it on Linux isn’t enough. Services have to be active, or devices will not connect. First, open a terminal and gain a root shell using:sudo -s
With the root shell, manually load the generic Bluetooth USB driver if you’re using a BT dongle.
modprobe btusb
If using a laptop with a built in Bluetooth radio, the driver (if Linux supported) should automatically load the driver so there is no need to manually load it.
Note: some Bluetooth dongles will not support this driver on Linux. If this happens to you, read the manual for your device and look into what drivers it requires to run on Linux.
Arch Linux, Fedora, SUSE and other systemd Linuxes
First, enable the BT service so that it will always start when Linux boots up. This is done with:
sudo systemctl enable bluetooth.service
Then, start the service right away with:
sudo systemctl start bluetooth.service
If at any point systemctl refuses to start or enable these services, consider using the force option:
sudo systemctl enable bluetooth.service -f
and
sudo systemctl start bluetooth.service -f
Older Debian
Using a version of Debian that doesn’t have systemd? If so, after installing Bluez and all of the other Bluetooth tools, reboot your PC. The startup services will be active after logging back in.
Connecting To Bluetooth In Gnome
If the Bluetooth service is working correctly, as you plug in a Bluetooth dongle (or) use the built in Bluetooth radio on your PC, you should see a Bluetooth icon in the Gnome panel.
Click on the icon, and it’ll expand a menu. Inside the menu, select “Bluetooth settings” to bring up the device browsing tool.
Inside the browsing tool, click on the device you wish to connect to.
Follow the on-screen instructions Gnome gives to get connected.
Connecting To Bluetooth In KDE
To connect Bluetooth devices in the KDE Plasma Desktop, make sure your USB dongle (or) built in Bluetooth radio is working.
From here, click the BT icon in the Plasma panel, then select a device to connect to. Follow the instructions on the tool to pair!
Connecting To Bluetooth In Blueman
To get a Bluetooth device working with Blueman, first click the Bluetooth icon in the system tray. Then, click the “search” button to search for a device. When a device appears, select it with the mouse, then click “setup”.
The Blueman tool will take you through the pairing process. Follow the onscreen instructions, and soon your device will be paired.
Conclusion
Bluetooth has always been iffy on Linux, and many Linux distributions don’t set it up right away. Hopefully, by following this guide your Bluetooth woes on Linux will be a thing of the past.
Just installed linux mint 20 cinnamon, my blue tooth connected when first installed, after updates, it now connects and then immediately disconnects. linux mint 19.3 bluetooth connected just fine
Sadly, Bluetooth support on Linux can be shakey. If you’re having connection issues, consider installing the latest updates or getting a more compatible adapter.
My 10 year old desktop machine running Ubuntu 4.15.0-88-generic is using a the simplest $3.89 Bluetooth USB device I got from Jameco. Here in March 2020, the device is a closeout item.
The good news is my computer is paring up with a Target RCA 10′ Chrome tablet just filne.
What I have not figured out is how to copy a video file from the big desktop machine to the tablet.
On the desktop computer I get this dialogue box: From home/username/subdirectory/ To: tabletname Then ”
”
Connect error. Connection reset by peer(104).
Well it looks to me like I am very close. The good news is: the Ubuntu computer, even with 10 year old hardware is working pretty well. The problem appears to be I don’t understand how Chrome works. To be seen!
shame bluez doesnt support BT headset telephony. what a clanger of a mistake to drop it from bluez5.xx when it worked just fine in bluez4.xx
Thanks, was able to connect the headset
thank you