Comment compter les cycles de batterie?

14

Comme la plupart des utilisateurs qui ont cherché à savoir, la mise en œuvre ACPI des fabricants est un gâchis et pour la plupart de nos ordinateurs portables, les informations sur la batterie sont indisponibles ou erronées (sur un Dell Inspiron 15z, le taux est divisé par 10).

Existe-t-il un moyen (en utilisant un script perl / python / bash, un package existant ou autre) de consigner les cycles de batterie sur Ubuntu 12.04?

(qu'est-ce qu'un cycle de batterie?)

Un cycle de charge signifie utiliser toute la puissance de la batterie, mais cela ne signifie pas nécessairement une seule charge. Par exemple, vous pouvez écouter votre [appareil] pendant quelques heures par jour, en utilisant la moitié de sa puissance, puis le recharger complètement. Si vous faisiez la même chose le lendemain, cela compterait comme un cycle de charge, pas deux, vous pouvez donc prendre plusieurs jours pour terminer un cycle. Chaque fois que vous terminez un cycle de charge, cela diminue légèrement la capacité de la batterie, mais vous pouvez soumettre [la batterie de l'appareil] à de nombreux cycles de charge avant qu'ils ne conservent que 80% de la capacité d'origine de la batterie. Courtoisie Apple

Mon ordinateur portable est un Clevo W150HRM, et quand je le fais: J'obtiens cat /sys/class/power_supply/BAT0/cycle_count : 0 Mon ordinateur portable a 2 ans.

Merci d'avance.

The_guy_with_a_laptop
la source
les compteurs ne sont pas durs. quelles données pouvez-vous utiliser pour compter?
grantbow le
Bien sûr, les compteurs sont difficiles! Ils sont stockés sur le firmware de la batterie. (Oui, les batteries ont des firmwares)
Bahaïka

Réponses:

1

Je viens d'examiner votre question ... il est donc peut-être trop tard pour vous répondre, car cela fait des années que vous la publiez.

Vous utilisez un ubuntu plutôt ancien qui est connu / était connu à l'époque pour avoir des problèmes dans ce domaine spécifique.

Cependant, je vous encourage à voir cette question: comment vérifier l'état de la batterie à l'aide du terminal?

La réponse de Lekensteyn est le début de ce que vous recherchez.

Comme vous pouvez le voir dans la réponse, la question évolue avec la version du noyau et donc la solution ...

Pour être plus précis et reprendre vos conditions (obtenir le statut et Ubuntu 12.04), vous avez besoin de upower dans votre système et pouvez créer un script comme:

#!/bin/sh
DATE=$(date +%Y-%m-%d:%H:%M:%S)
STATE=$(upower -i /sys/class/power_supply/BAT0 | awk '/state/ {print $2}')
echo "$DATE $STATE" >> /var/log/battery_status.log

Ensuite, ajoutez-le dans une boucle de processus de surveillance ... ou une crontab.

Il pourrait avoir besoin du privilège root (sudo)

J'espère que cela t'aides.

Antoine Rodriguez
la source
J'ai essayé, $ STATE revient vide. même en exécutant la ligne séparément. Que manque-t-il? ys GCP
GCP420