accessory:display:vu_series:vu8:backlight_control

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.

On Ubuntu, monitor standby time can be set using Power Management Preferences menu.
You can refer to the section, [Set standby time to enter monitor off using power management setting menu] in the following wiki page.
How to turn off your monitor

Add the following lines into “/etc/rc.local”

ODROID-C2

# vi /etc/rc.local
path="/sys/class/gpio"
 
echo 234 > $path/export
echo 214 > $path/export
 
echo out > $path/gpio234/direction
echo out > $path/gpio214/direction
echo 0 > $path/gpio234/value
echo 0 > $path/gpio214/value
 
chown odroid $path/gpio234/value
chown odroid $path/gpio214/value

ODROID-C1/C1+

# vi /etc/rc.local
path="/sys/class/gpio"
 
echo 97 > $path/export
echo 108 > $path/export
 
echo out > $path/gpio97/direction
echo out > $path/gpio108/direction
echo 0 > $path/gpio97/value
echo 0 > $path/gpio108/value
 
chown odroid $path/gpio97/value
chown odroid $path/gpio108/value

Now you need to add a startup task to run the shell script that controls vu8c backlight ports.

Download the shell script

First, download the script file in the path /usr/local/bin/.
And then set the mode as a+x.

target
(Download one of following shell script)
$ mv ~/Download/vu8c_backlight_c2.sh /usr/local/bin/
$ chmod a+x /usr/local/bin/vu8c_backlight_c2.sh
ODROID-C2
vu8c_backlight_c2.sh
#!/bin/bash
# VU8C backlight control
 
path="/sys/class/gpio"
cur_stat="On"
 
while true
do
sleep 1
stat=$(xset -q|sed -ne 's/^[ ]*Monitor is //p')
 
if [ "$stat" == "Off" -a "$cur_stat" == "On" ]; then
        echo "monitor goes to Off"
        # backlight off first 
        echo 1 > $path/gpio214/value
        echo 1 > $path/gpio234/value
        cur_stat=$stat
elif [ "$stat" == "On" -a "$cur_stat" == "Off" ]; then
        echo "monitor turns back On"
        echo 0 > $path/gpio234/value
        # backlight on later
        echo 0 > $path/gpio214/value
        cur_stat=$stat
fi
done
ODROID-C1/C1+
vu8c_backlight_c1.sh
#!/bin/bash
# VU8C backlight control
 
path="/sys/class/gpio"
cur_stat="On"
 
while true
do
sleep 1
stat=$(xset -q|sed -ne 's/^[ ]*Monitor is //p')
 
if [ "$stat" == "Off" -a "$cur_stat" == "On" ]; then
        echo "monitor goes to Off"
        echo 1 > $path/gpio97/value
        echo 1 > $path/gpio108/value
        cur_stat=$stat
elif [ "$stat" == "On" -a "$cur_stat" == "Off" ]; then
        echo "monitor turns back On"
        echo 0 > $path/gpio108/value
        echo 0 > $path/gpio97/value
        cur_stat=$stat
fi
done
Add a startup task

Because this script includes the X server utility, xset, you need to add it using Startup Application menu to run it automatically.

Open the application Startup Applications, under System → Preference → Personal.

Click Add button and find the script file in /usr/local/bin by entering Browse button.
And then complete with Add button as described the 3rd picture.

Reboot

After reboot, you can find the script in ps list.

target
odroid@odroid64:~$ sudo ps aux | grep vu8c
 
odroid    1521  0.1  0.0   5836  1396 ?        S    11:28   0:00 /bin/bash /usr/local/bin/vu8c_backlight_c2.sh
odroid    1757  0.5  0.0   5564   904 ttyS0    S+   11:28   0:00 grep --color=auto vu8c
  • accessory/display/vu_series/vu8/backlight_control.txt
  • Last modified: 2020/04/01 17:53
  • by luke.go