Lenovo IdeaPad 7 14are05

From ArchWiki
Jump to navigation Jump to search
Hardware PCI/USB ID Working?
Touchpad Yes
Keyboard Yes
Video Yes
Webcam 13d3:5419 Yes
Bluetooth 8087:0029 Yes
Power management Yes
SD-card reader Yes
HDMI Yes
VGA Yes
Audio Yes
Wireless 8086:9df0 Yes
Fingerprint reader Untested
TPM Untested

Specifications

This device is marketed both as Lenovo IdeaPad Slim 7 as well as Lenovo Yoga Slim 7 depending on the region. Hence, the below instructions should in principle apply to both these models and minor variants.

Installation

Enter the UEFI Firmware setup by pressing (Fn+) F2 during boot and disable Secure Boot which should deactivate bootloader and kernel verification for Windows 10 against Lenovo and Microsoft keys. Proceed to ensure that the machine allows for booting from a USB key. Boot with the latest ArchLinux ISO image and follow the Installation guide.

Accessibility

The appearance of the UEFI Firmware interface is reminiscent of regular BIOS'es and solely keyboard-driven.

The device has a convenient feature which is enabled by default in the UEFI Firmware, where pressing of a key when the device is off will display the state of charge (SoC) of the battery.

Firmware

Firmware updates are supported via fwupd:

# fwupdate -s
Firmware updates are supported on this machine.

Firmware updates should become / be made available for the following devices:

  • Integrated Camera
  • Samsung NVMe SSD
  • System Firmware
  • Touchpad
  • UEFI dbx

Secure Boot

Warning: The following was tested successfully on UEFI Firmware version DMCN32WW.

Optionally verify the UEFI Firmware version via:

# dmidecode -s bios-version

In order to enable Secure Boot with your own custom keys, follow the steps as outlined on the Secure Boot page, up to the point of installing your own Platform Key (PK).

An attempt to install a custom Platform Key will fail using the mentioned methods, including using efi-updatevar -f PK.auth as well as sbkeysync --verbose --PK with error messages such as 'operation not permitted'.

These errors are due to the fact that the PK file in the firmware has the 'immutable' bit set. Source for this idea was a comment in this thread from the author of efitools. To verify the state of the 'immutable' bit, do:

$ lsattr /sys/firmware/efi/efivars/PK-(Lenovo key UID)

The output should be;

----i--------------

where the single 'i' indicates that the immutable bit is indeed set.

Proceed to unset the 'immutable' bit by entering:

# chattr -i /sys/firmware/efi/efivars/PK-(Lenovo key UID)

Next, install your custom Platform Key (PK) as per one of the methods mentioned in the Secure Boot page instructions (sbkeysync, part of sbsigntools should work fine). It should install without error.

Check the correct installation of the new PK:

$ efi-readvar 

It should list all custom keys/certificates (PK, KEK, DB, optionally dbx) as enrolled in the machine's UEFI Firmware.

Set the immutable bit for the new PK:

# chattr +i /sys/firmware/efi/efivars/PK-(UID of your new PK)

The instructions from the Secure Boot page apply again from this point.

Bluetooth

Bluetooth works out of the box by simply following the instructions on the Bluetooth page.

Power management

This device supports the newer ACPI S0ix sleep state, promoted by Microsoft and dubbed Modern Standby with the goal of allowing PC's to operate more like smartphones. This state lets the machine enter a power-saving mode that still allows for certain operations such as retrieving e-mails. The UEFI Firmware can however not advertise both the S3 (Suspend to Ram) state as well as the S0ix state. Thus, the device loses the S3 Suspend to Ram ability.

In order to check the advertised ACPI power states, do:

# dmesg | grep 'S0\|S4\|S5'

The supported power states should not list S3. Note that the S3 Suspend to Ram power state consumes significantly less energy than the new S0ix power state. There are descriptions of ways of re-enabling the S3 power state on similar devices (see here and here for example). However this has not been tested as of yet on this machine by the author.

Energy Saving

The tips on the Power management page can be followed in order to optimize the power savings for the machine, such as creating configuration files in /etc/modprobe.d/ for Wifi and audio power saving. This can be tested, verified and optimized in conjunction with powertop for example. When idling, the machine should consume as little as around 3W.

Warning: With reference to the inability by default to advertise an S3 state, please take heed with 'Suspend' tips on the Power management page.

Battery Conservation Mode

A simplified summary of lithium-ion battery chemistry limitations is that lithium-ion cells can get damaged when fully drained, but equally dislike being kept at or near 100% SoC (State of Charge), which stresses the cells causing them to degrade faster than normal/expected. In case lithium-ion batteries are to be stored or otherwise remain unused for a prolonged period of time, a SoC of around 50% to 60% is advisable (it is for example no accident that nearly all new devices such as tablets, cellphones etc. are pre-charged to around 50% SoC when one first unpacks them).

Equally, lithium-ion batteries should preferably be charged at 0,5C, meaning that the input current (Amps) should not exceed half of the cell's rated capacity (e.g. 2100mAh rated AA cell should preferably be placed in a charger that charges at max 1050 mAmps). Charging at higher rates can be done safely (even much higher rates can be achieved under controlled conditions, such as with cooling to prevent a 'thermal runaway' reaction) but will put a strain on the cells causing for faster degradation.

Several Lenovo laptops including this machine have hardware in place that manages both of the above, called battery Conservation Mode. Under GNU/Linux, this mode can be set persistently from the command-line. When set, the machine will either discharge to 60% or charge up to 60%, depending on the current SoC being either higher or lower.

Thus, in this mode, one can use the device as a desktop machine and safely leave the charger connected for extended periods of time.

Note: This setting is persistent, by which is meant that when plugged into the mains, the charging circuitry will keep the device at precisely 60% regardless of whether it is on or off. Additionally, 'rapid charging' should be disabled in this mode automatically, further preventing premature battery degradation. Note that this last part could not be verified: according to Lenovo's tech specs, rapid charging requires that the model is shipped with a 95W charging adapter. Tested model was shipped with a 65W charging adapter.

In order to set this mode, first verify that the 'ideapad_laptop' kernel module has been loaded:

# lsmod | grep ideapad_laptop

If not, you can attempt to load it manually:

# modprobe ideapad_laptop

To turn on battery Conservation Mode for the machine, perform the following action:

# echo 1 > /sys/bus/platform/drivers/ideapad_acpi/VPC2004\:00/conservation_mode

Check/verify the current value:

$ cat /sys/bus/platform/drivers/ideapad_acpi/VPC2004\:00/conservation_mode 

It should now list "1"

The laptop should now charge/discharge until it reaches 60%.

At 60% the reported battery state should, instead of "charging" or "discharging", be reported as "unknown"

$ acpi -i
Battery 0: Unknown, 59%
Tip:
  • You can turn off Conservation Mode again at any time by echoing a value of "0" instead of "1" in the echo-step above in order to revert to the original mode.
  • There are two Bash-scripts in the AUR with which battery Conservation Mode can be conveniently set: ideapad-cmAUR, ipmanAUR.

HDMI

Video

The HDMI output will work out of the box. Read the Multihead and xrandr pages in order to set up a second monitor and for example switch between the internal eDP screen and an external HDMI monitor.

Audio

Additionally, pulseaudio can be made to output sound to the speakers of the external display, if present. In order to do this, set the external monitor as default output using e.g. pulsemixer or pamixer or check the PulseAudio page for further reference. When the external monitor goes into standby or is disconnected, audio will automatically switch back to the machine's speakers.

Function keys

Key Visible?1 Marked?2 Effect
Fn Yes Yes XF86WakeUp
Fn+Esc No Yes Enables Fn lock
Fn+F1 Yes Yes XF86AudioMute
Fn+F2 Yes Yes XF86AudioLowerVolume
Fn+F3 Yes Yes XF86AudioRaiseVolume
Fn+F4 Yes Yes XF86AudioMicMute
Fn+F5 Yes Yes XF86MonBrightnessDown
Fn+F6 Yes Yes XF86MonBrightnessUp
Fn+F7 Yes Yes
Fn+F8 Yes Yes XF86RFKill
Fn+F9 No Yes
Fn+F10 No Yes Lock X screen
Fn+F11 No Yes
Fn+F12 Yes Yes XF86Calculator
Fn+Space No Yes Enables/disables keyboard backlight
Fn+Up Yes Yes Page Up
Fn+Down Yes Yes Page Down
  1. The key is visible via xev (see package xorg-xev) and similar tools.
  2. The physical key has a symbol on it, which describes its function.

Tips and Tricks

Screen brightness control

Brightness of the built-in (eDP) screen can be set by echoing any value between 0 and 255 to /sys/class/backlight/amdgpu_bl0/brighness, e.g.

# echo 70 > /sys/class/backlight/amdgpu_bl0/brightness

See also