Limitar automaticamente (parar) o carregamento da bateria em uma determinada porcentagem

11

Equipamento: Moto X Play (Enraizado, Estoque, Android 6.0.1, msm8916 Board, XT1562)

Por que eu quero limitar a cobrança?

(Deixe de lado se meus motivos são válidos ou não e aceite o que quero , se você não concordar com meus motivos)

Para melhorar a longevidade da bateria, desejo limitar o carregamento quando atingir 90%, conforme explicado aqui Porcentagem ideal de carregamento / descarregamento para máxima duração da bateria?

É possível?

Sim, pelo menos no meu dispositivo anterior Honor 6, como apresentado aqui Como substituir a corrente de carregamento no Huawei Honor 6? , com duas maneiras diferentes de fazer isso

Tentei, sem êxito, identificar o arquivo responsável pelo qual a alteração de valores limitaria a cobrança

Estou procurando o arquivo do sistema responsável por interromper o carregamento, com seu caminho verdadeiro (sem links simbólicos)

(como eu vi no meu dispositivo anterior, localizar o caminho do arquivo foi um grande desafio depois de identificá-lo)


beeshyams
fonte
11
Sei que você tem muita experiência aqui, mas isso pode ser um problema XY e pode ser útil indicar qual é o seu principal objetivo - maior longevidade da bateria? preocupado com explosões? - para que todos possamos tentar ajudá-lo com isso.
owlswipe
Por que você insiste em "sem links simbólicos" aqui? Os arquivos relacionados a energia são convenientemente vinculados a /sys/class/power_supply/praticamente qualquer sistema Linux que eu já tenha visto. Por que você precisa localizá-los dentro, por exemplo, na árvore i2c?
Dmitry Grigoryev
@DmitryGrigoryev Boa pergunta com uma resposta simples. Eu não sou Linux mais experiente e não entendo - então eu queria saber o local de onde eu possa manipulá-los diretamente como eu fiz na minha resposta :-)
beeshyams
Agora existe o Chargie - um combo USB + aplicativo Android que limita o carregamento externo. Basta instalar o stick entre o carregador e o telefone e usar o aplicativo para selecionar o nível de carga. Simples assim. Procure por "chargie stick" no Google.
Ovidiu Sandru

Respostas:

11

Ok .. Entendi :)

  • A primeira coisa a observar é no Honor 6, meu dispositivo anterior, havia um único arquivo com o qual eu poderia brincar para parar de carregar automaticamente

  • No Moto X play, existem dois arquivos distintos - um para desconectar o carregador e outro para remover o símbolo de carregamento (em outras palavras, você pode parar de carregar e ainda exibir o símbolo conectado ao carregador). Até que eu percebi isso, eu estava correndo em círculos, desde que peguei o símbolo de cobrança para mostrar que a cobrança estava acontecendo (e assumindo que estava lidando com o arquivo errado). Ao experimentar, quando notei queda de carga apesar da exibição do símbolo de carga, verifiquei com o aplicativo Ampere e a sabedoria apareceu!

Quais são os arquivos?

( Edit: 30 Mar 20 Jackpot! Encontrei este incrível repositório de arquivos para vários dispositivos pelo desenvolvedor do Advanced Charging Controller Magisk Module. É melhor você usar esse módulo versátil, mas caso queira fazer DIY, é um ótimo começo).

Pode haver outros arquivos, mas os arquivos que eu abri também são:

  1. Para ícone de carregamento: /sys/devices/soc.0/78d9000.usb/power_supply/usb/online (Para desativar o ícone, altere o valor do arquivo 0 to 1)

  2. Para cobrança: /sys/devices/soc.0/78b5000.i2c/i2c-1/1-001c/power_supply/battery/charging_enabled(Para desativar a cobrança, altere o valor do arquivo 1 to 0)

Para automatizar isso, a abordagem foi semelhante à minha resposta aqui, usando o Emulador de Terminal e o Macrodroid, conforme explicado aqui - Como automatizar a linha de comando quando um aplicativo específico é iniciado?

Como eu encontrei os arquivos?

Deselegantemente , e espero que alguém poste um bom caminho. Aqui está uma maneira que pode funcionar para você na identificação do arquivo e caminho

Premissas

  • As longas horas na rede e algumas codificações no GitHub (que eu não entendo nada) me levaram a procurar i2ce usbarquivos relacionados com nomes como charger_enabledou enable_charger. Isso parece ser verdade para o Honor 6, Moto X e alguns dispositivos Nexus. Não faço ideia se é dependente de chipset ou dispositivo

  • O verdadeiro caminho desse arquivo está /sys. Novamente, pode variar

Próximos passos

  • Faça uma pesquisa por charger enabledou enable_chargerou um curinga com palavras semelhantes em/sys

  • Alterar rwpermissões para permitir alterar o conteúdo de 1a 0ou vice-versa

  • Conecte seu carregador e veja o valor no arquivo, desconecte e repita. Se o valor mudar, parece o arquivo certo. Enquanto o carregador estiver conectado, altere o valor no arquivo e, se o carregamento parar, você o atingiu (mais ainda, se o caminho estiver no i2cdiretório). Verifique com o aplicativo Ampere para confirmar o status da cobrança

  • Enquanto você está nisso, também pode copiar arquivos originais e modificados para um diretório separado em seu armazenamento. Necessário para automação

  • Se o seu dispositivo for como o meu, onde o carregamento pode ser interrompido, mas o ícone de carregamento é exibido, é mais fácil identificar esse arquivo por palavras-chave como onlineou connectedou ???

