KIOSK化
# sudo apt-get install xinput evtest libts-bin # sudo apt-get install midori # cd /usr/share/X11/xorg.conf.d/ # cp 99-fbturbo.conf 90-fbturbo.conf # sudo vi /usr/share/X11/xorg.conf.d/90-fbturbo.conf Option "fbdev" "/dev/fb1" # raspi-config [Boot Option] - [Desktop Auto Login] # cd /home/pi/.config/lxsession/LXDE-pi/ # cp autostart autostart.org # vi autostart @xset s off @xset s noblank @xset -dpms @midori -e Fullscreen -a /home/pi/Work/Kiosk/index.html
# vi /etc/apache2/sites-available/000-default.conf Include conf-available/serve-cgi-bin.conf ( コメントアウトをはずす) # vi /etc/apache2/conf-available/serve-cgi-bin.conf # sudo service apache2 restart # cd /etc/apache2/mods-enable # ln -s ../mods-available/include.load ./ # ln -s ../mods-available/cgi.load ./ # vi /etc/apache2/apache.conf <Directory /var/www/> Options FollowSymLinks Includes AllowOverride None Require all granted AddType text/html .html AddOutputFilter INCLUDES .html </Directory> # systemctl restart apache2 # mkdir /var/www/cgi-bin # cd /var/www/cgi-bin
# vi kiosk #!/bin/bash LANG="en_GB.UTF-8" for i in `/sbin/ip -f inet -o addr show | cut -d\ -f 2 | cut -d/ -f 1 | grep -v lo`; do echo "$i: `/sbin/ip -f inet -o addr show $i|cut -d\ -f 7 | cut -d/ -f 1`"; done echo -n "temp:`cat /var/log/temp.log`C" echo -n " / " echo "humid:`cat /var/log/humid.log`%"
# cd /var/www/html # mv index.html index.html.org # mkdir kiosk # cd kiosk
# vi index.html
<head> <meta http-equiv="Refresh" content="60"> </head> <B><div id="RealtimeClockArea">Time 00:00:00</div></B> <div id="imageinfo"></div> <div id="kioskinfo"><pre><!--#exec cmd="/var/www/cgi-bin/kiosk" --></pre></div> <script type="text/javascript"> img = new Array( "/munin/localdomain/localhost.localdomain/temp-day.png", "/munin/localdomain/localhost.localdomain/humid-day.png"); function set2fig(num) { if( num < 10 ) { return "0" + num; } else { return num; } } function showClock() { var nowTime = new Date(); var nowHour = set2fig( nowTime.getHours() ); var nowMin = set2fig( nowTime.getMinutes() ); var nowSec = set2fig( nowTime.getSeconds() ); var msg = "Time " + nowHour + ":" + nowMin + ":" + nowSec; document.getElementById("RealtimeClockArea").innerHTML = msg; var img_w="100%"; var img_h="80%"; if ( document.getElementById("kioskinfo").innerHTML != "" ) { tmp_kiosk_info = document.getElementById("kioskinfo").innerHTML; } if ( nowTime.getSeconds() < 20 ) { document.getElementById("kioskinfo").innerHTML = tmp_kiosk_info; document.getElementById("imageinfo").innerHTML = ''; } else if ( nowTime.getSeconds() < 40 ) { imgid=0; document.getElementById("kioskinfo").innerHTML = ""; document.getElementById("imageinfo").innerHTML = '<img src=' + img[imgid] + ' width='+img_w+' height='+img_h+'>' } else if ( nowTime.getSeconds() < 60 ) { imgid=1; document.getElementById("kioskinfo").innerHTML = ""; document.getElementById("imageinfo").innerHTML = '<img src=' + img[imgid] + ' width='+img_w+' height='+img_h+'>' } } setInterval('showClock()',1000*1); </script>
Ctrl-Fn-ALt-f5 (console) Ctrl-Fn-ALt-f1 (X)