Coming to life

Beagleblog

Mar 05, 2009 GMT

Oliver Frommel

There are several options for running a Linux system on the BeagleBoard. The most common is the Angstrom distribution, alternatives include an Android port by the Embinux company, a custom Ubuntu, and maybe more I don't even know of. I'll go with Angstrom for now, others distributions will have to wait.

The BeagleBoard has a card reader slot that can read SD and SDHC cards, so I am getting an 8GB SDHC card to store the Linux system. Conveniently, you can just prepare the flash card with your Linux PC – provided you have a working card reader.

Installing Angstrom is not a big deal; the only challenge is to partition the SD card appropriately. I just followed the tutorial on http://code.google.com/p/beagleboard/wiki/LinuxBootDiskFormat and everything worked out. According to the tutorial, you need to set some low-level parameters you might know from BIOS settings for your hard drive, such as cylinders and read/write heads (which don't really exist with a flash card). One FAT partition is for booting the system, another Ext3 partition will contain the Linux system.

When you are done partitioning, you need to copy the boot files into the FAT partition and un-tar Angstrom to the Linux filesystem. The web page http://code.google.com/p/beagleboard/wiki/HowToGetAngstromRunning lists the actual commands. I did not need to update the BeagleBoard firmware as the page proposes because it was already up to date on my hardware. So after unpacking the files, you just need to configure the boot loader.
Putting the SD card into the slot on the BeagleBoard and plugging the (USB) power in will immediately show the bootloader screen, followed by the well-known Linux boot messages. If you have a monitor attached to the board via an HDMI/DVI cable, you will see a graphical boot screen, too. Connecting mouse and keyboard via a USB hub will make the BeagleBoard an almost fully functional graphical terminal – you just don't have a network connection.