Bluetooth not found but service runs no default controller

I’ve reached out to support so in the meantime I’ll see what help I can get here. I recieved my Librem5 USA recently and after sitting in its box for a couple weeks I’ve decided to boot it up on Labor Day. So I followed the quick start guide. Charged it, started it, setup the password, wifi, etc. Well -the wifi did not work out of the box and it was a simple date/time issue. Once the wifi was working I meandered around the settings and noticed the Bluetooth was not working. I could not/cannot enable it via the GUI. So I open the terminal and check that the service is running fine, and then check “dmesg” grepping (grep -i “blue”) and it looks good and gave me this:
Bluetooth Core version 2.22
Bluetooth HCI device and connection manager initialized
Bluetooth L2CAP socket layer initialized
Bluetooth SCO socket layer initialized
Bluetooth BNEP (Ethernet Emulation ver 1.3)
Bluetooth BNEP socket layer initialized

I tried to install Bluetooth manager(just for giggles) and still "No Bluetooth Found’.

So here are some other things that I have tried:
*No Bluetooth there???
purism@pureos:~$ rfkill list
0: mic-hks: microphone
Soft blocked: no
Hard blocked: no
1: wlan-hks: Wireless LAN
Soft blocked: no
Hard blocked: no
2: wwan-hks: Wireless WAN
Soft blocked: no
Hard blocked: no
3: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no

Looks fine to me?

purism@pureos:~$ [systemctl status bluetooth
● bluetooth.service - Bluetooth service
Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2021-09-08 18:36:53 CDT; 8min ago
Docs: man:bluetoothd(8)
Main PID: 638 (bluetoothd)
Status: “Running”
Tasks: 1 (limit: 3182)
Memory: 2.0M
CGroup: /system.slice/bluetooth.service
└─638 /usr/lib/bluetooth/bluetoothd

This looks interesting:

purism@pureos:~$ sudo dmesg | grep -i fail
[ 3.713227] systemd[1]: Failed to bump fs.file-max, ignoring: Invalid argument
[ 4.720219] imx-sdma xxxxxxxx.sdma: Direct firmware load for imx/sdma/sdma-imx7d.bin failed with error -2
[ 4.723617] imx-sdma xxxxxxxxx.sdma: Direct firmware load for imx/sdma/sdma-imx7d.bin failed with error -2
[ 5.125348] g_multi gadget: userspace failed to provide iSerialNumber
[ 5.167068] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[ 5.167082] cfg80211: failed to load regulatory.db
[ 5.320409] RSI-SDIO WLAN mmc1:fffd:1: Direct firmware load for RS9116_NLINK_WLAN_BT_IMAGE.rps failed with error -2
[ 5.320420] redpine_91x: rsi_load_firmware: Failed to open file RS9116_NLINK_WLAN_BT_IMAGE.rps
purism@pureos:~$

blueman-applet opens up an empty gui with a cancel button. bluetoothctl says there are no default controllers so no device shows up from there.

And now that I’ve tested some more it looks like my wifi is actually not working. It connects to the network but I cannot ping anything nor can I open any web pages in the browser while I have the cellular/mobile switched off. Yea I don’t know. I took that back off to see the wifi/BT and cell module and 1) they seem loose and 2)well I don’t know. Those that paid for the USA the only thing I can say is that I did not expect perfect software that’s fine but for this price I ABSOLUTELY expect the hardware to work.

Any thoughts or ideas would be appreciated. I am not taking apart any more then the back off. If that is something that needs to be done I’ll send it back to them for that. If it was at least a year old I’d go for it but not right out of the box. I support Purism I really do. But I also want at least a little bit in return.

*Edit: Looks like wifi is fine and pinging works just fine. Not sure, maybe spelling the domain wrong. Either way, support is pretty good with correspondence so I’ll be sure to update as we figure this out.

  • Another frustrating edit. My sim card stopped working out of nowhere? So then I tried it in another phone and yes the sim card is not working. And to be clear this sim card was absolutely fine without any problems since I’ve had it… Its not my first rodeo here I know how to handle a sim card. Its not my only sim card. So I am NOT going to put another sim card in this phone. I can’t believe I am saying this but right now as it stand I am very disappointed outside of being EXTREMELY aggravated about the money I spent on this phone. If it gets resolved properly all will be well but not right now. Now i have wait for another sim card to show up in the mail and even then I don’t want to put it into this phone. I’m really feeling like a sucker on this purchase.
