Create a Bootable MicroSD Card

  1. Hardware setup
  2. Get an image
  3. Create a bootable microSD card
  4. Boot your Gumstix system

With the image that you got in the last step, you are ready to create a microSD card with which to boot your Gumstix system.

Supported microSD Cards

Gumstix DuoVero COMs and Overo COMs support SD cards that comply with the SD Association's SD I/O Card Specification version 2.0, including SDHC cards.

In general, your microSD card must have a capacity of least 2.0 GB in order to flash an image. 

Prepare Your microSD Card

  1. Download the mk2partsd script from Gumstix' repository

  2. Run the script with the block device name as the argument. This command will erase any information on your microSD card.
    $ sudo ./mk2partsd <device name>
    E.g., If your microSD card is /dev/sdb:
    $ sudo ./mk2partsd /dev/sdb
    If you do not know your device's name, you can use the dmesg command after inserting the card.

Write the Images to microSD

Select Gumstix product line you are using:

DuoVero Series

  • Yocto Project

A complete Yocto Project installation consists of the following core files (actual filenames may differ slightly - use the name of the file you have downloaded):

FilenameFunction
rootfs.tar.bz2 A root file system. Rootfs.tar.bz2 has been used as a placeholder; this filename is usually something more like gumstix-xfce-image.duovero.tar.bz2.
uImage A kernel binary image.
u-boot.img A Das U-Boot bootloader binary image.
MLO An second-stage bootloader binary image.

These files are included in the Yocto Project download directories as individual files.

To install the images:

  1. Mount the partitions you created in the last step with the following commands:

    $ sudo mkdir /media/{boot,rootfs}
         Note: You only need to do this if you have not created these directories before.
    $ sudo mount -t vfat /dev/<DEVICE NAME>1 /media/boot
    $ sudo mount -t ext3 /dev/<DEVICE NAME>2 /media/rootfs
    
  2. Install the bootloader binary and Linux kernel binary image.

    MLO (the second-stage bootloader binary) must be copied before any other file.

    $ sudo cp MLO /media/boot/

    Next, copy the Das U-Boot bootloader binary and kernel image to the boot partition:

    $ sudo cp u-boot.img /media/boot/
    $ sudo cp uImage /media/boot/
  3. Expand the root file system archive onto the second partition:

    $ sudo tar -xjvf rootfs.tar.bz2 -C /media/rootfs
    $ sync
  4. Unmount the partitions:

    $ sudo umount /media/boot
    $ sudo umount /media/rootfs

Your bootable microSD card is now ready to use.

Overo and Verdex Pro Series

Select the set of instructions for the platform you chose in the last stage:

  • Linaro
  • Yocto ProjectAngstrom

The process of flashing a pre-built Linaro image is simple, but caution must be taken when specifying the device file.

The following commands will erase all partitions and data on your microSD card. Move any valuable data before proceeding.

  1. In a terminal, change to the folder where you downloaded the image.
  2. Extract the image you downloaded with this command:
    gunzip <IMAGE FILENAME>.gz

    This will extract the image to a file which usually has the same name, but without the .gz extension. This is the image you need to use.

  3. Use the following command to flash the image, ensuring that you use the correct device name and the filename for the expanded image:

    $ dd if=<IMAGE FILENAME> of=/dev/<DEVICE NAME>

    where <IMAGE FILENAME> is the image you extracted in the previous step and <DEVICE NAME> is the entire device name.

  4. It typically takes approximately one hour to flash an 8 GB Gumstix Linaro image, depending on the microSD card reader and card.

    The dd command does not display progress until it has finished running, but it is possible to force output with the following steps:

    1. Send a USR1 signal to the dd process with the following command:

      $ sudo kill -USR1 $(pgrep '^dd$')

      This does not stop the process, but rather displays the current progress

    2. It is possible to continuously display progress at specified intervals with the following command:

      $ sudo watch -n <INTERVAL IN SECONDS> kill -USR1 $(pgrep '^dd$')
  5. Alto35 expansion board users only: You will need to overwrite the MLO and u-boot.img files on your microSD card with the ones downloaded in step two. To do this:

    1. Mount the partition on your microSD card to a temporary directory (such as /mnt):
      sudo mount /dev/<DEVICE NAME>1 /mnt
    2. From the directory where you downloaded MLO and u-boot.img, copy the files, starting with MLO:
      sudo cp MLO /mnt/
      sudo cp u-boot.img /mnt/

