Ubuntu Lucid on the Asus UL30VT
From David Darts Wiki
Update (September 9-2010): Please see my new guide Ubuntu Maverick on the Asus UL30VT.
I'm running Ubuntu Lucid (10.04) 64-bit on the Asus UL30VT (BIOS 210) and have been pretty happy with the results so far. Thanks to the Launchpad UL30 team and the Ubuntu Forums UL30 folks I've been able to get most things working.
There are a few issues that need resolving out of the box but I've found workarounds for most of them. Unfortunately, it is currently not possible to easily switch between the Intel and Nvidia graphics cards though there are routes to getting each one working (with associated pros and cons). See "Hybrid Graphics Drivers" section directly below for details.
As of 06.30.2010, the stock kernel (2.6.32-23-generic) seems to support most features. I've recently been experimenting with newer kernels (see below) and have had some success with power savings etc.
Contents |
Hybrid Graphics Drivers
Updated: August 19-2010
The UL30VT ships with two graphics cards: the NVidia G210M Graphics with 512MB DDR3 + Intel GMA 4500MHD (Switchable VGA). It is possible to get either of these cards working though it is not currently possible to easily switch between them. A bug report has been filed on launchpad and there has been some progress in the Linux community to support hybrid graphics.
Intel GMA 4500MHD
By default, Ubuntu provides a driver for the Intel card which supports 720p on YouTube etc. It also fully supports suspend & resume from suspend (which are both natively fast). Also, with a bit of work, it is possible to get the keyboard brightness keys working (see Screen Brightness section below).
Support isn't perfect, however - I've experienced random screen flickering and the HDMI port doesn't appear to work at all. Also, the Nvidia graphics card appears to be active which drives up the power consumption and lowers battery life. You can confirm that both cards are active by opening a terminal and typing:
lspci |grep VGA
The good news is that it is apparently possible to turn off the Nvidia card. I haven't tried this fix but you can learn more over at the Ubuntu Forums.
Nvidia Accelerated Graphics Driver
The second option is to disable the Intel card and activate the Nvidia Accelerated Graphics Driver. At present, the only way to disable the Intel card is to switch the SATA Operation Mode from "Enhanced" to "Compatible." Check out this bug report on Launchpad for more details.
To disable the Intel card, enter the BIOS Setup Utility (press the F2 key on startup) and Select: Advanced > IDE Configuration > SATA Operation Mode. Change the configuration from Enhanced to Compatible. Press F10 to save and exit.
Next install the Nvidia driver via the System menu > Administration > Hardware Drivers. Reboot to activate the driver.
You can confirm that the driver is activated by opening a terminal and typing:
lspci |grep VGA
The Nvidia driver should be the only driver listed.
This driver definitely offers a performance boost for video etc. I can consistently get over 15000 frames per second when I run glxgears in a terminal.
I've also tested the HDMI out port on my TV and it seems to work well. The key downside to this configuration is that it degrades the I/O performance of the hard drive. See gille's post for more info. I can confirm that booting on the stock HD takes 20-30 seconds longer as does suspend and resume from suspend. I've done multiple resumes from suspend and so far everything (wireless, audio, etc) continues to work.
Screen Brightness
There are a number of techniques posted around the net for enabling the Fn+F5 and Fn+F6 keys to control screen brightness. Success is somewhat dependent upon which graphics driver/card you employ.
Intel Driver
I have managed to restore some functionality to the screen brightness keys using the Intel card thanks to Doug SuperDuG Smith post. There seems to be a pretty long lag time between pushing the key and the screen dimming or brightening. I've found pushing the keys at one second intervals seems to keep everything in sync (definitely not ideal).
- To activate the screen brightness keys first backup asus-brn-down.sh
sudo cp /etc/acpi/asus-brn-down.sh /etc/acpi/asus-brn-down.sh.backup
- Then open asus-brn-down.sh with Gedit.
sudo gedit /etc/acpi/asus-brn-down.sh
- Erase everything and paste the following inside.
#!/bin/sh
test -f /usr/share/acpi-support/key-constants || exit 0
. /usr/share/acpi-support/key-constants
acpi_fakekey $KEY_BRIGHTNESSDOWN
# added per http://forum.notebookreview.com/showpost.php?p=5665108&postcount=1235
#brightness=`echo $3 | sed 's/0000002//'`
#setpci -s 00:02.0 F4.B=${brightness}f
# added per mailing-list post
brightness=$((0x`setpci -s 00:02.0 F4.B`-16));
if [ $brightness -lt 0 ] ; then
brightness=1;
fi
setpci -s 00:02.0 F4.B=`printf '%x' $brightness`;
- Save and close.
- Now backup asus-brn-up.sh
sudo cp /etc/acpi/asus-brn-up.sh /etc/acpi/asus-brn-up.sh.backup
- Open asus-brn-up.sh with Gedit.
sudo gedit /etc/acpi/asus-brn-up.sh
- Erase everything and paste the following inside.
#!/bin/sh
test -f /usr/share/acpi-support/key-constants || exit 0
. /usr/share/acpi-support/key-constants
# DeviceConfig
if [ "$model" != "701" ] ; then
# On an Eee PC (ASUSTeK model 701) the keys in the range handled by this
# script have entirely different meanings. They are handled in separate
# scripts.
acpi_fakekey $KEY_BRIGHTNESSUP
fi
# added per http://forum.notebookreview.com/showpost.php?p=5665108&postcount=1235
#brightness=`echo $3 | sed 's/0000001//'`
#setpci -s 00:02.0 F4.B=${brightness}f
# added per mailing list post
# in /etc/asus_brn_up.sh
brightness=$((0x`setpci -s 00:02.0 F4.B`+16));
if [ $brightness -gt $((0xff)) ] ; then
brightness=$((0xff));
fi
setpci -s 00:02.0 F4.B=`printf '%x' $brightness`;
- Save and close.
- Now you need to modify grub:
sudo gedit /etc/default/grub
- Change your "GRUB_CMDLINE_LINUX_DEFAULT=" to the following:
GRUB_CMDLINE_LINUX_DEFAULT="i915.powersave=0 acpi_backlight=vendor vga=792 quiet splash""i915.powersave=0 acpi_backlight=vendor vga=792 quiet splash"
- Now update your grub.cfg file:
sudo update-grub
- Reboot to activate the screen brightness keys.
Nvidia Driver
I've yet to get the screen brightness keys working under the Nvidia driver. A simple workaround, however, is to install the Power Manager Brightness Applet (the applet doesn't appear to work when using the Intel graphics driver). Installation is simple: right click on the top panel, select "Add to Panel...", and choose Brightness Applet.
Unfortunately, the Brightness Applet can only be operated via the keyboard. To do so, click on the applet once to highlight it and then move the slider with the Page Up or Page Down Arrow keys to adjust the brightness level.
Mainline Kernel (Optional)
Updated: August 19-2010
I've been testing mainline kernels and have recently installed 2.6.35rc6 from the Ubuntu mainline repository with no problems to report as of yet...
To install a mainline kernel, visit the mainline repository, select a kernel from the list, and click on the links to install these 3 packages with the GDebi Package Installer (use the following order to ensure all dependencies are met):
- linux-image (pick your system: i386 or amd64)
- linux-headers (all)
- linux-headers (pick your system: i386 or amd64)
Running the Nvidia Driver (see details above) and following PowerTOP's recommendations (USB Autosuspend, etc) I have been averaging just under 10.0W for power consumption with the screen brightness at 50% and wireless on. This is definitely an improvement over earlier kernels.
Touchpad
Updated: June 17-2010
The touchpad on the UL30VT actually works pretty well. To enable two-finger and horizontal scrolling, simply go to System > Preferences > Mouse > Touchpad and check the Two-finger scrolling and Allow horizontal scrolling boxes.
Also worth noting, the Fn+F9 key does not disable/enable the touchpad out of the box. Thanks to Cierreics et al there's an easy fix.
- First backup asus-touchpad.sh
sudo cp /etc/acpi/asus-touchpad.sh /etc/acpi/asus-touchpad.sh.backup
- Next open asus-touchpad.sh
sudo gedit /etc/acpi/asus-touchpad.sh
- And replace the code with this:
#!/bin/sh
[ -f /usr/share/acpi-support/state-funcs ] || exit 0
. /usr/share/acpi-support/power-funcs
if (! test -x /usr/bin/xinput)
then
logger "Error: Please install package xinput to enable toggling of touchpad devices."
exit 0
fi
# if this is the right behavior, then this should be moved out of acpi-support
# to hal (or whatever is replacing hal for such events)
getXconsole
XINPUTNUM=`xinput list | grep 'ETPS/2 Elantech Touchpad' | sed -n -e's/.*id=\([0-9]\+\).*/\1/p'`
[ -f /usr/share/acpi-support/state-funcs ] || exit 0
# get the current state of the touchpad
TPSTATUS=`xinput list-props $XINPUTNUM | awk '/Synaptics Off/ { print $NF }'`
# if getting the status failed, exit
test -z $TPSTATUS && exit 1
if [ $TPSTATUS = 0 ]; then
xinput set-int-prop $XINPUTNUM "Synaptics Off" 8 1
if [ -e /sys/class/leds/asus::touchpad/brightness ]; then
echo 0 > /sys/class/leds/asus::touchpad/brightness
fi
else
xinput set-int-prop $XINPUTNUM "Synaptics Off" 8 0
if [ -e /sys/class/leds/asus::touchpad/brightness ]; then
echo 1 > /sys/class/leds/asus::touchpad/brightness
fi
fi
- Save and close. You should now be able to disable/enable the touch pad with Fn+F9. If it doesn't work, try rebooting.
Power Saving
There are a number of modifications you can make to increase the battery performance of the UL30 Cierreics offers some useful power saving techniques on the Ubuntu forums. After implementing these tips, my system (kernel 2.6.35rc5) running the Nvidia driver with the screen brightness turned down, wireless turned on and a few windows open (including Firefox) averages around 9.0W.
PowerTOP
PowerTOP can help you monitor and improve power consumption while running on battery. To install, simply use:
sudo apt-get install powertop
Suspend and Hibernate
Suspend and Hibernate work well out of the box though there appears to be a bug with the gnome-power-manager when going into suspend on idle (while running on battery). Instead of going into suspend, the system instead hibernates. Fortunately there's an easy workaround:
- Open the Configuration Editor by opening a terminal (or pressing Alt+F2) and typing:
gconf-editor
- Navigate to apps > gnome-power-manager > actions sleep_type_battery
- Click on "hibernate" and replace the text with "suspend"
A a bug report has been filed on Launchpad - thanks to James Adney for the workaround.
Webcam and Skype
The webcam works out of the box though the webcam image displays upside down. You can test this by installing Skype (see instructions below) or by installing and opening Cheese:
sudo apt-get install cheese
Fortunately, there's an easy fix for flipping it back around. Thanks to radu cotescu and Simon von Danwitz
- Download and install Skype for Linux Beta
- Add the 4l2ucp package (not sure this is necessary)
sudo apt-get install v4l2ucp
- Add the libv4l-PPA, update package lists and install libv4l-0
sudo add-apt-repository ppa:libv4l
sudo apt-get update
sudo apt-get install libv4l-0
- Create shell-script to start Skype by opening the gedit Text Editor and pasting the following inside:
#!/bin/bash LD_PRELOAD=/usr/lib32/libv4l/v4l2convert.so skype
- Save the file as "skype.sh" and give it executing rights by navigating to the file's folder and typing:
sudo chmod +x skype.sh
- Restart your system and then start Skype by double-clicking on and running skype.sh
- Note: when Skype first opens, navigate to General > Choose style and select "Desktop Settings" to correct the menus.
- Quit Skype and start again by double-clicking and running skype.sh
Firefox 3.6.4
Firefox has recently released version 3.6.4 which now includes crash protection. This means that when a plugin crashes or freezes (I'm looking at you Flash!) while using Firefox, users can enjoy uninterrupted browsing by simply refreshing the page. To install Firefox 3.6.4, simply add the PPA for Ubuntu Mozilla Security Team by opening a terminal and typing:
sudo add-apt-repository ppa:ubuntu-mozilla-security/ppa
Then do an update:
sudo apt-get update
Finally, go to System > Update Manager and install the updates.
Unison
I use Unison to keep files on my laptop in sync with my desktop server on my home network. Unfortunately, the latest stable version of Unison (2.32.52-1) hasn't yet made it into the Ubuntu repos. However, you can download and install a copy from the Debian testing repository. Be sure to install the same version of Unison on both your laptop (client) and server.
You also need to install openssh-server on the server side:
sudo apt-get install openssh-server
Once the software is installed on both machines, you can test that you can invoke Unison on your server from your laptop with:
ssh remotehostname unison -version
To sync a folder on your laptop with a folder on your server, use the following:
unison Music ssh://remotehostname//home/username/Music


