6

Brightness control doesn't work by default in Ubuntu 13.04. Solution for 12.10 doesn't work, also as this

Any idea how to fix it?

Update:

After research I found how to change brightness manually. What need to do is to type in terminal:

echo 2000 | sudo tee /sys/class/backlight/intel_backlight/brightness

It will reduce brightness by half, but still would be good to find solution which will allow to use keyboard for changing brightness.

Update2:

Found solution, see below

3
  • Have you called sudo update-grub with the solutions you linked to?
    – krlmlr
    May 23, 2013 at 13:42
  • of course I did it and it didn't help me.
    – Viktor
    Jun 3, 2013 at 1:13
  • @ViktorAx - there is command in terminal: xbacklight - if not of content in your terminal you need to install it with apt-get install xbacklight - but be careful with usage of adjusting backlight with it. Read man xbacklight then. Oct 21, 2013 at 22:25

5 Answers 5

6

I found solution how to fix problem with brightness

Copy/paste:

  1. Add the acpi_backlight=vendor to your GRUB_DEFAULT command line
  2. Run the sudo update-grub command
  3. blacklist the ideapad_laptop by adding blacklist ideapad_laptop to your /etc/modprobe.d/blacklist.conf file.
  4. Reboot
1
  • This solution also worked for 14.04 LTS on my Yoga 11s.
    – ojdo
    Aug 17, 2014 at 18:34
1

I ran into the same problem, the command you wrote will fix it, but in order to get the keys working, I made a little script that watches the /sys/class/backlight/acpi_vide0/brightness file for changes, and then converts and write this to the /sys/class/backlight/intel_backlight/brightness file.

A simple script (that requires inotify-tools):

while inotifywait -e modify /sys/class/backlight/acpi_video0/brightness >/dev/null 2>&1; do
  RATIO=97 #I got this by dividing the intel max_brightness by acpi's max_brightness+1
  BRIGHTNESS=`cat /sys/class/backlight/acpi_video0/brightness`
  NEW_BRIGHTNESS=$((RATIO*BRIGHTNESS))
  echo ${NEW_BRIGHTNESS} > /sys/class/backlight/intel_backlight/brightness
done

Run that as sudo, and you should be golden.

Cheers!

EDIT: Make sure you update the ratio constant, if you can input 2000, our values are different. My intel max is 976.

1

If someone still has problems with backlight in yoga on ubuntu 13.04, i wrote a simple python script (you need install python-keybinder with dependencies) based on command from first post.

Need to be run with root privileges. For better usage comfort start it with system or in terminal as independent process (& at the end of run command).

#!/usr/bin/env python
import gtk
import keybinder
import subprocess

# Application need to be run with root privileges

class BrightBinder():

  def __init__(self, act_bright):
    # modes - step can be modify (3rd argument)
    self.levels = range(100, 4880, 700)
    self.levels.append(4880)
    try:
      self.act_bright_index = self.levels.index(int(act_bright))
    except ValueError:
      # can recoginze level - setting maximum
      self.act_bright_index = len(self.levels) - 1
      self.setBright()

  def setBright(self):
    subprocess.call("echo %s > /sys/class/backlight/intel_backlight/brightness" %      str(self.levels[self.act_bright_index]), shell=True)

  def bindKeys(self):
    keybinder.bind(bright_down, self.brightDownCallback, "Keystring %s (user data)" % bright_down)
    keybinder.bind(bright_up, self.brightUpCallback, "Keystring %s (user data)" % bright_up)

  def brightDownCallback(self, user_data):
    if self.act_bright_index > 0:
      self.act_bright_index -= 1
      self.setBright()

  def brightUpCallback(self, user_data):
    if self.act_bright_index < len(self.levels) - 1:
      self.act_bright_index += 1
      self.setBright()

  if __name__ == '__main__':
    bright_down = "XF86MonBrightnessDown"
    bright_up = "XF86MonBrightnessUp"
    # getting actual brightness value
    act_bright = subprocess.check_output(["less", "/sys/class/backlight/intel_backlight/brightness"])
    bright_binder = BrightBinder(act_bright.strip()).bindKeys()
    gtk.main()
0

I got it. Mine is a Lenovo G580 laptop with Intel graphics. What I did is I followed the below steps:

Edited /etc/X11/xorg.conf ... for this in the terminal I typed: sudo nano /etc/X11/xorg.conf and added this line: Option "RegistryDwords" "EnableBrightnessControl=1"

I restarted computer and no display appeared.

Then I went to advanced options during booting and went to load low graphics mode. In this menu one troubleshooting option is there. I selected edit configuration file.

Then I deleted the above line Option "RegistryDwords" "EnableBrightnessControl=1" and pressed OK, restarted and now the brightness control is working properly including hot-keys. Thank God.

1
  • 1
    This topic for Ubuntu 13.04, and there is no such file by this path: /etc/X11/xorg.conf
    – Viktor
    May 21, 2013 at 13:34
0

Solution is very simple & worked for me in Ubuntu 13.10.

Lenovo Yoga 13 has Intel graphics card so it was fairly easy to map ACPI events generated by bright-up/bright-down keys (run "acpi_listen" in terminal & press keys and watch).

I have created a set of scripts to map ACPI events to control brightness (using solutions for other laptops found on forums) and posted them on git:

https://github.com/thrull/lenovo-yoga-brightness-control

You must log in to answer this question.

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