Como definir limites de carga para alguns Huawei MateBooks, LG Gram, Lenovo, Samsung ou laptops ASUS no Linux com TLP

18 de novembro de 2021

TLP é uma ferramenta avançada de gerenciamento de energia para Linux em linha de comando que ajuda a economizar a bateria do laptop. Ela foi projetada para instalar e esquecer o assunto, TLP cuidando de tudo automaticamente. O TLP é altamente configurável, porém, para que você possa ajustá-lo para atender às suas necessidades específicas, seja editando manualmente seu arquivo de configuração (/etc/tlp.conf) ou usando TLPUI, uma GUI de terceiros para TLP.

Com a versão 1.4, a TLP adicionou suporte para definir limites de bateria de início e/ou parada de carga para alguns laptops: ASUS, Huawei MateBooks, LG Gram, Lenovo (agora para não-Thinkpads também; Thinkpads foram suportados por um tempo) e Samsung. Este artigo explica como usar este recurso TLP para definir limites de início e/ou parada no caso de você possuir um laptop suportado.

Limitar o nível de carga da bateria ajuda a prolongar a vida útil da bateria. Ao definir um limite de carga de parada da bateria, você limita o nível máximo de carga para abaixo de 100%. Alguns laptops também suportam a configuração de um limite de carga de partida da bateria, o que impede que o processo de carregamento continue assim que o carregador estiver conectado, após uma breve descarga.

De acordo com as notas de lançamento do TLP 1.4.0, os seguintes laptops/limites de carga da bateria são suportados:

  • LAPTOPS ASUS: limite de parada
  • Huawei MateBooks: limite de início e parada
  • LAPTOPS LG Gram: limite de parada em 80% ou "limite de cuidados com a bateria"
  • Lenovo (não-ThinkPads) laptops: limite de parada em 60% também conhecido como "modo de conservação da bateria"
  • Laptops Samsung: limite de parada em 80% também conhecido como "extensor de vida útil da bateria"

A TLP já tinha suporte para iniciar e parar de carregar limites em Thinkpads. Também é importante notar que nem todas as marcas de laptop mencionadas acima suportam definir um limite de carga (você também precisará estar usando um kernel bastante recente). Para ver se o seu laptop suporta isso, consulte a seção pré-requisitos abaixo.

Para laptops ASUS, você também pode facilmente definir limiares de carregamento usando uma ferramenta de linha de comando chamada bat.

Pré-requisitos

Antes de prosseguir, você obviamente precisará ter o TLP 1.4.0 ou mais novo instalado em seu sistema. Veja esta página para a instalação de TLP em várias distribuições Linux, incluindo Arch Linux, Debian/Ubuntu (e Pop!_OS, Linux Mint, etc.), Fedora, openSUSE, etc.

Para ver se o seu ASUS, Huawei MateBooks, LG Gram, Lenovo ou Samsung suporta iniciar e/ou parar carregamento da bateria (com TLP >= 1.4.0 instalado), execute:

Comandos para usar no terminal

sudo tlp-stat -b

Esse o comando exibe várias informações de bateria para o seu laptop, incluindo se ele suporta limites de inicialização e/ou parada de carga. 

Por exemplo, esta é a saída deste comando no meu ASUS Zenbook:

--- TLP 1.4.0 --------------------------------------------
+++ Battery Care
Plugin: asus
Supported features: charge threshold
Driver usage:
* natacpi (asus_wmi) = active (charge threshold)
Parameter value range:
* STOP_CHARGE_THRESH_BAT0/1: 0(off)..100(default)
...........................................

Como você pode ver a partir desta saída, o laptop suporta limites de carga de parada (STOP_CHARGE_THRESH), que podem ter um valor entre 0 e 100 (com 0 significando desativar este recurso).

Também vale a pena notar que alguns laptops ASUS ignoram silenciosamente os limites de carga que não sejam 40, 60 ou 80, então se definir um valor diferente não funcionar para você, experimente um desses 3 valores.