Installing a Yocto Project or Angstrom image is slightly more complex than installing a Linaro image.

A complete Yocto Project or Angstrom installation consists of the following core files (actual filenames may differ slightly):

FilenameFunction
rootfs.tar.bz2 A root file system.
uImage A kernel binary image.
u-boot.img* A Das U-Boot bootloader binary image.
MLO* (or mlo-updated for Overo STORM COMs) An second-stage bootloader binary image for Overo COMs

These files are included in the Yocto Project and Angstrom download directories as individual files.

* Alto 35 expansion board users need a customized version of u-boot.img and MLO. Please see the previous step if you did not download these files.

To install the images:

  1. Mount the partitions you created in the last step with the following commands:

    $ sudo mkdir /media/{boot,rootfs}
         Note: You only need to do this if you have not created these directories before.
    $ sudo mount -t vfat /dev/<DEVICE NAME>1 /media/boot
    $ sudo mount -t ext3 /dev/<DEVICE NAME>2 /media/rootfs
    
  2. Install the bootloader binary and Linux kernel binary image.

    For Overo COMs only: MLO (the second-stage bootloader binary) must be copied first

    $ sudo cp MLO /media/boot/MLO

    Next, copy the Das U-Boot bootloader binary and kernel image to the boot partition:

    $ sudo cp u-boot.img /media/boot/u-boot.img
    $ sudo cp uImage /media/boot/uImage
  3. Expand the root file system archive onto the second partition:

    $ sudo tar -xjvf rootfs.tar.bz2 -C /media/rootfs
    $ sync
  4. Unmount the partitions:

    $ sudo umount /media/boot
    $ sudo umount /media/rootfs

Your bootable microSD card is now ready to use.

Pepper Single-Board Computer

  • Yocto Project

A complete Yocto Project installation consists of the following core files (actual filenames may differ slightly):

FilenameFunction
rootfs.tar.bz2 A root file system.
uImage A kernel binary image.
u-boot.img A Das U-Boot bootloader binary image.
MLO (or mlo-updated for Overo STORM COMs) An second-stage bootloader binary image for Overo COMs

These files are included in the Yocto Project download directories as individual files.

To install the images:

  1. Mount the partitions you created in the last step with the following commands:

    $ sudo mkdir /media/{boot,rootfs}
         Note: You only need to do this if you have not created these directories before.
    $ sudo mount -t vfat /dev/<DEVICE NAME>1 /media/boot
    $ sudo mount -t ext3 /dev/<DEVICE NAME>2 /media/rootfs
    
  2. Install the bootloader binaries and Linux kernel binary image.

    MLO (the second-stage bootloader binary) must be copied first

    $ sudo cp MLO /media/boot/MLO

    Next, copy the Das U-Boot bootloader binary and kernel image to the boot partition:

    $ sudo cp u-boot.img /media/boot/u-boot.img
    $ sudo cp uImage /media/boot/uImage
  3. Expand the root file system archive onto the second partition:

    $ sudo tar -xjvf rootfs.tar.bz2 -C /media/rootfs
    $ sync
  4. Unmount the partitions:

    $ sudo umount /media/boot
    $ sudo umount /media/rootfs

Your bootable microSD card is now ready to use.


  1. Hardware setup
  2. Get an image
  3. Create a bootable microSD card
  4. Boot your Gumstix system
Home Create a bootable microSD card