At the paper mill we had 4 TV’s in scattered around the site that would display company announcements from HR/Management. All the announcements were usually either PDFs, Word, Excel or Powerpoint files.

  • Management wanted something simple that they could just drop files into
  • I setup a folder on the local network share drive, with a subfolder for each TV
  • Management/HR would drop their PDF/Word/Excel files into a network drive folder that they wanted to display to employees

Source Files Conversion

  • 2Jpeg - Command line used for converting all the source files to .jpeg format so they can be displayed by feh on the displays
  • After the files are converted they are synced to each of the Raspberry Pi’s using Syncthing, which continually syncs file changes between devices

Raspberry Pi

#!/bin/bash

sleep 5s
feh -q -p -Y -F -Z -D 30 -R 120 '/home/terminal/Displays'
# https://linux.die.net/man/1/feh for breakdown

TV Setup

  • We purchased generic 45-60” Amazon Fire TV’s from Amazon. They regularly go on sale for $150-250
  • When setting up the TV for the first time, make sure to select “Kiosk Mode” when prompted. This will make the TV always stay on and automatically switch to the last input device whenever it’s powered on after any kind of power outage.

Turning on TV with Raspberry Pi using CEC

echo 'scan' | cec-client -s -d 1
  • Turn on TV and switch to HDMI connected to Pi
echo 'on DEVICENUMBER' | cec-client -s -d 1
echo 'on 0' | cec-client -s -d 1 ;  echo "as" | cec-client -s

Get CEC Device Power Status

echo 'pow 0' | cec-client -s -d 1

echo 'pow DEVICENUM' | cec-client -s -d 1