Limiter (arrêter) automatiquement la charge de la batterie à un pourcentage donné

11

Appareil: Moto X Play (Rooted, Stock, Android 6.0.1, msm8916 Board, XT1562)

Pourquoi est-ce que je veux limiter la charge?

(Laissons de côté si mes raisons sont valides ou non et acceptons que je veuille , si vous n'êtes pas d'accord avec mes raisons)

Pour améliorer la longévité de la batterie, je souhaite limiter la charge lorsqu'elle atteint 90%, comme expliqué ici Pourcentage de charge / décharge idéal pour une durée de vie maximale de la batterie?

C'est possible?

Oui, au moins sur mon ancien appareil Honor 6, comme indiqué ici Comment puis-je remplacer le courant de charge sur Huawei Honor 6? , avec deux façons différentes de le faire

J'ai essayé en vain d'identifier le fichier responsable dans lequel la modification des valeurs limiterait la charge

Je recherche le fichier système responsable de l'arrêt de la charge, avec son vrai chemin (sans liens symboliques)

(comme je l'ai vu sur mon ancien appareil, localiser le chemin du fichier était un gros défi après l'avoir identifié)


beeshyams
la source
1
Je sais que vous êtes très expérimenté ici, mais cela peut être un peu un problème XY et il pourrait être utile d'indiquer votre objectif principal: une plus longue durée de vie de la batterie? inquiet des explosions? - alors nous pouvons tous essayer de vous aider.
owlswipe
Pourquoi insistez-vous sur "pas de liens symboliques" ici? Les fichiers liés à l'alimentation sont facilement liés à /sys/class/power_supply/presque tous les systèmes Linux que j'ai vus. Pourquoi avez-vous besoin de les localiser à l'intérieur, par exemple, de l'arbre i2c?
Dmitry Grigoryev
@DmitryGrigoryev Bonne question avec une réponse simple. Je ne suis pas connaisseur de Linux et je ne comprends pas - donc je voulais savoir où je peux les manipuler directement comme je l'ai fait dans ma réponse :-)
beeshyams
Il y a maintenant Chargie - un combo clé USB + application Android qui limite la charge externe. Installez simplement la clé entre le chargeur et le téléphone et utilisez l'application pour sélectionner le niveau de charge. Aussi simple que cela. Recherchez "chargie stick" sur Google.
Ovidiu Sandru

Réponses:

11

