Problems with Lid, Keyboard and Hibernate on Thinkpad E15 Gen 2

Hi Everyone,

I have been using Manjaro for about a year know and on my old Acer Aspire everything worked pretty much out of the box. Recently i bought a Thinkpad E15 with a Ryzen 4700U.
Since then i’ve been running into a couple of Problems, that i can’t solve by myself, nor find a solution on the Web.

  • First of all, the Fn Keys are not working. I can use Fn+Space to change the keyboard backlight, but none of the F1-12 are doing anything.
    After changing the default to the F-Keys in the BIOS i can use them as such, but pressing Fn has no Effect whatsoever. Updating the BIOS and Keyboard-Firmware didn’t solve the problem as well.

  • Second, Manjaro doesn’t seem to register when the laptop lid is closed. The laptop stays awake despite a closed lid, draining all of the battery. The Setting to go to sleep after x Minutes doesn’t seem to affect it in this state as well.

Strangely both of the above Problems are gone temporarily after Suspend, but they are back after a while or a reboot.

  • Last, Hibernate seems to try to shut the laptop down, but after a few seconds it sends it into a black void with a non responsive cursor instead. Only a hard reboot can save it from this state.

Hast anyone else had these Problems? Are there any known fixes?

Thanks in advance for your Help!

Lenovo Thinkpad E15 Gen 2
Ryzen 4700U CPU
AMD Radeon™ RX Vega 7 GPU
2x 500GB SSD (DualBoot Manjaro & Windows 10)

Manjaro with Kernel 5.8.3-2 and KDE-Plasma

I dont have any direct statements; however, I have often found some early compatibility issues with laptop functionality and linux. I have had to jump through a few hoops to get my Asus Rog working, and I have an Acer Ryzen 4700 as well that also has function key issues. In many cases it comes down to kernel support for the hardware.

I did a quick search and found this: https:// forums.linuxmint. com/viewtopic.php?p=1870440 and that further links to a lenovo forum post: https:// forums.lenovo. com/t5/Other-Linux-Discussions/Linux-Fn-keys-not-working-Thinkpad-E14-AMD-Gen-2/m-p/5027791?page=1 (you’ll need to remove spaces from the links)

Take a look and see if that helps. Maybe others with a similar Lenovo can comment more here too.

1 Like

Thank you, that Lenovo-Forum Post was very helpfull.
Seems like many people have this problem. The current theory ist, that it’s a BIOS-Problem, which Lenovo is aware of, but has no Intention of fixing anytime soon :disappointed_relieved:

As a temporary “fix”:
Is it possible/wise to write a Shell-Skript with a Systemd-Service, that suspends the Laptop on Startup an then wakes it up again right away?

Yeah, it’d be possible.

Here’s how to just suspend a laptop: https:// www.cyberciti. biz/faq/linux-command-to-suspend-hibernate-laptop-netbook-pc/ – basically its this: systemctl suspend

Here’s how to suspend and wake up a laptop at a specific time: https:// www.howtogeek. com/121241/how-to-make-your-linux-pc-wake-from-sleep-automatically/ – basically this: rtcwake -m [type of suspend] -s [number of seconds]

There is a few options with rtcwake, but if you throw a working rtcwake command into cron with an @reboot time (https: //superuser. com/questions/708149/how-to-use-reboot-in-etc-cron-d and https:// classicforum.manjaro. org/index.php?topic=33896.0)

Putting it all together, I’d store this as a script in /etc/cron.d called sleepwake

 #sleep/wake as root on startup
 #create job with preferred editor (e.g. vim)
 @reboot root rtcwake -m off -s 1

Now, the above is untested on my Manjaro laptop, but should get you close to your finish line.

1 Like

Thank you @lrissman.
Just tried it. I used:

@reboot root rtcwake -m mem -s 2

One Second was to short for my System. The Laptop wasn’t fully Suspended yet when, rtcwake woke it up again, and the Fn-Keys still wouldn’t work.
Two seconds works perfectly for my System. The whole think adds about 5 seconds to the startup, but I’m willing to pay that price until Lenovo has a real fix for the Problem.

1 Like

My Lenovo IdeaPad 5 14 ARE05 with a 4600U also had issues with suspend not working correctly.
I was able to fix it using the recipe from the Arch Wiki entry for the laptop.

I can’t tell if it’s the same issue for your machine - and the patch I used might not work for you, but it might be worth having a look.