Kiosk Mode

Feb 2020

This image I used is Raspbian Buster with desktop and it comes with a Chromium browser installed by default. Also I am running with the default user pi, which is relevant for the example below and needs to be considered if you are running a different user.

So these are the steps I took to get a basic clean Kiosk Experience.

Hide the Mouse Cursor

First, we want to get rid of the mouse cursor on the desktop. This is really simple and only requires us to install the unclutter package.

$ sudo apt-get install unclutter

To make sure that this actually worked, we can simply restart the desktop using following command:

$ sudo service lightdm restart

Disable the Screensaver

The next important step is to prevent the screensaver kicking in and blanking the screen. The simplest configuration I could come up with was changing the file /etc/xdg/lxsession/LXDE-pi/autostart like this:

@lxpanel --profile LXDE
@pcmanfm --desktop --profile LXDE
@xset s off
@xset -dpms
@xset s noblank

@/home/pi/run.sh

Auto Start a Browser

The last entry in the above configuration file launches the the script /home/pi/run.sh, which will contain the code for launching Chromium in Kiosk Mode. But we have to create that file first:

$ touch /home/pi/run.sh

Then make it executable:

$ chmod +x /home/pi/run.sh

Now, let’s edit this file so it looks like this (note: the line breaks are just for formatting reasons).

#!/bin/sh
/usr/bin/chromium-browser --app=http://your-site
  --kiosk
  --noerrdialogs
  --disable-session-crashed-bubble
  --disable-infobars
  --check-for-update-interval=604800
  --disable-pinch
  --start-fullscreen

Last updated

Was this helpful?