11

I recently upgraded from Ubuntu 13.10 to 14.04. Everything is fine, except the brightness of my laptop screen. When I change the brightness the screen simply does not respond. I figured this was a graphics driver issue, but having updated and reinstalled all nvidia drivers the problem persists. It's rather nasty, as the screen is now permanently set to the darkest setting, making it almost impossible to see anything.

I also tried the solution proposed here: Ubuntu 14.04 - brightness problem in HP hybrid laptop but this, sadly, didn't help either.

I have a HP Elitebook 8560w, with an nvidia Quadro 1000M and am running the latest nvidia-current drivers available in the apt-get repo's

For the record, I tried experimental nvidia drivers, which consequently crashed my entire OS. Therefore, I reinstalled 14.04 cleanly, yet this problem still persists

10
  • Same issue with clean 14.04 installation on HP ProBook 470 with AMD HD 8750M 2GB. Screen brightness always set to maximum. I use default Ubuntu drivers as AMDs are not available. Apr 30, 2014 at 11:34
  • I've noticed some new behaviour. When I suspend Ubuntu and wake it up again, the brightness is considerable higher. I still can't adjust it, but it is workable (which is some progress at least) Jul 15, 2014 at 7:17
  • I have this exact computer, and am experiencing this issue too, except my brightness is constantly at maximum. Did you ever find a solution?
    – Seth
    Sep 4, 2014 at 2:22
  • @Seth No not yet. Though I think I have the max brightness thing too after I have suspended Ubuntu. Very frustrating for such a simple (yet essential) function to be so broken... Sep 4, 2014 at 7:04
  • I should add that I no longer have this laptop (it died sadly), so I can't try any of the proposed workarounds or solutions. Perhaps @Seth or anyone else could try these and report if they work? I can't accept an answer until I know it works of course :) Feb 25, 2015 at 16:25

4 Answers 4

3
+50

It's probably a bug with drivers > 304 which has been around for a while:

According to these bug reports the only solution is to roll back to a driver version <= 304.

4
  • I'll try this out later although I am pretty sure I've tried it already. Feels like we've been waiting for ages :-(
    – Seth
    Feb 24, 2015 at 0:08
  • Wow, I was sure I tried this but it works! Somewhat.. The whole slider only changes the brightness about 3 levels total and both ends make it go completely dark but it's MUCH better than only one setting. Thanks!
    – Seth
    Feb 26, 2015 at 2:34
  • @Seth I'm glad that it worked, try to play with various version of the 304 to see if some works better than another. Unfortunately from what i've read chances this is going to be fixed soon are low, every bug report i read on this problem was classified as low/medium and/or attributed to a driver (nvidia) regression and almost always expired, but good luck!
    – kos
    Feb 26, 2015 at 2:43
  • I tackled this problem in such way goo.gl/VH4PN5 . There is a file /sys/class/backlight/intel_backlight/brightness to which you can write the desired value of brightness . It worked for me
    – Tebe
    Jun 1, 2015 at 14:58
2

Not a solution but rather a workaround.

There should be a file /sys/class/backlight/acpi_video0/brightness

In this file you have a particular decimal value which corresponds to brightness.

Now, when I use openbox desktop environment, my fn key doesn't work, which is why i use the following script to set it:

#!/bin/mksh
printf " \n Entering file to change brightness in 3 seconds\n remember - no new line after number.  ";
sleep 3;
sudo nano /sys/class/backlight/acpi_video0/brightness

Now, you may want to check the /sys/class/backlight folder just to make sure that you have acpi_video0 file there. It may be named differently for your system

I will link a relevant askubuntu question if you're interested in varioius workarounds for setting brightness

Update

I've wrote another script which uses zenity (graphical front end for scripts) and xrandr, with a desktop shortcut.

