I stubbornly refuse to give up my classic Asus Eee PC 701, one of the original netbooks. It’s 2.5 years old now but still serving me well. While these are supposed to be fairly disposable machines, I’m actually using this thing more and more these days (longer commute may have something to do with it). I decided to upgrade the battery from the included one (4400 mAh, rated for 2-2.5 hours). 7200 mAh batteries abounded for this Eee PC model but I decided to go crazy and buy the 10400 mAh battery.
And it’s huge. No one can keep a straight face when gazing upon this beast.
Naturally, I’m curious whether this battery is actually that much better. I searched to find if there are any established methodologies for testing battery life. It seems that the most established method is the most intuitive method, scientifically: Find a way to simulate typical usage and measure how long it takes before the machine dies from lack of battery charge.
To that end, here is my testing method:
- Charge a battery all the way (until the Easy Peasy/Ubuntu battery meter no longer appears)
- Prevent the machine from sleeping or even blanking its screen; for this, I found the program xdotool which programmatically actuates various X windows actions, like mouse movement
- On a different machine, run netcat in listening mode
- Create a script that wakes up periodically and connects via netcat to the other machine and prints a timestamp
- Unplug power cable and note the starting timestamp
- Go to bed
- The next morning, observe the final timestamp transmitted to the other computer
This may seem like a fairly non-stressful test. However, I think it simulates my normal working conditions in which I mostly use the netbook as a glorified portable word processor, typing things like this very blog post whilst riding a train.
This is the Bash script I came up with for testing:
while [ 1 ] do date x=$RANDOM let "x%=800" y=$RANDOM let "y%=480" xdotool mousemove $x $y sleep 30 done | nc <dest-machine> <port-number>
Sit in a loop, print the current timestamp, move the mouse pointer to a random coordinate (800×480 screen), and sleep for 30 seconds.
4400 mAh battery: 1st run: 2h29m 2nd run: 2h31m 10400 mAh battery: 1st run: 5h22m 2nd run: 5h23m
So, yay, I’m glad to learn that the enormous new battery lasts proportionally longer than the original battery. This is especially useful since the battery indicator isn’t that helpful in estimating the charge of the larger battery. I suspect that either the software or the hardware simply isn’t aware that a longer battery life is possible.