2 Likes

My recommendation would be to keep calm and wait for the new Byzantium software to be released soon with encryption, which will require reflash. Byzantium work good. The BT has some gliches to settings, but i guess on terminal it work ok.

2 Likes

Yea thanks @carlosgonz Its a strange issue. I’ve dealt with bluetooth issues on other Linux distros(many actually). But there was always a way to get it to work whether it was reloading modules, restarting service, altering the config, using bluetoothctl, etc. But with this… this? -to be honest I can’t make heads or tails of it. I’m not going to stop and wait for that software but I will be on my heals for it.

But yes I will stay chill. THe customer service is quite responsive. It just leaves a sour taste to spend THAT much money and not have the basics running. I get the mission here, I am on board. But the basics. Give me the basics so I can sell this to other people and get them on board. I can’t tell my brother to jump on board let alone invest if bluetooth doesn’t work. We’ll get there… We’ll get there…

3 Likes

Concerning the SIM card issue, it might be a problem with the carrier. Some people reported that their carriers block this phone because it’s “not supported”, despite it can work. Did you ask the carrier?

Also Purism support is indeed generally very responsive.

1 Like

No its not a problem with the carrier. Like I said it WAS working(The ONLY thing not working was the Bluetooth) then all off sudden it(tthe SIM) stopped working and then when I put the sim card back into its original phone it was again not working there when it was working fine beforehand. Something in that flimsy sim tray or inside the slot might have scratched it up. I have no idea but what I know is that the SIM card worked and then it did not. On top of that it also does not read my SD card that I added so I’m not confident at the point in time that this particular device and its assembly. I honestly don’t want to put another SIM in this phone but I will once the new one arrives. And if that one breaks… well… Thanks though. I’m trying here. Just not a good start but a good finish will fix that. We’ll see.

Wanted to add /proc info:

purism@pureos:~$ cat /proc/bus/input/devices
I: Bus=0019 Vendor=0001 Product=0001 Version=0100
N: Name="gpio-keys"
P: Phys=gpio-keys/input0
S: Sysfs=/devices/platform/gpio-keys/input/input0
U: Uniq=
H: Handlers=kbd event0
B: PROP=0
B: EV=3
B: KEY=c000000000000 0

I: Bus=0019 Vendor=0001 Product=0001 Version=0100
N: Name="bd718xx-pwrkey"
P: Phys=gpio-keys/input0
S: Sysfs=/devices/platform/soc@0/30800000.bus/30a20000.i2c/i2c-0/0-004b/gpio-keys.0.auto/input/input1
U: Uniq=
H: Handlers=kbd event1
B: PROP=0
B: EV=3
B: KEY=10000000000000 0

I: Bus=0019 Vendor=0000 Product=0000 Version=0000
N: Name="pwm-vibrator"
P: Phys=
S: Sysfs=/devices/platform/vibrator/input/input2
U: Uniq=
H: Handlers=event2
B: PROP=0
B: EV=200001
B: FF=107030000 0

I: Bus=0019 Vendor=0000 Product=0000 Version=0000
N: Name="30370000.snvs:snvs-powerkey"
P: Phys=snvs-pwrkey/input0
S: Sysfs=/devices/platform/soc@0/30000000.bus/30370000.snvs/30370000.snvs:snvs-powerkey/input/input3
U: Uniq=
H: Handlers=kbd event3
B: PROP=0
B: EV=3
B: KEY=10000000000000 0

I: Bus=0018 Vendor=0000 Product=0000 Version=0000
N: Name="EP0700M09"
P: Phys=
S: Sysfs=/devices/platform/soc@0/30800000.bus/30a40000.i2c/i2c-2/2-0038/input/input4
U: Uniq=
H: Handlers=event4 mouse0
B: PROP=2
B: EV=b
B: KEY=400 0 0 0 0 0
B: ABS=260800000000003

