TLP
From the project page:
- TLP brings you the benefits of advanced power management for Linux without the need to understand every technical detail. TLP comes with a default configuration already optimized for battery life, so you may just install and forget it. Nevertheless TLP is highly customizable to fulfill your specific requirements.
Installation
Install the tlp package. Installing the optional dependencies may help provide additional power saving.
Radio Device Wizard (tlp-rdw)
When using the Radio Device Wizard (tlp-rdw), it is required to use NetworkManager and enabling NetworkManager-dispatcher.service
.
One should also mask the service systemd-rfkill.service
and socket systemd-rfkill.socket
to avoid conflicts and assure proper operation of TLP's radio device switching options.
See TLP configuration for details.
ThinkPads only
For advanced battery functions, i.e. charge thresholds and recalibration, install the following package(s):
- tp_smapi – tp-smapi is needed for battery charge thresholds, recalibration and specific status output of tlp-stat
- acpi_call – acpi-call is needed for battery charge thresholds and recalibration on Sandy Bridge and newer models (X220/T420, X230/T430 et al.). Use acpi_call-dkms if not running kernels from official repositories.
See the TLP FAQ, section "Which kernel module?", for details.
Controlling the charge thresholds using D-Bus without root privileges is possible using threshyAUR and it's example Qt user interface threshy-guiAUR.
Front end
tlpui-gitAUR is a GTK user interface for TLP written in Python. As of Feb 2021, the software is still in beta.
Configuration
The configuration file is located at /etc/tlp.conf
and provides a "largely" optimized power saving by default. For a full explanation of options see: TLP configuration.
Force battery (BAT) configuration
When no power supply can be detected, the setting for AC will be used on devices like desktops and embedded hardware.
You may want to force the battery (BAT) settings when using TLP on these devices to enable more power saving:
/etc/tlp.conf
# Operation mode when no power supply can be detected: AC, BAT. TLP_DEFAULT_MODE=BAT # Operation mode select: 0=depend on power source, 1=always use TLP_DEFAULT_MODE TLP_PERSISTENT_DEFAULT=1
Bumblebee with NVIDIA driver
If you're running Bumblebee with NVIDIA driver, you need to disable power management for the GPU in TLP in order to make Bumblebee control the power of the GPU.
If you are running TLP version prior to 0.9, run lspci
to determine the address of the GPU (such as 01:00.0), then set the value:
RUNTIME_PM_BLACKLIST="01:00.0"
If your TLP version is 1.0 or above, then set, according to the driver you are using:
RUNTIME_PM_DRIVER_BLACKLIST="nouveau nvidia"
PCI(e) runtime power management on AC
Enabling runtime power management for PCI(e) bus devices while on AC may improve power saving on some laptops. This is enabled by default on battery, but not on AC. To enable on AC, set:
/etc/tlp.conf
RUNTIME_PM_ON_AC=auto
USB autosuspend
You may want to disable the autosuspend mode for certain USB devices, such as keyboards, mice or Ethernet adapters. See the TLP documentation for details.
Command line
TLP provides several command line tools. See TLP commands.
Debugging
You can display information about the currently used Mode(AC/BAT) and applied configurations:
# tlp-stat
hci0: link tx timeout
If your bluetooth headphones suddenly stop working and you see this error in dmesg
, it may be caused by TLP suspending your device. Add device ID to USB_BLACKLIST
in /etc/tlp.conf
:
# Disable bluetooth autosuspend USB_BLACKLIST="8087:0aaa"
Get the device ID for your bluetooth device from lsusb -v
. Restart TLP and the bluetooth service.
Features intentionally excluded
- Fan control. See Fan speed control
- Backlight brightness. See Backlight
See also
- TLP - Linux Advanced Power Management - Project homepage & documentation.
- Project FAQ - Project FAQ