DDCCONTROL как средство управления монитором

Совершенно случайно, бродя в недрах интернета, я на наткнулся на интересную утилиту о которой раньше не знал. Величать ее - DDCCONTROL.
Прежде, чем я расскажу, что это такое, я бы хотел поговорить в целом о дистрибутивах Linux. Наверняка, если вы интересуетесь этой операционной системой и читаете различные статьи в интернете, то скорее всего встречали такие высказывания как «Linux гибок в настройке» или «Можно полностью настроить Linux под себя».

Именно простота и изящество в настройке таких мелочей как те, о которых я расскажу в этой статье, и делает Linux таким приятным и гибким. Конечно, подобными утилитами возможно воспользоваться и в других операционных системах, но в Linux это процесс намного приятнее, проще, быстрее и интереснее, в общем как мы привыкли говорить «Православнее» :)

Теперь совсем не много о утилите DDCCONTROL, чтобы мы имели хоть малейшее представление о том - с чем работаем.

Не секрет, что у мониторов есть DCC. Используется это в основном X-Сервером для определения параметров отображения монитора с помощью ddcprobe. Очень большая гибкость вообще протокола DDC обуславливается тем, что он «умеет» полноценно помочь Вашему монитору в общении с компьютером, именно в общении, а не в передаче команд, так как он не только передает важную информацию компьютеру о возможностях монитора, но и монитору о желаниях, переданных Вами компьютеру. Именно последняя возможность нам и нужна :)

Теперь перейдем непосредственно к «прелестям» использования данной утилиты. Я не буду рассказывать обо всех ее приемах и функциях, тем более что все это есть в понятной документации, а расскажу о фиксе неприятной мелочи у владельцев ЖК-мониторов, владельцем которого являюсь и я, и когда узнал о DDCCOTROL, был очень рад :)

В общем, нашей общей неприятной мелочью является необходимость выключать монитор нажатием на кнопку On/Off. Меня это не очень то и напрягает, но теперь, когда он выключается сам - я вообще на седьмом небе от счастья! И так, приступим...

Задача такова: Написать скрипт с использованием утилиты DDCCONTROL, который бы выключал монитор при отключении компьютера. Используемая операционная система: Ubuntu 10.04 Lucid Lynx.

Устанавливаем DDCCONTROL:

sudo apt-get install ddccontrol

После установки необходимо определить название монитора в системе, для этого используем команду:

sudo ddccontrol -p

У меня мой ASUS'овский монитор определился как pci:00:12.0-0

Detected monitors :
- Device: pci:00:12.0-0
DDC/CI supported: Yes
Monitor Name: VESA standard monitor
Input type: Digital
(Automatically selected)

Теперь необходимо узнать регистр монитора, который отвечает за его состояние работы, т.е. Вкл/Выкл или Сон. Для этого используем команду:

sudo ddccontrol -d pci:00:12.0-0

Получаем полный список регистров монитора. В нем нужно найти необходимый нам регистр питания и значения, который он принимает.

> Power control
> id=dpms, name=DPMS Control, address=0xd6, delay=-1ms, type=2
Possible values:
> id=on - name=On, value=1
> id=standby - name=Standby, value=4
supported, value=1, maximum=4

Здесь мы видим, что нужный нам регистр это 0xd6, т.е. address и возможные значения. У меня это как видите 1 и 4 - Включен и Выключен. Вы можете попробовать отключить Ваш монитор следующей командой, предварительно заменив необходимые аргументы на свои, т.е. название монитора, регистр и его значения полученые ранее.

sudo ddccontrol pci:00:12.0-0 -r 0xd6 -w 4

Монитор отключается :)

Мы получили необходимую команду для отключения монитора, теперь автоматизируем все это, добавив эту команду в /etc/default/halt.

Все - монитор отключается полностью при отключении компьютера. Возможно, вскоре, если найдется свободное время, напишу все же софтинку с GUI для таких дел, а пока пользуемся предложенным мной вариантом.

До новых встреч!

Комментарии

Аватар пользователя anonymous

...команду в /etc/default/halt
Все - монитор отключается полностью при отключении компьютера.

0_0 он вроде и так всегда выключался, или вы имели ввиду из розетки сам видёргивается ))

Аватар пользователя del

Это вопрос к Игорю (автору). У меня на ноутбуке монитор отключается сам =)
Но насколько понял я, эта штука отключает полностью питание монитора (то есть не нужно нажимать кнопку на мониторе, чтобы полностью его выключить).

Аватар пользователя Гость

Не знаю как дела обстоят с другими марками (фирмами) мониторов, но мониторы компании ASUS (А также частично Samsung) при потере сигнала от компьютера переходят в "спящий режим" о чем свидетельствует смена цвета индикатора питания монитора...

Данный метод эмулирует нажатие кнопки питания монитора, что полностью его отключает.

P.s. А вообще в статье приводится только один пример использования регистров монитора. С помощью них можно творить чудеса, такие например как изменение контрастности или яркости монитора в зависимости от времени суток, прочее...

Добавить комментарий