Tools you need

  • xrandr (should be installed by default, don't quote me on that) and knowing the name of your display
  • zenity (should be installed by default, don't quote me on that)
  • desktop shortcut backlight.desktop

Desktop shortcut

Create backlight.desktop file on your desktop and make it executable with sudo chmod a+x ~/Desktop/backlight.desktop. (Note, you may want to make it executable through rightclick -> properties and also allow running text files as executables in Nautilus-> Edit-> Properties-> Behavior).

[Desktop Entry]
Type=Application
Exec=/usr/bin/backlightscript
Terminal=false
Icon=/usr/share/icons/HighContrast/16x16/status/display-brightness.p
ng

Note, Icon portion is optional.

The script

Place this file in /usr/bin folder, call it backlightscript

#!/bin/sh
# Name: backlightscript
# Author: Serg Kolo
# Date: March 2 , 2015
# Description: Simple script to change screen brightness using xrandr

# uncomment this for debugging as needed
# set -x

NEWVAL=$( zenity --scale --min-value=0 --max-value=7 --text="Enter number between 0 and 7" ) && brightness=$(($NEWVAL+2))

if [ $(echo $?) = 0  ]
  then
    xrandr --output LVDS --brightness 0.$brightness

fi

Script explanation

I've found that optimal brightness is between 0.2 and 0.9. If you go bellow 0.2 or 1 screen gets either too dark or too bright. In this script, the user double-clicks on the backlight.desktop shortcut, which calls graphical pop-up with a scale, where user selects necessary brightness from 0 to 7. That value is incremented by 2 ( so max is 7+2=9 and min is 0+2=2 ) and stored in brightness variable. That variable then becomes the value after decimal point for xrandr --output LVDS --brightness 0.$brightness.

The if - then block is used to test whether the user actually selected something. Without it, xrandr will set brightness to 0, in which case you won't see anything on your screen, even tty1, and will have to either reboot or do Alt+SYSRQ+R+E+I+S+U+B

Note, that xrandr is a software solution, not hardware solution, i.e. you're not changing brightness of screen directly.

How it should look

enter image description here

Note on xrandr Run xrandr without any arguments to determine your primary connected display

My example

Screen 0: minimum 320 x 200, current 1366 x 768, maximum 8192 x 8192
VGA-0 disconnected (normal left inverted right x axis y axis)
LVDS connected primary 1366x768+0+0 (normal left inverted right x axis y axis) 344mm x 193mm
   1366x768       60.0*+
   1280x720       59.9  
   1152x768       59.8  
   1024x768       59.9  
   800x600        59.9  
   848x480        59.7  
   720x480        59.7  
   640x480        59.4  

Sources

7
  • Nope, I've got the acpi_video0 folder. I tried changing the value in /sys/class/backlight/acpi_video0/brightness but nothing happened.
    – Seth
    Feb 25, 2015 at 16:07
  • I've got another workaround for this. Will post soon Mar 2, 2015 at 21:03
  • Posted. Please refer above Mar 2, 2015 at 22:25
  • I highly doubt the problem is that the brightness is not being set properly as much as the driver can no longer set it itself. I'm curious as to why you think this will solve the problem (I actually semi-fixed it above). Have you been in a similar situation? I always assumed the problem was in the driver itself.
    – Seth
    Mar 3, 2015 at 1:24
  • 1
    In my case the path to the brightness file was /sys/class/backlight/intel_backlight/brightness. So, first do a ls on /sys/class/backligh and cd to your corresponding folder. You will find a max_brightness wich I assume is the maximum value you can set on your brightness file. In my case my maximum value was 4648 and my current brightness value was 401. I set it to 1500 and it's perfect.
    – nikoskip
    Jan 19, 2016 at 17:15
1

I got it to work on a Lenovo W510 with a Quadro FX 880M by creating /usr/share/X11/xorg.conf.d/20-nvidia.conf with the following contents:

Section "Device"
    Identifier    "Device0"
    Driver        "nvidia"
    VendorName    "NVIDIA Corporation"
    BoardName     "Quadro FX 880M"
    Option        "RegistryDwords" "EnableBrightnessControl=1"
EndSection

After reboot my brightness controls work correctly.

1
  • 1
    Just tried this, sadly to no avail :( Sep 2, 2014 at 8:20
0

At last it is fixed with latest driver which was released by Nvidia with release date: 2017.5.4 and its version number: 375.66

Release notes including following explanation:

Fixed a bug that caused backlight brightness to not be controllable on some notebooks with DisplayPort internal panels.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .