Fórum Ubuntu CZ/SK
Ubuntu pro osobní počítače => Hardware => Notebooky a přenosné počítače => Téma založeno: matlala 30 Srpna 2013, 00:14:51
-
Zdravím,
narazil jsem na malou kosmetickou chybku, jelikož po prázdninách začínám notebook používat zase mobilně.
Nastavení jasu displeje mi jede, reguluju to pomocí apletu v cinnamonu nebo stejným nastavením přes script namapovaný na klávesu win + původní FN stejným způsobem jako ten aplet. Regulace posuvníkem v nastavení taky ok.
Aby neskákal jas z 0 na 100 při jeho regulaci, byl jsme nucen pro přidání cpi_backlight=vendor do parametrů jádra v grubu.
Tak a potřeboval bych jednoduše zvlášť regulovat jas na baterii a na napájení tak, aby obě hodnoty byly uchovávány a pamatovány i po restartu zvlášť. Mám nainstalovaný jupiter, možná by šel nějak doupravit, přepne si jen mód CPU.
-
Tak se nikdo neozval, to mě mrzí. Po nějaké době, kdy jsem už trošku zběhlejší jsme se to pokusil řešit sám scriptem co běží po přihlášení v uživatelském prostoru a využívá program xbacklight, ovšem jeho velmi časté opakování (kratší než cca 2.5s) způsobí že po zavření víka notebooku se ještě uloží nulový jas (zhaslý displej). Šlo by to nějak vyřešit? Zkoušel jsem jen program killnout scriptem v /etc/pc/suspend.d/ při uspání a obnovit při otevření, ale to se spustí až po zhasnutí displeje, takže to problém neřeší.
EDIT: zatím jsem dodal ošetřující podmínky že nemá ukládat jas an i nic nastavovat pokud je aktuální jas displeje 0 a script se opakuje každou sekundu. Nějaké jiné řešení?
Script přikládám.
- konfigurační soubor je v /home/user/.jas_ac_bat a má na prvním řádku mezerami oddělenou konfiguraci-viz script
- dva dočasné soubory v /tmp/jas_ac_bat/ pro uchování jasu na baterku/napájení ze sítě
- nastavitelná doba opakování
- nastavitelná doba tlumení/zesílení jasu displeje při přěchodu
#!/bin/bash
# nastavce scriptu špouštění po přihlášení, nepoužívejte sudo, vytváří si konfiguraci v domovské složce aktuálního uživatele!
#+ nastavit práva pro spuštění pokud jste program získali z uložišť nepodporujících linuxová práva
#chmod +x ~/jas_ac_bat
# pro chod je potřeba program xbacklight, otestovat zda ho máte a případně nainstalovat provede níže uvedený zakomentovaný script
#test nainstalování programu
#if [ ! -e "/usr/bin/xbacklight" ]; then
# echo "Nemáte nainstalovaný program xbacklight, doinstalovávám";
# sudo apt-get install xbacklight;
#fi
# pro náročnější doporučuju přiřadit vlastní alias příkaz do ~/.bash_aliases s vlastní cestou
# echo "alias jas-manager='~/.MojeScripty/jas_ac_bat &'" >> ~/.bash_aliases
#opakuj donekonečna
while [ 1 ]; do
#konfigurační soubor v home + cesta k němu
konfig=".jas_ac_bat"
file_konfig=$HOME"/"$konfig
#hodnoty použité pro vytvoření konfiguráku ve stejném pořadí
default_bat=30
default_ac=100
prechod=800 #doba stmívání/rozednívání
opakovani=5 #jak často s emá script opakovat
#kam se mají ukládat dočasné soubory
cesta="/tmp/jas_ac_bat"
file_last_bat=$cesta"/"$USER"/last_bat"
file_last_ac=$cesta"/"$USER"/last_ac"
file_last_state=$cesta"/"$USER"/last_state"
#test existence cest a souborů s konfigurací + čtení konfiguráku
if [ ! -e $file_konfig ]; then
echo $default_bat" "$default_ac" "$prechod" "$opakovani > $file_konfig
echo "#bat ac přechod opakování" >> $file_konfig
fi
#načteí nonfigurace
bat=$(cat $file_konfig | head -1 | cut -d " " -f 1)
ac=$(cat $file_konfig | head -1 | cut -d " " -f 2)
dimm=$(cat $file_konfig | head -1 | cut -d " " -f 3)
repeat=$(cat $file_konfig | head -1 | cut -d " " -f 4)
#otestování existence a případné vytvoření dočasných souborů
if [ ! -d $cesta ]; then mkdir $cesta; mkdir $cesta"/"$USER; fi
if [ ! -e $file_last_bat ]; then echo $bat > $file_last_bat; fi
if [ ! -e $file_last_ac ]; then echo $ac > $file_last_ac; fi
#zjištění stavu připojení adaptéru a aktuálního jasu
AC_adapter=$(ls /sys/class/power_supply | grep "ADP\|AC")
napajeni=$(cat /sys/class/power_supply/$AC_adapter/online)
akt_jas=$(xbacklight -get | cut -d . -f 1)
#zapsání posledního známého stavu
echo $napajeni > $file_last_state
case $napajeni in
1) # ze sítě
#bat->ac
if [ $(cat $file_last_state) -ne 0 ]; then
if [ $akt_jas != $(cat $file_last_bat) ] && [ $akt_jas != 0 ];then
echo $akt_jas > $file_last_ac;
fi
if [ $akt_jas != $(cat $file_last_ac) ] && [ $akt_jas != 0 ];then
xbacklight -time $dimm -set $(cat $file_last_ac);#zmena
fi
fi
;;
0) # z baterie
#ac->bat
if [ $(cat $file_last_state) -ne 1 ]; then
if [ $akt_jas != $(cat $file_last_ac) ] && [ $akt_jas != 0 ];then
echo $akt_jas > $file_last_bat;
fi
if [ $akt_jas != $(cat $file_last_bat) ] && [ $akt_jas != 0 ];then
xbacklight -time $dimm -set $(cat $file_last_bat);
fi
fi
;;
esac
sleep $repeat;
done
exit 0
-
Hmm ve Správci napájení bylo nastavení rozdílného jasu pro sítový/bateriový provoz a mám dojem, že si to pamatovalo poslední stav. Ale jestli to přežilo do Unity/Gnome3 netuším.
-
Hmm ve Správci napájení bylo nastavení rozdílného jasu pro sítový/bateriový provoz a mám dojem, že si to pamatovalo poslední stav. Ale jestli to přežilo do Unity/Gnome3 netuším.
Nepřežilo, správce napájení byl v GNOME 3 přepracován stejně inteligentně jako většina prostředí. Tedy nic se nepotvrzuje a většina funkcí byla odebrána nebo někam naprosto nesmyslně schována (až o 50% lepší prostředí = až o 50% více kliků).
Bohužel potřebné hodnoty zmizely i z d-conf.
-
Supr, na tom jsme se shodli. Bohužel můj scriptím má pořád bug a nevím proč.
Přidal jsem podmínku aby se ukládání akt jasu neprovedlo pokud je aktuální jas 0. Bohužel funguje pouze pokud notes zavírám a uspávám, jakmile ho uspím na dýl (noc), tak ráno se zase uloží jas 0 a po probuzení se nastaví a monitor zhasne.
To samé pokud nechám notes ležet a zamkne se po cca 10min sám, pak zhasne, po rozsvícení obrazovky zase jas 0.
a to jsem přidával do podmínek tohle:
.
.
.
if ... && [ $akt_jas != 0 ];then
.
.
.