Jak dostosować progi ładowania baterii laptopa?


13

Mój laptop to Lenovo T400, a system operacyjny to Ubuntu 12.04.

Nie byłem w stanie wyregulować progów dla rozpoczęcia i zakończenia ładowania akumulatora. Zauważyłem, że jego obecny początkowy próg ładowania wynosi około 40%, a zatrzymujący próg ładowania wynosi około 60%. Zapomniałem, czy to ja i jakiego programu użyłem do sterowania akumulatorem, aby zatrzymać ładowanie na poziomie 60% i rozpocząć ładowanie na poziomie 40%.

Śledziłem mój poprzedni post /ubuntu/58789/how-to-check-charged-percentage-of-battery-and-to-adjust-its-thresholds , ale nie znalazłem /sys/devices/platform/smapi. Też mam /proc/acpi/battery/BAT0/, ale mam tylko trzy pliki alarm, infoa state.

Chcę dostosować progi. Zastanawiam się więc, jak to zrobić?


Spróbuj modprobe tp_smapijako root, a następnie sprawdź, czy istnieją pliki poniżej /sys/devices/platform/smapi.
Renan

@Renan: moduł nie został znaleziony FATAL: Module tp_smapi not found..
Tim

1
Zainstaluj tp_smapi zgodnie z instrukcjami tam: thinkwiki.org/wiki/…, a następnie spróbuj ponownie.
Renan

@Renan: Czy tp_smapi dotyczy tylko laptopów Lenovo? Czy moduły zarządzania ładowaniem baterii są różne dla laptopów różnych marek?
Tim

Niektóre laptopy Lenovo mają określone funkcje, do których tp_smapi daje dostęp. Nie wiem o innych markach, ale prawdopodobnie mają podobne narzędzia (mam laptopa Dell i widzę, że mam na przykład moduł dell_laptop i dell_wmi; nigdy go nie badałem, aby zobaczyć, co robi)
Renan

Odpowiedzi:


4

Musisz zainstalować tp_smapi-dkms, po prostu zrób

apt-get install tp_smapi-dkms

Po zakończeniu użyj, lsmod | grep tp_smapiaby sprawdzić, czy moduł jest załadowany, aby dostosować progi ładowania, zrób coś takiego

echo 40 > /sys/devices/platform/smapi/BAT0/start_charge_thresh
echo 60 > /sys/devices/platform/smapi/BAT0/stop_charge_thresh

Dodaj te linie, /etc/rc.localaby uruchomić je podczas rozruchu.

Ten moduł działa przynajmniej na X220.


Dla każdego, komu odmówiono pozwolenia, nawet z uprawnieniami sudo, spróbuj echo 60 | sudo tee /sys/devices/platform/smapi/BAT0/stop_charge_thresh.
Andrey Kaipov

8

Nowsze Lenovo ThinkPady (takie jak mój E540) nie są kompatybilne z tp_smapi-dkms. Na szczęście odkryłem, że narzędzie TLP może używać dowolnego z dwóch różnych modułów - modułu tp_smapi LUB modułów thinkpad_acpi DKMS - do przekazywania progów do akumulatora.

Obecnie TLP jest dostępne za pośrednictwem standardowych repozytoriów Ubuntu lub Debian. (Chociaż możesz skorzystać z najnowszej wersji dostępnej na stronie TLP, aby zainstalować pakiety.)

Po zainstalowaniu TLP ustaw progi ładowania akumulatora za pomocą dwóch wierszy w pliku konfiguracyjnym / etc / default / tlp

START_CHARGE_THRESH_BAT0=65
STOP_CHARGE_THRESH_BAT0=80

Ten przykład mówi TLP, aby ustawić progi baterii, aby rozpocząć ładowanie na 65% i zatrzymać ładowanie na 80%. Uważam, że progi utrzymują się poprawnie, nawet podczas uruchamiania w innym systemie operacyjnym, który nie ma zainstalowanej TLP. (Chociaż przypuszczam, że jeśli uruchomiłeś system Windows lub inny system operacyjny, w którym Mają zainstalowane narzędzia do zarządzania energią, ten system operacyjny może zastąpić wcześniej ustawione progi opłat).

Aby TYMCZASOWO doprowadzić akumulator do pełnego naładowania, wydaj następujące polecenie terminalu:

 $ sudo tlp fullcharge

Następnie akumulator naładuje się do maksymalnej pojemności, a następnie powróci do poprzednich progów.

