Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
en:vu8c_backlightcontrol [2017/01/13 13:38] joy.cho [1. Download script] |
en:vu8c_backlightcontrol [2017/03/20 09:13] codewalker [2. Configure system init to run script on boot] |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== VU8C Backlight On/Off Control by Monitor Status ====== | ====== VU8C Backlight On/Off Control by Monitor Status ====== | ||
This wiki page describes the way how to control vu8c backlight on/off when monitor status is triggered by controlling the related GPIO ports.\\ | This wiki page describes the way how to control vu8c backlight on/off when monitor status is triggered by controlling the related GPIO ports.\\ | ||
- | So far, Ubuntu is available with the following scheme and we're investigating it on Android platform now. | + | |
Line 147: | Line 147: | ||
===== [ Android ] ===== | ===== [ Android ] ===== | ||
- | On Android, we are investigating how to control and run auto control scheme. \\ | ||
- | As soon as it's done, we will make the instruction guide here. | ||
- | |||
- | (UNDER CONSTRUCTION!!!) | ||
==== 1. Download script ==== | ==== 1. Download script ==== | ||
Line 162: | Line 158: | ||
Make or download the following shell script of the board model that you're using (C1 or C2)\\ | Make or download the following shell script of the board model that you're using (C1 or C2)\\ | ||
and copy it in **/system/bin/**.\\ | and copy it in **/system/bin/**.\\ | ||
- | And set its permission. | + | And make its permission executable |
<code> | <code> | ||
# su | # su | ||
Line 168: | Line 164: | ||
</code> | </code> | ||
- | * C2 | + | * ODROID-C2 |
<file sh vu8c_backlight_c2_android.sh> | <file sh vu8c_backlight_c2_android.sh> | ||
#!/bin/sh | #!/bin/sh | ||
Line 208: | Line 204: | ||
done | done | ||
</file> | </file> | ||
- | * C1/C1+ | + | * ODROID-C1/C1+ |
- | <file sh vu8c_backlight_c2_android.sh> | + | <file sh vu8c_backlight_c1_android.sh> |
#!/bin/sh | #!/bin/sh | ||
path="/sys/class/gpio" | path="/sys/class/gpio" | ||
- | echo 234 > $path/export | + | echo 97 > $path/export |
- | echo 214 > $path/export | + | echo 108 > $path/export |
- | echo out > $path/gpio234/direction | + | echo out > $path/gpio97/direction |
- | echo out > $path/gpio214/direction | + | echo out > $path/gpio108/direction |
- | echo 0 > $path/gpio234/value | + | echo 0 > $path/gpio97/value |
- | echo 0 > $path/gpio214/value | + | echo 0 > $path/gpio108/value |
- | chown system system $path/gpio234/value | + | chown system system $path/gpio97/value |
- | chown system system $path/gpio214/value | + | chown system system $path/gpio108/value |
cur_stat="On" | cur_stat="On" | ||
Line 231: | Line 227: | ||
sleep 1 | sleep 1 | ||
- | screen_info=`dumpsys power | grep "Display Power"` | + | screen_info=`dumpsys power | grep "mScreenOn"` |
- | if [[ $screen_info == *"OFF"* && $cur_stat == "On" ]]; then | + | if [[ $screen_info == *"false"* && $cur_stat == "On" ]]; then |
echo "monitor goes to Off" | echo "monitor goes to Off" | ||
- | # backlight off first | + | echo 1 > $path/gpio97/value |
- | echo 1 > $path/gpio214/value | + | echo 1 > $path/gpio108/value |
- | echo 1 > $path/gpio234/value | + | |
cur_stat="Off" | cur_stat="Off" | ||
- | elif [[ $screen_info == *"ON"* && $cur_stat == "Off" ]]; then | + | elif [[ $screen_info == *"true"* && $cur_stat == "Off" ]]; then |
echo "monitor turns back On" | echo "monitor turns back On" | ||
- | echo 0 > $path/gpio234/value | + | echo 0 > $path/gpio108/value |
- | # backlight on later | + | echo 0 > $path/gpio97/value |
- | echo 0 > $path/gpio214/value | + | |
cur_stat="On" | cur_stat="On" | ||
fi | fi | ||
done | done | ||
</file> | </file> | ||
+ | ==== 2. Configure system init to run script on boot ==== | ||
+ | Now, you need to register the service to run this script automatically on boot time.\\ | ||
- | ==== 2. Configure Init to run script on boot ==== | + | Add the following lines in the end of **/system/init.odroid.board.rc**.\\ |
+ | Don't forget the root filesystem should be writable as aforementioned. | ||
- | Add the following in the end point of **/system/init.odroid.board.rc** | + | - in case of C2 |
+ | <code> | ||
+ | # su | ||
+ | # vi /system/init.odroid.board.rc | ||
+ | ..... | ||
+ | ..... | ||
+ | service vu8c_backlight /system/bin/vu8c_backlight_c2_android.sh | ||
+ | class main | ||
+ | user root | ||
+ | group root | ||
+ | oneshot | ||
+ | </code> | ||
+ | - in case of C1 | ||
<code> | <code> | ||
+ | # su | ||
# vi /system/init.odroid.board.rc | # vi /system/init.odroid.board.rc | ||
- | |||
..... | ..... | ||
..... | ..... | ||
- | service vu8c /system/bin/vu8c.sh | + | service vu8c_backlight /system/bin/vu8c_backlight_c1_android.sh |
class main | class main | ||
user root | user root | ||
group root | group root | ||
oneshot | oneshot | ||
+ | </code> | ||
+ | And then, reboot the system. | ||
+ | <code> | ||
+ | # reboot | ||
</code> | </code> |