Ubuntu – Cannot set brightness with xbacklight, Intel

driversintel graphicsxbacklightxorgxrandr

This is similar to these two questions, but the solutions posted in each do not help me:

I just got a Dell XPS 9380.

I'm using Ubuntu 18.04 with the i3 window manager, and I'm trying to get nice hotkeys set up to change the backlight brightness, among other things.

I want to use xbacklight to alter the brightness. But it tells me "No outputs have backlight property", and indeed if I run xrandr --verbose I don't see backlight properties anywhere.

I can set the brightness by putting numbers in /sys/class/backlight/intel_backlight/brightness, so I don't think I need to mess with any kernel options.

Now, the other questions' solutions, and the section about xbacklight on the Arch wiki say to add a Device section to the xorg.conf file, to set the Backlight option to intel_backlight.

All of the examples have Driver set to intel. When I do that and restart X, everything slows to a crawl, but I can use xbacklight successfully, and I see a backlight section in xrandr --verbose. But the CPU is pinned — I think it's not really using the intel driver but rather a framebuffer. I don't know how to be sure. Here's an example configuration, which I put in /usr/share/X11/xorg.conf.d/20-video.conf:

Section "Device"
        Identifier "Card0"
        Driver "intel"
        Option "Backlight" "intel_backlight"
EndSection

If I instead set Driver to i915, everything is fast again, but xbacklight now gives the error again.

From searching the web I haven't been able to get a handle on what the difference is between intel and i915. I get the impression i915 is the Intel driver, but then I'm not sure why all the examples set Driver "intel". If they're different and I should be using intel, maybe I don't have that one installed? I tried installing the xserver-xorg-video-intel package, which required me to remove a bunch of other packages including xserver-xorg-video-intel-hwe-18.04 (these two both claim to be drivers for Intel i9xx), then setting Driver "intel", but this resulted in a black screen I couldn't get out of (even with control-alt-F combos) and I had to reboot.

Any help would be appreciated.

Best Answer

xbacklight indeed does not work, unless, as you discovered, you greatly bring down the performance of your graphics.

On a Dell XPS 9350, I have been using a utility light. It is found on GitHub. Currently, .deb files are available for installation. Alternatively, the utility can easily be compiled (this was the only option when I first used it).

Your lines in i3-config then become:

bindsym XF86MonBrightnessUp exec  --no-startup-id light -A 5 # increase screen brightness
bindsym XF86MonBrightnessDown exec  --no-startup-id light -U 5 # decrease screen brightness

The drawback is that, thus far, this solution requires installing software outside of the Ubuntu repositories. The utility is currently available in the repositories of Fedora and Arch, though, so it is not unlikely that it will also make it to the Ubuntu repo one day.