Show Control Panel

I mentioned this here and thought I would write up some quick information about it. This isn’t really a complete build document, but it may give you some ideas you can use for your own show.

Last year I used a scrolling P10 display inside the house to display our show’s status. It wasn’t very practical because you had to wait for it to scroll through all of the status messages, and there wasn’t any way to interact with it.

This year I made a little touch-screen show control panel using a Raspberry Pi with an “official” Pi 7″ touchscreen in a small enclosure. Here are the parts I used (affiliate links):

Unfortunately Raspberry Pi 3 B+ SBCs are almost impossible to get now. I believe there are similar enclosures for the Pi 4, and the screen also works with it.

I wrote some quick and dirty PHP/AJAX code that uses the excellent FPP API to provide the functionality I needed. The Raspberry Pi is running an nginx Web server with PHP, and the code (scripts) which you can find on my Github:

https://github.com/neowolfwitch/fpp_scripts/tree/master/2022/Web%20Monitor%20Scripts

It’s also running as a Web kiosk with Chrome (Chromium) full screen, displaying http://localhost/index.php. There are a lot of tutorials for setting up nginx on a Raspberry Pi, as well as setting the Pi up as a Web kiosk, so I’m not going to get into that here. As noted in the readme- Google is your friend!

Here is the result:

The top portion shows the current playlist status along with the status of our controllers at a glance. The bottom portion are action buttons that can be configured in the config.php script. It’s not very pretty, but gets the job done and makes it easy to start and stop the show without launching FPP on a computer or mobile device. You can just click on the buttons in a Web browser, or with the touchscreen- just tap them.

I’m hoping next year as I have time to work on making it a bit nicer, with more rows of buttons available. I pulled in some old CSS for a project I did several years ago, and haven’t messed with it, since for now it is working great!


Leave a Reply