Perfect Ubuntu Jaunty on the Asus eeePC 1005HA (and 1008HA)

Standard

The 1005HA is one of the brand new Asus eeePC netbooks, and it is a great little machine — aside from the fact that it comes with Windows XP or a dumbed-down customised Xandros (allegedly — as time goes on, Asus seem to be selling out to Microsoft).

As the 1005HA is pretty new, it has a few odd hardware quirks that won’t be fully supported out of the box until the next release of Ubuntu.

Here I run through what I did to end up with a 100% working install — including all Fn hotkeys. The good news is that it is very easy!

My perfect Ubuntu setup on the 1005HA

My perfect Ubuntu setup on the 1005HA

If you followed these instructions before, and now want to upgrade to Karmic, see my notes here.

Step 1: Installing Ubuntu

Start off with Ubuntu Netbook Remix. It is designed for netbooks and comes with a customised kernel. Even if you don’t like the special netbook interface, it can be easily reverted to the default Ubuntu look with a single click.

Download it here
, and follow the simple instructions here to create an installer on a USB stick.

Power on your netbook, and repeatedly tap F2 to bring up the BIOS configuration.

Under “Boot settings”, disable “Boot Booster”, and hit F10 to save settings. We do this so that we can specify our USB installer as the boot device, and can re-enable it later.

When the machine reboots, hit “Esc” repeatedly to being up the boot menu. Choose the USB key, and away you go.

I wouldn’t bother with the “live preview”, and jump straight into the install.

The Ubuntu install process is straightforward.

Partitioning during install

Partition the disk however you like.

I created separate partitions for / (20gb), /boot (1gb), swap (4gb), bootbooster efi partition (16MB), and /home (the remainder), but how you do it is really up to you. I favour the above partitioning scheme to serve me really well over the years.

I set /home, /boot and / to format as ext4, and found performance to be great.

Don’t forget to create a swap partition of around 2x the amount of RAM if you want hibernation to work!

The EFI partition is for the Asus Boot Booster feature. It needs to be 8MB — I made it 16 just to be sure. At boot time, BIOS information is cached in this little partition so that the power-on self test can be bypassed. It speeds up the boot process by several seconds, which I think is great.

You can leave the EFI that comes pre-created. However, I wanted to blow away all partitions and start from scratch with my own partitioning scheme, so I recreated it. It must be a primary partition. It must be labelled as type “EFI”, which I was not able to do using the installer. See below for instructions on how to set it after the install is completed. Leave this partition unformatted.

Wired networking

After install, the first thing you’ll notice is that ethernet and wireless networking aren’t working. Fortunately, they’re easy to fix.

On a computer with working networking, download this file:

atheros-wired-driver-1005ha-linux

Open the zip file (double-click it), and extract it to the location of your choice. Then, in a terminal, navigate (‘cd’) to the ‘src’ directory of the unpacked files, and type:

make
sudo make install
sudo insmod atl1e.ko

If you receive an error after the first line, and you’re not running Ubuntu Jaunty UNR, ensure you have the linux headers package installed for your kernel — you’ll need to find and download the appropriate .deb and install it. Information is here.

Until Ubuntu Karmic is released, every time you do a kernel update, you will need to re-run the last two steps (preceded by a sudo rmmod atl1e.ko).

You now have ethernet network — so plug yourself in to a network cable and set up wireless…

Wireless networking

This is easy — you just need to install the driver back-ported from the next Ubuntu release.

First, enable the backports repository: Administration > Software Sources > Updates and enable “Unsupported Updates (jaunty-backports)”.

Then, open Synaptic Package Manager, find the package linux-backports-modules-jaunty, and install it.

Getting rid of the Netbook Remix interface

While the netbook remix interface is innovative, I prefer having a desktop and a normal panel with window switcher. To kill the netbook interface, Just go to Preferences > Switch Desktop Mode.

Gnome panels can take up too much space on a netbook screen — you can set them to auto-hide by right-clicking them and choosing Properties. To speed up the auto-hide behaviour, fire up gconf-editor, and navigate to apps > panel > toplevels, and reduce hide_delay and unhde_delay for each panel.

Super Hybrid Engine, Installing an eeePC tray utility, and getting all hotkeys to work

