Como alterar o brilho do monitor externo via DDC / IC?

10

Gostaria de alterar o brilho do meu monitor externo Dell U2713HM via DDC / IC ( DDC Wikipedia ), que está conectado via DisplayPort. Eu tenho os gráficos integrados Intel HD4000.

Quando executo o sudo get-edid, recebo:

get-edid: get-edid version 2.0.0

Performing real mode VBE call
Interrupt 0x10 ax=0x4f00 bx=0x0 cx=0x0
Function supported
Call successful

VBE version 300
VBE string at 0x11100 "Intel(R) Sandybridge/Ivybridge Graphics Chipset Accelerated VGA BIOS"

VBE/DDC service about to be called
Report DDC capabilities

Performing real mode VBE call
Interrupt 0x10 ax=0x4f15 bx=0x0 cx=0x0
Function supported
Call successful

Monitor and video card combination does not support DDC1 transfers
Monitor and video card combination supports DDC2 transfers
0 seconds per 128 byte EDID block transfer
Screen is not blanked during DDC transfer

Reading next EDID block

VBE/DDC service about to be called
Read EDID

Performing real mode VBE call
Interrupt 0x10 ax=0x4f15 bx=0x1 cx=0x0
Function supported
Call successful

��������@L628�<"x:K��VK�%
PT�K���qO�@��V^���)P0 5UP!�GK0KD281826L
�DELL U2713HM
�1Vq
EDID claims 1 more blocks left


*********** Something special has happened!
Please contact the author, Matthew Kern
E-mail: [email protected]
Please include full output from this program (especially that to stderr)



Reading next EDID block

VBE/DDC service about to be called
Read EDID

Performing real mode VBE call
Interrupt 0x10 ax=0x4f15 bx=0x1 cx=0x0
Function supported
Call successful

  ��������@L628�<"x:K��VK�%
PT�K���qO�@��V^���)P0 5UP!�GK0KD281826L
�DELL U2713HM
�1Vq
EDID claims 1 more blocks left
EDID blocks left is wrong.
Your EDID is probably invalid.

A parte importante é provavelmente:

Monitor and video card combination supports DDC2 transfers

As teclas de brilho do meu teclado estão funcionando corretamente, pois vejo a notificação de alteração de luz de fundo no Ubuntu 12.10.

O que posso fazer para ajustar meu brilho via software?

Obrigado por suas respostas.

remi
fonte

Respostas:

12

Você encontra os arquivos necessários aqui: https://packages.debian.org/unstable/ddccontrol

ddccontrol
libddccontrol
ddccontrol-db

que eu tive que instalar. Então eu tive que executar os seguintes comandos:

sudo modprobe i2c-dev
sudo modprobe intelfb
sudo chmod a+rw /dev/i2c-*

Agora eu posso alterar o brilho para um valor (aqui 53) representando o nível de luz de fundo do meu monitor externo sem o On-Screen-Display com o comando:

ddccontrol -p -r 0x10 -w 53

Agora, ainda preciso obter minhas teclas de brilho especiais do teclado vinculadas ao comando de brilho (prestando atenção ao nível máximo de brilho). Alguma idéia de como fazer isso?

remi
fonte
Legal! +1. Onde você conseguiu os pacotes antigos? "Agora eu ainda preciso [...] fazer alguma idéia de como fazer isso?" - faça em outra pergunta.
precisa saber é
Encontrei os arquivos em algum lugar aqui, mas agora não estou exatamente onde launchpad.net/ubuntu/+source/ddccontrol
remi
A questão em aberto está aqui: askubuntu.com/questions/220886/…
remi
Exatamente qual versão você instalou, não consigo fazê-las funcionar, mesmo com um patch de bugs.launchpad.net/ubuntu/+source/ddccontrol/+bug/243445 muito ruim, o pacote não é mais mantido ...
Gerhard Burger
Eu instalei atualmente: ddccontrol-db: all 20061014-3, libddccontrol0: amd64 0.4.2-6ubuntu1, ddccontrol: amd64 0.4.2-6ubuntu1
remi
5

Com base na resposta do @ remi, ddccontrolparece não manter e não adicionou configurações para nenhum novo monitor desde 2006.

Felizmente, existe uma ferramenta mais nova: ddcutil , que é muito mais robusta e desenvolvida ativamente. Após instalar um dos pacotes pré- criados ou criar a partir do código-fonte, ele pode ser usado para consultar e definir o brilho (entre inúmeras outras configurações):

# ddcutil capabilities | grep Brightness
Feature: 10 (Brightness)
# ddcutil getvcp 10
VCP code 0x10 (Brightness                    ): current value =    60, max value =   100
# ddcutil setvcp 10 70
Chris Pick
fonte
Nas configurações de vários monitores, selecione o monitor / monitor assim:sudo ddcutil setvcp 10 70 --display 1
ali14