I: Bus=0018 Vendor=0000 Product=0000 Version=0000
N: Name="WM8962 Beep Generator"
P: Phys=2-001a
S: Sysfs=/devices/platform/soc@0/30800000.bus/30a40000.i2c/i2c-2/2-001a/input/input6
U: Uniq=
H: Handlers=kbd event5
B: PROP=0
B: EV=40001
B: SND=6

I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="wm8962 Headphones"
P: Phys=ALSA
S: Sysfs=/devices/platform/sound/sound/card1/input5
U: Uniq=
H: Handlers=event6
B: PROP=0
B: EV=21
B: SW=4

purism@pureos:~$

Adding much more info. I have more info in the conversation here: Librem 5 received and inital reaction

And then a lst note when I run

purism@pureos:~$ /usr/bin/bluetooth-sendto

(bluetooth-sendto:1374): dbind-WARNING **: 11:04:45.229: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus was not provided by any .service files 

I undeerstand its not directly helpful but I think any clues are better then no clues. The post I linked to I’ve more info too.

I did install blueman for giggles:

purism@pureos:~$ sudo apt install blueman

because on one of my systems I needed to run the blueman-applet to get the bluetooth to function properly. But same story. No dice.

Ok gang, I’ma go get some of that stuff -what’s it called? Ahh yes -fresh air. Hope y’all enjoy some of that too. I’ll be back later to tinker with this stuff some more. Thanks for all the interaction so far.

2 Likes

More info. The bluetooth module is not showing up anywhere. Refer to the other post I linked to in this thread. Still updates.

purism@pureos:~$ sudo lshw -short
H/W path  Device  Class      Description
========================================
                  system     Purism Librem 5r4
/0                bus        Motherboard
/0/0              processor  cpu
/0/1              processor  cpu
/0/2              processor  cpu
/0/3              processor  cpu
/0/4              processor  idle-states
/0/5              processor  l2-cache0
/0/6              memory     2991MiB System memory
/1        usb1    bus        xHCI Host Controller
/1/1              bus        USB 2.0 Hub
/1/1/1            storage    Ultra Fast Media Reader
/1/1/2    wwan0   network    Qualcomm CDMA Technologies MSM
/2        usb2    bus        xHCI Host Controller
/3        usb0    network    Ethernet interface
/4        wlan0   network    Wireless interface
purism@pureos:~$

Bluetooth doesn’t show up for me either with the above command but Bluetooth does work.

Allegedly, the WiFi/Bluetooth module is accessed by SD (specifically SDIO) - while confusingly the uSD card is not accessed by SD (instead is accessed via USB, which ultimately of course does access the card by SD).

sudo dmesg | grep redpine | more
(snip)

[    5.389264] redpine_91x: rsi_load_firmware: Loading file RS9116_NLINK_WLAN_BT
_IMAGE.rps
[    5.389340] redpine_91x: rsi_load_firmware: Failed to open file RS9116_NLINK_
WLAN_BT_IMAGE.rps
[    5.396315] redpine_91x: ***** Loaded Firmware *****
[   10.472739] redpine_91x: ================================================
[   10.472770] redpine_91x: ================ RSI Version Info ==============
[   10.472773] redpine_91x: ================================================
[   10.472777] redpine_91x: FW Version	: 1.2.20.0
[   10.472787] redpine_91x: RSI FW Version	:  0000.1.2.0.0502
[   10.472792] redpine_91x: Driver Version	: RS9116.NB0.NL.GNU.LNX.OSD.2.0.
0.0024
[   10.472797] redpine_91x: Operating mode	: 13 [Wi-Fi STA + BT DUAL]
[   10.472802] redpine_91x: Firmware file	: RS9116_NLINK_WLAN_BT_IMAGE.rps
[   10.472806] redpine_91x: ================================================
[   10.478573] redpine_91x: rsi_send_bt_reg_params: Sending BT reg frame

Are you able to confirm firmware versions from log? operating mode?

2 Likes

