Can't suspend on Tumbleweed, bluetooth error -16

Hi,
I am a bit new to Linux and having an issue I was hopeful someone could help with.
I am using a Thinkpad X1 Carbon gen 13. When I try to suspend, the screen goes black, but it promptly comes back on to the login screen.

I did

journalctl | grep blue

And got the following info:

Dec 19 08:43:14 Thinkpad.localdomain systemd-logind[953]: The system will suspend now!
Dec 19 08:43:14 Thinkpad.localdomain ModemManager[1035]: [sleep-monitor-systemd] system is about to suspend
Dec 19 08:43:19 localhost.localdomain systemd-sleep[10307]: Performing sleep operation ‘suspend’…
Dec 19 08:43:19 localhost.localdomain kernel: PM: suspend entry (s2idle)
Dec 19 08:43:23 localhost.localdomain kernel: printk: Suspending console(s) (use no_console_suspend to debug)
Dec 19 08:43:23 localhost.localdomain kernel: btintel_pcie 0000:00:14.7: PM: pci_pm_suspend(): btintel_pcie_suspend [btintel_pcie] returns -16
Dec 19 08:43:23 localhost.localdomain kernel: btintel_pcie 0000:00:14.7: PM: dpm_run_callback(): pci_pm_suspend returns -16
Dec 19 08:43:23 localhost.localdomain kernel: btintel_pcie 0000:00:14.7: PM: failed to suspend async: error -16
Dec 19 08:43:23 localhost.localdomain kernel: PM: Some devices failed to suspend, or early wake event detected
Dec 19 08:43:23 localhost.localdomain kernel: PM: suspend exit
Dec 19 08:43:23 localhost.localdomain systemd[1]: systemd-suspend.service: Main process exited, code=exited, status=1/FAILURE
Dec 19 08:43:23 localhost.localdomain systemd[1]: systemd-suspend.service: Failed with result ‘exit-code’.
Dec 19 08:43:23 localhost.localdomain systemd[1]: suspend.target: Job suspend.target/start failed with result ‘dependency’.
Dec 19 08:43:23 localhost.localdomain systemd-logind[953]: Operation ‘suspend’ finished.

I am unable to turn Bluetooth on or off, either by the command line or the GUI. When I press the slider, it just slides back off, like one of those useless machines.

I wanted to add some more details and updates:

I believe I was able to fully disable bluetooth, using some combination of:

sudo -r modprobe btusb btrtl btintel_pcie btmtk btintel btbcm bnep thinkpad_acpi

After this, my computer was able to sleep/suspend.

It restarts after a reboot, and of course, bluetooth does not work. Does anyone know how I can get Bluetooth working with sleep mode? Keep in mind the Bluetooth does not work even with all processes running; enabled.

bluetoothctl ouputs “No default controller available”
Nothing is blocked when I check rfkill list.

I really appreciate your help!

Fixed it - apparently Tumblewee does not have the firmware by default.
Installed kernel-firmware-bluetooth and now Bluetooth and suspend work.

It looks like you figured it out yourself. Hang in there and it’ll get easier. Everything, well, almost everything makes sense after you figure it out.

There’s no need to install firmware for devices that you don’t have, but I’d think it would’ve detected and installed the Bluetooth firmware.

Did you set up the repos during the install? If not maybe that’s why it didn’t install the FW. My install is a couple of years old, and I installed TW on my wife’s machine about a month ago, but I forget exactly what happens during install, and it does change sometimes.

Figuring things out is how you get good at it. That and reading the forum helps because the guys here are pretty good.

You’ll read about problems that you don’t have and you’ll never remember all of it. But you’ll know about it and have a general idea about what to do or where to look for help.

The Archwiki is a big help. Some of it is outdated, but I’ve found the answers for problems with Linux system files or configuration many times. One was scaling the login screen for 4K monitors which I posted here.

Welcome to Tumbleweed and good luck.

Thanks so much for the reply; was feeling a little lost!
I did not do pretty much anything during the install; I let it do the defaults.

I got some error trying to install Leap and surprisingly had more luck with Tumbleweed. I’m learning the hard way!

Thank you for the suggestions and welcome!

1 Like

IMHO people who just started better stick with defaults, which means all kernel-firmware pacages.

Question: Isn’there a Install Firmare packages checkbox in the YaST installer?

To be honest, I kind of breezed through it :). It’s entirely possible I either checked, or unchecked, something I should not have.

I was just talking about how Linux works in general. I wasn’t telling him to prevent firmware from installing. You know, many times Linux won’t install unneeded things that you didn’t request.

I wasn’t aware that it installed all of the firmware though. I assumed it installed what your system needed, and firmware for plug and play devices etc.

But it does make sense now that I know.

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.