HCL:OdroidC2

Jump to: navigation, search

The Hardkernel ODROID-C2 is a single-board computer.

Technical data

Writing a disk image to the SD card

  1. Download the image you want (Leap is stable, Tumbleweed is rolling) from here:
    This image uses the Tumbleweed kernel and userspace, but relies on firmware packages and tools not in Tumbleweed.
    Susemini.png
    Version:
    Tumbleweed
    JeOS image

    If the direct links above do not work for you (as we are constantly building new images), please check the general download directory for the images.

  2. As root extract the image onto your SD card (replace sdX with the device name of your SD card).
    WARNING: all previous data on the SD card will be lost. Check first if the device you have selected is really your SD card!
     xzcat [image].raw.xz | dd bs=4M of=/dev/sdX iflag=fullblock oflag=direct; sync
  3. Insert the SD card with the openSUSE image into your board.
  4. Connect the board to your PC via serial port (optional, but helpful for debugging; USB-TTL serial cable needed).
  5. Connect the board to your monitor (via DVI/HDMI, optional).
  6. Power on the board.
  7. Walk through the first boot steps.
  8. Ethernet is configured to request an IP via DHCP, check your DHCP server for the board IP if used.
  9. Have a lot of fun...
Default login is root:linux, works on serial console, via ssh, GUI.

Manual installation

Mainline U-Boot

A u-boot-odroid-c2 package is available in Tumbleweed. From version v2017.05-rc2 on (in Base:System:Staging at the time of writing) it contains support for booting from Micro SD; before that only network boot is possible.

For the goal of creating bootable images in OBS, an experimental tool to replace Amlogic's proprietary x86_64 binary aml_encrypt_gxb is available on GitHub. The meson-tools package is used by odroidc2-firmware package.

Extract bl1.bin.hardkernel and u-boot.odroidc2 from odroidc2-firmware package.

Your SD card must be using MBR partitions (not GPT).

# dd if=bl1.bin.hardkernel of=/dev/sdX conv=fsync bs=1 count=442
# dd if=bl1.bin.hardkernel of=/dev/sdX conv=fsync bs=512 skip=1 seek=1
# dd if=u-boot.odroidc2 of=/dev/sdX conv=fsync bs=512 seek=97

GRUB works.

Mainline kernel

The Tumbleweed kernel works.

See also