Bluetooth can't turn on after closing the lid

I’ve been having problems with Bluetooth not being able to turn on after I close the lid, even though it works properly after I restart the system. At this point, I tried a lot of things to fix it, and I’m suspecting it might be a hardware issue (I am using a Lenovo ThinkBook).

When I close the lid (the system goes into “suspend” mode in my settings), Bluetooth seems to lose the default controller. If I run bluetoothctl scan on or a similar command, it returns No default controler available. Running sudo systemctl restart bluetooth does nothing, and Bluetooth is not on the rfkill list.

I also got this in my logs:
jul 27 09:40:36 kernel: Bluetooth: hci0: Opcode 0x c1a failed: -110
jul 27 09:40:36 kernel: Bluetooth: hci0: Opcode 0x c1a failed: -110
jul 27 09:40:36 kernel: Bluetooth: hci0: command 0x0c1a tx timeout
jul 27 09:40:33 kernel: Bluetooth: hci0: command 0x0c01 tx timeout
jul 27 09:40:33 kernel: Bluetooth: hci0: Opcode 0x c01 failed: -110
jul 27 09:26:43 kernel: Bluetooth: hci0: Malformed MSFT vendor event: 0x02

Does anyone have an idea on how to fix this? Right now, the only solution is to restart the system when I want to use Bluetooth.

P.S. Bluetooth can’t connect to my mouse even when it’s on. The mouse has both Bluetooth 4.0 and 5.0 settings, but it can’t find either. It works properly with my Windows, so that is not a hardware issue.

Welcome to the forum :partying_face:

Some ideas:

If you dual boot make sure to disable fastboot on windows.

Post hardware info so users have an idea what you use:

Here’s my complete system information (as far as I know, everything should be here?)

System:
  Kernel: 6.1.41-1-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 13.1.1
    parameters: BOOT_IMAGE=/boot/vmlinuz-6.1-x86_64
    root=UUID=6b3152a0-facd-49ee-89da-cff1aa9eb423 rw quiet splash apparmor=1
    security=apparmor udev.log_priority=3
  Desktop: GNOME v: 44.3 tk: GTK v: 3.24.38 wm: gnome-shell dm: GDM v: 44.1
    Distro: Manjaro Linux base: Arch Linux
Machine:
  Type: Laptop System: LENOVO product: 20SM v: Lenovo ThinkBook 15-IIL
    serial: <superuser required> Chassis: type: 10 v: Lenovo ThinkBook 15-IIL
    serial: <superuser required>
  Mobo: LENOVO model: LNVNB161216 v: SDK0J40697 WIN
    serial: <superuser required> UEFI: LENOVO v: DJCN25WW date: 03/29/2021
Battery:
  ID-1: BAT1 charge: 23.0 Wh (59.6%) condition: 38.6/45.0 Wh (85.7%)
    volts: 11.7 min: 11.4 model: SMP L19M3PF1 type: Li-poly serial: <filter>
    status: not charging cycles: 676
Memory:
  System RAM: total: 8 GiB note: est. available: 7.29 GiB
    used: 4.97 GiB (68.1%)
  RAM Report: permissions: Unable to run dmidecode. Root privileges required.
