Bluetooth support for Librem 5

Using Angus’s firmware worked for me on the L5USA (Byzantium). I can now use both Bluetooth and WiFi at the same time.

1 Like

Anyone else having issues with the L5 connecting to some BT device but not others? In my attempts, I have connected it successfully to my Bose BT headset, my Mad Catz S.T.R.I.K.E gaming keyboard/mouse, and my Conambo BT ear piece…but fail to connect to the BT system in my vehicle and other BT systems I have.
The L5 BT manager see’s the BT items that It cant connect to, it just cant make a connection. Is there a way to check (log type) to see why the L5 is failing to connect?

1 Like

journalctl -u bluetooth might have something useful, or at least get you started.

hi guru, also for me. Received the L5 some days ago. Wifi is working, bluetooth same message like your one.

Check the post marked as solution further up, mine started working after doing that.

May depend on Bluetooth profile i.e. if a device wants to be a straight audio sink or source, or a keyboard or a mouse, it should work - but if a device wants to use Headset Profile (HSP) and Hands-Free Profile (HFP) that may not be supported yet.

Refer: https://source.puri.sm/Librem5/community-wiki/-/wikis/Frequently-Asked-Questions#24-is-bluetooth-50-supported-what-bluetooth-profiles-are-supported

My Bluetooth combined keyboard and pointing device worked. My Bluetooth speakers worked.

If you have a mainstream laptop with Bluetooth hardware and the laptop is running Linux then the test would be whether any random Bluetooth device works with the laptop. That tests the overall level of maturity of support for that Bluetooth device in the Linux ecosystem.

Seems pretty iffy still imo. I’m hoping that someone is working on this somehow.
My jabra elite 75t work. But I had to try and connect a couple times. They do skip a couple times a song.
I have an MPOW headset that connected pretty easy.
I can’t get it to see my pinetime at all. :S.

I was hoping to play with the instructions with this firmware - https://source.puri.sm/Librem5/redpine-firmware-nonfree/-/blob/master/files/firmware/RS9116_NLINK_WLAN_BT_IMAGE.FW2.3.2.3.rps
Didn’t really work, not recommended.

That’s because Bluetooth LE is disabled with the current firmware. My miband 4 stopped working by updating the firmware

1 Like

What do you mean with HKS?

HKS = Hardware Kill-Switch (the physical toggles on the side of the phone; one of them controls Wi-Fi and Bluetooth.)

1 Like

:stuck_out_tongue_winking_eye: arhg…anyway it doesn’t work. I have all the 3 switche in on position. And in the setting it doesn’t allow me to change the icon to ‘on’ also becasue shows ‘No Bluetooth found’

Take same screenshot BUT now with all HKS off? I need to see if Phosh it detecting h.k.s on off.
So the WLAN(wifi) it working? just the WPAN(bt) not?

HI Carlos, problem solved and I’m an idiot’. Someone already wrote to support an wrote above in the thread how to fix it. I didn’t see it.
Repeated below
run these commands
(one by one) in terminal:

first command:

wget
https://source.puri.sm/angus.ainslie/firmware-rs9116-nonfree/-/raw/debian/master/Firmware/RS9116_NLINK_WLAN_BT_IMAGE.rps

second command:

sudo mv RS9116_NLINK_WLAN_BT_IMAGE.rps /lib/firmware

reboot the phone.

…if that helped. If yes, you can later safely delete this
firmware with this command:

sudo rm /lib/firmware/RS9116_NLINK_WLAN_BT_IMAGE.rps

2 Likes

Yes, exactly.

but you had to download some non-free firmware!

1 Like

I just tried the recommended commands from MV71 and it worked! When PureOS restarted, Bluetooth on the Librem 5 immediately activated itself. So I tried to pair it with my Wileyfox Android and this was also successful. Finally I tried to transfer two files, .jpg and .pdf from Librem 5 to Wileyfox and again it worked. Many thanks to those who helped me.

Running these commands does not help me. I still see direct firmware load failed with error -2 in dmesg, and no bluetooth… Any ideas?

