2016년 3월 3일 목요일

dual booting android and Ubuntu on ODROID-C2



I made dual booting image for ODROID-U3.
http://codewalkerster.blogspot.kr/2014/03/dual-booting-android-and-ubuntu-on.html?m=1

We will make dual booting image for ODROID-C2.

Make bootable android media(eMMC or SD).

http://odroid.com/dokuwiki/doku.php?id=en:c2_release_android

Download ODROID-C2 Ubuntu Image.

http://odroid.com/dokuwiki/doku.php?id=en:c2_release_linux_ubuntu



Copy rootfs and boot partition of ODROID-C2 Ubuntu to your desktop Ubuntu.

- mount disk wrote ODROID-C2 ubuntu image on your desktop PC.

c2/ubuntu/ubuntu64-16.04lts-mate-od* on /media/codewalker/boot type vfat (ro,nosuid,nodev,uid=1000,gid=1000,shortname=mixed,dmask=0077,utf8=1,showexec,flush,uhelper=udisks2)
c2/ubuntu/ubuntu64-16.04lts-mate-od* on /media/codewalker/rootfs type ext4 (ro,nosuid,nodev,uhelper=udisks2)


$ mkdir odroid-c2_ubuntu
$ cd odroid-c2_ubuntu
$ mkdir boot
$ sudo cp -a /media/username/boot/* boot/
$ mkdir rootfs
$ sudo cp -a /media/username/rootfs/* rootfs/

- unmount ubuntu disk.


Delete rootfs/aafirstboot

$ rm -rf rootfs/aafirstboot

Edit rootfs/etc/fstab

$ sudo vi rootfs/etc/fstab
LABEL=VFAT /media/boot vfat defaults,rw,owner,flush,umask=000 0 0

Chagne userdata partition UUID.

- Insert disk wrote android image on your desktop PC and unmount /dev/sdX4.
$ sudo umount /dev/sdX4
$ cat rootfs/etc/fstab 
LABEL=VFAT /media/boot vfat defaults,rw,owner,flush,umask=000 0 0

UUID=e139ce78-9841-40fe-8823-96a304a09859 / ext4 errors=remount-ro,noatime 0 1

$ sudo tune2fs /dev/sdX4 -U e139ce78-9841-40fe-8823-96a304a09859

Copy ODROID-C2 Ubuntu files to android disk.

$ mv /media/username/VFAT/boot. ini  /media/username/VFAT/boot. ini.android
$ cp boot/* /media/username/VFAT/
$ sudo cp rootfs/* /media/username/e139ce78-9841-40fe-8823-96a304a09859/ -a
$ sync

Make script to change OS.

in Ubuntu
$ vi boot_android.sh
------------------------------------------------------------------------
#!/bin/bash
sudo mv /media/boot/boot.ini /media/boot/boot.ini.ubuntu
sudo mv /media/boot/boot.ini.android /media/boot/boot.ini
sudo reboot
------------------------------------------------------------------------
#chmod +x boot_android.sh


in Adnroid
$ su
# mount -o rw,remount /
# vi /system/bin/boot_ubuntu.sh
------------------------------------------------------------------------
#!/bin/sh
mv /storage/internal/boot.ini /storage/internal/boot.ini.android
mv /storage/internal/boot.ini.ubuntu /storage/internal/boot.ini
reboot
------------------------------------------------------------------------
# chmod 777 /system/bin/boot_ubuntu.sh

2016년 2월 26일 금요일

How to install kodi v17.0(Krypton) for 4K on ODROID-C2

The kodi v16 Jarvis app has 4K video bugs.

Visit kodi site and download kodi v17.

Open CM FileManager and select Download folder.

Select and Install.

Enjoy 4K video without resolution resizing bug.

2016년 2월 25일 목요일

Google Play Store on ODROID-C2.






Visit http://dn.odroid.com/GAPPS and download GAppsInstaller_lollipop.apk

Install




Rebooted and log in google.

 Check Play store version.

If you Installed youtube app, You must update Google Play services too.


If you update Google Play service, You will go though this situation.
I do not have solution for that. You must reinstall android image.

Check Play store version like this. Play store will update automatically.


Fist Update Google Store and must update Google Play Services later.

2016년 2월 23일 화요일

Ctrl + Alt + Del doesn't reboot Android


















echo 0 > /proc/sys/kernel/ctrl-alt-del

Or edit init.xxx.rc

 write /proc/sys/kernel/ctrl-alt-del 0

2015년 12월 28일 월요일

overscan for ODROID-C1 Ubuntu


1. search overscan values.

Read default values
root@odroid:~# cat /sys/class/graphics/fb0/window_axis
window axis is [100 100 1919 1079]
root@odroid:~#

Try to set overscan values
root@odroid:~# echo 100 100 1919 1079 > /sys/class/graphics/fb0/window_axis
root@odroid:~# echo 0x10001 > /sys/class/graphics/fb0/free_scale


2. make script(overscan.sh)

root@odroid:~# cat overscan.sh
#!/bin/bash

echo 100 100 1919 1079 > /sys/class/graphics/fb0/window_axis
echo 0x10001 > /sys/class/graphics/fb0/free_scale 

root@odroid:~#

3. Auto-start overscan shell script on Ubuntu.

root@odroid:~# cp overscan.sh /etc/init.d/
root@odroid:~# sudo update-rc.d overscan.sh defaults 



left : 10
right : 1919
top : 10
bottom : 1070

2015년 10월 12일 월요일

안드로이드 repo 특정 날짜로 돌려서 빌드하기

급하게 아래 안드로이드 project를 build 해야 할 일이 생겼다.

https://github.com/voodik/android/tree/cm-12.1_5422

오래전에 받아 놓은 소스를 repo sync 후 빌드 하니 역시나 컴파일 에러가 난다.

git log를 보면 계속 작업을 진행하였지만 release한 버전에 tag가 없다. 그래서 원하는 버전으로 돌리기가 어렵다.

아래 포럼에 보면 마지막 7월 7일이 마지막 버전이다.
http://forum.odroid.com/viewtopic.php?f=94&t=9316

googling 하여 보니 git rev-list를 통해 특정 날짜로 돌릴 수 있다. 그래서 아래와 같이 모든 프로젝트를 7월 7일로 돌렸다.

우선 manifest를 7월 7일로 돌린다.
$ cd .repo/manifsets/
$ git rev-list -n 1 --before="2015-07-07 24:00:00" default | xargs -i git reset --hard {}

돌린 default.xml을 복사하여 둔다/
$ cp default.xml ../default_0707.xml

다시 마지막으로 원복시킨다.
$ git reset --hard origin/cm-12.1_5422

그리고 7월 7일 내용을 하나의 commit으로 올린다.
$ mv ../default_0707.xml default.xml
$ git add default.xml
$ git commit
$ repo sync

위와 같이 하지 않으면 repo sync시 다시 최신 소스로 돌아가 버린다.

마지막으로 모든 프로젝트도 동일하게 7월 7일로 reset 한다.

$ repo forall -c 'git rev-list -n 1 --before="2015-07-07 24:00:00" cm-12.1_5422 | xargs -i git reset --hard {}'

빌드를 진행한다.

2015년 9월 2일 수요일

Shell Scripting: Generate or Print Range of Numbers ( Sequence of Numbers for Loop )

seq를 이용하여 범위의 값을 아래와 같이 얻어 올 수 있다.

$ seq 1 10
1
2
3
4
5
6
7
8
9
10
$

seq man page
SEQ(1)                                                                                        User Commands                                                                                        SEQ(1)

NAME
       seq - print a sequence of numbers

SYNOPSIS
       seq [OPTION]... LAST
       seq [OPTION]... FIRST LAST
       seq [OPTION]... FIRST INCREMENT LAST

DESCRIPTION


seq를 통해 얻어온 값을 for loop에 넣어서 원하는 로직을 만들 수 있다.
$ for i in $(seq 1 10)
> do
> echo $i
> done
1
2
3
4
5
6
7
8
9
10

$ for i in $(seq 1 10)
> do
> echo $i > export
> done