This is a small project that creates a pseudo-kiosk streaming media box from a
Raspberry Pi. Once you are done, you’ll end up with a Raspberry Pi that loads
Chromium into full screen kiosk mode on startup with your favourite streaming
services only a click away thanks to some minimal html acting as your command centre.
Step 1 - Install Raspbian
We are going to install Raspbian as our base operating system.
Follow the instructions on the Raspberry Pi site to install raspbian.
Step 2 - Open Chromium on startup
Once your operating sytem is installed and you’ve got your Pi up and running, it’s time to set it up so Chromium
starts whenever we log in. You’ll need to edit a few files to make this all hang
together so get comfortable. I prefer to
ssh in and work from my primary
machine, but you can also work directly on the Pi if you’ve got a decent screen,
keyboard and mouse set up. You might need to enable
ssh on your Rasperry Pi if
you prefer to work from a different machine.
To open Chromium on startup is a one-liner added to
--kiosk flag will open Chromium full screen
without menu bars. This enhances the feeling of it being a dedicated “media” machine.
If you don’t have
~/.config/lxsession/LXDE-pi/autostart, create it with
Open the file in your favourite text editor and add this line in:
If you tend to simply turn your Pi off at the socket rather than shutting down
cleanly, one of the annoyances you’ll have is a little Chromium popup every time
you start up telling you it didn’t shut down properly.
To stop this happening, we can replace Chromium’s memory of its state with the
following bits of magic added to
sed -i 's/"exited_cleanly":false/"exited_cleanly":true/' ~/.config/chromium/'Local State' sed -i 's/"exited_cleanly":false/"exited_cleanly":true/; s/"exit_type":"[^"]\+"/"exit_type":"Normal"/' ~/.config/chromium/Default/Preferences
Step 3 - Create a nice home page
The final piece of the puzzle is to put together a nice default home
page to act as the command centre. Grab the icons for your various streaming media services, replace the hrefs and set it as the default home page in Chromium’s settings.
My end result looked something like this:
Here’s the basic template - it supports tabbing through items and has a basic animation effect to give you a visual cue of which icon you are currently focussed on.
Note that if you are in the UK, at the time of writing, 4OD wouldn’t stream through Chromium for some reason.
That’s it; a basic kiosk that works well enough for me. If you
want something more full featured, check out Donald Derek’s Smart TV tutorial.