…it seems you are right… Why did they not say me this?

  1. First here, my SOLUTION for Byzantium (and Amber) to the problem with BT
    (tested on 3 different Librem 5 with different out of the box BT problems):
    The file RS9116_NLINK_WLAN_BT_IMAGE.rps we find indicated in the forum is the
    newest firmware version of the repo (now the 2.3.2.003), but does not
    really fit the Librem 5. I had to find the working version, for me the
    1.2.20. So :
    It is a bit like Bluetooth support for Librem 5 but I give here more details about how to and why it should work.
  • download the repository
    https://source.puri.sm/Librem5/redpine-firmware-nonfree/-/tree/master/files/firmware OR https://source.puri.sm/guido.gunther/firmware-rs9116-nonfree/-/tree/debian/master/
  • copy and rename the chosen version (for me the 1.2.20) to
    RS9116_NLINK_WLAN_BT_IMAGE.rps in the folder /lib/firmware (should
    exist)
    Note that https://source.puri.sm/guido.gunther/firmware-rs9116-nonfree/-/tree/debian/master/ has only this version in the repository…
  • check with sudo vi /etc/modprobe.d/librem5-devkit.conf
  • For firmware below version 2.x., then for our “1.2.20”, you have to
    find twice dev_oper_mod= 13, not 5. 5 only fits firmware version
    from 2.x.
  • reboot and test. It should work immediately or not. If not, try another
    file (do not forget to change the dev_oper_mod according to the
    firmware version! you’ve chosen)
  • on reboot and BT initialization, the file gets flashed to hardware, and deleted
    from /lib/firmware. This looks to be normal.
  • Controlling the firmware install with sudo dmesg | grep redpine, we
    must read only once ''FW Version : 1.2.20.0 version " and “operating mod : 13 (WI-FI STA + BT DUAL”, and no errors (except “Failed to open file RS9116…rps”, that is normal because it is only done on manual firmware change)
  1. Second, HOW I PROCEEDED, except the hours/days of searching a solutioon:
    I own 3 librem 5 Evergreen, bought at purism, and received in two deliveries: 2 end of June 2021, and one more in October 2021) with 3 different out of the box BT problems, so I could verify the solution here, which I did not find complete on this forum:

I encountered following problems :

With pre-installed Amber on 2 different L5, named as L5-1 and L5-2 here; received together in June 2021) :

  • state 1: out of the box, everything was fine for connecting a BT mouse and a
    keyboard (L5-1), OR not working (L5-2 : bluetooth icon could be set on or off, but that was all)
  • state 2, after a certain update : not working any more (L5-1) : Phone crashes (shutdown) after bluetooth connection to device, OR still not working (L5-2)
  • state 3, through manual staged amber update : solved L5-1 OR still not working (L5-2).
  • state 4: through normal later amber update : L5-1 is still working, the L5-2 still not.

With Byzantium (the BT nightmare), 3 errors cases :

  1. L5-3 (received in October 2021 had pre-installed Byzantium on it) : BT icon was not responding to click, always turned off position in the notification panel, and in the menu : grey switch off not reacting to click. (!!!)
  2. L5-1 and L5-2 : after flashing Byzantium, BT icon is switchable, but not searching., not starting.
    searching wheel in BT settings, it turns without finding my mouse/keyoard not
    working any more (with my mouse and keyboard). Did all things from forums without success (Bluetooth : no keyboard, no mouse recognized) and gave up.
  3. After reflashing firmware with the indicated file in the forum (i.e the latest firmware version) or full reinstalling the driver (see below) : L5-2 got a change : : BT was starting but not finding mouse/keyboard (searching turning wheel), but connecting my android phone and other desktop computer without problem (!).
  • What did not work:
    • reflashing Amber or Byzantium, Back to Amber, the BT did not work any more
    • copying the firmwarre file in /lib/firmware, as described in the
      forum
    • changing dev_oper_mod to 5 or 13, and reverse
    • reinstalling redpine firmware as described in
      https://source.puri.sm/Librem5/redpine-firmware-nonfree/-/tree/master
    • Controlling the firmware with sudo dmesg | grep redpine gave me a bit understanding till i found the solution with the good file (the 1.2.20 firmware version), after trying all versions.
  1. CONCLUSION :
  • with firmware 1.2.20 + dev_oper_mod=13, all my devices are connected perfectly

  • with a later firmware + dev_oper_mod=5, can only connect devices like phones or computer

  • depending on the mix between;

    • the preinstalled or flashed pureos image version (brings the file /etc/modprobe.d/librem5-devkit.conf, so the dev_oper_mod to 5 (Byzantium) or 13 (Amber),
    • AND the firmware file .rps that was first flashed by the production of the device through the repo /lib/firmware (depends on the batch of your device and is changed only by a manuall procedure),
    • we get different levels of errors, that we can see with sudo dmesg | grep redpine (see upper the good log)
  • I wonder why purism does not deliver the pureos image with the right file /etc/modprobe.d/librem5-devkit.conf, AND the right file in /lib/firmware that could be flashed on the first restart after flashing or someway else.

I hope that this will work for many of you. I will modify my post if it is needed. Good luck !!!

PS: Wifi was almost always ok from the begiining, but during my tests, I had different bugs with the wifi too like not connecting to network, or not restarting/reconnecting after reboot, or disconnecting after some minutes needing wifi reboot but disconnected again…, but once I solved the BT problems, wifi worked worked like a charm too.

8 Likes

Thanks for the extensive write-up. for me, version 2.5 (with dev_oper_mod=5) works with my Jabra headset. Note, I tried it only in a test setting (i.e. connecting, and then testing the speakers), not in any real-world setting (i.e. placing calls).

However, the actual reason for me to get BT working well, is so that I can connect to the bluetooth in my car, for making calls. However, when connecting, the car asks me to give the same pin as I give in the phone, but the phone doesn’t seem to give me any option to type in any pin. It simply says that it is paired, with the message “connected”, then “disconnected”, and then periodically (every few seconds) tries to connect again.

How would I go about pairing it with the BT (phone profile) device in my car?

1 Like