CPU:
  Info: model: Intel Core i7-1065G7 bits: 64 type: MT MCP arch: Ice Lake
    gen: core 10 level: v4 note: check built: 2019-21 process: Intel 10nm
    family: 6 model-id: 0x7E (126) stepping: 5 microcode: 0xBA
  Topology: cpus: 1x cores: 4 tpc: 2 threads: 8 smt: enabled cache:
    L1: 320 KiB desc: d-4x48 KiB; i-4x32 KiB L2: 2 MiB desc: 4x512 KiB L3: 8 MiB
    desc: 1x8 MiB
  Speed (MHz): avg: 1192 high: 1500 min/max: 400/3900 scaling:
    driver: intel_pstate governor: powersave cores: 1: 1100 2: 1100 3: 1100
    4: 1037 5: 1101 6: 1500 7: 1500 8: 1101 bogomips: 23968
  Flags: 3dnowprefetch abm acpi adx aes aperfmperf apic arat
    arch_capabilities arch_perfmon art avx avx2 avx512_bitalg avx512_vbmi2
    avx512_vnni avx512_vpopcntdq avx512bw avx512cd avx512dq avx512f avx512ifma
    avx512vbmi avx512vl bmi1 bmi2 bts clflush clflushopt cmov constant_tsc
    cpuid cpuid_fault cx16 cx8 de ds_cpl dtes64 dtherm dts epb ept ept_ad erms
    est f16c flexpriority flush_l1d fma fpu fsgsbase fsrm fxsr gfni ht hwp
    hwp_act_window hwp_epp hwp_notify hwp_pkg_req ibpb ibrs ibrs_enhanced ida
    intel_pt invpcid invpcid_single lahf_lm lm mca mce md_clear mmx monitor
    movbe msr mtrr nonstop_tsc nopl nx ospke pae pat pbe pcid pclmulqdq pdcm
    pdpe1gb pebs pge pku pln pni popcnt pse pse36 pts rdpid rdrand rdseed
    rdtscp rep_good sdbg sep sgx sgx_lc sha_ni smap smep split_lock_detect ss
    ssbd sse sse2 sse4_1 sse4_2 ssse3 stibp syscall tm tm2 tpr_shadow tsc
    tsc_adjust tsc_deadline_timer tsc_known_freq umip vaes vme vmx vnmi
    vpclmulqdq vpid x2apic xgetbv1 xsave xsavec xsaveopt xsaves xtopology xtpr
  Vulnerabilities:
  Type: itlb_multihit status: KVM: VMX disabled
  Type: l1tf status: Not affected
  Type: mds status: Not affected
  Type: meltdown status: Not affected
  Type: mmio_stale_data mitigation: Clear CPU buffers; SMT vulnerable
  Type: retbleed mitigation: Enhanced IBRS
  Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via
    prctl
  Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer
    sanitization
  Type: spectre_v2 mitigation: Enhanced IBRS, IBPB: conditional, RSB
    filling, PBRSB-eIBRS: SW sequence
  Type: srbds mitigation: Microcode
  Type: tsx_async_abort status: Not affected
Graphics:
  Device-1: Intel Iris Plus Graphics G7 vendor: Lenovo driver: i915 v: kernel
    arch: Gen-11 process: Intel 10nm built: 2019-21 ports: active: eDP-1
    empty: DP-1,HDMI-A-1 bus-ID: 00:02.0 chip-ID: 8086:8a52 class-ID: 0300
  Device-2: Bison Integrated Camera driver: uvcvideo type: USB rev: 2.0
    speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 3-6:4 chip-ID: 5986:2130
    class-ID: 0e02
  Display: x11 server: X.org v: 1.21.1.8 with: Xwayland v: 23.1.2
    compositor: gnome-shell driver: X: loaded: modesetting alternate: fbdev,vesa
    dri: iris gpu: i915 display-ID: :0 screens: 1
  Screen-1: 0 s-res: 1920x1080 s-size: <missing: xdpyinfo>
  Monitor-1: eDP-1 model: LG Display 0x05e5 built: 2018 res: 1920x1080 hz: 60
    dpi: 142 gamma: 1.2 size: 344x194mm (13.54x7.64") diag: 395mm (15.5")
    ratio: 16:9 modes: 1920x1080
  API: OpenGL v: 4.6 Mesa 23.0.4 renderer: Mesa Intel Iris Plus Graphics
    (ICL GT2) direct-render: Yes
Audio:
  Device-1: Intel Ice Lake-LP Smart Sound Audio vendor: Lenovo
    driver: snd_hda_intel v: kernel alternate: snd_sof_pci_intel_icl
    bus-ID: 00:1f.3 chip-ID: 8086:34c8 class-ID: 0403
  API: ALSA v: k6.1.41-1-MANJARO status: kernel-api with: aoss
    type: oss-emulator tools: alsactl,alsamixer,amixer
  Server-1: JACK v: 1.9.22 status: off tools: N/A
  Server-2: PipeWire v: 0.3.75 status: off tools: pw-cli
  Server-3: PulseAudio v: 16.1 status: active with: pulseaudio-alsa
    type: plugin tools: pacat,pactl
