To the BeagleBoard Beginner

These short notes aim to help beginners get a working Angstrom system running on the beagleboard.

How to unpack and boot the demo image

  • Format the SD card ( card contains two primary partitions; One 70MB FAT partition labeled boot, One ext3 partition labeled Angstrom. Use mkcard.txt script)
  • Copy MLO and u-boot.bin from to the first partition.
  • Unpack the tarball to the root partition of your Beagleboard SD card.

NOTE: superuser privileges are required when unpacking the image so that device nodes can be created on the SD card filesystem. This assumes that the SD card has the root filesystem (ext3) partition mounted as /media/rootfs.

eg. for Linux:  $ sudo tar -xjv -C /media/rootfs -f /path/to/Angstrom-Beagleboard-demo-image*rootfs.tar.bz2

  • Find the uImage-2.6.* (kernel) file in /boot of the rootfs and copy the file to the boot partition as uImage. This new kernel is required to boot the filesystem reliably. This will replace your existing validation kernel if it is present. Before doing this step, you may wish to rename the working validation kernel from uImage to something else before you copy the Angstrom uImage file.
  • Ensure all SD card filesystem operations have completed (ie. filesystem cache has flushed to SD card) and eject the SD card from your development machine. Most operating systems have a “Safely Remove” action to perform this from the Desktop.
  • Insert SD card into Beagleboard and power it up.

NOTE: Use external 5V supply and remove all USB connections from the Beagleboard when booting for the first time. Try USB later once you know it works.

What to Expect…
Watch the serial port output. You should observe the following:

  • The U-Boot startup.
  • Kernel uncompresses and boots.
  • Lots of kernel messages for up to a minute while filesystem scanning happens and the system boots.
  • At the end you should see a login prompt below the Angstrom ASCII-art logo. The root password is empty (just press enter if asked for a password). You can now login to your new Angstrom demo system.

What If…
Some common problems and their fixes

  • The kernel panics at random points during start-up.
  • Either use the 5V external power supply or use one of the multi-config-cpuidle kernels. Sometimes the current via USB is not enough, but the cpuidle kernel should help with that. That comes at the cost of garbled characters on the serial console when it goes into a lower power mode.
  • Even with the 5V supply the kernel panics during start-up.
  • Ensure that you copied the uImage file from the Angstrom filesystem into the boot partition. Compare md5 checksums to be sure.
  • USB Ethernet doesn’t work at startup.
  • The culprit is the composite USB gadget driver. In etc/default/usb-gadget set USB_MODE=’networking’ and run the module reconfiguration script (name?).

What Next?
Once you have a working Angstrom system you may want to connect it to:

  • setup networking via USB
  • bring the packages up-to-date via opkg
  • tweak the config
  • add your own applications


Angstrom-Distribution.orgIBM developerWorks