Автоматически ограничивать (останавливать) зарядку аккумулятора при заданном проценте

11

Устройство: Moto X Play (Rooted, Stock, Android 6.0.1, msm8916 Board, XT1562)

Почему я хочу ограничить зарядку?

(Давайте не будем указывать, действительны ли мои причины или нет, и примите то, что я хочу , если вы не согласны с моими причинами)

Чтобы увеличить срок службы батареи, я хочу ограничить зарядку, когда она достигает 90%, как объясняется здесь. Идеальный процент зарядки / разрядки для максимального срока службы батареи?

Является ли это возможным?

Да, по крайней мере, на моем предыдущем устройстве Honor 6, как показано здесь. Как мне изменить ток зарядки на Huawei Honor 6? с двумя разными способами сделать это

Я безуспешно пытался определить, ответственный за файл, в котором изменение значений будет ограничивать заряд

Я ищу системный файл, отвечающий за прекращение зарядки, с его истинным путем (без символических ссылок)

(как я видел на моем предыдущем устройстве, найти путь к файлу было большой проблемой после его идентификации)


beeshyams
источник
1
Я знаю, что вы здесь очень опытны, но это может быть проблемой XY, и было бы полезно указать, какова ваша главная цель - увеличение срока службы батареи? беспокоитесь о взрывах? - поэтому мы все можем попытаться помочь вам в этом.
owlswipe
Почему вы настаиваете на том, чтобы здесь не было символических ссылок? Файлы, связанные с энергопотреблением, удобно обозначены /sys/class/power_supply/практически во всех системах Linux, которые я видел. Зачем вам нужно найти их, например, в дереве i2c?
Дмитрий Григорьев
@DmitryGrigoryev Хороший вопрос с простым ответом. Я не разбираюсь в Linux и не понимаю - поэтому я хотел знать место, откуда я могу напрямую ими манипулировать, как я делал в своем ответе :-)
beeshyams
Теперь есть Chargie - USB-флешка + Android-приложение, которое ограничивает внешнюю зарядку. Просто установите флешку между зарядным устройством и телефоном и используйте приложение, чтобы выбрать уровень заряда. Просто как тот. Ищите "зарядное устройство" в Google.
Овидиу Сандру

Ответы:

11

Хорошо, понял :)

  • Первое, что нужно отметить, на Honor 6, моем предыдущем устройстве, был один файл, с которым я мог поиграть, чтобы остановить зарядку автоматически

  • В Moto X play есть два разных файла - один для отключения зарядного устройства и другой для удаления символа зарядки (Другими словами, вы можете прекратить зарядку, и при этом символ подключенного зарядного устройства все еще отображается). До тех пор, пока я не понял это, я бегал кругами, так как я взял символ зарядки, чтобы показать, что зарядка происходит (и при условии, что я имел дело с неправильным файлом). Во время экспериментов, когда я заметил падение заряда, несмотря на отображение символа зарядки, я проверил приложение Ampere, и мудрость дошло!

Какие файлы?

( Edit: 30 Mar 20 Jackpot! Этот удивительный репозиторий файлов для различных устройств был найден разработчиком Advanced Charging Controller Magisk Module. Вам лучше использовать этот универсальный модуль, но если вы хотите сделать DIY, это хорошее начало).

Могут быть и другие файлы, но файлы, на которых я размещен, тоже:

  1. Для значка зарядки: /sys/devices/soc.0/78d9000.usb/power_supply/usb/online (для отключения значка измените значение файла с 0 to 1)

  2. Для зарядки: /sys/devices/soc.0/78b5000.i2c/i2c-1/1-001c/power_supply/battery/charging_enabled(Для отключения зарядки измените значение файла с 1 to 0)

Для автоматизации этого подход был аналогичен моему ответу с использованием Terminal Emulator и Macrodroid, как объяснено здесь - Как автоматизировать командную строку при запуске конкретного приложения?

Как я нашел файлы?

Невежественно , и я надеюсь, что кто-то отправит хороший путь. Вот способ, который может помочь вам в определении файла и пути

Предположения

  • Долгие часы в сети и некоторое кодирование на GitHub (которое я совсем не понимаю) указали мне на просмотр i2cи usbсвязанные файлы с именами, такими как charger_enabledили enable_charger. Это похоже на правду о Honor 6, Moto X и некоторых устройствах Nexus. Я понятия не имею, зависит ли это от чипсета или устройства

  • Истинный путь к этому файлу находится в /sys. Опять же, может отличаться

Следующие шаги

  • Выполните поиск charger enabledили enable_chargerили поиск по шаблону с похожими словами в/sys

  • Измените rwразрешения, чтобы разрешить изменение содержимого с 1на 0или наоборот

  • Подключите зарядное устройство и посмотрите значение в файле, отключите и повторите. Если значение изменяется, оно выглядит как правильный файл. Пока зарядное устройство подключено, измените значение в файле, и если зарядка прекратится, вы нажали на нее (более того, если путь находится в i2cкаталоге). Подтвердите с помощью приложения Ampere, чтобы подтвердить статус зарядки

  • Пока вы на нем, можете также скопировать оригинальные и измененные файлы в отдельный каталог в вашем хранилище. Необходим для автоматизации

  • Если ваше устройство похоже на мое, где зарядка может быть остановлена, но значок зарядки показывает, больше усилий, чтобы идентифицировать этот файл по ключевым словам типа onlineили connectedили ???

Если вам повезет, выше должно работать на вас