Ah okay… …
Hmmmm??? I do not see this line in mine:

[   10.478573] redpine_91x: rsi_send_bt_reg_params: Sending BT reg frame

And my firmware version in comparison to yours is way off. And I’ve done the update/upgrade/dist/full upgrade on initial startup.

Here’s my info:

purism@pureos:~$ sudo dmesg | grep redpine | more > dmesg.redpine.log

purism@pureos:~$ cat dmesg.redpine.log

   5.438208] redpine_91x: rsi_probe: ***** 9116 Module *****
[    5.438436] redpine_91x: redpine_hal_device_init: oper_mode = 5, coex_mode = 2
[    5.439740] redpine_91x: Received Board Version Number: 10
[    5.441138] redpine_91x: rsi_load_firmware: Loading file RS9116_NLINK_WLAN_BT_IMAGE.rps
[    5.441223] redpine_91x: rsi_load_firmware: Failed to open file RS9116_NLINK_WLAN_BT_IMAGE.rps
[    5.443487] redpine_91x: ***** Loaded Firmware *****
[   10.471164] redpine_91x: ================================================
[   10.471192] redpine_91x: ================ RSI Version Info ==============
[   10.471195] redpine_91x: ================================================
[   10.471199] redpine_91x: FW Version  : 0.2.0.16
[   10.471207] redpine_91x: RSI FW Version      :  1610.0.2.0.0024
[   10.471213] redpine_91x: Driver Version      : RS9116.NB0.NL.GNU.LNX.OSD.2.0.0.0024
[   10.471218] redpine_91x: Operating mode      : 5 [Wi-Fi STA + BT EDR]
[   10.471223] redpine_91x: Firmware file       : RS9116_NLINK_WLAN_BT_IMAGE.rps
[   10.471227] redpine_91x: ================================================
[   10.529394] redpine_91x: <==== Interface UP ====>
[   10.529511] redpine_91x: rsi_mac80211_bss_info_changed: Change of ERP INFO: 0
[   10.529519] redpine_91x: rsi_mac80211_bss_info_changed: Sending vap updates....
[   10.531854] redpine_91x: <==== Interface DOWN ====>
[   10.534648] redpine_91x: <==== Interface UP ====>
[   10.534796] redpine_91x: rsi_mac80211_bss_info_changed: Change of ERP INFO: 0
[   10.534837] redpine_91x: rsi_mac80211_bss_info_changed: Sending vap updates....
[   14.525269] redpine_91x: <==== Interface DOWN ====>
[   14.528046] redpine_91x: <==== Interface UP ====>
[   14.528357] redpine_91x: rsi_mac80211_bss_info_changed: Change of ERP INFO: 0
[   14.528396] redpine_91x: rsi_mac80211_bss_info_changed: Sending vap updates....
[   18.260673] redpine_91x: EAPOL 4 confirm
[   64.051807] redpine_91x: rsi_mac80211_bss_info_changed: Change of ERP INFO: 0
[   64.051865] redpine_91x: rsi_mac80211_bss_info_changed: Sending vap updates....
[   64.053319] redpine_91x: <==== Interface DOWN ====>
[   64.059900] redpine_91x: <==== Interface UP ====>
[   64.060076] redpine_91x: rsi_mac80211_bss_info_changed: Change of ERP INFO: 0
[   64.060119] redpine_91x: rsi_mac80211_bss_info_changed: Sending vap updates....
[   64.083310] redpine_91x: Antenna is changed to 2
[   64.292147] redpine_91x: <==== Interface DOWN ====>
[   64.295533] redpine_91x: <==== Interface UP ====>
[   64.295687] redpine_91x: rsi_mac80211_bss_info_changed: Change of ERP INFO: 0
[   64.295699] redpine_91x: rsi_mac80211_bss_info_changed: Sending vap updates....
[   68.001349] redpine_91x: EAPOL 4 confirm
[   68.704245] redpine_91x: Packet Dropped as Key ID not matched with both current and previous Key ID
[   68.705224] redpine_91x: Packet Dropped as Key ID not matched with both current and previous Key ID
[   70.249981] redpine_91x: Packet Dropped as Key ID not matched with both current and previous Key ID
[   70.250196] redpine_91x: Packet Dropped as Key ID not matched with both current and previous Key ID
[   70.251755] redpine_91x: Packet Dropped as Key ID not matched with both current and previous Key ID
[   70.253098] redpine_91x: Packet Dropped as Key ID not matched with both current and previous Key ID
[   70.253848] redpine_91x: Packet Dropped as Key ID not matched with both current and previous Key ID
[   70.549084] redpine_91x: Packet Dropped as Key ID not matched with both current and previous Key ID