Network:
  Device-1: Intel Ice Lake-LP PCH CNVi WiFi driver: iwlwifi v: kernel
    bus-ID: 00:14.3 chip-ID: 8086:34f0 class-ID: 0280
  IF: wlp0s20f3 state: up mac: <filter>
  IP v4: <filter> type: dynamic noprefixroute scope: global
    broadcast: <filter>
  IP v6: <filter> type: noprefixroute scope: link
  Device-2: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
    vendor: Lenovo driver: r8169 v: kernel pcie: gen: 1 speed: 2.5 GT/s lanes: 1
    port: 2000 bus-ID: 01:00.0 chip-ID: 10ec:8168 class-ID: 0200
  IF: enp1s0 state: down mac: <filter>
  WAN IP: <filter>
Bluetooth:
  Message: No bluetooth data found.
Logical:
  Message: No logical block device data found.
RAID:
  Message: No RAID data found.
Drives:
  Local Storage: total: 238.47 GiB used: 36.04 GiB (15.1%)
  SMART Message: Required tool smartctl not installed. Check --recommends
  ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Western Digital model: PC SN520
    SDAPMUW-256G-1101 size: 238.47 GiB block-size: physical: 512 B
    logical: 512 B speed: 15.8 Gb/s lanes: 2 tech: SSD serial: <filter>
    fw-rev: 20240001 temp: 44.9 C scheme: GPT
  Message: No optical or floppy data found.
