The ODROID-U2 is a very low cost, high performance, and micro-sized development platform based on an Exynos 4412 ARM Cortex-A9 Quad Core 1.7GHz CPU. It has 2 USB 2.0 ports, micro HDMI, The board has several accessories available through Hardkernel such as 10.1" and 14" LVDS LCDs (with adapters), Wifi and Bluetooth adapters, 1.8v serial adapter (recommended if you're going to be any debugging...actually, it's recommended anyway so you won't have to pay shipping twice when you realize you need it later), and an eMMC storage module. They also have a camera module, but currently it does not work with Linux.

Other features of the board include:

  • Mali-400 Quad Core Graphics accelerator
  • 1080p/720p video over HDMI, 1360x768 over LVDS
  • 3.5mm headphone/microphone jacks
  • 2x USB 2.0 Host ports
  • 1x USB 2.0 Device port
  • Micro SD
  • eMMC module
  • MIPI-CAM camera connector (not yet supported)
  • 48 mm x 52 mm base board size

SD Card Creation
Replace sdX in the following instructions with the device name for the SD card as it appears on your computer.

  1. Zero the beginning of the SD card:
    dd if=/dev/zero of=/dev/sdX bs=1M count=8
  2. Start fdisk to partition the SD card:
    fdisk /dev/sdX
  3. At the fdisk prompt, create the new partitions:
    1. Type o. This will clear out any partitions on the drive.
    2. Type p to list partitions. There should be no partitions left.
    3. Type n, then p for primary, 1 for the first partition on the drive, and enter twice to accept the default starting and ending sectors.
    4. Write the partition table and exit by typing w.
  4. Create and mount the ext4 filesystem:
    mkfs.ext4 /dev/sdX1 mkdir root mount /dev/sdX1 root
  5. Download and extract the root filesystem (as root, not via sudo):
    wget http://archlinuxarm.org/os/ArchLinuxARM-odroid-u2-latest.tar.gz bsdtar -xpf ArchLinuxARM-odroid-u2-latest.tar.gz -C root
  6. Flash the bootloader files:
    cd root/boot ./sd_fusing.sh /dev/sdX cd ../..
  7. Unmount the partition:
    umount root
  8. Insert the SD card into the board, connect ethernet, and apply 5V power.
  9. Use the serial console (with a null-modem adapter if needed) or SSH to the IP address given to the board by your router. The default root password is 'root'.

eMMC Module Creation

  1. Attach the eMMC module to the micro SD adapter, and plug that into your computer.
  2. Follow the above steps to install Arch Linux ARM, and boot the board with the eMMC still attached to micro SD adapter, plugged into the SD slot in the board.
  3. Re-flash the bootloader to the protected boot area of the eMMC module:
    cd /boot ./sd_fusing.sh /dev/mmcblk0
  4. Power off the board:
  5. Remove the micro SD adapter, detach the eMMC module, and connect the eMMC module to its connector on the board.
  6. Re-apply power the board.
  7. Use the serial console (with a null-modem adapter if needed) or SSH to the IP address given to the board by your router. The default root password is 'root'.

HDMI audio
To enable audio over HDMI, add the following to your asound.conf:
pcm.!default { type hw card 0 } ctl.!default { type hw card 0 }


ARMv7l Cortex-A9


Samsung Exynos 4412 1.7GHz




Micro SD