Arrêter / démarrer la charge de la batterie via le logiciel?

20

Si un ordinateur portable est sous tension et connecté à l'alimentation secteur, existe-t-il un moyen d'émettre une commande lui disant de ne pas charger la batterie?

MODIFIÉ:
Peut - être que la charge de la batterie peut être arrêtée s'il y avait un moyen de tromper le système en lui faisant croire que la batterie est déjà chargée à 100%.

Sepero
la source
2
C'est possible - je sais que les ordinateurs Lenovo sont capables de le faire avec Windows chargé. Je ne sais pas s'il est possible de le faire avec Ubuntu.
cprofitt
1
Pouvez-vous expliquer pourquoi vous voudriez faire cela?
coteyr
J'ai une option BIOS pour le faire. Pas exactement ce que vous voulez, mais jetez-y un œil.
Timo
@coteyr: Ma question vaguement liée explique pourquoi il n'est pas idéal de toujours garder votre ordinateur portable chargé à 100%.
inoubliable

Réponses:

4

Sur les appareils Thinkpad, vous pouvez contrôler le démarrage et l' arrêt du chargement de la batterie dans Ubuntu. Exécutez ces commandes dans votre terminal pour installer tp-smapi:

sudo apt-get install tp-smapi-dkms
sudo modprobe tp_smapi

Ensuite, écrivez vos seuils de charge souhaités (vos propres valeurs) dans les fichiers virtuels dans /sys/devices/platform/smapi:

echo 10 | sudo tee /sys/devices/platform/smapi/BAT0/start_charge_thresh
echo 100 | sudo tee /sys/devices/platform/smapi/BAT0/stop_charge_thresh

Dans les commandes ci-dessus, vous pouvez remplacer les valeurs 10 et 100 par n'importe quelle valeur. La première vous aidera à choisir à quel niveau la charge doit commencer et la deuxième valeur vous permettra de choisir à quel niveau la charge doit s'arrêter .

krishna kaanthh
la source
2

Cela dépend fortement du matériel. La plupart des ordinateurs portables au niveau matériel ne vous permettront pas d'arrêter de charger la batterie. Les batteries LION bénéficient en fait d'un petit cycle de décharge-recharge, et la plupart des ordinateurs portables auront ce cycle intégré au niveau matériel.

Ce qui signifie que votre indicateur de batterie indique à 100% que la batterie se décharge et se recharge un tout petit peu pour la garder en bonne santé. De plus, pour la plupart des ordinateurs portables, 100% n'est pas plein.

Certains ordinateurs portables sous Windows ont une option pour "Désactiver la charge", mais ce n'était qu'un retour aux batteries NiCad. De nos jours, tout ce que "réglage" fait, c'est activer le mode "performance".

Si vous recherchez le même type de commutateur, je recommande Jupiter . Il vous permettra de passer facilement d'un mode de performance à l'autre sans contrôler directement la charge.

Parce que l'arrêt de ce cycle de charge est très mauvais pour les batteries actuelles, il n'est pas très populaire. Parce que ce n'est pas populaire, je doute que vous trouverez un bon outil GUI pour le faire. Votre meilleur pari pourrait être de regarder autour de vous dans des /sys/class/power_supply/BAT0zones similaires et de voir ce que vous pouvez trouver, mais je suis presque sûr que vous ne pourrez pas désactiver la charge.

coteyr
la source
2

Vous ne pouvez pas désactiver la charge à l'aide d'une interface logicielle connue depuis l'espace utilisateur. En l'état, les contrôles de batterie de /sys/class/power_supply/BAT0sont des lectures statiques et dynamiques renvoyées par les contrôles ACPI _BIF, _BIX et _BST, ils sont en lecture seule.

Il n'y a pas de contrôles ACPI qui vous permettent de désactiver la charge de la batterie et sur toutes les plates-formes mobiles x86 courantes sur lesquelles j'ai déjà travaillé, les contrôles de batterie ne sont pas exposés. Normalement, ces données proviennent d'une jauge de gaz de batterie et sont lues en utilisant le bit-banging i2c généralement par un contrôleur intégré. Vous avez donc très peu de chances de procéder à une rétro-ingénierie et la plupart ne permettent pas de désactiver la charge de la batterie.

Colin Ian King
la source
1

Dans la plupart des ordinateurs portables, c'est le contrôleur intégré qui en est responsable. Je vous suggère d'étudier le module ec_sys. modprobe ec_sys puis hexdump -C / sys / kernel / debug / ec / ec0 / io

vous verrez des différences lors du chargement et du déchargement. Il y a aussi des choses plus intéressantes à faire comme:

1) utilisez le courant alternatif (si connecté) 2) utilisez la batterie (même si le courant alternatif est connecté) 3) charge / décharge etc.

Zibri
la source
Vous pouvez également trouver une carte détaillée du contrôleur intégré dans le tableau DSDT acpi.
Zibri