Se você tiver sorte, acima deve funcionar para você


Assim como informações adicionais para a posteridade, os atalhos do Terminal Emulator são:

  • Para desativar o carregamento e remover o ícone de carregamento

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/"

  • Para ativar o carregador e o ícone de carregamento

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_chargingé uma pasta criada no SD interno que possui cópias originais e modificadas (para ativar e desativar o carregamento) e esses arquivos são copiados no sistema. Claro, requer root

beeshyams
fonte
11
Também quero carregar minha bateria apenas de 85 a 90%. Admito que sua resposta é impressionante e bem documentada (e eu votei bem). Mas é muito complicado fazer isso. Um script / aplicativo pode ser feito para conseguir tudo isso com menos esforço? :)
Ultralisk
Parece haver um aplicativo para fazer isso. Ainda não
empatei
@FreeAndNil thanks. 1. Existe um aplicativo já vinculado na nota de rodapé da minha resposta aqui 2. Eu não tentei o aplicativo que você vinculou (obrigado por isso), mas, a menos que eu saiba o que há nele, eu ficaria chateado 3. Eu não ' t sabe scripting, mas isso pode ser facilmente convertido em script e Macrodroid suporte scripts também-
beeshyams
@FreeAndNil: marcado. Sua fonte está apontando para o mesmo aplicativo ao qual vinculei; por último, verifiquei o fórum XDA do desenvolvedor, o script não era de código aberto; talvez, saiba.
beeshyams
11
@beeshyams com medo de não ser "suficientemente interessada"; Sinto falta de tempo para investigar as fontes nessa profundidade, desculpe.
Izzy
3

Agora há o Chargie - um combo USB + aplicativo Android que limita o carregamento externo. Basta instalar o stick entre o carregador e o telefone e usar o aplicativo para selecionar o nível de carga. Simples assim. Procure por "chargie stick" no Google.

Divulgação: Eu sou o CEO da Lighty Electronics. Desenvolvemos Chargie e gostaríamos que as pessoas que tiveram esse problema desfrutassem tanto de nosso produto quanto nós. Sem spam, apenas a solução para o problema.

Ovidiu Sandru
fonte
-4

Você está preocupado com algo, além de se concentrar em algo que não é essencial.

A maioria dos telefones modernos possui tecnologia integrada que interrompe automaticamente o carregamento entre 90% e 100%.

Não compre em todo o ciclo de carga mumbo jumbo. Se você tiver um bom telefone, ficará dourado 100% do tempo (contanto que carregue o telefone quando ele precisar ser carregado. Isso significa que não todas as noites ). Eu testei muitos, muitos telefones e ainda não vi essa "teoria" do ciclo de carga como verdadeira.

Seu telefone já está construído assim. Quando você vê que é cobrado a 100%, não é literalmente sua capacidade. Os OEMs fazem isso para impedir que as pessoas sobrecarreguem os dispositivos. (Ou seja, se você tiver um telefone em que o OEM seja inteligente).

Também é importante observar que o uso geral do telefone pode esgotar a bateria dentro de um ano. A sobrevivência da bateria não é para sempre, não importa quão saudável seja o seu ciclo de carga. Depende de como você usa o dispositivo, quais aplicativos você baixa e como eles interagem com sua bateria (consumo) etc.

De qualquer forma, você pode usar o Safe Charge , um aplicativo do Google Play, para notificá-lo ao cobrar uma certa porcentagem.


Fontes

Além de seis anos de experiência, que por si só não são muito, aqui estão alguns artigos relevantes.

Também existem muitos fóruns orientados por colegas, com pessoas que têm muitos anos de experiência que testaram essa teoria, revelando-se falsas. Os dispositivos lidam com cargas por conta própria e param quando necessário.

Mike Kuplevatsky
fonte
11
Vamos supor que eu queira, por qualquer motivo e preciso de uma maneira para isso 2. Não preciso de um aplicativo adicional para me notificar, posso fazer isso facilmente usando o aplicativo de automação Macrodroid, que eu uso. Sua resposta no presente formulário é inútil
beeshyams 22/01
4
A maioria dos telefones modernos possui tecnologia integrada que interrompe automaticamente o carregamento entre 90% e 100%. - você pode apoiar isso com alguma evidência?
precisa saber é
2
Talvez você queira ler os links que postar como evidência, esta é uma citação do único detalhadamente tecnicamente: "Como apontamos anteriormente [com um link para todo um artigo de evidência], se você deseja prolongar a vida útil da sua bateria, você deseja mantê-la entre 40% e 80% o tempo todo. " Fato é que existe uma troca entre o tempo entre as cobranças e a resistência da bateria, e apenas a primeira aparece nas especificações e nos anúncios do dispositivo. Então, qual você acha que o fabricante priorizará? As evidências parecem apontar para 40% para armazenamento e o ciclo de 75 a 65% é a faixa ideal em uso.
Chris
4
HILARIOSO: uma que suas fontes (a primeira) que você citou realmente contradiz: "Como já dissemos antes, se você deseja prolongar a vida útil da sua bateria, mantenha-a entre 40% a 80% o tempo todo" . Além disso, sua fonte diz que NÃO DEVE cobrar 100% do telefone e que durante a noite será cobrado 100% !!!!!!
Ultralisk
3
E aqui é uma fonte confiável (não como os que você fornecidos) para provar que estão errados: batteryuniversity.com/learn/article/...
Ultralisk