When using the Raspbian Buster desktop, the Chromium browser is included as a pre-installed software package.
For kiosk operation, several important factors should be considered:
- In addition to full-screen operation, there are numerous command line switches to tailor the operation of Chromium to fit your requirements (see also chrome://flags); and
- You may wish to disable the Chromium function keys (i.e. F1 to F12) to prevent keyboard operations from opening browser functions that will ruin the kiosk experience with; and
- You can disable the screen mouse pointer with the Linux command “unclutter”: and
- You can disable screen saver blanking and display power monitoring with the Linux command “xset”; and
- Your kiosk web application can be automatically started from a cron job at reboot. The cron enviornment typically requires the display to be specified with a command such as “–display=:0.0”.
A typical cron job to start a kiosk at reboot may look like:
# Run this script in display 0.0 export DISPLAY=:0.0 # Hide the mouse from the display /usr/bin/unclutter -idle 1 & # # start Python app as root for port 80 (Python Flask) # cd /home/pi/KioskFolder sudo ./kiosk.py & # # start chromium-browser in kiosk mode using port 80 # /usr/bin/chromium-browser --noerrdialogs --disable-infobars --kiosk --disable-web-security --user-data-dir=/tmp --display=:0.0 --app=http://127.0.0.1/ & # # disable screen saver blanking and display power monitoring # /usr/bin/xset -display :0.0 s off /usr/bin/xset -display :0.0 s noblank /usr/bin/xset -display :0.0 -dpms
- If lastTouch is not equal to thisTouch, then no bouncing occured, use thisTouch.
- If lastTouch is equal to thisTouch then use “setTimeout(filterFunction,filterTime)” to set a filter time such as 100mSec to ignore thisTouch when it occurs less that 100mSec after lastTouch.
OTTStreamingVideo.net has extensive experience building embedded Linux kiosks and digital signage products employing two-way video and audio, touchpanels, sensor input, external device control, automatic web based content updates and uploads, and automatic web based software updates.
Please contact us for more information.