Akku schonen

Aufladen des Smartphones automatisch mit Tasker stoppen

Es ist ja allgemein bekannt, dass man die „Gesundheit“ des integrierten Akkus in z. B. einem Smartphone schonen kann, indem man es unterlässt, dass das Gerät ständig auf 100% aufgeladen wird. Mittels Tasker kann man den Ladevorgang vorzeitig automatisch stoppen.

Ich vermeide es meistens, dass der Akku meines Smartphones voll aufgeladen wird. Nur wenn ich beispielsweise einen ganzen Tag lang unterwegs sein- oder eine Reise unternehmen sollte, lade ich das Handy auf 100% auf. Ich gehe davon aus, dass hierdurch (durch das vorzeitige Beenden des Aufladens) der Akku geschont werden kann, dass dieser möglichst lange seine ursprüngliche Kapazität aufrecht halten kann.

Für diesen Zweck gibt es bereits einige Apps. Aber ich habe ja ohnehin Tasker! Dadurch spare ich mir eine solche zusätzliche App bzw. muss nicht für jede Kleinigkeit weitere Software installieren.

Das sofortige Stoppen des Auflade-Prozesses gelingt unter Tasker ziemlich einfach bzw. die Logik ist sehr simpel. Zuvor noch der Hinweis: Dieser Vorgang ist nur möglich, wenn das Gerät gerootet ist. Man benötigt also Zugriff zur „Wurzel“ des Android-Systems.

Die Logik dahinter

Denn dort gibt es eine Datei, welche verändert werden muss: Bei meinem Smartphone ist es die Datei battery_charging_enabled und diese befindet sich tief versteckt im Android-System – genau genommen ist sie (bei mir) unter /sys/class/power_supply/battery/ zu finden. Bei Ihnen ist es vermutlich eine andere Datei (s. u.).

Diese Datei ist winzig klein: Sie enthält lediglich eine Ziffer: 1 oder 0. Enthält sie die Ziffer 1, kann das Smartphone aufgeladen werden. Enthält sie die Ziffer 0, wird der Ladevorgang abrupt gestoppt.

Hinweis: Bei manchen Geräten ist es genau anders herum – 0 heißt dort dann ja, 1 nein.

Man ahnt nun sicherlich schon, wie man dies mit Tasker kontrollieren- bzw. beeinflussen kann:

  1. Tasker fragt zunächst den derzeitigen Ladestand ab. Wenn dieser min. einen bestimmten Wert erreicht hat (z. B. 80%), dann folgt Schritt 2:
  2. Tasker bearbeitet die Datei „battery_charging_enabled“ direkt und schreibt dort eine 0 hinein.

Das war’s schon: Das Aufladen wird sofort gestoppt, obwohl das Smartphone noch am Ladegerät eingesteckt ist. Man wird dann merken, dass sich dieses recht schnell abkühlen wird: Es fließt kein Strom mehr.

Fällt der Ladezustand aber unter einen bestimmten Bereich (z. B. 70%) bemerkt dies Tasker und beschreibt die Datei erneut – jetzt wieder mit einer 1. Der Ladevorgang startet wieder (und wird bei 80% wieder stoppen).

Möchte man das Gerät zwischendurch mal wieder auf 100% aufladen, deaktiviert man einfach das entsprechende Profil. Tasker kann ja auch drei Schnellstart-Kacheln unter Android anlegen. Somit ließe sich dieses „Aufladen-Stoppen“-Profil auch bequem via Kachel (de-) aktivieren.

Werbung

Genaue Schritte

Man erstellt als erstes einen neuen Task mit dem Namen »Aufladen starten«:

Screenshot: Tasker-Task mit Shell-Aktion

Dort legt man (über den unteren Plus-Zeichen-Button) eine neue Aktion an „Shell Ausführen„. Hier muss man dann natürlich einen Befehl definieren und dieser lautet (bei mir):

su -c 'echo 1 > /sys/class/power_supply/battery/battery_charging_enabled'

Das bedeutet übersetzt: Nutze Root und überschreibe diese Datei mit einer neuen gleichen Namens und mit dem Inhalt 1. In den Aktionseinstellungen muss man außerdem das Häkchen bei „Benutze Root“ setzen. Der Rest kann unverändert bleiben.

Als nächstes erstellt man einen zweiten Task mit dem Namen »Aufladen stoppen«:

Screenshot: Tasker-Task mit Shell-Aktion

Dieser ist fast identisch mit dem anderen, nur dass hier der Shell-Befehl leicht abgewandelt ist:

su -c 'echo 0 > /sys/class/power_supply/battery/battery_charging_enabled'

Anstelle einer 1 wird hier also eine 0 geschrieben.


Jetzt hat man zwei Tasks: Aufladen starten und Aufladen stoppen. Mittels dem „Play-Knopf“ ▶ unter jedem Task kann man sie manuell testen. Tasker sollte hier keine Fehlermeldung ausgeben.

Man sollte sie als nächstes bei angestecktem Ladegerät testen: Der Ladevorgang sollte dann auch gestoppt- bzw. wieder fortgesetzt werden. Obacht: Bei manchen Smartphones wird trotz korrektem Stopp weiterhin das Aufladen-Symbol angezeigt. Hier heißt es dann zum Testen warten, ob sich der Ladestand erhöht.

Wenn die manuellen Tests erfolgreich waren, kann ein neues Profil mit dem Namen »Akkustand: Aufladen unterbinden« angelegt werden:

