Usar los botones suaves es molesto con el tiempo. Me refiero al brillo real de la luz de fondo (no X11 gamma). ¿Qué protocolos son cabables de esto? (DVI, HDMI, DP, supongo que VGA no lo es)
Usar los botones suaves es molesto con el tiempo. Me refiero al brillo real de la luz de fondo (no X11 gamma). ¿Qué protocolos son cabables de esto? (DVI, HDMI, DP, supongo que VGA no lo es)
Respuestas:
En realidad, todas estas interfaces son capaces de controlar la luz de fondo (y más), siempre que tanto la tarjeta gráfica como el monitor admitan el canal de datos de pantalla .
DDC se basa en I²C, por lo que debe instalar y cargar los módulos de kernel adecuados para que funcione.
# Debian
sudo apt-get install i2c-tools
sudo modprobe i2c-dev
# RHEL
sudo dnf install i2c-tools
Después de eso, debe averiguar qué bus I²C está conectado al monitor mediante sudo i2cdetect -l
.
# Example output for Intel graphics card
i2c-0 i2c i915 gmbus dpc I2C adapter
i2c-1 i2c i915 gmbus dpb I2C adapter
i2c-2 i2c i915 gmbus dpd I2C adapter
i2c-3 i2c DPDDC-B I2C adapter
i2c-4 i2c DPDDC-C I2C adapter
# Example output for AMD graphics card
i2c-0 i2c Radeon i2c bit bus 0x90 I2C adapter
i2c-1 i2c Radeon i2c bit bus 0x91 I2C adapter
i2c-2 i2c Radeon i2c bit bus 0x92 I2C adapter
i2c-3 i2c Radeon i2c bit bus 0x93 I2C adapter
i2c-4 i2c Radeon i2c bit bus 0x94 I2C adapter
i2c-5 i2c Radeon i2c bit bus 0x95 I2C adapter
i2c-6 i2c card0-eDP-1 I2C adapter
i2c-7 i2c card0-VGA-1 I2C adapter
En el caso de Intel , el bus derecho es uno de los DPDDC ( Display Port DDC ), según el puerto que esté utilizando. En mi caso, tanto HDMI como DP se muestran como DP.
En el caso de AMD , el bus se llama card0- interface - n .
Si no hay interfaces en la lista, entonces su tarjeta / controlador no es compatible con DDC de manera estándar.
Ahora tenemos que investigar si el monitor admite DDC y si permite establecer el brillo de esta manera. Primero, instale ddccontrol
:
# Debian
sudo apt-get install ddccontrol
# RHEL
sudo dnf install ddccontrol
Luego, obtenga una lista de los parámetros DDC compatibles que lo usan. Este ejemplo supone que su interfaz DDC está vinculada al bus i2c-3.
# sudo ddccontrol dev:/dev/i2c-3
ddccontrol version 0.4.2
Copyright 2004-2005 Oleg I. Vdovikin (oleg@cs.msu.su)
Copyright 2004-2006 Nicolas Boichat (nicolas@boichat.ch)
This program comes with ABSOLUTELY NO WARRANTY.
You may redistribute copies of this program under the terms of the GNU General Public License.
Reading EDID and initializing DDC/CI at bus dev:/dev/i2c-3...
I/O warning : failed to load external entity "/usr/share/ddccontrol-db/monitor/DELA0A2.xml"
Document not parsed successfully.
I/O warning : failed to load external entity "/usr/share/ddccontrol-db/monitor/DELlcd.xml"
Document not parsed successfully.
EDID readings:
Plug and Play ID: DELA0A2 [VESA standard monitor]
Input type: Digital
= VESA standard monitor
> Color settings
> Brightness and Contrast
> id=brightness, name=Brightness, address=0x10, delay=-1ms, type=0
supported, value=45, maximum=100
> id=contrast, name=Contrast, address=0x12, delay=-1ms, type=0
supported, value=75, maximum=100
--- [snip] ---
Eso es todo, si todo sale bien, el valor de brillo debería informar exactamente el mismo brillo que el configurado en el monitor. Ahora puede establecer el 50% de brillo con este comando (reemplace 0x10 con la dirección del valor de brillo que se encuentra arriba):
sudo ddccontrol dev:/dev/i2c-3 -r 0x10 -w 50
gddccontrol
una interfaz de usuario GTK para ddccontrol
, pero primero tendría que cambiar / modificar su bus I²C o escribir una regla udev para hacerlo automáticamente.
Basándose en la respuesta de @ M132, ddccontrol
parece no tener mantenimiento y no ha agregado configuraciones para ningún monitor nuevo desde 2006.
Afortunadamente, hay una herramienta más nueva: ddcutil , que es mucho más robusta y desarrollada activamente. Después de instalar uno de los paquetes precompilados o construir desde la fuente, se puede usar para consultar y establecer el brillo (entre una miríada de otras configuraciones):
# ddcutil capabilities | grep Brightness
Feature: 10 (Brightness)
# ddcutil getvcp 10
VCP code 0x10 (Brightness ): current value = 60, max value = 100
# ddcutil setvcp 10 70
ddcutil capabilities | grep Luminosity
Hay xbacklight
- "ajustar el brillo de la luz de fondo usando la extensión RandR".
Sin embargo, falla con mi monitor HDMI, por lo que recurro a la modificación del software:
xrandr --output HDMI2 --brightness 0.7
xbacklight
?
xrandr --output HDMI --brightness 0.7
xbacklight
funcionará con computadoras portátiles y otros dispositivos que usan control de retroiluminación basado en ACPI. Para los monitores de escritorio, la solución más ampliamente compatible es usar DDC y ddccontrol
.
El módulo del núcleo DDC / CI incluye un ddcci-backlight
módulo que puede integrar la mayoría de los monitores con capacidad DDC / CI en el sistema de retroiluminación del núcleo ( /sys/class/backlight
). Esto permite que cualquier herramienta que pueda utilizar este último active la luz de fondo en un monitor DDC / CI; por ejemplo, usando los controles integrados en el escritorio GNOME:
El módulo del núcleo está disponible en Debian (desde Debian 9) y distribuciones derivadas:
sudo apt install ddcci-dkms
kmod
de ddci
módulos del núcleo y realmente disfrutar del control deslizante de brillo que permite controlar sin ningún tipo de aplicaciones de terceros :) Gracias por mencionarlo!
ati
,fglrx
,nouveau
,nvidia
, ...)?