Uwaga: jeśli Twój laptop nie jest urządzeniem „ThinkPad”, TLP prawdopodobnie nie może ustawić poziomu naładowania baterii . Jeśli twój dostawca dostarcza narzędzie do zarządzania energią dla systemu Windows, prawdopodobnie możesz uruchomić komputer za pomocą jakiejś formy systemu Windows, aby ustawić poziomy naładowania baterii, a następnie ponownie uruchomić system w systemie Linux. Z mojego doświadczenia wynika, że ​​ustawienia progu ładowania baterii utrzymują się po ponownym uruchomieniu systemu.


Działa to tylko w przypadku ThinkPadów, a co z innymi modelami?
Akronix,

@Akronix Uważam, że TLP można zainstalować na kilku różnych typach laptopów, a zależnie od sprzętu, oprogramowania układowego i architektury, zależy od różnych bibliotek. Dopiero niedawno uświadomiłem sobie różne biblioteki, ponieważ mój stosunkowo nowoczesny Lenovo używa TLP nieco inaczej niż starsze ThinkPady.
Tommy Trussell,

Jednak nie działa w moim Lenovo G-Series
Akronix

@Akronix musiałem wyglądać ... mój ThinkPad to E540. Postępując zgodnie z menu w witrynie support.lenovo.com , ustaliłem, że mój jest znany jako „Thinkpad z serii Edge”. Musiałem zwiedzać wiele witryn, zanim prawie cały sprzęt działał tak, jak chciałem (na przykład zrezygnowałem z czytnika linii papilarnych).
Tommy Trussell

1
@Akronix tak, nigdy nie uruchamiałem systemu Windows na moim. Prawdopodobnie nadal mam dyski, ale starałem się zachować „czystość”. Niestety, Lenovo najwyraźniej po cichu zrezygnował ze wsparcia dla Linuksa nawet na moim modelu, mimo że go kupiłem PONIEWAŻ był on „certyfikowany” dla Ubuntu i Red Hat.
Tommy Trussell

1

Na moim laptopie (Yoga 260) musiałem pobrać acpi-call-dkms, który zapewnia moduł jądra acpi_call:

sudo apt install tlp acpi-call-dkms
sudo tlp setcharge 40 60 #set the start and stop thresholds to 40% and 60%

Wyjście sudo tlp stat -b:

--- TLP 1.1 --------------------------------------------

+++ ThinkPad Battery Features
tp-smapi   = inactive (unsupported hardware)
tpacpi-bat = active

+++ ThinkPad Battery Status: BAT0 (Main / Internal)
/sys/class/power_supply/BAT0/manufacturer                   = SMP
/sys/class/power_supply/BAT0/model_name                     = 00HW027
/sys/class/power_supply/BAT0/cycle_count                    = (not supported)
/sys/class/power_supply/BAT0/energy_full_design             =  44000 [mWh]
/sys/class/power_supply/BAT0/energy_full                    =  37970 [mWh]
/sys/class/power_supply/BAT0/energy_now                     =  18910 [mWh]
/sys/class/power_supply/BAT0/power_now                      =      0 [mW]
/sys/class/power_supply/BAT0/status                         = Unknown (threshold effective)

tpacpi-bat.BAT0.startThreshold                              =     40 [%]
tpacpi-bat.BAT0.stopThreshold                               =     60 [%]
tpacpi-bat.BAT0.forceDischarge                              =      0

Charge                                                      =   49.8 [%]
Capacity                                                    =   86.3 [%]

Dlaczego 40 60? Czy ładowanie naprawdę zatrzymuje się na poziomie 60%? Dlaczego tam jest BAT0/status = Unknown- wydaje się dziwny.
hrvoj3e

@ hrvoj3e Właśnie wybrałem 40 60 jako przykład spójności z odpowiedzią stokrotki, ale powodem, dla którego możesz chcieć przestać ładować na 60%, jest to, że może on przedłużyć żywotność baterii: superuser.com/questions/502328/ ... „Nieznany” status to tylko to, co mówi, gdy nie ładuje się ani nie rozładowuje. Rozładowałem go do 49,8%, a następnie ponownie podłączyłem ładowarkę, a ponieważ wciąż jest powyżej progu początkowego, nie zacząłby się ładować.
takhisis

Dzięki za informację. Mój Yoga S740 nie działa z kontrolkami baterii acpi, ale ustawiłem powiadomienie w powłoce, ponieważ spędzam dużo czasu w terminalu. Następnie, gdy widzę, że jest powyżej / poniżej progu, ręcznie podłączam / odłączam ładowarkę.
hrvoj3e
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.