*As a note -man this WiFi is really hit or miss. I mean either it connects to the saved network quickly and gives me 4-5 bars or it just hangs on connecting and I eventually have to click/touch the network again and it eventually connects. It will always eventually connect, but really, really hit or miss. Other devices connect without a problem for the record.

1 Like

Yea ours are completely different. So yea… I’m lost now. Scared and confused…

1 Like

Yep. Best to pursue via formal support channels. I don’t have sufficiently detailed knowledge.

One thing I note is that mine says Operating mode 13 is only supported prior to firmware 2.x so I guess my operating mode may stop working in the future. NB: I have not chosen an operating mode.

May not be relevant though since we are talking about firmware in the WiFi/BT module. Maybe.

One good thing I see from yours is that operating mode 5 is “[Wi-Fi STA + BT EDR]” so it is at least attempting to operate the Bluetooth.

Oh and yeah I get thousands of Packet Dropped as Key ID not matched with both current and previous Key ID which I’m hoping will one day go away. However both WiFi and Bluetooth are reliable for me.

1 Like

And yes I made this change to the modules file

purism@pureos:~$ cat /etc/modprobe.d/librem5-devkit.conf
options g_multi file=/var/lib/mass_storage_dummy stall=0

# blacklist mainline driver (rsi):
blacklist rsi_91x
blacklist rsi_sdio
options rsi_91x load_flash_fw=1 feature_bitmap_9116=1 antenna_sel=3
# Changed per https://source.puri.sm/Librem5/librem5-devkit-tools/-/merge_requests/217/diffs
options rsi_sdio dev_oper_mode=5

# blacklist vendor driver (redpine):
# blacklist redpine_91x
# blacklist redpine_sdio
# Changed per https://source.puri.sm/Librem5/librem5-devkit-tools/-/merge_requests/217/diffs
options redpine_91x dev_oper_mode=5 rsi_zone_enabled=1 antenna_diversity=1

# blacklist magnetometer as long as we don't use it
blacklist st_magn
blacklist st_magn_i2c
blacklist st_magn_spi
purism@pureos:~$

From this link: https://source.puri.sm/Librem5/librem5-devkit-tools/-/merge_requests/217/diffs
But either way, I’ve tried it at 13 too back and forth a number of different ways and its still the same.

1 Like

Ok gang I have a solution from the devs that fixed my issue. So the issue was that something was causing wifi to trash its binary firmware on booting up the phone. So in my /lib directory “firmware” was not there. Now the devs hand when I ran the given commands here:

 1.  first command:
> > > > > >
> > > > > >     wget https://source.puri.sm/angus.ainslie/firmware-rs9116-nonfree/-/raw/debian/master/Firmware/RS9116_NLINK_WLAN_BT_IMAGE.rps
> > > > > >
> > > > > > 2.  second command:
> > > > > >
> > > > > >     sudo mv RS9116_NLINK_WLAN_BT_IMAGE.rps /lib/firmware
> > > > > >
> > > > > > 3.  reboot the phone.

I was not moving the firmware to the folder I was renaming it to firmware. So I created the directory /lib/firmware and ran those commands again. Now the bluetooth works.

7 Likes

That would appear to be correct. The directory does not exist at all on my phone and hence the mv command above will silently malfunction.

Slightly safer is: sudo mv -t /lib/firmware RS9116_NLINK_WLAN_BT_IMAGE.rps

so that it either does what I want or fails with an actual error message (at the cost of specifying the source and destination arguments in the opposite order as compared with what we have been doing for a thousand centuries).

