At exhibitions you often want to show off your work in the hopes of attracting new potential customers. This also works for the windows of stores to advertise products on sale within. Most will simply create a large fixed image poster at great expense and use this for long periods of time. Sometimes much longer than the product in question is on promotion.
Using modern technology it is possible to create a dynamic animated display for approximately the same cost as the fixed image poster.
Modern flat screen TVs are relatively large and thin so it really opens up the possibilities in terms of where you can put them. If a TV isn’t doing it for you then for a bit more cash you could use a projector in exactly the same way.
The guide below describes in step by step detail how to create one of these displays using a flat screen television and a Raspberry Pi. Displaying dynamic animated content such as video is also possible but is not covered in the scope of this tutorial.
The Raspberry Pi is a very small single board computer with a very low price tag. It is a relatively powerful device and has the capability to output HD video so it makes great sense for use in the project. Also most modern HD TVs feature USB support so in some cases they are able to power the Pi directly. The Pi is also small enough to be attached directly to the back of the TV so all the customers will see is the TV and maybe the TV’s power cable.
The Raspberry Pi hardware runs a Linux based operating system which puts off a lot of potential users due to unfamiliarity but using my instructions below it should be fairly simple to create a working system and start your introduction to the world of GNU Linux. To load your pictures you simply place them onto a USB memory stick, put the stick in the Pi, power it on, press a couple of keys on the keyboard and off it goes.
Items you will need
- Large TV with HDMI support
- Raspberry Pi B or B+ (the one with the Ethernet connector)
- SD Memory Card, Capacity >= 4GB, Class >= 10
- 2A Micro USB Cable (95% of Micro USB Cables will not supply enough current due to resistance of the cable so make sure you get the right type of cable, genuine phone charger cables often work well)
- USB socket on TV or Micro USB Charger Rated @ 2A
- USB Mouse and Keyboard (I used a Raspberry Pi compatible wireless combined mouse and keyboard from Amazon)
- USB memory stick (containing the images you want to display)
- HDMI Cable
These additional items are required for setup only
- Hub/Router with Internet Connectivity
- Ethernet Cable
- Computer / Laptop with SD card reader
Configuring the SD Card
The SD card needs to be configured before it is inserted into the Pi. To do this you will need a computer with an SD card socket.
You will first need to download the Linux installation and copy it to the card.
First download the latest version of the operating system Raspbian Debian from RaspberryPi.Org
Connecting Up & Powering On
Once the OS is loaded onto the SD card remove it from your computer and insert it into the Raspberry Pi. While your at your computer you can also put your images into the root folder of the USB memory stick before connecting this to the Pi.
Next connect the HDMI cable between the Pi and the television and the Ethernet cable between the Pi and the Router. Next connect the mouse and keyboard to the Pi and finally the USB power cable.
Ensure that the TV is switched on before switching on the Pi or there is a chance that the HDMI interface will not start up. If this happens simply remove power to the Pi, switch on the TV and try again. If the TV is powering the Pi then the Pi should automatically come on when the TV is switched on.
Installing the Software
After a minute or two you should be faced with a simple desktop type environment similar to this.
Feel free to have a browse around, and if it’s your first time then welcome to the world of free software! If anything goes wrong you can always return to step one and rewrite the image on the SD card using your computer.
To continue with the tutorial we will be using the terminal application. To run this you simply double click the LxTerminal shortcut on the desktop or find it in the Start type menu at he bottom left hand corner.
First we install the image display software feh by entering in the following command and hitting return.
Configuring the Screen Saver
The next thing we need to do is to configure the Pi’s screensaver. By default the Pi will automatically switch off the screen after a few minutes on inactivity on the mouse or keyboard, as we want to display a set of banner images for a long period of time without interaction we need to switch this default behavior off.
You do this by going to the Start type menu at he bottom left hand corner, selecting Preferences and then Screensaver.
Set the blank out time to 720 (the max allowed time). You must remember to wiggle mouse or press a key on the keyboard at least every 12 hours if you want a constant display. For a permanent display without interaction you could use a embedded USB microcontroller to simulate mouse movement every few hours to ensure screen blanking doesn’t kick in. Using Flowcode and a device such as a MatrixTSL ECIO40P this would be a 5 minute job.
Running the Slideshow
Returning to the terminal application we can now fire up the slide show by entering the following command. Don’t worry you won’t have to type this in every time!
feh -Y -x -q -D 5 -B black -F -Z -z -r /media/
To end the slide show press the q key on the keyboard.
Shutting Down and Powering Up
Securing the Pi to the back of the TV
The Pi can be affixed to the back of the television using hook and loop tape or double sided tape.If you don’t want to use tape then there are cases designed for the Pi with small sucker feet which can secure it to a surface like a TV.
The various wires can be neatened up and held in place with a few cable ties. Be careful when manipulating the HDMI cable, there are a lot of very thin wires inside it and you don’t want to snap one! It wants to be positioned so it’s not flapping about but also so it’s not taught or kinked.