Яркость подсветки дисплея в зависимости от текущего источника питания.

Автор Yagosha, августа 03, 2013, 14:31:58

« предыдущая - следующая »

Yagosha

У меня нетбук и xubuntu 13.04
При загрузке системы яркость подсветки дисплея у меня всегда устанавливается на минимум. Мне немного надоело каждый раз регулировать подсветку. Хотелось бы, чтобы она автоматически настраивалась на 100% при питании от сети, и на 50% при питании от батареи. В параметрах "менеджера питания" есть настройки, связанные только с отсутствием активности в течение времени, в "дисплеях" тоже ничего подходящего, аналогично в "сеансах и запуске".

xf∞

напишите, какая у вас видеокарта.
если драйвера открытые, можно написать в терминале: sudo setpci -s 00:02.0 F4.B=XX где ХХ это значение яркости. Максимальное - FF.
если яркость изменится, после того, как выполните команду, можно добавить это в автозагрузку.
Делаю нескучные обои и рисую темы для xfce.

Yagosha

Цитата: xf∞ от августа 03, 2013, 22:06:49
напишите, какая у вас видеокарта.

Цитата: из lspci
00:02.0 VGA compatible controller: Intel Corporation Atom Processor D4xx/D5xx/N4xx/N5xx Integrated Graphics Controller (rev 02) (prog-if 00 [VGA controller])
   Subsystem: Device 1b50:5608
   Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
   Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
   Latency: 0
   Interrupt: pin A routed to IRQ 44
   Region 0: Memory at fea80000 (32-bit, non-prefetchable) [size=512K]
   Region 1: I/O ports at f100 [size=8]
   Region 2: Memory at c0000000 (32-bit, prefetchable) [size=256M]
   Region 3: Memory at fe700000 (32-bit, non-prefetchable) [size=1M]
   Expansion ROM at <unassigned> [disabled]
   Capabilities: <access denied>
   Kernel driver in use: i915

00:02.1 Display controller: Intel Corporation Atom Processor D4xx/D5xx/N4xx/N5xx Integrated Graphics Controller (rev 02)
   Subsystem: Device 1b50:5608
   Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
   Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
   Latency: 0
   Region 0: Memory at fea00000 (32-bit, non-prefetchable) [size=512K]
   Capabilities: <access denied>

Ну а из описания тех. характеристик компьютера - Intel GMA 3150.
Цитата: xf∞ от августа 03, 2013, 22:06:49
sudo setpci -s 00:02.0 F4.B=XX где ХХ это значение яркости.

К сожалению, не привело ни к какому результату, однако, и не выскочило никакого сообщения на вывод (если должно было), Программа просто "успешно" завершилась.

Yagosha

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

xf∞

sudo setpci -s 00:02.0 F4.B=FF
вы писали примерно так?

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

butjapka


Труба Шатал

Цитата: xf∞ от августа 05, 2013, 10:34:30
надо поискать, какой командой изменяются значения яркости для вашего ноутбука по горячим клавишам.

sudo apt-get install xbacklight

управление:

xbacklight -get   -   получить зчения подсветки,
xbacklight -set 50  - установить яркость подсветки на 50%

можно "вешать" команды на любые клавиши:
xbacklight -inc 10  - увеличить с шагом 10%
xbacklight -dec 10 - уменьшить с шагом 10%

Yagosha

Цитата: xf∞ от августа 05, 2013, 10:34:30
sudo setpci -s 00:02.0 F4.B=FF
вы писали примерно так?

Да. Для верности несколько значений попробовал от 00 до ff (или FF).
Цитата: xf∞ от августа 05, 2013, 10:34:30
если да, то тогда надо поискать, какой командой изменяются значения яркости для вашего ноутбука по горячим клавишам.

Я об этом сначала и подумал, но в Диспетчер настроек -> Клавиатура -> Комбинации клавиш
Для кнопок Fn + F4 (XF86MonBrightnessDown) и Fn + F5 (XF86MonBrightnessDown) да и вообще для всех Fn + * команды не заданы, а если попробовать повесить на них какое-то действие, то оно всё равно не работает, оболочка (?) перехватывает действие и делает то, что делает, но и не предупреждает, что комбинация занята как например с другими заданными там кнопками.
В Диспетчер настроек -> Диспетчер окон -> Клавиатура - тоже ничего.
Куда ещё можно посмотреть?

Цитата: Труба Шатал от августа 06, 2013, 01:16:02
Цитата: xf∞ от августа 05, 2013, 10:34:30
надо поискать, какой командой изменяются значения яркости для вашего ноутбука по горячим клавишам.

sudo apt-get install xbacklight

управление:

xbacklight -get   -   получить зчения подсветки,
xbacklight -set 50  - установить яркость подсветки на 50%

можно "вешать" команды на любые клавиши:
xbacklight -inc 10  - увеличить с шагом 10%
xbacklight -dec 10 - уменьшить с шагом 10%


Это работает  :laugh:

И ещё можно ли получить какой-нибудь "флаг" (например, 0 или 1) состояния питания (батарея, розетка)?

xf∞

Yagosha, я тоже знаю, что в диспетчере настроек это не прописано, не будет и не должно работать, потому что это системные параметры. это вероятно прописано в /etc/ и где-то в /proc. ну, а коли уже написали, то создать горячие клавиши вам не составит труда.

А вот интересный метод, как вывести на экран уведомление о состояние батареи:
notify-send "Состояние батареи" "$(cat /sys/class/power_supply/BAT1/status)"
вместо BAT1 у вас может быть BAT0, посмотреть можно здесь: /sys/class/power_supply/
Делаю нескучные обои и рисую темы для xfce.

Yagosha

if [[ "$(cat /sys/class/power_supply/AC0/online)" -eq 1 ]]
then xbacklight -set 100
else xbacklight -set 50
fi

Ну вот, вроде бы, в принципе, этого мне достаточно для решения первоначального вопроса.
И, хотя, осталась пара возникших второстепенных вопросов, я решил на этом остановиться.
Всем спасибо за помощь.
Вы сделали мою жизнь комфортней!

xf∞

Делаю нескучные обои и рисую темы для xfce.