Table of Contents

Release Note of Android (v3.2)


Summary

Release Date Feb/13/2017 KST
Release Type Regular release
Release Files Self-installation Image (MD5SUM: 469912ee9453ef2a70e7d2b52db4bc42)

File name : selfinstall-odroidc2-eng-s905_5.1.1_master-291-v3.2.img

Official Mirrors by mdrjr
In US
http://www.odroid.in/mirror/dn.odroid.com/S905/Android/ODROID-C2
In Germany
http://de.eu.odroid.in/?directory=.%2Fmirror%2Fdn.odroid.com%2FS905%2FAndroid%2FODROID-C2%2F

New updates

/* ViewSonic HDMI capacitive Screen */
#define USB_VENDOR_ID_VIEWSONIC2575	0x2575
/* #define USB_DEVICE_ID_VIEWSONIC_TD2230	0x0401 */
#define USB_DEVICE_ID_VIEWSONIC_TD2740	0x0402
#define USB_DEVICE_ID_VIEWSONIC_TD2430	0x7317

/*
#define USB_VENDOR_ID_VIEWSONIC0408	0x0408
#define USB_DEVICE_ID_VIEWSONIC_TD2220	0x3008
*/

#define USB_VENDOR_ID_VIEWSONIC1BFD	0x1BFD
#define USB_DEVICE_ID_VIEWSONIC_TD2210V1	0x1568

#define USB_VENDOR_ID_VIEWSONIC28C8	0x28C8
#define USB_DEVICE_ID_VIEWSONIC_TD2210V2	0x4701

#define USB_VENDOR_ID_VIEWSONIC0FB8	0x0FB8
#define USB_DEVICE_ID_VIEWSONIC_TD2421	0x1109

#define USB_VENDOR_ID_VIEWSONIC1FF7	0x1FF7
#define USB_DEVICE_ID_VIEWSONIC_CDE7061T	0x0001

/* Greatouch HDMI capacitive Screen */
#define USB_VENDOR_ID_GREATOUCH	0x0547
#define USB_DEVICE_ID_GREATOUCH_MT_8K	0x3001

Notes for KODI on 4K/UHD display

http://codewalkerster.blogspot.kr/2016/02/how-to-install-kodi-v170krypton-for-4k.html

Known issue

Workaround: Write the codec value to /sys/class/audiodsp/digital_codec sysfs file before executing the media player.

AC3

$ echo 2 > /sys/class/audiodsp/digital_codec

DTS

$ echo 3 > /sys/class/audiodsp/digital_codec

If there is no sound or frequent sound drop when using HDMI passthrough, then please reboot the system.

Update Instruction

Self Installation

You can install the release to your MicroSD or eMMC with the tool dd in Linux or Win32DiskImager in Windows. Please refer this for more detail.

We've reported that some of users can not watch Android logo on their TV while installing even though installation is proceeded. So please wait for 5 minutes since power on and red and blue LED is on. If blue led is started blinking then installation is proceeding, ODROID-C2 will reboot when finished.

Upgrade Installation

Since Android release 2.0, we provide you update package which can upgrade your device without rewrite your SD card or eMMC. This package can be downloaded and upgrade on ODROID Utility.

Fastboot Update

Your can update the release by fastboot if you have MicroSD or eMMC already Android installed. If you have USB-Serial kit, you can enter to Fastboot mode when you execute the command fastboot on U-boot command line. Or if you run execute reboot fastboot from Android shell command line, your ODROID-C2 will reboot and get into fastboot mode immediately. You can check if your ODROID-C2 is attached via USB with the command fastboot devices in your desktop.

$ sudo fastboot flash bootloader u-boot.bin
$ sudo fastboot flash dtb meson64_odroidc2.dtb
$ sudo fastboot flash boot kernel
$ sudo fastboot flash recovery recovery.img
$ sudo fastboot flash logo hardkernel-720.bmp
$ sudo fastboot flash system rootsystem.img
$ sudo fastboot flash cache cache.img
$ sudo fastboot reboot

How to get the full source code

You can checkout Android source tree, please refer this page for more detail. Please note, Android source tree is uploading and would be completed in 1-2 days.

Android

$ mkdir odroid-c2
$ cd odroid-c2
$ repo init -u https://github.com/hardkernel/android.git -b s905_5.1.1_master
$ repo sync
$ repo start s905_5.1.1_master --all

ODROID Utility

$ packages/apps/Utility

Reference boot.ini

boot.ini
ODROIDC2-UBOOT-CONFIG
 
setenv dtbaddr 0x1000000
setenv loadaddr 0x20000000
 
