У меня проблема с этой командой:xset dpms force off . Экран становится черным, но он не выключает и не приостанавливает (с помощью команды приостановки) монитор.

Команда 'xset -q' показывает, что DPMS включен в моем мониторе.

Я использую Raspberry Pi с Raspbian на нем, и монитор подключен с помощью кабеля HDMI-DVI (и контакты, которые передают данные соединения работают).

Можете ли вы помочь мне, может быть, скажите мне, где найти ответ или несколько журналов? Может быть, где-то есть файл конфигурации, который содержит информацию о количестве энергии, отправляемой на монитор, когда он находится в режиме ожидания, включен или выключен?

Я нашел это решение: http://shallowsky.com/linux/x-screen-blanking.html , но я не могу установить VBETOOL на свой компьютер, поскольку у него нет портов PCI (и папки /pci).

3 ответа3

3

В текущих версиях raspbian эти обходные пути больше не требуются, в драйверы добавлена возможность dpms. Единственная проблема: по умолчанию она отключена. Вам нужно поставить

hdmi_blanking=1

в вашем /boot/config.txt, чтобы включить. Официальная документация еще не была обновлена, чтобы включить эту настройку, поэтому ее немного сложно найти.

3

Я обнаружил, что эта специфическая проблема Raspberry Pi обсуждалась в этом выпуске с некоторыми обходными путями.

Драйвер кадрового буфера на pi выполняет или не реализует соответствующий ioctl FBIOBLANK, чтобы отключить монитор на видео.

Обходной путь - использовать команду tvservice для отключения питания видеосигналов, и в конечном итоге монитор должен отключиться. Однако есть небольшая проблема, когда вы используете tvservice для включения питания видео, и вам нужно обойти это тоже, используя chvt для переключения из X11 в консольный виртуальный терминал, а затем обратно.

Демо-версия:

sudo tvservice  -o # turn off video
sleep 5
sudo tvservice  -p # turn on video
whichvt=$(sudo fgconsole) # which vt are we on
let othervt=which==1?2:1
sudo chvt $othervt; sudo chvt $whichvt
0

Другой способ заключается в использовании:

vcgencmd display_power 0
vcgencmd display_power 1

Вот и все.

Это более эффективный способ. Он не требует полной переинициализации кадрового буфера и не меняет разрешение. В основном, это быстрее, чем твсервис. Сначала он вернул ошибку, но я обновил прошивку на RPi с помощью rpi-update и после перезагрузки сработал.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .