Ubuntu – Brightness controls doesn’t work on a MacBook Pro 5.5 (ubuntu 12.04 LTS)


Possible Duplicate:
Brightness controls doesn't work on a MacBook Pro 5.5

I recently installed Ubuntu 12.04 LTS on my MacBook pro 5.5 (mid 2009). I have a problem with the brightness control. The thing is, when I try to reduce the brightness of my display which would help my battery and also not burn a hole through my eyes, is doesnt work.

I tried to use the system preference but nothing. The brightness control brightness slider doesn't even work. The only time the screen with change brightness is when ubuntu wants to go to sleep.

I went to the Ubuntu wiki or whatever it is and went through the MacBook Pro compatibility stuff to no avail.

I'm not sure if this has been asked allot or not, but I'm unable to find a solution. I am also new to ubuntu/linux but want to make the change and learn all I can.

P.s.- is there anything out there that will make the touch-pad work really well, I've already played with the mouse/track-pad settings that comes with Ubuntu? It's working but there seems to be some sluggishness and a few glitches here and there.

Thank you in advance =)

Best Answer

First, see this for instructions on changing brightness through the command line. If that doesn't work, it is likely a problem with your graphics driver and/or kernel version.

Note that by switching graphics driver, you can solve one problem but cause another. The default for nvidia has no power management, so people may switch to the proprietary driver if battery life on a laptop is important to them, but nvidia's drivers (being closed source) may not play nice with Ubuntu (leading to display issues like tearing in video).

If you want the nvidia driver, type in the terminal sudo apt-get install nvidia-current. After installing the driver, you'll need to enable brightness controls in /etc/X11/xorg.conf.

In /etc/X11/xorg.conf you should put:

Section "Device"
    Identifier     "NVIDIA GeForce"
    Driver         "nvidia"
    Option         "NoLogo" "True"
    Option         "RegistryDwords" "EnableBrightnessControl=1"

"Identifier" is not so important unless you have other stuff referring to this device in your conf file. You can replace with more appropriate name if it's not an Nvidia GeForce type card. Everything else must be as written; "NoLogo" is to avoid the annoying Nvidia splash screen.

To edit the file using a GUI text editor, type gksudo gedit /etc/X11/xorg.conf in the terminal. Save changes and reboot... if all went well, you will now be using the new driver and brightness controls will work! If it doesn't work, you can check if you're using the new driver by typing in the terminal lspci -v | grep -i -A 15 vga. You should get something like:

02:00.0 VGA compatible controller: NVIDIA Corporation Device 08a3 (rev a2) (prog-if 00 [VGA controller])
[some lines omitted....]
Kernel driver in use: nvidia
Kernel modules: nvidia_current, nouveau, nvidiafb

Kernel drive in use should be nvidia, not nouveau.