Read the overview document first.
Lenovo laptop series using the ideapad_laptop
driver have a feature called
'battery conservation mode', basically a fixed stop charge threshold at 60%.
The hardware behaviour is:
-
Connected to the charger, charging stops when the charge level reaches the stop threshold
-
If the charge level is higher than the stop threshold, the battery will not discharge automatically; it will only be discharged when the charger is removed i.e. the laptop runs on battery
When suitable hardware has been detected, tlp-stat -b
shows:
+++ Battery Care
Plugin: ideapad
Supported features: charge threshold
Driver usage:
* vendor (ideapad_wmi) = active (charge threshold)
Parameter value range:
* STOP_CHARGE_THRESH_BAT0: 0(off)..1(on) -- battery conservation mode
/sys/bus/platform/drivers/ideapad_acpi/VPC2004:00/conservation_mode = 1
Battery charging is a process not controlled by TLP itself, but by the laptop's embedded controller (EC). This makes the process work even when switched off or no operating system is running. You cannot change the basic behavior, it is hard-coded into the EC firmware by the vendor. TLP just writes the charge threshold into the EC with the help of the kernel driver, the EC takes care of the rest.
Packages are provided at the download page.
Linux kernel 4.14 or higher required.
Important: please provide all terminal input and output from the test cases via an individual Gist and link it in your post below.
Edit /etc/tlp.conf (or a config file of your choice under /etc/tlp.d/):
STOP_CHARGE_THRESH_BAT0="1"
Note: 0=conservation mode off/1=conservation mode on
Connect the charger.
Enter the following commands in a terminal (as root or with sudo
):
tlp start
tlp-stat -s -c -b
Verify that conservation_mode = 1
.
- Let the laptop run on battery power until the charge level falls below at least 50%
- Connect the charger and see if charging starts
- Verify that charging stops at 60%
Enter the command (as root or with sudo
):
tlp-stat -b
Edit the config file used above:
STOP_CHARGE_THRESH_BAT0="0"
Enter the commands (as root or with sudo
):
tlp fullcharge
tlp-stat -b
Verify that conservation_mode = 0
and the battery gets fully charged.
- Please report if the conservation mode takes effect at a value other than 60%
- Are there Lenovo laptops with more than one battery (
tlp-stat -b
should show)?
Working well on Lenovo YOGA 320.
When set, the charge stopped at 59% but later on, decreased to 57% even though the device is connected to the AC power.