Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
en:odroid-ups2 [2016/03/21 16:18] ruppi [ODROID-C1] |
en:odroid-ups2 [2016/04/21 13:20] (current) joy.cho [ODROID-C1/C2] |
||
---|---|---|---|
Line 98: | Line 98: | ||
- | Due to hardware limitations, in order to use the UPS2 on ODROID-C2 subtract the green line of the 3-pin socket,\\ | + | Due to hardware limitations, in order to use the UPS2 on ODROID-C2\\ |
- | and connect the 3-pin socket as shown in the figure above the 40 pin Header.\\ | + | - Extract the blue cable of the 3-pin socket,\\ |
- | The extracted lines as shown below, connect the pin #26 of the 40 pin header.\\ | + | - Connect the 3-pin socket as shown in the figure above the 40 pin Header.\\ |
+ | The extracted lines connect the pin #26 of the 40 pin header as shown below.\\ | ||
+ | {{:en:connection_ups2_for_odroidc2.png?400|}} | ||
- | ===== ODROID-C2 ===== | ||
- | - Detailed connection picture between JP1 of UPS2 and the 40pin header(**J2**) of ODROID-C2. | ||
====== ODROID safe shutdown in the event of a power outage ===== | ====== ODROID safe shutdown in the event of a power outage ===== | ||
Line 125: | Line 125: | ||
The BAT_OK and AC_OK signals are used in the below simple shell script which runs in the background via crontab. | The BAT_OK and AC_OK signals are used in the below simple shell script which runs in the background via crontab. | ||
+ | |||
+ | <WRAP left round important 50%> | ||
+ | Before using UPS2 on ODROID-C2, please check u-boot version. \\ | ||
+ | If the version of yours is the one before Mar 18 2016, update boot loader. \\ | ||
+ | You can find the guide how to check and update U-Boot in the end part of this wiki page. \\ | ||
+ | [ How to check and update U-Boot on ODROID-C2 ] | ||
+ | </WRAP> | ||
==== Auto shutdown Script ==== | ==== Auto shutdown Script ==== | ||
This script checks the status of power and battery.\\ | This script checks the status of power and battery.\\ | ||
Save the following code as ups2.sh in home directory.\\ | Save the following code as ups2.sh in home directory.\\ | ||
- | Note that this script can be used with U3 as well as C1 without modification.\\ | + | Note that this script can be used with U3 as well as C1/C2 without modification.\\ |
<code> | <code> | ||
#!/bin/sh | #!/bin/sh | ||
Line 186: | Line 193: | ||
if [ $retval -eq 0 ] | if [ $retval -eq 0 ] | ||
then | then | ||
- | echo "battery is low than 3.7V" | + | echo "battery is lower than 3.7V" |
- | if test $MODEL = "ODROID-C2" | + | /sbin/shutdown -P 1 |
- | then | + | |
- | /sbin/poweroff | + | |
- | else | + | |
- | /sbin/shutdown -P 1 | + | |
- | fi | + | |
else | else | ||
echo "battery is good" | echo "battery is good" | ||
Line 338: | Line 339: | ||
[ 88.211703] Restarting system. | [ 88.211703] Restarting system. | ||
</code> | </code> | ||
+ | |||
+ | ===== How to check and update U-Boot on ODROID-C2 ===== | ||
+ | ==== Linux ==== | ||
+ | == Check U-Boot Version == | ||
+ | If you have a USB-UART console, you can easily check the u-boot version using 'version' on u-boot stage. \\ | ||
+ | |||
+ | <code> | ||
+ | Hit [Enter] key twice quickly during u-boot loading and enter 'ver' or 'version'. | ||
+ | |||
+ | odroidc2# version | ||
+ | U-Boot 2015.01-00089-gdfb8216 (Apr 09 2016 - 06:20:43) | ||
+ | </code> | ||
+ | |||
+ | Or you can check it after kernel booting on userspace using a simple shell script. | ||
+ | <file sh getUbootVer.sh> | ||
+ | #!/bin/sh | ||
+ | # Sample shell script to check U-Boot version on Linux | ||
+ | dd if=/dev/mmcblk0 of=/tmp/temp.bin bs=512 skip=97 count=1334 status=none | ||
+ | grep -a -r -E -o ".{0,0}U-Boot 2015.01.{0,50}" /tmp/temp.bin | grep -a "(" | ||
+ | rm /tmp/temp.bin | ||
+ | </file> | ||
+ | |||
+ | <code> | ||
+ | root@odroid64:~# vi getUbootVer.sh | ||
+ | root@odroid64:~# sudo chmod a+x getUbootVer.sh | ||
+ | root@odroid64:/home/odroid# ./getUbootVer.sh | ||
+ | U-Boot 2015.01-00089-gdfb8216 (Apr 09 2016 - 06:20:43) | ||
+ | </code> | ||
+ | |||
+ | == Update U-Boot == | ||
+ | If your U-Boot version is not the latest one, you can update it using apt-get command. | ||
+ | <code> | ||
+ | sudo apt-get install u-boot | ||
+ | </code> | ||
+ | |||
+ | ==== Android ==== | ||
+ | == Check U-Boot Version == | ||
+ | If you have a USB-UART console, you can easily check the u-boot version using 'ver' on u-boot stage as described in the aforementioned Linux case. \\ | ||
+ | Or you can check it after kernel booting on userspace using the following simple shell script. | ||
+ | <file sh getUbootVer.sh> | ||
+ | #!/bin/sh | ||
+ | # Sample shell script to check U-Boot version on Android | ||
+ | /bin/dd if=/dev/block/mmcblk0 of=/data/temp.bin bs=512 skip=97 count=1334 | ||
+ | grep -a -r -E -o ".{0,0}U-Boot 2015.01.{0,50}" /data/temp.bin | grep -a "(" | ||
+ | rm /data/temp.bin | ||
+ | </file> | ||
+ | |||
+ | <code> | ||
+ | (run Terminal Emulator) | ||
+ | u0_a48@odroidc2:/ $ su | ||
+ | root@odroidc2:/ # cd /data/ | ||
+ | root@odroidc2:/data # vi getUbootVer.sh | ||
+ | root@odroidc2:/data # chmod 755 getUbootVer.sh | ||
+ | root@odroidc2:/data # ./getUbootVer.sh | ||
+ | 1334+0 records in | ||
+ | 1334+0 records out | ||
+ | 683008 bytes transferred in 0.014 secs (48786285 bytes/sec) | ||
+ | /data/temp.bin:U-Boot 2015.01-00089-gdfb8216 (Apr 09 2016 - 06:20:43) | ||
+ | root@odroidc2:/data # | ||
+ | </code> | ||
+ | |||
+ | == Update U-Boot == | ||
+ | If your U-Boot version is not the latest one, you can update it using Android update package. \\ | ||
+ | http://odroid.com/dokuwiki/doku.php?id=en:c2_release_android | ||
===== Tip for servo or motor driving application ===== | ===== Tip for servo or motor driving application ===== |