Manjaro Linux - Forum Italiano

Batteria laptop - Script per mantenere il livello fra 40% e 80 %

0 Utenti e 1 Visitatore stanno visualizzando questo topic.

GianT

Buongiorno. Se ho ben capito, per prolungarne la vita, le batterie dei portatili non dovrebbero mai essere del tutto scariche o caricate fino al massimo. Ho visto che su Windows il mio laptop Asus mi dà la possibilità di settare la carica massima all'80%. Ho dunque cercato qualcosa di analogo nel sistema Manjaro, ma non mi sembra di averlo trovato (c'è in AUR un programma "batterylife" che dovrebbe avvertire quando la carica è sotto al 40% o sopra l'80%, lo ho installato, ma non mi sembra funzionare; o meglio, io non riesco a farlo funzionare).
In attesa di trovare una soluzione stabile, ho creato un piccolo script: molto rozzo (lo ha scritto un non esperto), ma, per quanto mi sembra di vedere, funzionante. Lo condivido, magari interessa a qualcuno.

1) Ho creato nella cartella $HOME/script il seguente script "battery.sh":
Codice: [Seleziona]
#!/bin/bash

exec >/dev/null
exec 2>/dev/null

(
while true; do

INF=`acpi`
BAT=`echo $INF | cut -d ' ' -f4 | sed -e 's/,//g' | sed -e 's/%//g'`
STAT=`echo $INF | cut -d ' ' -f3 | sed -e 's/,//g' `
if [ "$BAT" -ge 80 -a "$STAT" = "Charging" ]
then zenity --info --text "SCOLLEGA L'ALIMENTATORE"
elif [ "$BAT" -le 40 -a "$STAT" = "Discharging" ]
then zenity --info --text "COLLEGA L'ALIMENTATORE"
else sleep 10
fi

sleep 10
done
)&

2) nel file $HOME/.profile ho inserito la riga "sh $HOME/script/battery.sh" per fare in modo che il programma si avvii in automatico al login.

Se avviene la condizione per cui il laptop è in carica e supera l'80% oppure se è non alimentato e scende sotto il 40%, si apre a video una finestra che dice, rispettivamente, di scollegare o collegare l'alimentatore. Se lo faccio, il messaggio non arriva più.

Ecco, attendo il parere di qualcuno di esperto su questa rozza soluzione; oppure, se possibile, su una soluzione migliore (ad esempio, su come fare funzionare "batterylife").
Grazie, un saluto.
« Ultima modifica: Luglio 31, 2020, 12:33:53 am da GianT »

Cubanpit

  • *****
  • 3033
Re:Batteria laptop - Script per mantenere il livello fra 40% e 80 %
« Risposta #1 il: Luglio 31, 2020, 09:52:11 am »
Se lo inserisci tra i programmi all'avvio non c'è bisogno di creare una subshell in background all'interno dello script.
Userei "$(comando)" invece di `comando`, che funziona sempre, qualunque sia il comando.
Infine, sono abbastanza sicuro che nel giro di poco tempo cambierai l'attesa da 10 secondi a qualche minuto, altrimenti se non hai il caricatore vicino impazzisci.
Poi aggiungerei un po' di indentazione, ma è una questione di stile.  ;D

La soluzione 'corretta' sarebbe avere il computer che smette di caricarsi e utilizza la corrente dalla presa invece che dalla batteria (alcuni portatili di fascia 'enterprise' lo fanno), con il metodo che usi stai dando per scontato che caricare ripetutamente la batteria tra il 40% e l'80% sia meglio che farla stare al 95%-100% senza caricare né scaricare, non so se sia dimostrato.
Questo metodo ha senso con uno smartphone, perché non puoi usarlo connesso alla corrente, almeno non la maggior parte del tempo.
Il mio portatile lo uso solo ogni tanto sconnesso dalla corrente, ma raramente la batteria è in carica, perché non si avvia la carica finché non scende sotto il 95%, la batteria per i primi due anni si è mantenuta molto bene (93% di capacità residua).

stonehenge

  • *****
  • 1907
  • Rolling User
