Back to Projects
Screenware: Taking Back the Display

Screenware: Taking Back the Display

View Project

If there’s one thing I’ve learned from managing infrastructure for Rolling Hills Technology and my classrooms at LCCC, it’s that sometimes the simplest problems have the most bloated, expensive solutions.

Digital signage is one of those problems. I just wanted a clean, reliable way to throw slides, weather data, and real-time updates onto the TVs around my spaces. But when you look at commercial screen management software, it’s usually a nightmare of subscription fees, proprietary hardware, and clunky, locked-down interfaces. I didn't want a black box; I wanted a system I could control, tweak, and deploy without asking for permission or paying a licensing fee per screen.

So, I built it myself.

The Build: Django and Raspberry Pi

I approached this the same way I tackle a lot of my infrastructure projects—using reliable, gritty, open-source tools that I know inside and out. The architecture for Screenware is split into two straightforward pieces:

  1. The Server: The backend is powered by a Django web server. It handles all the heavy lifting—scheduling, data ingestion, and content management. This is the central hub where I can push updates to my students, pull in the daily Cheyenne weather forecast, or drive live announcements for events like TekCon.

  2. The Client: At the edge, connected directly to the TVs, the client software runs on a standard Raspberry Pi. It’s cheap, physically tiny, and endlessly reliable. The Pi simply polls the Django server, pulls down the views, and puts them on the glass. If a unit ever burns out or gets damaged, I just flash a new SD card, plug a new Pi into the HDMI port, and we are back online in minutes.

It’s the exact kind of practical, nuts-and-bolts engineering I try to teach my students when we’re getting our hands dirty on the WyoCyberRange. You don't always need a massive enterprise contract to solve a problem—sometimes you just need Python, a microcomputer, and a solid network connection.

Keeping It Free and Open Source

I designed Screenware from day one to be completely free and open-source, and I will be posting the GitHub link so anyone can grab the repository.

Why give it away? Because this community is built on shared knowledge and shared tools. Just like I recently released WyoCyberRange's LabTech platform as freeware, I want this display software to be accessible. Whether you are an educator trying to modernize a campus on a shoestring budget, a fellow DEF CON hacker putting together live metrics for a local meetup, or just someone building out a killer dashboard in their home lab, you shouldn't be gated by cost.

I spend my days teaching the mechanics of IT and writing textbooks on automation. The open-source ethos is a massive part of that culture. We learn best by tearing things apart, modifying the code, and seeing how it works under the hood. Screenware is just one more piece of that ecosystem—another piece of the puzzle for "Nerds with Power Tools."