An eeePC tray utility is useful in order to utilise Asus’ so-called “Super Hybrid Engine”, which is really just marketing lingo for adjusting processor speed for different power:performance profiles. It also enables you to switch on/off all the eeePC’s integrated peripherals with a click or two, or using the hotkeys.

After a bit of trial and error, I found that the best tool for the job is “eeepc-tray”. It can be installed from a repository, which means that it will be automatically kept up to date.

Follow these simple instructions to add the statux.org repository.

When done, fire up Synaptic Package Manager, and find and install the packages eeepc-tray and eeepc-laptop-dkms. When done, reboot.

Now, all your hotkeys, apart from Fn+Space, Fn+F3, and the top-left touchpad enable/disable buttons,will be working.

Finishing off: Final hotkeys

First off, we need to make the touchpad addressable by other applications. The safest way to do that is through a rather cumbersome SHMConfig policy XML file.

Create a new plain text file, with the following content:

<?xml version="1.0" encoding="UTF-8"?>
<deviceinfo version="0.2">
<device>
<match key="info.product" string="SynPS/2 Synaptics TouchPad">
<merge key="input.x11_options.SHMConfig" type="string">True</merge>
<merge key="input.x11_driver" type="string">synaptics</merge>
</match>
</device>
<device>
<match key="info.linux.driver" string="psmouse">
<merge key="input.x11_options.SHMConfig" type="string">True</merge>
</match>
</device>
</deviceinfo>

and save it as /etc/hal/fdi/policy/shmconfig.fdi.

Then reboot, or restart X (right-alt – SysRq – k), and the touhpad will now be addressable. When you type, it will briefly disable to prevent accidental mousing.

All we need to do now is enable the outstanding hotkeys. Right-click the eeepc-tray icon, click “Edit Configuration”, and paste the following in the empty file:

#Touchpad control
KEY_TOUCHPAD="00000037"
# Fn + space
KEY_FSB="00000039"

And there you go… all working!

Sound and microphone

The sound works perfectly out of the box. However, the microphone input is set to the microphone jack, rather than the internal mic by default. To change it, open Volume Control, hit Preferences, and enable all the Mic and Input Source options. Then, set the input source to “Int Mic” under the Options tab.

In skype, set your Sound In device to be HDA Intel (hw:Intel, 0). (Sound Out and Ringing should be set to ‘pulse’)

Setting the EFI partition for boot booster

As mentioned above in the partitioning section, for boot booster to work if you removed the default Asus EFI partition during install, you’ll need to set your new 8MB primary partition as type “EFI”. Doing that is simple:

open a terminal, and type sudo fdisk -l to list your partitions. Look for the little Boot Booster partition you set aside. My EFI partition was on device /dev/sda3.

Then, to set the appropriate partition as “EFI”, type sudo sfdisk --change-id /dev/sda 3 ef, replacing “3″ with the device name you found in the previous step (e.g. “2″ for /dev/sda2).

Just be sure you do it to the right partition — back up your data first if you’re unsure!

When you reboot, hit F2, and re-enable boot booster in the BIOS.

