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.
Note: Using Ubuntu? If so, your PC may already have stellar Bluetooth support, and there is no need to configure it with this article.
sudo pacman -S bluez bluez-utils
sudo dnf install bluez bluez-tools
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.
sudo apt-get install bluez*
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.
sudo pacman -S blueman
sudo dnf install blueman
sudo zypper install blueman
sudo apt-get install blueman
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!
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:
With the root shell, manually load the generic Bluetooth USB driver if you’re using a BT dongle.
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
sudo systemctl start bluetooth.service -f
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.
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.