# Resolution Configuration
# 'hdmimode' must be one of below to configure display resolution within
# supported by your TV or monitor.
#    Symbol             | Resolution
# ----------------------+-------------
#    "480p60hz"         | 720x480 Progressive 60Hz
#    "576p50hz"         | 720x576 Progressive 50Hz
#    "720p60hz"         | 1280x720 Progressive 60Hz
#    "720p50hz"         | 1280x720 Progressive 50Hz
#    "1080p60hz"        | 1920x1080 Progressive 60Hz
#    "1080p50hz"        | 1920x1080 Progressive 50Hz
#    "1080p30hz"        | 1920x1080 Progressive 30Hz
#    "1080p24hz"        | 1920x1080 Progressive 24Hz
#    "1080i60hz"        | 1920x1080 Interlaced 60Hz
#    "1080i50hz"        | 1920x1080 Interlaced 50Hz
#    "2160p60hz"        | 3840x2160 Progressive 60Hz
#    "2160p50hz"        | 3840x2160 Progressive 50Hz
#    "2160p30hz"        | 3840x2160 Progressive 30Hz
#    "2160p25hz"        | 3840x2160 Progressive 25Hz
#    "2160p24hz"        | 3840x2160 Progressive 24Hz
#    "2160p60hz420"     | 3840x2160 Progressive 60Hz YCbCr 4:2:0
#    "2160p50hz420"     | 3840x2160 Progressive 50Hz YCbCr 4:2:0
#    "640x480p60hz"     | 640x480 Progressive 60Hz
#    "800x480p60hz"     | 800x480 Progressive 60Hz
#    "800x600p60hz"     | 800x600 Progressive 60Hz
#    "1024x600p60hz"    | 1024x600 Progressive 60Hz
#    "1024x768p60hz"    | 1024x768 Progressive 60Hz
#    "1280x800p60hz"    | 1280x800 Progressive 60Hz
#    "1280x1024p60hz"   | 1280x1024 Progressive 60Hz
#    "1360x768p60hz"    | 1360x768 Progressive 60Hz
#    "1440x900p60hz"    | 1440x900 Progressive 60Hz
#    "1600x900p60hz"    | 1600x900 Progressive 60Hz
#    "1600x1200p60hz"   | 1600x1200 Progressive 60Hz
#    "1680x1050p60hz"   | 1680x1050 Progressive 60Hz
#    "1920x1200p60hz"   | 1920x1200 Progressive 60Hz
#    "2560x1080p60hz"   | 2560x1080 Progressive 60Hz
#    "2560x1440p60hz"   | 2560x1440 Progressive 60Hz
#    "2560x1600p60hz"   | 2560x1600 Progressive 60Hz
#    "3440x1440p60hz"   | 3440x1440 Progressive 60Hz
setenv hdmimode "1080p60hz"
 
setenv rootopt "root=/dev/mmcblk0p2 rw init=/init rootwait"
setenv consoleopt "console=ttyS0,115200"
setenv androidopt "androidboot.hardware=odroidc2 androidboot.serialno=${fbt_id#}"
setenv logoopt "osd1,loaded,${fb_addr},${hdmimode}"
setenv selinuxopt "androidboot.selinux=disabled"
 
# HDMI/DVI Mode Configuration
# This will enforce the signal type of display
# "hdmi" - For HDMI interface
# "dvi" - For DVI interface
setenv vout_mode "hdmi"
 
# Display Auto Detection
# "false" or "true"
setenv display_autodetect "true"
 
# HPD enable/disable option
setenv disablehpd "false"
 
# Overscan offset configuration
# All offsets are zero and can be tuned by manual or ODROID Utility
setenv overscan_top "0"
setenv overscan_left "0"
setenv overscan_bottom "0"
setenv overscan_right "0"
setenv led_onoff "on"
suspend_hdmiphy=0
 
# max cpu frequency in dvfs table / in MHz unit
# setenv max_freq "2016"  # 2.016GHz
# setenv max_freq "1944"  # 1.944GHz
# setenv max_freq "1920"  # 1.920GHz
# setenv max_freq "1896"  # 1.896GHz
# setenv max_freq "1752"  # 1.752GHz
# setenv max_freq "1680"  # 1.680GHz
# setenv max_freq "1656"  # 1.656GHz
# setenv max_freq "1536"  # 1.536GHz
setenv max_freq "1536"
 
# max cpu-cores
# setenv maxcpus "1"
# setenv maxcpus "2"
# setenv maxcpus "3"
setenv maxcpus "4"
 
# disable vu7
setenv disable_vu7 "false"
 
if test "${display_autodetect}" = "true"; then usb pwren; hdmitx edid; fi
if test "${hdmimode}" = "custombuilt"; then setenv cmode "modeline=${modeline}"; fi
 
setenv bootargs "${rootopt} ${consoleopt} hdmimode=${hdmimode} ${cmode} hdmitx=${cecconfig} vout=${vout_mode} disablehpd=${disablehpd} logo=${logoopt} ${androidopt} ${selinuxopt} suspend_hdmiphy=${suspend_hdmiphy} led_onoff=${led_onoff} max_freq=${max_freq} maxcpus=${maxcpus} disable_vu7=${disable_vu7}"
 
save
 
showlogo ${hdmimode}
#usb pwren
 
movi read dtb 0 ${dtbaddr}
# load kernel from vat or boot partition.
movi read boot 0 ${loadaddr}
#fatload mmc 0:1 ${loadaddr} Image
booti ${loadaddr} - ${dtbaddr}