Troubleshooting a USB Bluetooth Adapter

Looking to utilize your USB bluetooth adapter in CentOS 6.x, Redhat Enterprise Linux 6.x, Scientific Linux 6.x, Ubuntu 16.04+, Trisquel 8, or a similar distribution? Having trouble getting your bluetooth adapter working? Try our directions below. These directions may be largely applicable to other distributions as well so give them a try- or email support for more distribution and version specific direction. Directions have been vetted against Ubuntu 20.04 and will still be applicable to similar more recent distributions, for example some parts (step 5: disabling onboard bluetooth) have been vetted against Ubuntu 22.04.

Note for Trisquel 9 users: Bluetooth support is not included, but can be added by installing blueman. Open a terminal via the Trisquel Menu and going to Accessories > Mate Terminal. Then enter these two lines at the terminal (hit enter after each line):

sudo apt-get install blueman
sudo nano /etc/bluetooth/main.conf

Then use nano text editor to add the following line under [General] section:

Enable=Source,Sink,Media,Socket

To save hold down the ctrl key on your keyboard and while doing so tap the x key. It'll ask you to save the modified buffer and you just need to hit the y key and then the enter key to confirm. Reboot and you should have both Bluetooth support and at least audio working.

Everybody else:

0. Make sure you have your USB bluetooth adapter plugged in.

Note: The use of some USB 2.0 devices and/or lesser shielded USB cables on USB 3.0 ports can generate significant amounts of electromagnetic interference and in some instances will interfere with other devices on the 2.4Ghz spectrum. This includes Bluetooth devices that a user has connected to the same computer. Various strategies can be applied to resolve the problem, ranging from simple solutions such as increasing the distance of USB 3.0 devices from any Bluetooth devices to purchasing better shielded USB cables.

If you experienced dropped signals or similar problems we recommend disconnecting as many of your USB devices as possible and slowly re-connecting them until the device causing the interference has been found. You may be able to then move the USB device to a USB 2.0 port to resolve the problem.

On desktop system some users have reported problems with cases blocking the signal enough to cause problems. The same can be true of users with computers inside thick wooden desks or similar. This will most commonly reduce the signal strength to a point where a streaming audio device for example will have parts of the audio getting dropped. Adding a USB cable or otherwise moving the adapter to another front facing USB port are some solutions that may work to solve this issue.

1. If using a laptop check for any physical hardware switches and verify bluetooth/wireless devices are set to on. An external USB bluetooth adapter such as our Penguin USB Bluetooth Adapter may not work if this is set to off.

To enable bluetooth using the keyboard hold the FN button down, and while doing that press the key with the wifi/bluetooth/airplane symbol (this is usually one of the F1-F12 combination keys: you may need check your computer's manual for details to find the on/off function key for bluetooth/wifi).

2. Verify bluetooth is enabled in software:

To enable right/left click on your bluetooth applet. This is usually found in the top or bottom right hand corners.

Note: If it is off in CentOS 6.x, Redhat Enterprise Linux 6.x, or Scientific Linux 6.x you will see a red x in the Bluetooth icon in the top right corner of the screen and when you left click on the Bluetooth icon you will get the option to "Turn On Bluetooth".

3. Next open the bluetooth settings / wizard. You may need to click an unlock button and then a little + arrow to start the wizard. From there the wizard will scan for bluetooth devices. You will need to put the bluetooth device into scan mode. This is often done by pressing a button on the bluetooth device you are looking to connect.


4. If this doesn't work you can grab more information on whether or not Bluetooth is actually turned on or not by opening a terminal and running the following commands:

rfkill list

Note: In CentOS 6.x, Redhat Enterprise Linux 6.x, or Scientific Linux 6.x you will want to open up a terminal by going to Applications > System Tools > Terminal

An example of the output is as follows:

0: hci0: Bluetooth
Soft blocked: Yes
Hard blocked: no
1: phy0: Wireless LAN
Soft blocked: no
Hard blocked: Yes

If your bluetooth device indicates a hard or soft block try the following commands:

btmgmt le off
rfkill unblock all

If you still do not have bluetooth working at this point try running:

rfkill unblock 0 (or whatever number the bluetooth device is on your machine, see output from rfkill list command)

Run rfkill list again to find out if you have successfully enabled the bluetooth

5. In some cases you may have multiple bluetooth cards/adapters (such as an internal card and our USB Bluetooth Adapter for instance).

Run the following command to find out if you have more than one bluetooth card/adapter:

ls /sys/class/bluetooth/

If the output shows hci0 and hci1 then you have two cards connected to the system and the graphical bluetooth wizard/applet will not know which card to use. It'll probably default to hci0 so what we need to do is blacklist the hci0 device.

To do that run the following commands:

udevadm info -a -p /sys/class/bluetooth/hci0 | grep idVendor | head -n 1

udevadm info -a -p /sys/class/bluetooth/hci0 | grep idProduct | head -n 1

Using this information we will replace the "105b" with the output from the first command run above and "e065" with results of the 2nd command above.

This command below lets you edit/create the USB device blacklist file:

In Ubuntu, Trisquel, and Linux Mint the following should work:

sudo nano /etc/udev/rules.d/81-bluetooth-hci.rules

In CentOS 6.x, Redhat Enterprise Linux 6.x, and Scientific Linux 6.x run:

sudo gedit /etc/udev/rules.d/81-bluetooth-hci.rules

This will open a text editor and in here you need to paste the following (modify using the result from the two commands above):

# Internal Bluetooth based HCI card should be disabled
SUBSYSTEM=="usb", ATTRS{idVendor}=="105b", ATTRS{idProduct}=="e065", ATTR{authorized}="0"

To save hold ctrl key down and while holding this key down tap the x key. you will be asked if you want to save changes(ie save modified buffer). hit the y key to save.

Restart the computer and see if your USB bluetooth adapter is now working.