How to get Bluetooth working on Librem 15?

When I open Settings -> Bluetooth, I cannot toggle the switch to on and there’s a message saying “No Bluetooth Found - Plug in a dongle to use Bluetooth”. I already saw on other topics that I should add a non-free repository and install the firmware-atheros package, but this didn’t work for me. I tried switching the kill-switch on and then off again, but this doesn’t solve the issue. If I run /etc/init.d/bluetooth status the output says that Bluetooth is active and running:

● bluetooth.service - Bluetooth service
Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2021-04-12 21:22:50 -03; 46min ago
Docs: man:bluetoothd(8)
Main PID: 648 (bluetoothd)
Status: “Running”
Tasks: 1 (limit: 4915)
Memory: 2.7M
CGroup: /system.slice/bluetooth.service
└─648 /usr/lib/bluetooth/bluetoothd

Is there any other solution for this?

You need to install the proprietary firmware in /lib/firmware for Bluetooth to work. See: Do Librem 13 and 15s come with Bluetooth

PS: I am getting tired of answering this same question over and over. When are we going to have a community wiki for the Librem PCs (like we have for the Librem 5), so we don’t have to keep repeating ourselves?

3 Likes

Purism may not want to endorse in any way the addition of blackbox software. I’ll tag in the same people you tagged in last time. @nicole.faerber @mladen @joao.azevedo

Can’t you put it up on your own web site? Customers won’t find it there any more than they would find it on a Community Wiki. At least you could link to the answer each time, either way.

1 Like

Thank you for the response. I tried the steps mentioned in your post but it still didn’t work. Now when I run /etc/init.d/bluetooth status I get the following output:

● bluetooth.service - Bluetooth service
Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled)
Active: inactive (dead)
Docs: man:bluetoothd(8)

Is there any other information I’m missing? Anywhere I can look for logs for example?

Edit

After some time running /etc/init.d/bluetooth status shows active again, but Bluetooth still doesn’t work.

Another thing is that after I tried these steps, when I run lsusb I don’t see the Atheros Bluetooth. It was in the output before.

If you install Ubuntu and allow 3rd party and proprietary drivers it will work out of the box.

Which version of PureOS are you using?
Which method did you use to install the firmware? There are two methods.

Can you post the output of this command?:
sudo ls /lib/firmware

I am using the latest version of PureOS, but I am not sure on how to get the exact version. When I enter “About” I only see “PureOS”.

I tried using both methods you posted on the other topic, this one:

wget http://ftp.us.debian.org/debian/pool/non-free/f/firmware-nonfree/firmware-atheros_20190114-2_all.deb
sudo dpkg -i firmware-atheros_20190114-2_all.deb

And after trying it but seeing it didn’t work, I used apt remove and apt purge to remove the firmware-atheros package and I tried the other one:
git clone https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
cd linux-firmware
sudo cp -r ar3k /lib/firmware/

After testing this and not making it work again, I deleted the ar3k folder from /lib/firmware.

I just tried the first method again (installing the package) to get the output for the command you asked for. I assume this is correct because ar3k is there:

ar3k ar9271.fw ath9k_htc dsp56k isci rtl8723b_fw rtl8761au_fw usbdux_firmware.bin
ar5523.bin ath10k av7110 hp keyspan_pda rtl8723bu_config rtl8761aw8192eu_fw usbduxsigma_firmware.bin
ar7010_1_1.fw ath3k-1.fw carl9170-1.fw htc_7010.fw qca rtl8761au8192ee_fw rtl8821a_fw wil6210.brd
ar7010.fw ath6k cis htc_9271.fw rtl8723a_fw rtl8761au8812ae_fw usbduxfast_firmware.bin wil6210.fw

Post the output of these commands:
lsb_release -a
uname -a

firmware-atheros_20190114-2_all.deb should work if you are on the stable version of PureOS.

See if there are any error messages about Bluetooth or Atheros or ar3k, by running this command and looking through the output:
sudo dmesg

Also, did you reboot after installing the firmware-atheros_20190114-2_all.deb package?

I did reboot after installing the package. Running the following commands I get the outputs:

lsb_release -a:

No LSB modules are available.
Distributor ID: PureOS
Description: PureOS
Release: 9.0
Codename: amber

uname -a

Linux Byrgenwerth 4.19.0-14-amd64 #1 SMP Debian 4.19.171-2 (2021-01-30) x86_64 GNU/Linux

I didn’t find anything mentioning Bluetooth, Atheros or ar3k running sudo dmesg