⇓ More from ICTworks

Ubuntu for eeeBox

By Wayan Vota on September 18, 2009


[[TOC]]

Summary

We at Inveneo love the Asus eeeBox for its low power consumption, good performance, small form factor, and durability in rugged environments.  We also love Ubuntu for its intuitive user interface, open source nature, and broad range of available software.

There’s only one problem:  out of the box, current versions of Ubuntu don’t offer full support for eeeBox hardware.  Most notably, the Realtek RT2860 802.11 wireless card handles network detection properly but has trouble connecting to WPA and WPA2 networks.

Fortunately, there’s an easy fix.  The guys at Array.org maintain Ubuntu kernel packages to supply the drivers necessary to use the Asus EeePC on the Ubuntu v8.04 (Hardy Heron), Ubuntu v8.10 (Intrepid Ibex), and Ubuntu v9.04 (Jaunty Jackalope) based distributions.  Array.org even has its own Debian style APT repository to make installation quick and easy.

Here’s how you make it happen:

Installation

Basically, this is a quick rehash of Array.org’s own install guide.

Install Ubuntu 9.04 Desktop

It doesn’t get any easier than this, Head over to ubuntu.com and download the ISO for Ubuntu 9.04 Desktop (you can try the Netbook Remix if you’d like, but we haven’t tested it)

You’ll need to burn the ISO to CD, configure the BIOS of your eeeBox to boot from CD, and boot from your Ubuntu installer CD.

After installing, you may want to set your eeeBox BIOS back to boot the hard drive first for security reasons.

Install the Array.org kernel packages

Once you’ve finished installing Ubuntu, start up the eeeBox and log in.  

You’ll notice that everything works great…almost.  If you try to join a wireless network by typing in the WPA/WPA2 password, the network status indicator will just keep spinning.  After a while, it will say it couldn’t connect and ask you for the password again.

Open a terminal window by choosing ”applications -> accessories -> terminal”

Issue the following two commands to add the array.org APT repository to your repository list

wget http://www.array.org/ubuntu/array-jaunty.list

sudo mv -v array-jaunty.list /etc/apt/sources.list.d/

(you’ll be asked for your password)

Then, you need to get and install array.org’s APT repository key so you know the packages you’re installing are genuine

wget http://www.array.org/ubuntu/array-apt-key.asc

sudo apt-key add array-apt-key.asc

Finally, update your package lists

sudo apt-get update

Now you’re ready to install the kernel packages

sudo apt-get install linux-netbook-eeepc
sudo apt-get install linux-netbook

Note: we’ve since discovered that the leaner linux-netbook-eeepc kernel strips out some things that aren’t necessary for the eeePC laptop, but that are required to make wired networking on the eeeBox desktop work. Stick with linux-netbook

Note that, even though these packages were designed for the Asus eeePC (a laptop) it’s completely acceptable to use them on your eeeBox since the hardware is almost identical.

You should also issue one last set of commands

sudo apt-get remove linux-generic

sudo apt-get remove linux-image-generic

sudo apt-get remove linux-restricted-modules-generic

This removes the standard generic linux kernel from the list of packages to be automatically updated by APT, but will keep your most recent version of the generic kernel around in case you need it for testing.

According to Array.org:

It’s useful to keep this last generic kernel around just incase you encounter an unexpected problem with the netbook kernel need an “official ubuntu” kernel to fall back to.

When the packages finish installing, you should be asked to reboot…if not, manually reboot your eeeBox.

Now, the kernel is installed, but grub doesn’t yet know to use the new kernel as its default.  When prompted during the boot process, press <ESC> to enter the GRUB boot menu, and choose the netbook-eeepc option from the menu.  In the next step, we’ll fix the GRUB default.

Once Ubuntu finishes booting, connect to your wireless network.  Everything should be working!

Edit your GRUB configuration

(Here is a helpful tutorial on this if you’d like more information)

Open a terminal again and type

sudo cp /boot/grub/menu.lst /boot/grub/menu.old

(this just backs up this important file in case you make mistakes)

sudo nano /boot/grub/menu.lst

This is the file that tells grub which kernel to boot.

Scroll down until you find the lines that begin with ”title”, Each ”title” line defines one menu option on the GRUB menu.  The first ”title” line is number 0.  Count down until you find the menu option for ”netbook-eeepc” (Not netbook-eeepc (recovery mode)).  This is the one you want.  In my case, it was the third ”title” line, which made it menu choice 2.

Scroll back up to the top of the menu.lst file and find the line that begins with the word ”default.”  Change it to read

default          <menuchoice>

(Where <menuchoice> is the number of the netbook-eeepc kernel in the grub menu)

Save the file by pressing ”<Ctrl-O>” and then exit by pressing ”<Ctrl-X>”

Reboot

You’re done!  Wireless networking should be working.

Untested Alternate Ubuntu / eeeBox Packages

In the course of our search for a quick eeeBox Ubuntu fix, we also came across the following other options.  We don’t have any experience with them yet, but we’d love to hear from you if you have an opinion!

Filed Under: Software
More About: , , , ,

Written by
Wayan Vota co-founded ICTworks and is the Digital Health Director at IntraHealth International. He also co-founded Technology Salon, MERL Tech, ICTforAg, ICT4Djobs, ICT4Drinks, JadedAid, Kurante, OLPC News and a few other things. Opinions expressed here are his own and do not reflect the position of IntraHealth International or other ICTWorks sponsors.
Stay Current with ICTworksGet Regular Updates via Email

Sorry, the comment form is closed at this time.