Bluetooth intermittently not returning after sleep/suspend

Hello all,

I’m new to Manjaro GNOME, and have an intermittent issue with bluetooth not returning when the system is woken from sleep/suspend.

I’m a new user from Windows, so happy to get my hands dirty, but have no real clue what I’m doing. From reading other posts on here I learnt to check whether the bluetooth service was being blocked, and “sudo rfkill list” returns the following (which I assume means the service isn’t being blocked):

1: hci0: Bluetooth
	Soft blocked: no
	Hard blocked: no
2: ideapad_bluetooth: Bluetooth
	Soft blocked: no
	Hard blocked: no

I have also since learnt that when the problem occurs I need to try manually restarting the service and see if that works. Certainly trying to toggle the switch in GNOME doesn’t work, it just returns itself to the off position. I’ll update this post when the issue next occurs. If anyone has any pointers as to where problems may be being logged, or even any potential fixes, I’d appreciate it.

Edit: - running:

sudo systemctl restart bluetooth

has no effect.

Output from inxi relating to bluetooth as follows:

inxi -zv8|grep -A8 Bluetooth
Bluetooth:
  Device-1: Foxconn / Hon Hai MediaTek Bluetooth Adapter driver: btusb v: 0.8
    type: USB rev: 2.1 speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 3-4:3
    chip-ID: 0489:e0cd class-ID: e001 serial: <filter>
  Report: rfkill ID: hci0 rfk-id: 4 state: up address: see --recommends
Logical:
  Message: No logical block device data found.
RAID:
  Message: No RAID data found.
Drives:
--
  Device-1: 3-4:3 info: Foxconn / Hon Hai MediaTek Bluetooth Adapter
    type: bluetooth driver: btusb interfaces: 3 rev: 2.1
    speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0 power: 100mA
    chip-ID: 0489:e0cd class-ID: e001 serial: <filter>
  Hub-6: 4-0:1 info: super-speed hub ports: 2 rev: 3.1
    speed: 10 Gb/s (1.16 GiB/s) lanes: 1 mode: 3.2 gen-2x1 chip-ID: 1d6b:0003
    class-ID: 0900

Hello and welcome to the Manjaro Community! :wave:

We recommend always providing full inxi -zv8 output, as grep filters out some important details.

One thing you could try:

sudo modprobe -r btusb && sudo modprobe btusb

… when this next occurs. :slight_smile:

1 Like

Many thanks, I tried that, and it took a long time (30 seconds plus) before that process completed, but I still did not have Bluetooth at the end of it. Something I have noticed is that even if I perform both a sudo systemctl stop bluetooth and a sudo modprobe -r btusb there remains a bluetooth process.

E.g. root 59722 1 0 21:59 ? 00:00:00 /usr/lib/bluetooth/bluetoothd

If I try to kill that bluetooth process manually sudo kill 59722 then another process is immediately spawned under a different process ID. Am I wrong to think that if I had stopped the bluetooth service, and removed the bluetooth modules, that I shouldn’t see this process respawning?

I don’t get bluetooth back working regardless.

Apologies for replying to my own post, but just to keep track of what I am doing, I’ve edited /etc/bluetooth/main.conf as follows to enable the JustWorksRepairing option, which defaults to never:

# Specify the policy to the JUST-WORKS repairing initiated by peer
# Possible values: "never", "confirm", "always"
# Defaults to "never"
JustWorksRepairing = always

I will report back if this makes any difference.

1 Like