Installing Ubuntu on Beagleboard-XM

Installing Ubuntu on Beagleboard is very straightforward. The things you need are as follows.
  • 4GB SD card minimum
  • Beagleboard-XM
  • SD Card Reader
  • Access to Linux Desktop Computer (Ubuntu preferred); VirtualBox Ubuntu would also work
  • HDMI Cable
  • HDMI Monitor 
  • Ethernet connection to Beagleboard
  •  A power source that gives 5 volts and can provide .7 Amps

To make sure that all the packages that are needed are installed on the Desktop computer, open terminal and  type:


This will install all the packages needed to carry out the next set of commands. We will be using a pre-built package of Ubuntu that is found at http://rcn-ee.net/deb/rootfs/ . At that link, you may see different folders like oneiric, quantal and raring. You can go there to get the latest stable release of Ubuntu for the beagleboard. We will be using the latest Ubuntu 12.10 from the quantal folder. In terminal type:


This will download the package to your home folder. Next we must un-tar the package being that the file is similar to a zip file. Un-taring is similar to unzipping. To extract the package and enter the folder, in terminal type:


At this point, you should be in the Ubuntu package folder. Next we find out where the SD card is mounted. In terminal type:

A window similar to this should be shown:


As you can see, my memory card is mounted at /dev/sdb1 and sdb2 because it has 2 partitions. You can tell by the size -> 3.6G; I'm using a 4GB card. At the end of the next few steps, your memory card will also have 2 partitions. At this point, you should still be in the Ubuntu package folder in terminal. Type:


Where sdb is seen, you can substitute for where your SD card is mounted. For example, if your card was mounted at /dev/sda, the next instruction would be sudo ./setup_sdcard.sh --mmc /dev/sda --uboot beagle_xm.

After the last instruction, a prompt may ask if you selected the correct drive. Answer with a y or n. The script then continues to run setting up the SD card to boot the Beagleboard; this may take a few minutes. When it's finished you should see:


Where "ubuntu" is the username and "temppwd" is the password. Safely eject and remove the SD card. You can then put the SD card in the Beagleboard-XM and turn it on making sure that the HDMI monitor is connected to the Beagleboard. 

While the Beagleboard is booting, LED D6 on the board should blink like a heartbeat while D7 should blink erratically being that it is the memory card activity light. This tells you if the Beagleboard is booting or not.

A problem I've had is that the screen doesn't automatically show at first boot. If you have this problem, you may want to do the next step, otherwise, skip it.

If the monitor doesn't show anything, first turn off the Beagleboard, then remove the SD card (failure to do it in that order may corrupt the SD card). Put the SD card back into the SD card reader of the desktop PC. In the "boot" partition of the SD card, there is a file called uEnv.txt. To get the monitor to show anything, we must edit that file. Open uEnv.txt in any text editor and copy and paste the following, replacing everything that's already in the file:



Save the file, safely remove the SD card, insert into Beagleboard, and boot. The monitor should come one with white words running down the screen. Basically, that method only changes a few of the first lines in uEnv.txt but it's easier to just copy and paste it. But if you want to play around with the screen resolution, you may need to investigate the dvimode line a bit more. I used 1024x600 because it worked best for me although that may not be the case for someone else. The Beagleboard should then boot to a prompt similar to this:


We can now start setting up the Ubuntu interface.

 First thing we want to do after logging in is to update the package files on the beagleboard. Type:


Lastly, we install the gnome interface for Ubuntu:


This process will take and hour or two to complete. After a manual reboot, you should be booted into the gnome GUI. You can reboot by typing in:


Your Beagleboard-XM should now be ready!

Next: Installing OpenCV on Ubuntu Desktop and Beagleboard-XM


2 comments:

  1. Buenas! siguiendo sus pasos, el comando " sudo ./setup_sdcard.sh --mmc /dev/sdb1 --uboot beagle_xm " me genera lo siguiente " is not in the sudoers file. this incident will be reported " que debo hacer?

    ReplyDelete
  2. otra cosa en el comando anterior " wget http://rcn-ee.net/deb/rootfs/quantal/ubuntu-12.10-console-armhf-2013-04-26.tar.xz " no funciona, muy probablemente por que no es la ubicaciĆ³n... sin embargo " wget rcn-ee.net/deb/rootfs/trusty/ubuntu-14.04.1-console-armhf-2014-10-29.tar.xz " este si funciona ( para la descarga de Ubuntu 14 ) y para aclarar en el comando " tar xJf ubuntu-14.04.1-console-armhf-2014-10-29.tar.xz " la "J" de (xJf) es para el filtro de archivos .xz

    ReplyDelete