Re:Batteria laptop - Script per mantenere il livello fra 40% e 80 %
« Risposta #2 il: Luglio 31, 2020, 07:14:29 pm »
Ciao
Interessante, anche se mi sembra strano che la batteria caricata al massimo sia un problema.
Secondo me è corretto non farla andare a zero ma è sbagliato non caricarla al massimo.
Il mio è ha 4 anni e la batteria è sempre al 100% di carica residua e lo metto in carica solo quando è al limite minimo 20% a volte anche meno e la carico al massimo.
La batteria caricata solo all'80% non solo ti perdi quasi un'ora di autonomia ma è più facile che si rovini.
Per essere efficienti devono lavorare sono fatte apposta.
Idem per i telefonini e per tutto ciò che ha una batteria o più di una.



 
Penso dunque sono acceso  :)
Rolling User: Manjaro 64bit Mate, KdePlasma,Xfce---PCLinuxOS 64 bit Mate
---------------------------------------------------------------
-Intel® Core™ i3-3217U CPU 1.80GHz×4 Intel 3rd Gen Core processor Graphics
-AMD E2-7110 APU-AMD Radeon R2 Graphics 4x1.8GHz 8gb ram

GianT

Re:Batteria laptop - Script per mantenere il livello fra 40% e 80 %
« Risposta #3 il: Luglio 31, 2020, 08:30:00 pm »
Grazie delle risposte. Non so, sulla questione della carica della batteria ci sono scuole di pensiero diverse, a questo punto. In effetti la mia idea nasce dal fatto che ho visto che in Windows mi dava questa possibilità di limitare all'80% la carica, e poi dal fatto che ho visto che in AUR c'è questo programma (che non riesco a capire come funziona) che aiuta a mantenere la carica tra 40% e 80%. Insomma, una idea del tutto estemporanea, che dalle vostre risposte sto mettendo molto in dubbio.
Grazie per i vostri contributi. Ciao.

stonehenge

  • *****
  • 1907
  • Rolling User
Re:Batteria laptop - Script per mantenere il livello fra 40% e 80 %
« Risposta #4 il: Agosto 01, 2020, 08:42:55 am »
Che la batteria lavori meglio tra l'80 e il 40% posso essere d'accordo, ciò non significa che non vada caricata o scaricata oltre.
Deve arrivarci all'80 non deve iniziare da li.
Compro una bottiglia da un litro, i primi 20cl li butto e quando è quasi finita faccio altrettanto. Per me non funziona cosi.
Poi la possiamo vedere in mille modi diversi ma la logica in questo caso dovrebbe guidarci.
« Ultima modifica: Agosto 01, 2020, 08:49:42 am da D-BARTO »
Penso dunque sono acceso  :)
Rolling User: Manjaro 64bit Mate, KdePlasma,Xfce---PCLinuxOS 64 bit Mate
---------------------------------------------------------------
-Intel® Core™ i3-3217U CPU 1.80GHz×4 Intel 3rd Gen Core processor Graphics
-AMD E2-7110 APU-AMD Radeon R2 Graphics 4x1.8GHz 8gb ram

Cubanpit

  • *****
  • 3033
Re:Batteria laptop - Script per mantenere il livello fra 40% e 80 %
« Risposta #5 il: Agosto 03, 2020, 10:34:13 am »
Le batterie a ioni di litio si usurano più velocemente se scaricate sotto il 20-40% (dipende dagli studi e dalle batterie) e se caricate fino al massimo (di solito si consiglia 80%), quindi per uno smartphone è consigliabile rimanere in questo intervallo con brevi cariche giornaliere.
Con un laptop secondo me non conviene provare una cosa simile "manualmente", ha senso avere un'applicazione (che però deve sfruttare qualche caratteristica già presente nella scheda madre) che smette di caricare all'80%, ma poi deve usare la corrente di alimentazione e non la batteria. I cicli di carica inutili sono probabilmente peggio che tenere la batteria carica al 100% mentre usi il portatile connesso alla corrente.

GianT

Re:Batteria laptop - Script per mantenere il livello fra 40% e 80 %
« Risposta #6 il: Agosto 06, 2020, 06:38:32 pm »
Grazie anche per questa risposta. Bene, mi pare di potere concludere che il mio script è dunque del tutto inutile (se non dannoso, a questo punto). Mi chiedo però ancora: dunque che senso ha la applicazione "batterylife" che si trova su AUR (e che comunque io non sono riuscito a capire come funziona)? Qualcuno ne sa qualcosa? Grazie.

Cubanpit

  • *****
  • 3033
Re:Batteria laptop - Script per mantenere il livello fra 40% e 80 %
« Risposta #7 il: Agosto 07, 2020, 10:39:36 am »
Mi sembra che l'utente che l'ha creato non sia proprio sicuro che funzioni, l'articolo che ha linkato nel suo post di presentazione è su una testata generalista.
Nemmeno io sono un esperto di batterie al litio, quindi la mia opinione vale quanto la sua.