Asus battery health charging linux

Установите пороги батареи на Ubuntu (ASUS)

Я недавно переключился с Windows на Ubuntu, и я был немного расстроен, когда узнал, что в Linux нет способа установить пороги батареи. В Windows я могу ограничить заряд до 60% (ноутбук перестает заряжаться при 60% и возобновляет заряд при 58%, чтобы продлить срок службы батареи). Я попытался настроить ту же процедуру с tlp, но она работает только на Lenovo ThinkPads. Мой компьютер — ASUS VivoBook S14, у меня двойная загрузка Windows 10 — Ubuntu 16.04.

Я хотел знать, есть ли какое-нибудь программное обеспечение, которое может контролировать заряд батареи? Или, может быть, способ использовать tlp для установки порогов батареи?

5 ответов

Чтобы перестать заряжаться на 60%, использую

echo 60 | sudo tee /sys/class/power_supply/BAT0/charge_control_end_threshold 

В настоящее время мой аккумулятор разряжен на 63%, поэтому он не заряжается (индикатор питания белый). Если я запустил указанную выше команду с 70 вместо 60, он снова начнет заряжаться (индикатор питания станет красным).

Этот параметр теряется при перезагрузке компьютера. Чтобы сделать его постоянным, я добавил

@reboot root echo 60 > /sys/class/power_supply/BAT0/charge_control_end_threshold 

Мой ноутбук — это Asus Zenbook, работающий под Ubuntu 20.04 LTS, но, возможно, это может работать и для других брендов / дистрибутивов — изучите, что у вас есть под /sys/class/power_supply/ .

Я написал приложение командной строки, которое делает это.

Самый простой способ начать — скачать приложение со страницы релизов и запустить

из терминала в каталоге, где он находится, что должно показать справочную документацию.

Если есть ошибка, это может быть связано с разрешениями. Следующая команда может решить проблему.

распечатает текущий порог.

Чтобы установить новый порог, скажем, 60%, запустите

Чтобы сохранить текущий порог между перезапусками, запустите

Примечание. Persisting использует systemd под капотом, но он входит в состав большинства дистрибутивов Linux, включая Ubuntu.

Совет: поместите приложение в каталог, например /usr/local/bin/ это в $PATH позволит вам запускать его из любого места, а не только из каталога, в котором находится приложение. Затем приведенные выше команды становятся,

У меня был Asus X405UQ, который шел с этим приложением Battery Health Charging, которое контролирует порог зарядки. Но поскольку я использую только Windows 10 для игр, я настроил свою рабочую среду и установил двойную загрузку Ubuntu 18.04 в Windows 10. Я подключаю свой ноутбук всякий раз, когда есть доступное питание переменного тока, и оно остается подключенным, когда я работаю. Я использую батарею, только если я работаю в длительных поездках, поэтому я искал подобное приложение для Linux. Я узнал, что драйвер для этой работы зависит от поставщика, и что у Asus нет поддержки драйверов для Linux, как у Thinkpads с TLP. (в следующий раз я буду покупать Thinkpads вместо этого).

Читайте также:  Usb redirector linux установка

Но я обнаружил, что загрузка в Windows и установка порога зарядки до 60% перед перезагрузкой в ​​Ubuntu 18.04 (без выключения или выключения) сохранят порог зарядки. Даже при том, что я отключил адаптер питания и позволил ему разрядить аккумулятор, подключив его снова, он заряжается до 59% или 79% в зависимости от предварительно установленного порога (он всегда на 1% меньше указанного порогового уровня). Он вернется в исходное состояние (заряжается до 100%), если я выключу свой ноутбук, отключу адаптер, включу его и загрузлю Ubuntu напрямую, не переходя сначала на Windows, или если я установлю его на 100% с помощью приложения батареи в винде.

Я был счастлив с этой настройкой, так как это лучше, чем вообще не иметь никакого контроля порога. Тем не менее, мой ноутбук вернулся в магазин для ремонта (прерывистое соединение Wi-Fi на полосе 5 ГГц), а когда я его получил (восстановил заводские настройки по умолчанию, Ubuntu удалил) и снова установил Ubuntu 18.04, функция которого больше не сохраняется.

Я пытался обновить ядра Ubuntu, но безрезультатно. Когда я попытался обновить BIOS, я обнаружил, что одна установленная версия 305 на момент написания этой статьи еще не существовала на странице поддержки Asus (некоторые форумы говорят, что за это отвечает обновление Microsoft), а самая последняя версия была выпущена 304 Я пытался загрузить WinFlash с сайта Asus, но понижение BIOS с помощью трюка /nodate не работает.

Решение, которое сработало для меня:

  1. Скачайте Asus WinFlash 3.0.1 и установите его. Не используйте последнюю версию 3.2.5 или выше, так как она больше не поддерживает параметр /nodate. Я полагаю, что последнее обновление BIOS устраняет некоторые из уязвимостей, и они не хотят, чтобы вы понизили версию BIOS, но для меня гораздо важнее время автономной работы.
  2. Понизьте версию BIOS до 302. Модель вашего ноутбука может отличаться, поэтому выбирайте в соответствии с моделью вашего ноутбука. Разархивируйте файл BIOS.
  3. Введите «WinFlash» в меню «Пуск». Щелкните правой кнопкой мыши значок WinFlash и выберите «Открыть местоположение файла». Откроется проводник Windows с ярлыками меню «Пуск». Щелкните правой кнопкой мыши ярлык WinFlash и выберите свойства. В крайнем левом конце пути назначения, после двойных кавычек, добавьте пробел, затем введите «/nodate» без кавычек. Конечный результат будет выглядеть так: «C:\Program Files (x86)\ASUS\WinFlash\WinFlash.exe» /nodate
  4. Запустите WinFlash, используя этот измененный ярлык, и выберите загруженный файл BIOS. Кнопка Обновить больше не должна быть серой. Нажмите «Обновить», после чего он попросит перезагрузить компьютер, чтобы он мог перепрограммировать BIOS. Убедитесь, что вы подключены к сети или у вас высокий уровень заряда батареи.
  5. Ноутбук войдет в экран BIOS, и вы увидите индикатор прогресса. Мой ноутбук дважды перезагружался во время процесса. Сначала я разрешил ему загрузиться в Windows, затем перезапустил его и ввел настройки BIOS, чтобы отключить безопасную загрузку (чтобы разрешить загрузку Ubuntu 18.04). В этот момент, если ваш пороговый уровень ниже текущего уровня заряда аккумулятора, вы должны заметить, что светодиодный индикатор питания на ноутбуке становится белым, а не желтым, указывая на то, что аккумулятор больше не заряжается. Это должно сохраниться, даже если вы перезагрузили свой ноутбук перед загрузкой в ​​Ubuntu
Читайте также:  Geforce 320m linux driver

Источник

Saved searches

Use saved searches to filter your results more quickly

You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.

Asus Battery Health Charging for Linux.

RahulPalXDA/asus_battery_health_charging

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Sign In Required

Please sign in to use Codespaces.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching Xcode

If nothing happens, download Xcode and try again.

Launching Visual Studio Code

Your codespace will open once ready.

There was a problem preparing your codespace, please try again.

Latest commit

Git stats

Files

Failed to load latest commit information.

README.md

Asus Battery Health Charging for Linux.

we all know about Asus’s Battery Health Charging feature More Info Here
In short it’s stops charging current at a battery percent & Allows us to save our battery from overcharge & maintain battery health. This is the Same thing using Linux kernel threshold 🙂

Asus Battery Health Charging

wget https://raw.githubusercontent.com/RahulPalXDA/asus_battery_health_charging/master/Health_Charging.sh && sudo mv Health_Charging.sh /usr/bin/Health_Charging && sudo chmod 777 /usr/bin/Health_Charging

just run Health_Charging in your terminal than you will get it by your own.

Tested in Asus x505za ( AMD Ryzen 2500U ) running arch linux , kernel: 5.10.84-1-lts

About

Asus Battery Health Charging for Linux.

Источник

How to enable Asus Laptop Battery Health Charging (Charging Threshold) in Linux Based OS?

Asus Battery Health Charging on Linux

Most of Asus laptops have a preinstalled program called Asus Battery Health Charging. In recent laptops this feature is integrated in MyAsus application. Using this feature users can set charging threshold to 60% when they use it on AC power. Laptop will maintain 60% charge when connected to AC power. This feature reduces laptop heating and improves performance. But, most important of all, it extends the life of the laptop battery.

Читайте также:  What is gnome desktop in linux

Although it’s a great feature to have, it is limited to Windows OS only. So, users who want to shift to Linux OS (like Ubuntu, Linux Mint, Elementary OS, Pop OS etc.) for better performance or due to other reasons will face a great disappointment. In a way, it will discourage users to use Linux on their Asus Laptops.

Even though there is no official support by Asus for Linux Operating Systems, there is an easy way to enable Asus Battery Health Charging or in common language battery charging threshold in Linux operating systems. In this post I will be discussing the whole process to enable the same.

However, a side note, this method will work on most of the Linux based OS’s and has been tested on latest versions of Ubuntu and other Ubuntu based OS (Kubuntu, Lubuntu, Xubuntu etc.), Linux Mint, PopOS, Elementary OS and Zorin OS.

Video Tutorial

First Step

Make sure that your system is up to date. If not sure, then try running this command in the terminal:

(This command will update your system.)

Then, open file manager and navigate to system partition >> sys/class/power_supply/ and check if you have BAT1 folder or BAT0 folder. (The Asus laptop I tested had ‘BAT1’ folder.)

Location: sys/class/power_supply

Then open that folder and open the file named ‘charge_control_end_threshold’.

Location: sys/class/power_supply/BAT1

charge_control_end_threshold file

You will notice that the ‘charge_control_end_threshold’ file contains the value ‘100’. This denotes the charging threshold, which means the battery will charge upto 100% before coming to an equilibrium with the AC power supply.

This is file that tells the system about the charging threshold point. To enable health charging we have to set the charging threshold to 60%, that means we have to change the value of this file from 100 to 60.

We can change the value by simply running the following command in the terminal:

Linux terminal 1

This method works but, it is not a permanent solution as it will revert back to it’s default value i.e. 100 after reboot. So, you have to run this command every time the laptop restarts.

Second Step

So, to make it permanent we have to run this command at every startup. To achieve that we have to add this command to the /etc/crontab file. (In linux, using crontab we can run different activities at different instances. In this case we shall run the command at reboot.)

Источник

Оцените статью
Adblock
detector