Create an information radiator
Les Pounder shows us how to create a low-cost, Raspberry Pi-powered family calendar using an old monitor.
Les Pounder shows us how to create a low-cost family calender using an old monitor and Dakboard.
The term ‘information radiator’ is a typically obscure tech way of saying ‘device that displays information on a screen’. This information can range from simple news feeds and adverts to complex service status. They are typically used in hotel lobbies to display news, weather and adverts, and in tech offices where developers need to see the status of their work at a glance.
In this project we’re going to make our own simple information radiator using Dakboard and a Raspberry Pi. The best type of Pi for this project is any of the Pi 3 models or a Pi Zero W, as they all come with built in Wi-fi connectivity – but if you have an older model you can easily add your own Wi-fi dongle.
Dakboard is a customisable display – available as a physical device, or just as a service – that can show photos, RSS feeds, weather and calendars. To start using Dakboard, sign up for a free account at https:// dakboard.com and then log in. The first screen we encounter is called Screens, and here we can manage a number of them. For this tutorial we’ll edit ‘My Predefined Screen’ so click on it to start editing.
The first task is to set the layout of the screen, so try out a few options. Simply click an option and then Save Changes. In the top right of the screen is ‘View Screen’: open this in a new tab and it will display your screen. There should be a large image on the left and a black space on the right. In the bottom left is the weather. All
of these options will be edited later; for now, just change the layout to ‘Big Calendar’. The next step is to alter the background image, so click Background and in the new screen click Source to choose the source of your images. We’re going to use Instagram as the image source, specifically images from the Raspberry Pi Foundation. In Instagram Settings, add the user raspberrypifoundation and click Save Changes. Now go back to the tab we opened earlier and click refresh to see images from the Raspberry Pi Foundation’s Instagram feed.
Moving on, we can set up our calendar. In this case it is the LXF Family Calendar, reminding the team to make the tea, drink beer and do work (not in that order though
– Ed). First we enable the calendar and set it to show seven days’ of content at once. In the Calendars section, we provide an ical URL, which in this case is from a Google Calendar we set up for this tutorial.
To get the ical URL for a Google Calendar, open Google Calendar and then click the three dots next to the calendar. Click ‘Settings and Sharing’, scroll down to ‘Access Permissions’ and click ‘Make this calendar public’. Now scroll down to ‘Public Address in ical format’ and copy the URL below it. Paste this URL into the Calendars section in Dakboard, and give the
calendar an appropriate name. Click on Save Changes and then go back to the other tab and refresh to see the calendar appear.
In the next section we can alter the time and date according to where we are in the world – this is pretty self-explanatory. Next, we configure the Weather tab, where can set the source of our weather data to one of three providers. For this tutorial we’ll set it to Openweathermap and then set the location to where we live – Dakboard will help you find the nearest location. We set the units to those required, in our case Celsius. We lastly set the extended forecast to five days. Click Save Changes and then go back to the screen tab, click refresh to see the results.
Feed me
The next step is to add a news feed to the screen and for this we go into News and enable ‘RSS’. In the News Feed URL, we paste the ‘Top Stories’ news feed from BBC News, which can be found at www.bbc.co.uk/ news/10628494 – but feel free to use any RSS feed you want. Save Changes and then go back to the other tab, refresh and watch as the news is displayed in the bottom right of the screen.
In the next section we can set up a To-do list; for this we’ve used our Todoist account, which was easily linked to Dakboard via a short wizard in this section. Then we chose the correct list to show, in this case our to-do list for today. Click Save Changes and then go back to the other tab and refresh. You can see the list appear at the left of the screen, just under the time and date.
With all of the configuration complete, go to ‘Settings & Defaults’, give the Screen a name and click Save Changes. Now write down the Private URL link as we will need this later. Also, do keep this link private…
Pi Lite
Our Raspberry Pi will need the latest Raspbian Lite release. This gives us the bare operating system and a web browser, ideal for our needs. We also need an internet connection in order to load the Dakboard screen. On the Raspberry Pi we open a terminal and edit a file that enables the web browser to automatically open when the operating system starts. In the terminal, type the following command and press Return.
$ sudo nano /etc/xdg/autostart/rpi-lxf.desktop
We are going to create a config file that creates a desktop entry for an application. This will open the
Chromium browser when the desktop loads, set the window size to 1920x1080, and specify fullscreen kiosk mode to prevent anyone exiting the application. It will also suppress error messages and run in incognito mode. Remember your Dakboard private URL from before? Replace PRIVATE URL FROM DAKBOARD
with that address in the following:
[Desktop Entry]
Type=application
NAME=RPI-LXF Comment=information Radiator Nodisplay=false Exec=chromium-browser PRIVATE URL FROM DAKBOARD --window-size=1920,1080 --start-fullscreen --kiosk --incognito --noerrdialogs --disable-translate --no-first-run --fast --fast-start --disable-infobars --disable-features=translateui --disk-cache-dir=/dev/ null NOTSHOWIN=GNOME;KDE;XFCE;
If you want to know more about what these command line arguments do, especially in the Exec=
line, have a look at the Raspian Lite documentation – there are some very handy commands in there.
To save press Ctrl+o, then press Return, then Ctrl+x to exit. Still in the terminal, our next step is to edit a file that will prevent the display from blanking after five minutes. In the terminal, type:
$ sudo nano /etc/lightdm/lightdm.conf
In the file look for the line
#server-command=x
Change it to
server-command=x -s 0 dpms
To save press Ctrl+o, then press Return, then Ctrl+x to exit. Now reboot the Pi and once it has successfully rebooted to the desktop, it will automatically load our
Dakboard screen!
There you have it: our own information radiator for the home, office and datacentre.