I have recently installed Ubuntu 10.10 on my Dell Inspiron n5010 but screen brightness is not working, there is no effect of pressing fn+brightness keys.
Is there anyway to fix it?
brightnessdell
I have recently installed Ubuntu 10.10 on my Dell Inspiron n5010 but screen brightness is not working, there is no effect of pressing fn+brightness keys.
Is there anyway to fix it?
Maybe if you reduce Kernel power consumption it will help you a little. When I've installed 11.10 I had big problems with that (processor in idle constantly on 85 degrees) and this workaround and the “Workaround by editing GRUB” part helped me quite a lot (now it's around 60 degrees). I found this article thanks to another Ask Ubuntu issue where it's also suggested to install Jupiter applet which also helped me to reduce the temperature even more...
Workaround using Sysfs (temporary, use for testing)
Note: It seems that in the most recent kernel revisions ASPM is disabled on pre PCIe 1.1 devices and must be manually enabled using
pcie_aspm=force
kernel parameter (the second method in this article). So if it happens that when you try Sysfs method you receive Operation not permitted error, then you can skip to the "Workaround by editing GRUB" method.Sysfs is a virtual file system used (amongst other things) to configure Linux hardware options from userspace. You can control your hardware options in real time by writing into what appear as text files. First let's check the state of things:
cat /sys/module/pcie_aspm/parameters/policy
The output of this command will probably be something like this:
[default] performance powersave
This means that the default PCIe ASPM (Active State Power Management) profile is selected. This "default" is where the problem lies. To work around Linux kernel 2.6.38 power regression we must force PCIe ASPM to be enabled. For ASPM to be enabled we must make sure that it stays off the "default" and "performance" profiles. This is how you can do it using Sysfs on Ubuntu based Linux distributions:
echo powersave | sudo tee /sys/module/pcie_aspm/parameters/policy
This setting remains until you change it again using sysfs or until you reboot, so is useful for testing whether PCIe ASPM is working on your configuration. This is necessary because there are reports of PCIe ASPM causing lockups when enabled on systems with buggy ASMP BIOS implementation. If this option isn't causing problems on your laptop or desktop system you can proceed to configure ASPM by editing GRUB or you can use sysfs to enable this option using an init script.
Workaround by editing GRUB (permanent)
After you've make sure that PCIe ASPM isn't causing problems on your configuration you can apply this workaround for good by editing GRUB configuration like this:
sudo nano /etc/default/grub
Now you find the GRUB_CMDLINE_LINUX_DEFAULT line that might look like this:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
You should edit this line to look like this:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash pcie_aspm=force"
This way you are passing
pcie_aspm=force
kernel argument to force PCIe ASPM. This settings will be applied every time you boot your laptop or desktop. To make changes effective after editing the file, run:sudo update-grub
I have the same model and I had the same problem all the way through 13.04 development until one day before release and then it started working. I filed the bug here: Bug #1105604: Brightness control stopped working
What you can do is to use a manual override that I used throughout development, by modifying /etc/rc.local
as follows:
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
echo 978 > /sys/class/backlight/intel_backlight/brightness
chmod 777 /sys/class/backlight/intel_backlight/brightness
exit 0
The downside is that you can't change the brightness easily except by manually modifying the file /sys/class/backlight/intel_backlight/brightness
When I did have it working, I used the Fn + brightness keys to check the settings: the lowest setting is 490
and after that it goes up in increments of 488
. So these are the default settings for /sys/class/backlight/intel_backlight/brightness
:
490 Lowest with backlight on
978
1466
1954
2442
2930
3418
3906
4394
4882 Brightest
My brightness controls were previously working, but are broken again so I decided to create a script to manage it:
#!/bin/bash
# Dell N4010 brightness control workaround
# Note: add the following to /etc/rc.local
# chmod 777 /sys/class/backlight/intel_backlight/brightness
# For convenience I've assigned the keys Alt-Up and Alt-Down to run this script
# Fine tune the bump parameter as required
#
# Usage:
# ./brightchg.sh up # bump up brightness
# ./brightchg.sh down # bump down brightness
#
curr=`cat /sys/class/backlight/intel_backlight/brightness`
bump=244
if [ "$1" == "up" ]; then
curr=`echo "$curr + $bump" | bc`
else
curr=`echo "$curr - $bump" | bc`
fi
# Set the brightness to the new level making sure it's always above 30 (minimum usable)
if [ $curr -gt 30 ]; then
echo $curr | tee /sys/class/backlight/intel_backlight/brightness
fi
Note: I added a line in /etc/rc/local
to give me authority to the brightness file:
chmod 777 /sys/class/backlight/intel_backlight/brightness
Then I assigned it to the keys Alt+Up and Alt+Down as shown here:
Best Answer
Thanks everyone.
I just updated the BIOS and now brightness is working great.