Screenshot: Tasker in der Profilansicht

Die Bedingung für dieses Profil ist der aktuelle Akkustand: Status › Laden › Akkustand. Man kann hier beispielsweise die beiden Werte 75 & 85 eintragen. Dann wird nur bis 85% geladen und das Aufladen erst wieder gestartet, wenn der aktuelle Akkustand unterhalb von 75% liegt.

Als Standard-Task für dieses Profil wird dann der vorher angelegte Task »Aufladen stoppen« verwendet. Als Ausgangstask (Bedingung trifft nicht mehr zu) wird der andere Task »Aufladen starten« verwendet.

Dateipfade leider häufig verschieden

Ich arbeite bei meinem Beispiel ja mit der Datei /sys/class/power_supply/battery/battery_charging_enabled (Xiaomi Redmi Note 11; mit Lineage 22.2 / Android 15).  Bei Ihrem Gerät kann bzw. wird vermutlich eine andere Datei relevant sein. Als erstes sollte man natürlich mit einem Root-Dateimanager (z. B. MIXplorer) im Android-System nachsehen, ob es eine entsprechende Datei auf dem eigenen Gerät überhaupt gibt.

Werbung

Es gibt hier – je nach Gerät – einen anderen Adressaten: Ich habe hierzu eine KI nach einer entsprechenden Tabelle gefragt und folgende Angaben erhalten:

Steuerdateien für die Android Ladeelektronik
Hersteller / ChipsetTypischer PfadWert für STOPPWert für LADENAnmerkung
Google Pixel (Allgemein)/sys/class/power_supply/battery/charging_enabled01Standard-Implementierung bei Pixel-Geräten.
Google Pixel (Alternativ)/sys/class/power_supply/battery/charge_disable10Invertierte Logik (1 deaktiviert das Laden).
Samsung (Viele Modelle)/sys/class/power_supply/battery/batt_slate_mode10Simuliert oft den „Retail Mode“, um das Laden zu verhindern und den Akku zu schonen.
Xiaomi / Redmi/sys/class/power_supply/battery/input_suspend10„Suspend“ unterbricht die Energiezufuhr vom USB-Port.
Xiaomi (Alternativ)/sys/class/power_supply/usb/input_suspend10Manchmal im usb Node statt im battery Node zu finden.
OnePlus / Oppo/sys/class/power_supply/battery/charging_enabled01Funktioniert oft nicht zuverlässig bei VOOC-Schnellladung, da diese Hardware-gesteuert ist.
Sony Xperia/sys/class/power_supply/battery/battery_charging_enabled01Sony hat oft zusätzlich charge_control_limit für Prozentbegrenzungen.
Motorola/sys/class/power_supply/charging_enabled01Pfad liegt manchmal direkt im Root von power_supply ohne Unterordner (selten).
Generic Linux Kernel/sys/class/power_supply/battery/statusRead-onlyRead-onlyDient nur zur Überprüfung. Status sollte auf „Discharging“ oder „Not Charging“ wechseln, wenn der Schreibvorgang erfolgreich war.

Diese Angaben sind natürlich ohne Gewähr und auf eigene Gefahr hin zu nutzen. Auf dieser Seite gibt es außerdem ein Script mit einigen Geräten, aus dem je ebenfalls ein Pfad hervor geht.

In meinen Aufzeichnungen fand ich noch diese beiden Pfade für zwei alte Smartphones von mir: /sys/class/power_supply/battery/device/enable_charge und /sys/class/power_supply/battery/charging_enabled. Und bei meinem aktuellen Samsung-Tablet (mit Lineage 22.2 / Android 15) lautet der Pfad /sys/class/power_supply/battery/batt_slate_mode (wie in der Tabelle angegeben). Dabei bewirkt hier der Wert 0 = Aufladen Starten und 1 = Aufladen stoppen.

Kurzum

Die Logik für Tasker zum vorzeitigen Beenden des Aufladens bei eingestecktem Ladegerät ist ziemlich einfach. Root muss natürlich vorhanden sein. Das Schwierige ist das Herausfinden des richtigen Pfades bzw. das Ermitteln der korrekten Steuer-Datei für das eigene Smartphone bzw. für die eigene Android-Rom.

Apropos: Viele Roms beinhalten mittlerweile in den Batterie-Einstellungen so eine Steuerung, um den Akku schonen zu können. Man muss sie dann nur aktivieren. So etwas gibt es bei einigen Custom Roms (wie ›crDroid‹) wie aber auch bei einigen Stock-Roms (bei Samsung z. B.). In diesem Fall wäre ein zusätzliches Tasker-Profil hierfür natürlich unnötig.

intelligenter Lade-Stopp bei einer Custom-Rom
Manche Android-Roms besitzen bereits in den Einstellungen versteckt eine entsprechende Ladekontrolle.

Und: Es gibt zudem spezielle Apps, die genau das Gleiche tun wie das hier vorgestellte Tasker-Profil. Einige dieser Apps (und eine Hardware-Lösung) stelle ich in diesem Beitrag vor → Aufladen von Android automatisch stoppen

Kommentar schreiben

Hier gibt es die Möglichkeit für Resonanz. Pflichtfelder sind mit * markiert.

Kommentare erscheinen nicht sofort bzw. werden manuell freigegeben. Mit dem Absenden des Formulars stimmen Sie der Datenschutzerklärung zu bzw., dass Ihre eingegebenen Daten gespeichert werden. IP-Adressen werden nicht gespeichert.