130 votes

Comment puis-je limiter la charge de la batterie à 80 % de sa capacité ?

Je viens d'apprendre que certains ordinateurs portables Lenovo intègrent un utilitaire qui propose de limiter la capacité de charge de la batterie à 0-80% afin de ralentir l'atténuation de la durée de vie de la batterie :

screenshot

Comment puis-je faire cela dans Ubuntu ?

4voto

Todd Points 137

Avez-vous vérifié s'il existe un paramètre BIOS pour cela sur votre ordinateur portable ? Mon ordinateur portable avait une application Windows ainsi qu'un paramètre "Battery Life Extender" dans le BIOS pour cette fonction exacte.

3voto

J'ai écrit un application en ligne de commande qui fait ça.

Le moyen le plus simple de commencer est de télécharger l'application à partir de l'adresse suivante page des sorties et exécuter

$ ./bat --help

à partir du terminal dans le répertoire où il se trouve, ce qui devrait afficher la documentation d'aide.

S'il y a une erreur, cela peut être lié aux autorisations. La commande suivante pourrait résoudre le problème.

chmod +x ./bat

En fait, l'exécution

$ ./bat --threshold

imprimera le seuil actuel.

Pour définir un nouveau seuil, disons 60%, exécutez

./bat --threshold 60

Pour faire persister le seuil actuel entre les redémarrages, exécutez

sudo ./bat --persist

Note : Utilisations persistantes systemd sous le capot, mais il est fourni avec la plupart des distributions Linux, y compris Ubuntu.

Conseil : Placez l'application dans un répertoire comme /usr/local/bin/ qui se trouve dans le $PATH vous permettra de l'exécuter de n'importe où et pas seulement dans le répertoire où se trouve l'application. Alors les commandes ci-dessus deviennent,

bat --help

bat --threshold 60

bat --persist

respectivement.

3voto

Robie Basak Points 14936

Sur mon Dell XPS, j'ai installé le smbios-utils en utilisant sudo apt install smbios-utils . Ce paquetage fournit une commande appelée smbios-battery-ctl . Il semble que le contrôle de la charge basé sur le niveau de la batterie soit disponible depuis Ubuntu 20.04. Tous les détails sont dans le page d'accueil mais pour une configuration de base de 80 %, je pense que cela fonctionnera :

sudo smbios-battery-ctl --set-custom-charge-interval 75 80
sudo smbios-battery-ctl --set-charging-mode=custom

La charge commencera lorsque la batterie sera inférieure à 75 % et s'arrêtera lorsqu'elle atteindra 80 %.

Pour revenir en arrière :

sudo smbios-battery-ctl --set-charging-mode=adaptive

3voto

AjayC Points 338

J'ai un ordinateur portable Asus et l'approche que j'ai trouvée sur Internet est la suivante. Il se peut que cette approche fasse déjà partie de certaines des applications mentionnées ci-dessus, mais je la présente ici à titre d'information.

  1. Créez un fichier de service nommé battery_charge_threshold.service comme ça.

    [Unit]
    Description=Set the battery charge threshold
    After=multi-user.target
    
    [Service]
    Type=oneshot
    ExecStart=/bin/bash -c 'echo 80 > /sys/class/power_supply/BAT0/charge_control_end_threshold'
    
    [Install]
    WantedBy=multi-user.target
  2. Déplacez le fichier à cet endroit /etc/systemd/system

  3. Exécutez les commandes suivantes.

    sudo chmod 644 /etc/systemd/system/battery-charge-threshold.service
    sudo systemctl daemon-reload
    sudo systemctl enable battery-charge-threshold.service

Après avoir fait cela, le seuil de charge de 80% (selon le fichier de service) persistera entre les redémarrages. Il arrêtera également de charger la batterie si le niveau actuel est supérieur à 80 %. J'espère que cela vous aidera. Je l'utilise depuis presque 1,5 an sans aucun problème.

2voto

ceremcem Points 169

Il y a un hack matériel que je viens de découvrir pour les ordinateurs portables Dell :

Les chargeurs Dell utilisent 3 broches, une pour le (+), une pour le (-) et une pour la communication d'identification du chargeur Dell (un protocole à 1 fil). Cette ligne de communication est généralement celle qui se trouve au centre du connecteur, la broche en forme d'aiguille.

Si vous coupez cette ligne de communication, l'ordinateur portable continuera à fonctionner sur le courant alternatif mais la batterie ne sera plus chargée.

Localisez la ligne de communication, coupez-la, placez un interrupteur entre les deux. Chargez la batterie de votre ordinateur portable autant que vous le souhaitez, puis éteignez cet interrupteur. Votre ordinateur portable utilisera le courant alternatif mais votre batterie restera à la charge que vous lui avez laissée.

Voir cette réponse pour les niveaux de charge recommandés pour différents scénarios : https://superuser.com/a/664583/187576

Modifier

Apparemment, un inconvénient de cette approche est que l'ordinateur portable dégrade ses performances si aucun chargeur identifié n'est trouvé.

Cela peut ne pas être un problème pour une utilisation normale, mais si vous avez besoin de la puissance du processeur pour une conception 3D, les performances se dégradent sensiblement.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X