OK, j'ai compris :)

  • La première chose à noter est sur Honor 6, mon ancien appareil, il y avait un seul fichier avec lequel je pouvais jouer pour arrêter de charger automatiquement

  • Sur Moto X play, il existe deux fichiers distincts - l'un pour déconnecter le chargeur et l'autre pour retirer le symbole de charge (en d'autres termes, vous pouvez arrêter de charger et afficher le symbole de chargeur connecté). Jusqu'à ce que je m'en rende compte, je tournais en rond, car j'ai pris le symbole de charge pour montrer que la charge était en cours (et en supposant que j'avais affaire au mauvais fichier). Pendant l'expérimentation, lorsque j'ai remarqué une baisse de charge malgré l'affichage du symbole de charge, j'ai vérifié avec l' application Ampère et la sagesse est apparue!

Quels sont les fichiers?

( Edit: 30 mars 20 Jackpot! Trouvé ce formidable référentiel de fichiers pour divers appareils par le développeur du module Magisk Advanced Charging Controller . Vous feriez mieux d'utiliser ce module polyvalent mais au cas où vous voudriez bricoler, c'est un bon début).

Il peut y avoir d'autres fichiers, mais les fichiers sur lesquels j'ai hébergé sont également:

  1. Pour l'icône de charge: /sys/devices/soc.0/78d9000.usb/power_supply/usb/online (Pour désactiver la valeur de changement d'icône du fichier 0 to 1)

  2. Pour la charge: /sys/devices/soc.0/78b5000.i2c/i2c-1/1-001c/power_supply/battery/charging_enabled(Pour désactiver la charge, changez la valeur du fichier à partir de 1 to 0)

Pour automatiser cela, l'approche était similaire à ma réponse ici en utilisant Terminal Emulator et Macrodroid comme expliqué ici - Comment automatiser la ligne de commande quand une application spécifique est lancée?

Comment ai-je trouvé les fichiers?

Inélégamment , et j'espère que quelqu'un publie un bon moyen. Voici un moyen qui peut vous aider à identifier le fichier et le chemin

Hypothèses

  • De longues heures sur le net et un certain codage sur GitHub (que je ne comprends pas du tout) m'ont amené à regarder i2cet usbles fichiers associés avec des noms comme charger_enabledou enable_charger. Cela semble être vrai pour Honor 6, Moto X et certains appareils Nexus. Je n'ai aucune idée si cela dépend du chipset ou de l'appareil

  • Le vrai chemin de ce fichier est /sys. Encore une fois, peut varier

Prochaines étapes

  • Effectuez une recherche pour charger enabledou enable_chargerou une recherche générique avec des mots similaires dans/sys

  • Modifier les rwautorisations pour permettre de changer le contenu de 1la 0ou vice - versa

  • Connectez votre chargeur et voyez la valeur dans le fichier, déconnectez et répétez. Si la valeur change, elle ressemble au bon fichier. Pendant que le chargeur est connecté, changez la valeur dans le fichier et si la charge s'arrête, vous l'avez frappé (Plus encore, si le chemin est dans le i2crépertoire). Vérifiez avec l'application Ampere pour confirmer l'état de charge

  • Pendant que vous y êtes, vous pouvez également copier les fichiers originaux et modifiés dans un répertoire distinct de votre stockage. Nécessaire pour l'automatisation

  • Si votre appareil est comme le mien où la charge peut être arrêtée, mais l'icône de charge s'affiche, plus de détails pour identifier ce fichier par des mots clés comme onlineou connectedou ???

Si vous êtes chanceux, ce qui précède devrait fonctionner pour vous


Tout comme des informations supplémentaires pour la postérité, les raccourcis de l'émulateur de terminal sont:

  • Pour désactiver la charge et supprimer l'icône de charge

su –c "cp /storage/emulated/0/moto_charging/disable_charging/charging_enabled /sys/devices/soc.0/78b5000.i2c/i2c-1/1-001c/power_supply/battery/" ; su -c "cp /storage/emulated/0/moto_charging/no_symbol_charging/online /sys/devices/soc.0/78d9000.usb/power_supply/usb/"

  • Pour activer le chargeur et l'icône de charge

su -c "cp /storage/emulated/0/moto_charging/show_charging/online /sys/devices/soc.0/78d9000.usb/power_supply/usb/" ; su –c "cp /storage/emulated/0/moto_charging/enable_charging/charging_enabled /sys/devices/soc.0/78b5000.i2c/i2c-1/1-001c/power_supply/battery/"

moto_chargingest un dossier créé dans la SD interne qui contient des copies originales et modifiées (pour activer et désactiver la charge), et ces fichiers sont copiés dans le système. Bien sûr, nécessite root

beeshyams
la source
1
Je souhaite également recharger ma batterie jusqu'à 85-90%. J'avoue que votre réponse est impressionnante et bien documentée (et j'ai voté positivement). Mais c'est sacrément lourd à faire. Peut-on créer un script / application pour réaliser tout cela avec moins d'effort? :)
Ultralisk
Il semble y avoir une application pour le faire. Je ne l'ai pas encore attaché: android.gadgethacks.com/how-to/…
Ultralisk
@FreeAndNil merci. 1. Il y a une application déjà liée dans la note de bas de ma réponse ici 2. Je n'ai pas essayé l'application que vous avez liée (merci pour cela) mais à moins que je sache ce qui s'y passe, je serais chary 3. Je ne ' Je ne connais pas les scripts, mais cela peut être facilement converti en script et Macrodroid prend également en charge les scripts
beeshyams
@FreeAndNil: vérifié. Votre source pointe vers la même application que celle à laquelle j'ai lié - la dernière fois que j'ai consulté le forum XDA du développeur, le script n'était pas open source - peut-être, c'est connu.
beeshyams
1
@beeshyams a peur que je ne sois pas "assez intéressé"; Je manque plutôt de temps pour enquêter sur les sources dans cette profondeur, désolé.
Izzy
3

Il y a maintenant Chargie - un combo clé USB + application Android qui limite la charge externe. Installez simplement la clé entre le chargeur et le téléphone et utilisez l'application pour sélectionner le niveau de charge. Aussi simple que cela. Recherchez "chargie stick" sur Google.

Divulgation: je suis le PDG de Lighty Electronics. Nous avons développé Chargie et nous aimerions que les personnes qui ont eu ce problème apprécient notre produit autant que nous. Pas de spam, juste la solution au problème.

Ovidiu Sandru
la source
-4

Vous êtes préoccupé par quelque chose, tout en vous concentrant sur quelque chose, qui est inessentiel.

La plupart des téléphones modernes ont une technologie intégrée qui arrêtera automatiquement la charge à environ 90% à 100%.

N'achetez pas dans tout le cycle de charge mumbo jumbo. Si vous avez un bon téléphone, vous serez en or à 100% du temps (tant que vous rechargez votre téléphone lorsqu'il doit être chargé. Cela ne signifie pas tous les soirs ). J'ai testé de très nombreux téléphones et je n'ai pas encore vu cette "théorie" du cycle de charge comme vraie.

Votre téléphone est déjà construit comme ça. Quand vous voyez qu'il est chargé à 100%, ce n'est pas littéralement sa capacité. Les OEM font cela pour empêcher les gens de surcharger les appareils. (Autrement dit, si vous avez un téléphone où l'OEM est intelligent).

Il est également important de noter que l'utilisation générale du téléphone peut épuiser votre batterie dans un an. La survie de la batterie n'est pas éternelle, peu importe la santé de votre cycle de charge. Cela dépend de la façon dont vous utilisez l'appareil, des applications que vous téléchargez et de leur interaction avec votre batterie (consommation), etc.

Dans tous les cas, vous pouvez utiliser Safe Charge , une application de Google Play, pour vous avertir lorsque le chargement dépasse un certain pourcentage.


Sources

En plus de six années d'expérience qui ne suffisent pas à elles seules, voici quelques articles pertinents.

Il existe également de nombreux forums dirigés par des pairs avec des gens qui ont de nombreuses années d'expérience qui ont testé cette théorie, ce qui s'avère faux. Les appareils gèrent eux-mêmes les charges et s'arrêtent en cas de besoin.

Mike Kuplevatsky
la source
1
Supposons que je le veuille pour une raison quelconque et que j'ai besoin d'un moyen pour cela 2. Je n'ai pas besoin d'une application supplémentaire pour m'en informer, je peux le faire facilement en utilisant l'application d'automatisation, Macrodroid, que j'utilise. Votre réponse dans le présent formulaire est inutile
beeshyams
4
La plupart des téléphones modernes ont une technologie intégrée qui arrêtera automatiquement la charge à environ 90% à 100%. - pouvez-vous soutenir cela avec des preuves?
beeshyams
2
Vous voudrez peut-être lire les liens que vous publiez comme preuve, ceci est une citation de la seule techniquement détaillée: "Comme nous l'avons souligné précédemment [avec un lien vers un article entier de preuve], si vous voulez prolonger la durée de vie de votre batterie, vous voulez la garder entre 40% et 80% tout le temps. " Le fait est qu'il y a un compromis entre le temps entre les charges et l'endurance de la batterie, et que le premier apparaît dans les spécifications et les publicités de l'appareil, alors que pensez-vous que le fabricant priorisera? Les preuves semblent pointer à 40% pour le stockage et le cycle de 75 à 65% est la plage optimale d'utilisation.
Chris
4
HILAIRE: une de vos sources (la première) que vous avez citée vous contredit en fait: "Comme nous l'avons souligné précédemment, si vous voulez prolonger la durée de vie de votre batterie, vous voulez la garder entre 40% et 80% tout le temps" . De plus, votre source dit que VOUS NE DEVEZ PAS charger votre téléphone à 100% et que la nuit, il sera facturé à 100% !!!!!!
Ultralisk
3
Et voici une source fiable (pas comme celles que vous avez fournies) pour vous prouver le contraire
Ultralisk