Bug 451579

Summary: Feature Request - Brightness Control of External Monitors via Monitor Control Command Set
Product: [Unmaintained] Powerdevil Reporter: Wyatt Childers <kdebugs.81do7>
Component: generalAssignee: Plasma Bugs List <plasma-bugs-null>
Status: RESOLVED NOT A BUG    
Severity: normal CC: kde
Priority: NOR    
Version First Reported In: unspecified   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Wyatt Childers 2022-03-16 15:44:12 UTC
Currently external monitor birghtness is not handled. This is a feature request to add software support for external monitors brightness via MCCS. An example program that already does this/might be a good "underpinning" with more information on the spec/communication is ddcutil (https://www.ddcutil.com/).

As an example, I can use the following ddcutil commands to set both monitor's brightness to 100%:

$> sudo ddcutil setvcp -d 1 10 100
$> sudo ddcutil setvcp -d 2 10 100

Or 50%:

$> sudo ddcutil setvcp -d 1 10 50
$> sudo ddcutil setvcp -d 2 10 50

As some extra background as for "why" my office has a lot of light in the morning/when it's snowy outside vs very dark at night, so I regularly need to adjust monitor brightness throughout the day. It's much more convient to do that with software. I think adding keyboard controlled/GUI slider based brightness integration would be a really nice feature for KDE to have for external monitors.

It would be ideal to eventually be able to have some presets, maybe have a "default brightness curve" for the day, etc. However, the first step with any of that would be IMO, exposing basic brightness controls for the monitors.
Comment 1 Kai Uwe Broulik 2022-03-16 15:45:21 UTC
We have DDCUtil support in PowerDevil: https://invent.kde.org/plasma/powerdevil/-/blob/master/daemon/backends/upower/ddcutilbrightness.cpp
Comment 2 Wyatt Childers 2022-03-16 15:50:27 UTC
Well I'll be, I rebooted just to see, but I still don't have any monitor brightness controls I can see anywhere.

Perhaps Fedora isn't building their package with WITH_DDCUTIL. I've been using Fedora since roughly when it looks like this was implemented. I'll take that up with them... Thanks for implementing it, my bad :)