Raspberry Pi for SplashTiles

Raspberry Pi 4 or 3 can be used as a controller to display your SplashTiles Screens. The instructions below provide the setup to display a single Screen on boot as a browser class device (no SplashTiles Cloud remote control). Technical users can add more functionality via python scripting and our public APIs.

Installing Raspbian OS

  1. Download NOOBS https://www.raspberrypi.org/downloads/noobs/
  2. Follow the setup instructions https://www.raspberrypi.org/help/noobs-setup/

Configure for SplashTiles

The recommended setup to is configure the Pi to boot directly into displaying one of your SplashTiles screens.

Use either a connected keyboard or a SSH connection to configure your Pi.

Run raspi-config first:

raspi-config

In the setup utility, choose:

Exit and choose to reboot later.

Set your Wifi network name and password:

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

and change your SSID and PSK:

network={
  ssid="YOUR_NETWORK_NAME"
  psk="YOUR_WIFI_PASSWORD"
}

Then save changes and quit (ctrl-o, ctrl-x).

Install the unclutter app, which will hide the mouse cursor after a few seconds of inactivity:

sudo apt-get install unclutter

(Optional step) If mounting vertically, set the boot config to Portrait mode:

sudo nano /boot/config.txt

and add

# Display orientation. Landscape = 0, Portrait = 1
display_rotate=1

You’ll also want to check and make sure that disable_overscan=1 and no other overscan configs are uncommented in this file. Save and quit when done.

Update your distribution and install Chromium

sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install -y rpi-chromium-mods

Now you need to get the URL for your SplashTiles screen

  1. Please goto devices and create a browser token.
  2. Click on the browser token. This will take you do your Screen selection page. Click on the Screen you want to use.
  3. Your Screen will load with your Browser token included in the top bar URL. Copy that URL.
  4. Verify your URL is of the form https://splash-tiles.com/splashtiles/display.php?token=XXXXXX&slide=SLIDENAME

Finally, configure LXDE (window manager)

Force the screen to stay on, and load the Chromium browser running your SplashTiles screen on boot:

sudo nano /home/pi/.config/lxsession/LXDE-pi/autostart

and add:

@xset s off
@xset -dpms
@xset s 0 0
@xset s noblank
@xset s noexpose
@xset dpms 0 0 0
@chromium-browser --noerrdialogs --incognito --autoplay-policy=no-user-gesture-required --check-for-update-interval=1 --simulate-critical-update --kiosk YOUR_SPLASHTILES_SCREEN_URL

Note: if the above autostart file does not work, please try the following file:

/etc/xdg/lxsession/LXDE-pi/autostart

Now reboot, and when the RPi comes back up, we should see SplashTiles running in full screen!

sudo reboot

Turn the monitor on and off automatically (optional)

To turn the monitor on/off on a daily schedule, grab this script and put it in /home/pi/rpi-hdmi.sh. Next, make it executable:

chmod +x /home/pi/rpi-hdmi.sh

Now we’ll need to add a cron entry to call this script at the desired time, so open the cron editor:

crontab -e

And add the following lines at the bottom of the file:

# Turn HDMI Off (22:00/10:00pm)
0 22 * * * root /home/pi/rpi-hdmi.sh off

# Turn HDMI On (7:00/7:00am)
0 7 * * * root /home/pi/rpi-hdmi.sh on 

The first number (0) is the minutes and the second number on each of those lines (22 and 7) is the hour in 24 hour time. So in this example, the monitor would turn off at 10:00pm and back on again at 7:00am. Adjust the time for your needs.