Partition:
  ID-1: / raw-size: 60 GiB size: 58.76 GiB (97.92%) used: 36.01 GiB (61.3%)
    fs: ext4 dev: /dev/nvme0n1p4 maj-min: 259:4 label: N/A
    uuid: 6b3152a0-facd-49ee-89da-cff1aa9eb423
  ID-2: /boot/efi raw-size: 260 MiB size: 256 MiB (98.46%)
    used: 32.6 MiB (12.7%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:1
    label: SYSTEM_DRV uuid: 72A3-133A
Swap:
  Alert: No swap data was found.
Unmounted:
  ID-1: /dev/nvme0n1p2 maj-min: 259:2 size: 16 MiB fs: <superuser required>
    label: N/A uuid: N/A
  ID-2: /dev/nvme0n1p3 maj-min: 259:3 size: 177.23 GiB fs: ntfs
    label: Windows-SSD uuid: 01D9A27FADB46F90
  ID-3: /dev/nvme0n1p5 maj-min: 259:5 size: 1000 MiB fs: ntfs
    label: WINRE_DRV uuid: 34A4A419A4A3DC1C
USB:
  Hub-1: 1-0:1 info: hi-speed hub with single TT ports: 1 rev: 2.0
    speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0 chip-ID: 1d6b:0002
    class-ID: 0900
  Hub-2: 2-0:1 info: super-speed hub ports: 4 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
  Hub-3: 3-0:1 info: hi-speed hub with single TT ports: 12 rev: 2.0
    speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0 chip-ID: 1d6b:0002
    class-ID: 0900
  Device-1: 3-4:2 info: SHARKOON GmbH 2.4GHz Wireless rechargeable vertical
    mouse [More&Better] type: mouse driver: hid-generic,usbhid interfaces: 1
    rev: 1.1 speed: 12 Mb/s (1.4 MiB/s) lanes: 1 mode: 1.1 power: 100mA
    chip-ID: 1ea7:0064 class-ID: 0301
  Device-2: 3-5:3 info: Elan Micro ELAN:Fingerprint type: <vendor specific>
    driver: N/A interfaces: 1 rev: 2.0 speed: 12 Mb/s (1.4 MiB/s) lanes: 1
    mode: 1.1 power: 100mA chip-ID: 04f3:0c4b class-ID: 0000
  Device-3: 3-6:4 info: Bison Integrated Camera type: video driver: uvcvideo
    interfaces: 2 rev: 2.0 speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0
    power: 500mA chip-ID: 5986:2130 class-ID: 0e02
  Hub-4: 4-0:1 info: super-speed hub ports: 6 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
Sensors:
  System Temperatures: cpu: 45.0 C mobo: N/A
  Fan Speeds (RPM): N/A
Info:
  Processes: 304 Uptime: 5h 47m wakeups: 7799 Init: systemd v: 253
  default: graphical tool: systemctl Compilers: gcc: 13.1.1 clang: 15.0.7
  Packages: pm: pacman pkgs: 1265 libs: 346 tools: gnome-software,pamac
  pm: flatpak pkgs: 0 Shell: Zsh v: 5.9 running-in: gnome-terminal inxi: 3.3.28

Here, the bluetooth part is as follows

Bluetooth:
  Message: No bluetooth data found.

This is after I had my lid closed. On a restart, I get this:

Bluetooth:
  Device-1: Intel AX201 Bluetooth driver: btusb v: 0.8 type: USB rev: 2.0
    speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 3-10:5 chip-ID: 8087:0026
    class-ID: e001
  Report: bt-adapter ID: hci0 rfk-id: 3 state: up address: <filter>

Fixes I also tried:

  • Fastboot and secure boot are both disabled
  • Downgraded my kernel to 5.15.122-1
  • Edited some .conf file related to bluetooth (I forgot what it was exactly and where I found it)
  • Checked rfkill list
  • Tried sudo systemctl restart bluetooth
  • Tried updating all the packages, including bluez and blueman

I hope that was useful! One other thing I might try later is to boot from a usb, and see if Bluetooth breaks there.

You found all the right info, but it seems your device (chip-ID: 8087:0026) has a issue.

https://bugzilla.kernel.org/show_bug.cgi?id=209659

The above thread suggest to update the kernel to latest and hope it starts working.

Edit: If this device can be acquired with Linux as operating system this function should work or it can be reported as a defect?

Thanks for the help!

The device originally had Windows on it. Not sure if it can be acquired with Linux, also after some googling I’m pretty sure Lenovo is generally less compatible with Linux.

How you hibernate without swap? Just relying on the RAM is probably not very smart, especially if it’s “only” 8 GiB…

1 Like

I actually have no clue what that means. I just googled that it is some sort of temporary saving of RAM to storage?

I definitely didn’t touch any swap config or anything myself, so this is just the default installation I guess. Do you suggest changing it? It’d be great if you had some links on how to fix that!

Also, this might be the same thing, but my lid-close state is suspend, not hybernate. This is in my logind.conf file:

#NAutoVTs=6
#ReserveVT=6
#KillUserProcesses=no
#KillOnlyUsers=
#KillExcludeUsers=root
#InhibitDelayMaxSec=5
#UserStopDelaySec=10
#HandlePowerKey=poweroff
#HandlePowerKeyLongPress=ignore
#HandleRebootKey=reboot
#HandleRebootKeyLongPress=poweroff
#HandleSuspendKey=suspend
#HandleSuspendKeyLongPress=hibernate
#HandleHibernateKey=hibernate
#HandleHibernateKeyLongPress=ignore
#HandleLidSwitch=suspend
#HandleLidSwitchExternalPower=suspend
#HandleLidSwitchDocked=ignore
#PowerKeyIgnoreInhibited=no
#SuspendKeyIgnoreInhibited=no
#HibernateKeyIgnoreInhibited=no
#LidSwitchIgnoreInhibited=yes
#RebootKeyIgnoreInhibited=no
#HoldoffTimeoutSec=30s
#IdleAction=ignore
#IdleActionSec=30min
#RuntimeDirectorySize=10%
#RuntimeDirectoryInodesMax=
#RemoveIPC=yes
#InhibitorsMax=8192
#SessionsMax=8192
#StopIdleSessionSec=infinity

This explains it all:

And yes, I would recommend to set-up swap. This is usually something which could be done during installation of the OS.

1 Like

I want to try downgrading my bluez version to this commit:

since apparently it worked for someone from this post
https://www.linuxquestions.org/questions/slackware-14/bluetooth-not-working-properly-after-suspend-resume-4175707326/
Since I’m still pretty new to Linux, can someone help me with downgrading bluez to this commit (which is version 5.63 I think)? Trying sudo downgrade bluez only goes down to 5.66.