Running uBuntu 11.03 on ASUS UL80j
The ASUS UL80j is a light weight, ultra thin laptop that features Windows 7 Home Premium. It comes with an Intel i3 dual core 1.2ghz processor and 4GB of DDR3. Loading uBuntu 11.04 onto it was easy as cake. The laptop comes with a 500GB hard disk, I’ve split the partition 50-50.
Last week I began tinkering around with uBuntu 11.04 Beta before the official release, and I might say, this is the best release ever! I understand that veteran uBuntu users dislike the Unity interface, but I’ve grown to love it. Although I wish the task bar would be at the bottom. It is rather limiting being on the left hand side of the screen.
Issues At First
- Unity GUI Does Not Work
- Wifi LED Does Not Turn Off / On
- Suspend / Hibernate Hangs
- Runs Hot & Battery Doesn’t Last As Long As Win7
Getting Unity To Work
In order to get Unity to work properly I had to uninstall the Nvidia drivers. Once they were uninstalled, I restarted the system and Unity was up and running.
UPDATE: I’ve been digging around the uBuntu forums and found that the NVidia Optimus graphics card is not supported on uBuntu. There is a thread of customers complaining about the lack of support. If you stumbled upon this post and feel the need to raise your concerns, please visit Linux and Hybrid Graphics no Optimus support thread.
Fixing Wifi LED
If your blue Wifi LED light near your mouse pad isn’t working when you hit Fn + F2, here’s a quick fix. You will have to create two files and paste the following scripts.
[code lang=”bash”]sudo nano /etc/acpi/events/asus-wireless-switch[/code]
Paste the following code into this file:
[code lang=”bash”]event=hotkey ATKD 0000005d
action=/etc/acpi/asus-wireless-switch.sh[/code]
Next you will want to:
[code lang=”bash”]sudo nano /etc/acpi/asus-wireless-switch.sh[/code]
And paste this code into the file:
[code lang=”bash”]#!/bin/sh
# Toggle wireless device on Asus K52 laptops
WLANSTATUS=`cat /sys/class/ieee80211/phy*/rfkill*/state`
test -z $WLANSTATUS && exit 1
if [ $WLANSTATUS = 0 ]; then
echo 0 > /sys/devices/platform/asus_laptop/wlan
elif [ $WLANSTATUS = 1 ]; then
echo 1 > /sys/devices/platform/asus_laptop/wlan
fi[/code]
Next you will want to chmod +x asus-wireless-switch.sh and then restart acpi!
[code lang=”bash”]sudo chmod +x /etc/acpi/asus-wireless-switch.sh
sudo service acpid restart
sudo /etc/init.d/acpi-support restart[/code]
Fixing Suspend / Hibernation
My number one complaint wants Suspend / Hibernate. In order to resolve the Suspend / Hibernate issue, will have to create a file in /etc/pm/speed.d/. Note: For some reason, hibernate still doesn’t behave like I wish it would.
First create 20_custom_ehci_hcd in /etc/pm/sleep.d/
[code lang=”bash”]sudo nano /etc/pm/sleep.d/20_custom_ehci_hcd [/code]
Paste the following script and save.
[code lang=”bash”]
#!/bin/sh
# File: “/etc/pm/sleep.d/20_custom-ehci_hcd”.
case “${1}” in
hibernate|suspend)
# Unbind ehci_hcd for first device 0000:00:1a.0:
echo -n “0000:00:1a.0” | tee /sys/bus/pci/drivers/ehci_hcd/unbind
# Unbind ehci_hcd for second device 0000:00:1d.0:
echo -n “0000:00:1d.0” | tee /sys/bus/pci/drivers/ehci_hcd/unbind
;;
resume|thaw)
# Bind ehci_hcd for first device 0000:00:1a.0:
echo -n “0000:00:1a.0” | tee /sys/bus/pci/drivers/ehci_hcd/bind
# Bind ehci_hcd for second device 0000:00:1d.0:
echo -n “0000:00:1d.0″ | tee /sys/bus/pci/drivers/ehci_hcd/bind
;;
esac
[/code]
Now chmod +x the file.
[code lang=”bash”]sudo chmod +x 20_custom-ehci_hcd[/code]
Issues That Arise
Now that Suspend works fine, I’ve noticed if I keep my laptop on suspend for long periods of time the GUI won’t load upon wake up. The only work around I’ve figured out is to hit Ctrl + Alt + F1, login, and shutdown. Update: Another alternative to restarting the laptop is to restart gdm. Look below.
[code lang=”bash”]sudo shutdown -r now[/code]
If upon waking up and the GUI does not load hit Ctrl + Alt + F1. Type the following:
[code lang=”bash”]sudo /etc/init.d/gdm restart[/code]
Conclusion
With these simple fixes, I’m able to live with running uBuntu 11.04 on my ASUS UL80j. I have not been able to figure out a way to make the processor from running as hot as it does. I am thinking because the UL80j has two GPU’s (Intel & Nvidia Optimus), uBuntu automatically runs the Nvidia card instead of conserving power with the built in gpu. Another announce is the GUI not loading after the laptop has been in Suspend mode for over 24 hours.