Так же, как дополнительная информация для потомков, ярлыки терминального эмулятора:

  • Для отключения зарядки и удаления значка зарядки

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

  • Для включения зарядного устройства и значка зарядки

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это папка, созданная на Internal SD, которая имеет оригинальные и измененные копии (для включения и отключения зарядки), и эти файлы копируются в систему. Конечно, требуется рут

beeshyams
источник
1
Я также хочу заряжать аккумулятор только до 85-90%. Я признаю, что ваш ответ впечатляет и хорошо задокументирован (и я проголосовал). Но это чертовски сложно сделать. Можно ли создать сценарий / приложение для достижения всего этого с меньшими усилиями? :)
Ultralisk
Кажется, есть приложение для этого. Я не привязал его ПОКА: android.gadgethacks.com/how-to/...
Ультралиск
@ FreeAndNil спасибо. 1. Есть приложение, уже связанное в примечании моего ответа здесь 2. Я не пробовал приложение, которое вы связали (спасибо за это), но если я не знаю, что с ним происходит, мне будет жаль 3. Я не я не знаю сценариев, но это можно легко преобразовать в сценарий, и Macrodroid также поддерживает сценарии
beeshyams
@FreeAndNil: проверено. Ваш источник указывает на то же приложение, на которое я ссылался - в последний раз я проверял форум разработчика XDA, скрипт не был открытым исходным кодом - может быть, это известно.
beeshyams
1
@beeshyams боюсь, что я "недостаточно заинтересован"; Извините, мне не хватает времени, чтобы исследовать источники в этом глубине.
Иззи
3

Теперь есть Chargie - USB-флешка + Android-приложение, которое ограничивает внешнюю зарядку. Просто установите флешку между зарядным устройством и телефоном и используйте приложение, чтобы выбрать уровень заряда. Просто как тот. Ищите "зарядное устройство" в Google.

Раскрытие информации: я генеральный директор Lighty Electronics. Мы разработали Chargie и хотели бы, чтобы люди, у которых возникла эта проблема, наслаждались нашим продуктом так же, как и мы. Нет спама, только решение проблемы.

Овидиу Сандру
источник
-4

Вы беспокоитесь о чем-то, а также сосредотачиваетесь на чем-то, что несущественно.

Большинство современных телефонов имеют встроенную технологию, которая автоматически прекращает зарядку на уровне от 90% до 100%.

Не покупайте на весь цикл зарядки Mumbo Jumbo. Если у вас есть хороший телефон, вы будете золотым 100% времени (если вы заряжаете свой телефон, когда он должен быть заряжен. Это означает, что не каждую ночь ). Я протестировал много, много телефонов и до сих пор не видел эту «теорию» цикла зарядки как верную.

Ваш телефон уже построен таким образом. Когда вы видите, что он заряжен на 100%, это не буквально его емкость. OEM-производители делают это, чтобы люди не перегружали устройства. (То есть, если у вас есть телефон, где OEM умный).

Также важно отметить, что общее использование телефона может разрядить вашу батарею через год. Срок службы батареи не вечен, независимо от того, насколько здоров ваш цикл зарядки. Это зависит от того, как вы используете устройство, какие приложения вы загружаете и как они взаимодействуют с вашим аккумулятором (потребление) и т. Д.

В любом случае, вы можете использовать Safe Charge , приложение из Google Play, чтобы уведомлять вас, когда зарядка превышает определенный процент.


источники

Помимо шестилетнего опыта, который сам по себе невелик, вот несколько соответствующих статей.

Есть также множество форумов с участием сверстников с людьми, которые имеют многолетний опыт, которые проверили эту теорию, и оказались ложными. Устройства обрабатывают заряды самостоятельно и останавливаются при необходимости.

Майк Куплеватский
источник
1
Давайте предположим, что я хочу по любой причине, и мне нужен способ для этого 2. Мне не нужно дополнительное приложение, чтобы уведомить меня, я могу легко сделать это с помощью приложения автоматизации Macrodroid, которое я использую. Ваш ответ в данной форме бесполезен
beeshyams
4
Большинство современных телефонов имеют встроенную технологию, которая автоматически прекращает зарядку на уровне от 90% до 100%. - Можете ли вы подтвердить это какими-либо доказательствами?
beeshyams
2
Возможно, вы захотите прочитать ссылки, которые вы публикуете в качестве доказательства, это цитата из единственной технически подробной: «Как мы указывали ранее [со ссылкой на целую статью доказательств], если вы хотите продлить жизнь батареи, вы хотите, чтобы она постоянно находилась на уровне 40-80%. " Факт заключается в том, что между временем зарядки и сроком службы батареи существует компромисс, и только первый из них появляется в спецификациях и рекламе устройства, так что, по вашему мнению, производитель определит по приоритетам? Доказательства указывают на 40% для хранения, а цикличность 75-65% является оптимальным диапазоном использования.
Крис
4
Веселый: один из ваших источников (первый), который вы цитировали, на самом деле противоречит вам: «Как мы уже отмечали ранее, если вы хотите продлить срок службы вашей батареи, вы хотите, чтобы она постоянно оставалась на уровне 40–80%» , Кроме того, ваш источник говорит, что вы НЕ ДОЛЖНЫ заряжать свой телефон на 100% и что за ночь он будет заряжен на 100% !!!!!!
Ultralisk
3
А вот доверительный источник (не так, как те , предоставленных вами) , чтобы доказать , что вы неправ: batteryuniversity.com/learn/article/...
Ultralisk