229 thoughts on “Perfect Ubuntu Jaunty on the Asus eeePC 1005HA (and 1008HA)

  1. Concho

    I really want to buy you chocolate cake and/or ice cream. You saved my life and the 1005HA is running UNR smoothly. This is as good as it will get under Jaunty. Thanks a lot. No problems whatsoever… but I made a small change. The 1st time, I did the activate wired and then get wireless, and when the updates (beyond the backports) started, my wired died. Well, in my second install I used an old USB wireless card that Jaunty recognized immediately, and then got the internal wireless active through the backports, and then turned on the wired. It was all perfect and it keeps running awesome. Thanks again.

  2. Phil

    Thanks for these instructions!

    I’m having trouble installing the eeepc-tray and eeepc-laptop-dkms packages. It requires a number of dependencies, but when I try to install those, they ultimately go back and state that I need to install netbook-dkms. I try to install netbook-dkms and am told that I am not able to do so. I’d like to get these utilities if possible.

    Thanks again for the great post!

  3. Fabio

    Thank you so much for this guide. I am very new to Ubuntu (Netbook remix) and know very litle about computers, but I was able to implement almost all you listed here. Just one question: Ubuntu will not recognize an SD card when I put it in the slot. Is there a way I can recognize it, save files to it, etc?

  4. Harvey

    Thank you for your instruction.
    I’ve install on my 1008HA, and work so well.
    But I find that my netbook no sound on my testing.
    I don’t know why and I try to change the setting but still not work neither speaker or headphone.
    plz help……

  5. Dick

    Do you know if it is safe to install eeepc-tray and eeepc-laptop-dkms on my HA 1005 P running Hardy? I do want to stick with the Hardy release, but it would be nice to have the function keys working.
    Thanks,
    Dick

  6. Dragos

    Hi,

    Sorry for coming back with the same problem. But is there anyone here that has problem with the colors when using the webcam? How is your webcam working in low/high light. Are the colors accurate?

    Moreover, can one change the settings, one way or another? It is really annoying to get this purple all over the image, when using the webcam:(.

    Thank you!

  7. Northern Doctor

    Top guide. Am a total newbie but I’ve managed to install 9.04 on a separate partition and have my 1005ha dual booting with Windows XP.

    All working good now. Slightly stuck on the ‘final hotkeys stage’. Have cut and pasted text into Text Editor – tried to save it as file name as shown but computer says ‘NO!’. Was that the right thing to do? Any place it should be saved or I have totally misinterpreted this stage?

  8. Sergei

    Hi! First of all, thank You very much for this tutorial – it is great – especially the part about the wired and wireless connections.
    About the Super Hybrid Engine – there is some problems with StatUX… When I try to mark eeepc-acpi-utilities in Synaptic it makes me box with error message: Depends: libnotify-bin but it is not installable; Depends: cpofrequtils but it is not installable”… Why that?
    Another problem with my 1005HA is: Skype (2.1.0.47) can find nothing in the Sound Devices >> Microphone except PulseAudio server (local). And the microphone doesn’t receive anything… (I mean that Test Call returns me silence).
    Thank You in advance for Your answer (better if it will doubled to my email too). Thank You again.

  9. Phil Wong

    Nice to see anybody here. As in the demostration here, I installed the 3rd party driver AR81 thing for my eeepc 1005HA. Then I installed linux-backports-modules-jaunty for wireless.

    After I installed the AR81 driver, my LAN is working, but once I installed linux-backports-modules-jaunty, LAN won’t work but wireless work.

    I am sure when I installed linux-backports-modules-jaunty, the kernel changed and it screw up my LAN again. Is there any idea what I can do?

  10. Zed Yago

    excellent tutorial, thanks a lot
    i only was confused that after repairing wlan, iwlist scan showed no results…. turned out i had to sudo iwlist scan

  11. pasquale

    Hello there and super good job for the tutorial.you made my day by making my internet functionion though wifi and ethernet.
    one thing i cant get done.it’s the hotkeys.i mean i cant find the eeepctray and the other one.any suggestion?
    thanks much

  12. ukay

    Hi, first of all very nice guide :)

    I just wanna to add that after install eeepc-tray, the “mute” hotkey interfer with the gnome shortcut (I think). Anyway the behaviour is that you can’t set the mute state anymore. It is like that the OS receives the event twice and so it comes back to the non-mute state.
    I found that commenting out the line
    KEY_MUTE=”00000013″
    from file /etc/default/eeepc-acpi
    temporary fix the problem. Volume hotkeys already work in Jaunty so I think that future versions of eeepc-tray should not manage these keys anymore.

    Hope this help.
    with best

  13. a thankful guyi had aaspire oner n ac

    Ya i had an asire one running 9.04 nbr, so i decided to f*** xp on my asus and stick with NBR, and then the no connection made me cry until i found this guide thx.

  14. Hector.com

    I have a problem enabling the lat hotkeys. First, when I Right-click the eeepc-tray icon, click “Edit Configuration”, I do not get an empty file. I found the old values for the touchpad and replaced them with

    #Touchpad control
    KEY_TOUCHPAD=”00000037″

    Now the Fn+Space does access the powermodes.

    The Fn+F3, and the top-left touchpad buttons cycle through enabling and disabling the touchpad but the touchpad continues to work.

  15. Hector

    I have a problem enabling the lat hotkeys. First, when I Right-click the eeepc-tray icon, click “Edit Configuration”, I do not get an empty file. I found the old values for the touchpad and replaced them with

    #Touchpad control
    KEY_TOUCHPAD=”00000037″

    Now the Fn+Space does access the powermodes.

    The Fn+F3, and the top-left touchpad buttons cycle through enabling and disabling the touchpad but the touchpad continues to work.

  16. Figuriong

    Hi!
    Dear admin
    Pls. help me.I have just 2 little problem:
    -1. touch pad button isnt work.(fn+space is good).
    -2. firefox scroll is very slow(my friends tell me this is vga card driver problem)
    How can i fine it?

    Thax the

  17. amycsj

    Thank you! Thank you! Thank you!
    I just completed the install and enabled ethernet and wireless, after MANY other tries from other websites. Instructions are clear and they work! I’ve been a linux user for about 2 years, and definitely wanted it on my new computer (old one died). Now I’m happy to be back up and running.
    Thanks again!

  18. MaxMetal89

    wonderful!! it works great!! just one tip don’t search for eeepc tray package and the other one on synaptic but use the terminal! i was being crazy looking for this packages on the synaptic because i didnt found them! sorry my poor english i’m italian thanks again!

  19. Dennis Schafroth

    I am having some trouble.

    I have the 1005HA(-M ? Matte screen) but installing the packages from statux froze my trackpad.

    My goal is actually to get two finger scrolling to work, but following other blogs enabled SHMConfig, but the trackpad alway reports one finger with synclient

    Any succeded with two finger scroll?

  20. For those of you with the 1005HA-H (The 10,5 hour battery life version), you may find that the fan isn’t spinning at all. (CPU temp is around 70c, and fan reports 0 RPM). This is because the fan in the H-model is different from the other 1005ha-fans.

    Therefore netbook-dkms/eepc-tray cannot manage the fan, and you need to set the following in your eeepc-acpi.local:

    # This gives the BIOS control of the fan
    FAN_MODE=”auto”

  21. Fabio Coelho

    First o all, thank very much for this tutorial. it rocks! The only problem I have had is that my wireless keeps disconnecting frequently. The keyring problem is a pain as well. Do you have any suggestions for that? Especially for a non-tech guy like I am?

    Much appreciated,

    Fabio

  22. Thanks a lot for this guide!

    Stuff I did additionaly:

    * Fix Intel performance (switching to UXA, newer driver from X.Org SWAT PPA)
    * Replace network-manager with WICD, but that’s a personal preference

  23. postafflatus

    Can I use same instructions installing EeeBuntu on my Asus EeePC 1005HA? Or is this compatible ONLY with Canonical’s UBUNTU 9.04

  24. Hi just wanted to thank you for the amazing tutorial. I had never even SEEN Linux before today, and now I’m up and running. It’s people like you that are making this a more approachable OS option until things are truly plug and play (if ever).

    The only issue I have is I haven’t been able to get the touchpad toggle buttons to work. I was able to figure out how to save the file in the right place, right name, with the exact copied text, but for some reason after rebooting a few times it still doesn’t work. When I hit the button it just says “unable to enable touchpad; Ensure xorg.conf is properl…”

    I’m hoping that I can figure it out, but if you know what the culprit might be, I’d love to hear your advice!

    Vu

  25. zapakh

    Terrific guide! I was successful installing Kubuntu 9.04 on EeePC 1005HA. In order to get eeepc-tray to work, I had to install gtk-sharp2 and gedit. This isn’t an issue for UNR users, but I mention it for people like me who favor KDE.

  26. Dennis S

    Two finger scroll on Asus 1005HA (with matte screen):

    I just move from jaunty to Fedora 11, but I think it might work for ubuntu too. I was not able to two finger scroll. The fix for me is was to set down the emulateTwoFingerMinZ from 280 which was the default value in the driver to 50.

    VertTwoFingerScroll=1 shold also be set.

  27. Larry

    Great guide – as a new Linux user wanting to get Ubuntu onto my 1005HA, this guide was perfect. Thanks very much for publishing it.

    The only single issue I’ve yet found (and it may well have done this under Windows as well – I never really played with the XP install) is that if I select Super High Performance mode, my netbook will lock-up within minutes. I did upgrade the memory to 2GB but purchased 800MHz to ensure stability when the system overclocked itself, yet it pretty much guarantees a lock-up for me. Not a deal-breaker by any stretch as the performance gains are minimal at best, but was wondering if anyone else has tried this mode and had any issues. Doesn’t really matter what I’m running, the system quickly gets choppy and then freezes.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>