Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
laptop przestal usypiac przy niskim stanie baterii
konfiguracja wedlug tego:
https://wiki.archlinux.org/index.php/laptop
i o ile plik testujacy discharging sie tworzy
cat /etc/udev/rules.d/98-discharging.rules SUBSYSTEM=="power_supply", ATTR{status}=="Discharging", RUN+="/usr/bin/touch /home/przemo/discharging"
to juz samo usypianie przy niskim stanie baterii nie
cat /etc/udev/rules.d/99-lowbat.rules # Suspend the system when battery level drops to 5% or lower SUBSYSTEM=="power_supply", ATTR{status}=="Discharging", ATTR{capacity}=="10", RUN+="/usr/sbin/acpitool -s" SUBSYSTEM=="power_supply", ATTR{status}=="Discharging", ATTR{capacity}=="5", RUN+="/usr/sbin/pm-suspend" SUBSYSTEM=="power_supply", ATTR{status}=="Discharging", ATTR{capacity}=="2", RUN+="/usr/sbin/pm-suspend" SUBSYSTEM=="power_supply", ATTR{status}=="Discharging", ATTR{capacity}=="0", RUN+="/usr/sbin/pm-suspend"
z palca dziala i pm-suspend i acpitool -s
jakies pomysly????
Offline
W sumie to też chciałem sobie coś takiego zaimplementować i tak sobie patrzę i coś jest pochrzanione. xD
U mnie bateria wygląda tak:
root:~# udevadm info --path=/sys/class/power_supply/BAT0 P: /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0A:00/power_supply/BAT0 E: DEVPATH=/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0A:00/power_supply/BAT0 E: POWER_SUPPLY_CAPACITY=95 E: POWER_SUPPLY_CAPACITY_LEVEL=Normal E: POWER_SUPPLY_CHARGE_FULL=3465000 E: POWER_SUPPLY_CHARGE_FULL_DESIGN=3465000 E: POWER_SUPPLY_CHARGE_NOW=3326000 E: POWER_SUPPLY_CYCLE_COUNT=0 E: POWER_SUPPLY_MANUFACTURER=HP E: POWER_SUPPLY_NAME=BAT0 E: POWER_SUPPLY_PRESENT=1 E: POWER_SUPPLY_STATUS=Charging E: POWER_SUPPLY_TECHNOLOGY=Li-ion E: POWER_SUPPLY_VOLTAGE_MIN_DESIGN=12005000 E: SUBSYSTEM=power_supply
I napisałem w oparciu o te zmienne regułkę:
SUBSYSTEM=="power_supply", ENV{POWER_SUPPLY_STATUS}=="Discharging", ENV{POWER_SUPPLY_CAPACITY}=="95", RUN+="/usr/bin/acpitool --suspend"
Oczywiście jak bateria się rozładowała do 95%, nic się nie stało, a przy 94% wiedziałem, że już nic się nie stanie. xD
Jak było na 95% jeszcze to podłączyłem kabel i się laptop uśpił. xD Wybudziłem go i za chwilę zasnął znowu. xD I tak do chwili aż wybiło 96%.
Wychodzi na to, że nie ma triggera co by odpalał regułę hibernującą/usypiającą system. Dopiero w chwili podłączania/odłączania kabla taki trigger jest i to odpala regułę. Jak to fixnać to nie mam pojęcia ale też bym był ciekaw jak to rozwiązać.
Offline
mysle ze ten problem ma cos wspolnego z moim tabletem wacom ktory usypia system (modol wifi)
https://forum.dug.net.pl/viewtopic.php?pid=280643#p280643
obecnie po przeinstalowaniu wszystkich pakietow zwiazanych usypianie dziala ale tablet nie dziala jak trzeba tzn usypia system
na kernelu z repo jest ok .
nie moge wyciagnac konfiga z kernela na ktorym jest ok???
zcat /proc/config.gz > running.config gzip: /proc/config.gz: No such file or directory
Ostatnio edytowany przez pink (2014-12-30 13:57:53)
Offline
jak ktos ma dalej problemy z suspend i hibernacja to powrot do kernela 3.16 rozwiazal wszystkie problemy z wacom i usypianiem. happy new year.
Offline
Ja to sobie przez przypadek rozwiązałem przy pomocy upower. Gdzieś na necie wyczytałem, że ten upower potrafi zwracać czas potrzebny do rozładowania/naładowania baterii i dodatkowo potrafi podać ile wat pobiera laptp. W sumie to wygląda tak:
morfik:~$ upower -i /org/freedesktop/UPower/devices/battery_BAT0 native-path: BAT0 vendor: HP power supply: yes updated: Sun 25 Jan 2015 05:43:35 AM CET (85 seconds ago) has history: yes has statistics: yes battery present: yes rechargeable: yes state: charging warning-level: none energy: 4.08614 Wh energy-empty: 0 Wh energy-full: 46.2249 Wh energy-full-design: 38.1721 Wh energy-rate: 37.7147 W time to full: 1.1 hours percentage: 9% capacity: 100% technology: lithium-ion icon-name: 'battery-caution-charging-symbolic' History (charge): 1422161015 9.000 charging History (rate): 1422161015 37.715 charging
Czyli w tej chwili laptop pobiera prawie 38W i naładuje baterię za 1h. Ale nie o tym chciałem. xD Ten upower potrafi zainicjować akcję jeśli zostanie osiągnięty pewny pułap rozładowania akumulatora. To ile % i jaką akcję podjąć można sprecyzować w /etc/UPower/UPower.conf :
... PercentageLow=10 PercentageCritical=3 PercentageAction=2 ... CriticalPowerAction=HybridSleep
I to jest ciekawy bajer, bo ten upower wykrywa faktyczny stan rozładowania akumulatora i nawet jeśli jest podjęcie akcji przy 2%, to u mnie akumulator się rozładował do 0 i wisiał tak dobre 40min jeszcze i akcja nie została podjęta. xD Ale laptop nie zdechł z braku zasilania. Na jakieś 2-4min przed utratą zasilania, zainicjował to hybrydowe uśpienie, które polega na zrzuceniu kopi zawartości pamięci do swap i zwyczajnym uśpieniu maszyny, bez hibernowania jej. I system będzie sobie tak siedział na tej resztce baterii i jeśli przed jej wyczerpaniem się podłączy zasilacz, to komputer wystartuje od razu z danych które są jeszcze w RAM, jeśli nie da rady podłączyć kabla i system zdechnie, to wtedy wystartuje tak jak przy hibernacji czyli przerzuci swap do ram. I to działa wyśmienicie. xD
Offline
jeszcze jedna ciekawostka z pm-suspend
cat /etc/udev/rules.d/99-lowbat.rules # Suspend the system when battery level drops SUBSYSTEM=="power_supply", ATTR{status}=="Discharging", ATTR{capacity}=="7", RUN+="/usr/sbin/pm-suspend" SUBSYSTEM=="power_supply", ATTR{status}=="Discharging", ATTR{capacity}=="5", RUN+="/usr/sbin/pm-suspend" SUBSYSTEM=="power_supply", ATTR{status}=="Discharging", ATTR{capacity}=="3", RUN+="/usr/sbin/pm-suspend"
przy 7% nic ale przy 5% dziala.
Offline