HowTo

Extend Netbook Battery Life

I purchased the ASUS Eee PC 1000HA netbook because it boasted a 7 hour battery run time. The netbook shipped with a 160 GB SATA hard drive and Windows XP. I promptly replaced Windows XP with Fedora 10. I was disappointed the first time I took the netbook out for a test drive because the battery barely lasted 3.5 hours with WiFI running. I found a couple of useful utilities to help extend the battery runt time, powertop by the Intel corporation and Eee Control by Grigori Goronzy. Fedora users can get a copy of Eee Control packaged by Ahmad Abdel-Yaman here.

Eee control provides a lot of otherwise missing features for the Eee PC, but it did not help me get close to the 7 hour baterry life I was hoping for. I did some research and decided to write the powerswitcher script to compensate for the shortcomings of other tools. I found some suggestions on the web about adding some options to rc.local, but that makes the changes permanent and I want to revert back to full performance mode when running on AC power without rebooting. Powerswitcher will enable power saving features and allow you to revert back to performance mode as needed without rebooting.

Powerswitcher is not the only script of it's kind and it is not only for AUS netbooks, it should work on any modern laptop equipped with an Intel CPU. I don't know about AMD laptops, but you can give it a try.

The script works by making the following adjustments on the fly:

Reduces swap frequency
Throttles the CPU down to 800 Mhz
Disables HAL CDROM polling
Remounts / with noatime
Reduces USB power while idle
Reduces disk writes by setting disk to laptop mode 5
Reduces kernel dirty page writeback frequency
Disables Wake On LAN
As you can see below, I can get an additional 2 hours by running the powerswitcher script. You can extend your battery life a bit more by adding the USB 1.1 module to the module blacklist by running the following command:

echo "blacklist uhci_hcd" >> /etc/modprobe.d/blacklist

I also reccomend disabling the NIC in the BIOS if you are going to use WiFi and also setting the following kernel paramater:

usbcore.autosuspend=1



Figure 1. As you can see above, I have an estimated battery life of 5.2 hours with WiFi on and Eee Controls set to Powersave. 

Figure 2. WiFi turned off via Eee Control, NIC disabled via BIOS and power savings options enabled by running powersaver script. 6.7 hours of battery life remaining.

 

Back To Articles