1 Like

What’s in your /etc/modprobe.d/librem5-devkit.conf file? If you are using mode=13 try changing that to 5? I do doubt it will change anything but still wouldn’t hurt to try.

Here’s the link to the change in the repo. Its not pushed yet but I assume it will be soon:

… although that may cause other problems.

1 Like

Thanks for this! I was wondering why my bluetooth mouse was not working. In my case (Byzantium recently flashed), I had to change it back to dev_oper_mode=13 to re-enable BLE and it is working.

This is my firmware:

[ 1641.883419] redpine_91x: ================ RSI Version Info ==============
[ 1641.883423] redpine_91x: ´================================================
[ 1641.883427] redpine_91x: FW Version	: 1.2.20.0
[ 1641.883434] redpine_91x: RSI FW Version	:  0000.1.2.0.0502
[ 1641.883440] redpine_91x: Driver Version	: RS9116.NB0.NL.GNU.LNX.OSD.2.0.0.0024
[ 1641.883445] redpine_91x: Operating mode	: 13 [Wi-Fi STA + BT DUAL]
[ 1641.883449] redpine_91x: Firmware file	: RS9116_NLINK_WLAN_BT_IMAGE.rps
[ 1641.883454] redpine_91x: ================================================```
3 Likes

That url leads at this moment to a firmware version

redpine_91x: RSI FW Version        :  0000.2.1.0.0502

This version did not work with the actual modul

root@pureos:~# modinfo redpine_91x | grep version
version:        RS9116.NB0.NL.GNU.LNX.OSD.2.0.0.0024
srcversion:     0876F9C4F36E3CB6E9B44D2
vermagic:       5.16.0-1-librem5 SMP preempt mod_unload modversions aarch64

To get a firmware that works with this module I had to look for the older 1.2 version which I found here:

https://source.puri.sm/angus.ainslie/firmware-rs9116-nonfree/-/raw/upstream/1.2.20/Firmware/RS9116_NLINK_WLAN_BT_IMAGE.rps

The older version did work somehow and I have been able to connect a Cherry MW 8 advanced mouse using bluetooth LE. But the mouse has been quiet laggy and there have been a lot of error messages by phoc

Mär 31 14:30:05 pureos phoc[693]: [types/wlr_output.c:1258] Failed to pick cursor format
Mär 31 14:30:05 pureos phoc[693]: [types/wlr_output.c:1343] Failed to render cursor buffer

Does anybody know how to connect a/that(?!) bluetooth LE mouse to the Librem5?

Hm, this seems to be independent of the external mouse.

Just tried to connect another bluetooth mouse (I believe not LE) which doesn’t work neither. Both mice connect without problems to my Librem14 (using an external ASUS BL adapter, because the internal bluetooth does not work with a headset of mine).

Librem14:

root@PureBlackSoul:~# hcitool info 00:60:D1:00:04:F9
Requesting information ...
	BD Address:  00:60:D1:xx:xx:xx
	OUI Company: CASCADE COMMUNICATIONS (00-60-D1)
	Device Name: Bluetooth Mouse
	LMP Version: 2.0 (0x3) LMP Subversion: 0x102
	Manufacturer: Syntronix Corporation (56)
	Features: 0xaf 0xfe 0x09 0x38 0x18 0x18 0x00 0x00
		<3-slot packets> <5-slot packets> <encryption> <slot offset> 
		<role switch> <sniff mode> <RSSI> <channel quality> <SCO link> 
		<HV2 packets> <HV3 packets> <u-law log> <A-law log> <CVSD> 
		<transparent SCO> <enhanced iscan> <interlaced iscan> 
		<interlaced pscan> <AFH cap. slave> <AFH class. slave> 
		<AFH cap. master> <AFH class. master> 

Librem5:

root@pureos:/lib/firmware# hcitool scan
Scanning ...
	00:60:D1:xx:xx:xx	n/a
root@pureos:/lib/firmware# hcitool info 00:60:D1:xx:xx:xx
Requesting information ...
Can't create connection: Input/output error

The Librem5 finds the mouse in scans only occasionally.