Neben dem DDCUtil mit welchem man den Monitor über HDMI / DP steuern kann, gibt es noch das ddcci Kernelmodul. Dieses ermöglicht das Einbinden der Helligkeitseinstellung des externen Monitors vom Desktop aus. Bisher hatte ich dazu meine eigene Extension für Gnome benutzt, seit dem Umstieg vor einigen Tagen auf KDE jedoch diesen hier beschrieben Weg gewählt.
Leider scheint das Debian ddcci Kernelmodul derzeitig nicht Out Of The Box zu funktionieren, so reichte ein reines Kernelmodul laden beim Start nicht aus und bedarf ein wenig eingreifen in dem ganzen. Vermutlich ist es ein Racetime Problem, in dem der i2c Bus beim initialisieren des Moduls im busy zustand ist, denn die Autoerkennung legt leider beim booten keine Einträge im /sys/bus/ddcci/devices an. Als Abhilfe habe ich ein Systemd Unit erstellt, der das Modul erst dann lädt sobald der SDDM (Simple Desktop Display Manager – KDE Umgebung) geladen wurde.
Zuerst setzen wir das Kernelmodul auf die Blacklist um ein automatisches laden zu verhindern:
sudo echo "blacklist ddcci" > /etc/modprobe.d/blacklist-ddcci.conf
Zusätzlich setzen wir die ddcci Kernelmodul Optionen:
sudo echo "options ddcci-dependent 0x37" > /etc/modprobe.d/ddcci.conf
Anschließend wird der Initramfs aktualisiert:
sudo update-initramfs -u
Zuletzt legen wir mit Nano einen neuen SystemD Service an, um das Kernelmodul beim booten zu unserem gewollten Zeitpunkt zu starten:
sudo nano /etc/systemd/system/ddcci-backlight.service
Und folgenden Inhalt hinzufügen, achtet bitte auf den verwendeten Display Manager (sddm.service für KDE, gdm.service für Gnome etc.):
[Unit]
After=sddm.service # sddm.service for KDE, for Gnome use gdm.service
[Service]
Type=oneshot
ExecStart=/usr/sbin/modprobe ddcci-backlight
ExecStop=/usr/sbin/modprobe --remove ddcci-backlight
RemainAfterExit=yes
[Install]
WantedBy=default.target
Und mit folgendem die Systemd Unit aktiviert:
sudo systemctl enable ddcci-backlight.service
Sollte nun nach einem Neustart des Systems, die im Gnome / KDE native Helligkeitsregelung des Monitors auftauchen.