Agora que sabemos que o laptop suporta definir um limite de carga de parada de bateria e os valores suportados, podemos proceder a definir os limites de carga da bateria.

Como definir os limites de carga da bateria para os laptops ASUS, Huawei MateBooks, LG Gram, Lenovo e Samsung no Linux usando TLP

Existem 2 maneiras de definir um limite de carregamento de bateria para o seu laptop executando TLP. Usando o TLPUI, uma interface de usuário gráfica para TLP, ou editando manualmente o arquivo de configuração TLP.

Usando TLPUI

Se você ainda não tiver TLPUI instalado, consulte sua página sobre instalação. Para distribuições Linux baseadas no Ubuntu (Pop!_OS, Linux Mint, etc.), você pode instalá-lo a partir do PPA Linux Uprising Apps.

Em TLPUI, clique em ThinkPad Battery na barra lateral. Isso é chamado assim porque até a versão 1.4, a TLP suportava definir limites de carga da bateria apenas para ThinkPads, e acho que o desenvolvedor da TLPUI esqueceu de alterá-lo. Mas apesar de seu nome, este também é para alguns laptops ASUS, Huawei MateBooks, LG Gram, não-ThinkPads Lenovo e Samsung.

tlpui-charge-thresholds

Lá você pode definir limites de carga para a bateria principal (BAT0 - isto é para a bateria principal, mesmo que a bateria do laptop seja chamada de BAT1, BATT, etc.) e/ou para a bateria auxiliar/Ultrabay (BAT1). É importante notar que você deve definir tanto um limite de bateria de partida quanto um limite de bateria de carga de parada. Se o seu laptop não suportar limites de partida (apenas Huawei MateBooks e Lenovo ThinkPads suportam isso), ou você não quiser definir um limite de bateria de carga inicial, habilite (marque a caixa ao lado) a opção de limite de carga inicial, mas defina-a para 0 (desativada).

Certifique-se de usar apenas um valor de limite de bateria de carga suportado pelo seu laptop, conforme relatado pelo comando sudo tlp-stat -b.

Lembre-se de clicar no botão Save quando terminar para salvar a nova configuração e aplicá-la.

Editando o arquivo de configuração TLP

Se você não usar o TLPUI, você pode definir limites de carregamento para seus laptops ASUS, Huawei MateBooks, LG Gram, Lenovo e Samsung no Linux editando o arquivo de configuração TLP.

Comece abrindo /etc/tlp.conf como root com um editor de texto. Desça até START_CHARGE_THRESH_BAT. Você encontrará configurações de limite de inicialidade e parada para BAT0 e BAT1. BAT0 é a bateria principal, mesmo que a bateria do seu laptop tenha um nome diferente (por exemplo, BAT1, BATT, etc.), e BAT1 é para a bateria auxiliar/Ultrabay.

Descomente (remova o símbolo # no início da linha) tanto START_CHARGE_THRESH_BATx quanto STOP_CHARGE_THRESH_BATx para a bateria que você deseja habilitar limites de carga para (BAT0 ou BAT1), em seguida, defina seus valores para os valores de início/parada que você deseja usar. 

Importante:

  • certifique-se de que os valores dos limites de carga da bateria definidos sejam suportados pelo seu laptop (conforme relatado por sudo tlp-stat -b)
  • se o seu laptop não suportar a configuração de um limite de carga de partida da bateria, ou você não quiser usar um limite de carga inicial, defina o valor START_CHARGE_THRESH_BATx para 0 (o que o desativa)

Quando terminar de definir os limites de carga da bateria, execute o seguinte comando para validar os parâmetros e a configuração e informe quaisquer erros:

Comandos para usar no terminal

sudo tlp setcharge

Saída de exemplo do meu ASUS Zenbook:

Setting temporary charge threshold for BAT0:
  stop =  60 (no change)
Propaganda
Propaganda