Using Raspberry Pis to Build Beautiful Wall-Mounted Dashboards
One common challenge I have frequently encountered is how to display a wall-mounted dashboard. While it may seem like a fairly simple issue, you can often find entire desktop computers powering a single dashboard. This is a space consuming and inefficient way to run dashboard—think about the planet!
At Periscope, we love wall-mounted dashboards! Our key KPIs such as product usage, monthly sales and Net Promoter Score are clearly visible from the desk of our CEO, and always up to date. In pursuit of the perfect wall-mounted dashboard, I turned to a dedicated piece of hardware—the Raspberry Pi!
The Raspberry Pi is affordable, easy to use and great for serving web content. Here's getting started guide so you can create your own office dashboards.
Buy a Raspberry Pi
First, you’ll need to get your new hardware.
- Get the newest Raspberry Pi. As of the writing of this article, that is the Pi 3B. It has more CPU for faster booting and onboard wifi, saving you from an additional USB dongle.
- Raspberry Pis are very sensitive to power disruption. You’ll want to use a high quality power supply and avoid hard reboots. We have had great success with CanaKit power supplies.
- An 8 GB memory card is enough for a graphical operating system and anything you will need to run. Make sure you have a way to write to it, either with a USB or SD to MicroSD adapter.
On your first Pi adventure, I highly recommend buying a nice, pre-constructed starter package on Amazon, for instance this package with everything you need.
Get the Pi Up and Running
Once you have your Pi, you will need an operating system. Go with NOOBS. It’s a nice, Windows-like GUI built on top of Raspbian, a version of Debian Linux made for the Pi. It’s easy to install and will have you up and running in minutes. If you bought the package above, your SD card will already have NOOBS installed, but if you need to do it yourself it's very straight-forward.
First, format your new SD card using the FAT format. On a Mac, you can do this under “Disk Utility”
After you have formatted your SD card, unzip NOOBS and copy over the folder contents to the root directory of the SD card. Now insert you SD card and boot the Pi up.
Once started, you’ll need to tell it to install Rasbian (the default option), set your keyboard language and click install. Then sit back and wait, this part takes a few minutes. When done, your Pi will launch to the NOOBS OS.
There are a few little things you'll need to do to make the Pi great for wall-mounted dashboards.
One important change is to make sure you don’t have a mouse cursor floating on your dashboard. You can avoid this by installing a program called unclutter. Unclutter hides the mouse cursor after a few seconds, and has the cursor reappear on movement. Perfect for our purpose, and installed with a single line. Open up your terminal, and enter
sudo apt-get install unclutter
Unclutter is installed. We'll set it up to load on boot below.
Make Sure the Dashboard Fills the Screen
The Raspberry Pi often leaves a black border of unused screen space around the edge of your TV. This can be easily fixed.
You will need to edit the /boot/config.txt file, which can only be done with root privileges through the terminal. I prefer to use vim rather than the default vi, so let’s install that first
sudo apt-get install vim
Then open the file in terminal.
Press i to use insert mode, then locate the line:
And remove the pound sign that is commenting it out.
Once the change is made, press esc to exit insert mode, then :wq to write and quit. This usually makes the screen size correct, but if your screen isn’t perfect, you can also specify exact dimensions in the config.txt file below the overscan settings.
Set Boot Options
Now your Pi is ready to start displaying your dashboards. The easiest way to do this is to add some simple commands that run at startup, turning you Pi into a plug and play device. You can do this by modifying the "autostart" file, which executes system commands during the boot process. The changes outlined below will start Chromium, load the dashboard in fullscreen, use unclutter to hide the mouse cursor, and ensure the Pi never sleeps or starts a screen saver.
Star by opening the file:
Add the following lines to the bottom of the file. These lines will prevent the Pi from starting a screen saver or turning off the screen.
@xset s noblank
@xset s off
Next, we'll launch Chromium in full screen and incognito modes. We use incognito because it prevents any alerts Chromium might have from coming up. The most common is a “Restore Pages?” message after a reboot when someone kicks the power cable.
@chromium-browser --start-fullscreen --incognito <dashboardURL> &
Finally, we launch unclutter to hide our mouse cursor.
@unclutter -display :0 -noevents -grab &
Save and close the file.
Enjoy Your Work
Once you have finished modifying the autostart file, you can simply reboot your Pi and your dashboard will load in all it's beautiful, data-driven glory.
If you'd like, you can hide it behind the TV, be we prefer to display them proudly.