Come gestire la carica della batteria sul notebook

Per evitare di far fare inutili cicli di carica-scarica alla batteria del notebook, deteriorando inutilmente le celle di carica, anche quando si ha la possibilità di una connessione alla rete elettrica, sarebbe auspicabile separare l'alimentazione della batteria da quella fornita dalla rete. Si hanno due possibilità:

1) staccare fisicamente la batteria dal laptop (pratica noiosa che comporta il problema di una eventuale caduta di tensione e conseguente spegnimento del pc);

2) separare a livello software la gestione di ricarica della batteria (in poche parole inibire la ricarica se non si supera una determinata soglia di scarica).

Delle due, la seconda!

L'idea è semplice: basta intervenire sulla configurazione del gestore carica/scarica fra il livello di interfaccia utente (il sistema operativo) e il BIOS attraverso il System Management BIOS e le API messe a disposizione dal sistema: SMAPI (System Management Application Program Interface).

Questo è, ovviamente gestito da un modulo del kernel ad-hoc differente per ogni laptop.

Questa breve guida è incentrata sul modulo tp_smapi per pc IBM/Lenovo Thinkpad. Ogni comando si riferisce alla configurazione su Ubuntu 11.04 "Natty Narwhal".

Cominciamo.

1) Installiamo i moduli (se non già presenti):
$ su
# apt-get update && apt-get install tp_smapi-source


2) Carichiamo il modulo nel kernel:
# modprobe tp_smapi
e verifichiamo il suo caricamento:
# lsmod | grep tp_smapi


3) Per vedere quali sono la soglia minima di carica (per la quale la batteria deve essere ricaricata) e quella massima (alla quale si smette di caricare la batteria):
# cat /sys/devices/platform/smapi/BAT0/*_charge_thresh


4) Ora, per modificare queste soglie:
# echo 50 > /sys/devices/platform/smapi/BAT0/start_charge_thresh
# echo 80 > /sys/devices/platform/smapi/BAT0/stop_charge_thresh
In questo caso si è scelto di caricare la batteria fino al 80% della carica totale se raggiunge un livello di scarica del 50%.



Ora facciamo in modo che il tutto sia configurato all'avvio del sistema. Cominciamo col rendere la configurazione permanente:

5) Installiamo:
# apt-get install sysfsutils


6) Aggiungiamo alla fine del file di configurazione le seguenti righe:
devices/platform/smapi/BAT0/start_charge_thresh = 10
devices/platform/smapi/BAT0/stop_charge_thresh = 40
oppure, in modo più veloce, da riga di comando:
# cat >> /etc/sysfs.conf << EOF
# For a LiIon battery in a Thinkpad
devices/platform/smapi/BAT0/start_charge_thresh = 10
devices/platform/smapi/BAT0/stop_charge_thresh = 40
EOF


7) Infine, carichiamo il modulo del kernel all'avvio:
# echo tp_smapi >> /etc/modules



In generale, le regole da seguire per aumentare le prestazioni della batteria sono poche:
  • ridurre i cicli di carica/scarica;
  • non utilizzare/ricaricare la batteria in condizioni di particolare riscaldamento (principalmente su piani inadatti, come le coperte);
  • mantenere la carica della batteria al di sotto del 50% della carica totale (per stressare meno gli ioni di carica all'interno delle celle).

Per una configurazione ottimale e per saperne di più sul funzionamento delle batterie a litio: How to prolong lithium based batteries.

[Fonte: http://www.thinkwiki.org/wiki/Tp_smapi#Installation_on_Ubuntu]