Building a digital newspaper machine

newspaper machine

Awhile back, a friend of mine, Nate Papes, ran across Scott Walker, director of enterprise and investigation at Alabama Media Group, who had retrofitted a newspaper machine to display newspaper front pages digitally. (Update March 13, 2016: This link is dead; it appears Walker removed the post.) We talked about creating our own, but never followed through.

A few years later, Nate found a New York Times newspaper machine in a Joplin, Mo., junkyard and began to work on his own machine. I offered to write the software to make the box run since Walker’s was written for a Macintosh and we both were toying with Raspberry Pi computers. In the end, Nate kept his box as original to the Times box as possible and I wrote the software to run as JavaScript in the browser and pull the pages down.

After Nate’s newspaper machine turned out so well, I decided to build one of my own. I found a St. Louis Globe-Democrat newspaper machine south of St. Louis on Craigslist that looked to be in good shape. The Globe closed for the final time in 1986, so it was historic, in good shape and looked to be fairly easy to get up and running as a digital newsstand. As a plus, the machine came with the second-to-last issue of the Globe, which featured an editorial about how rumors of the paper’s demise were untrue. It was a great find.

Writing the Code

image

Walker’s box was run on a Macintosh using AppleScript, etc., to populate the papers. I wrote something similar, but based it in the browser instead. The core functionality of the script just rotates through the images in JavaScript.

Simply, the page loads the first image (the Post-Dispatch in this case) waits 7 seconds and loads the next image in the array and so on. When it reaches the end of the array, it starts over. Every hour, the page refreshes in case there’s new content or a paper that loads the page later. If there is no page loaded that day, it falls back to a default image.

A few things of note: the feed only updates to the ‘current day’ at 4 a.m. since most papers don’t load the front page until sometime overnight. Also, while the pages in the example are loaded from Newseum, any image that’s hosted online (or locally on the Pi) can be added to the feed. Just don’t include the “urlBase” string before the image name in the JavaScript.

Writing the rotator in the browser simplifies setting up the Raspberry Pi to run in kiosk mode natively. The code and process could be much more advanced or refined, but I think it gets the job done fairly simply and quickly. (I’m considering enhancing the project to a custom feed can be set up and hosted from my site.) There will be more on that later.

Building the Box

What you need:

1 – Newspaper machine (Varies)

1 – 17 inch LCD monitor with power ($10+)

1 – Raspberry Pi – B or B+ model … I’m using the B version ($35)

1 – HDMI to VGA converter ($9.95)

1 – VGA cable (The blue monitor cables … you probably have several laying around)

1 – SD card to store the Raspberry Pi operating system ($5?)

1 – Power cable for the Raspberry Pi ($5?)

1 – WiFi connector for the Raspberry Pi or an ethernet cable and an internet connection ($8.99)

1 – Mounting brackets for the newspaper box (Varies)

image

So, what’s a Raspberry Pi? Basically, it’s a fully functioning computer roughly the size of a smartphone. It isn’t a high performance machine and doesn’t have any real features built in besides a great graphics processor and (almost) all of the ports you’d need. Also, it costs $35.

One downfall of the Pi for this project is a lack of a direct-from-board VGA connector, so you have to use a HDMI to VGA connector, which can be had for less than $10. The one I purchased, linked above, is fairly finicky at least with my monitor, but it does work after enough time changing settings in the OS. I would try the Pi View instead. Nate used that connector and had no problems.

How it looked out of the box. It also had blanking issues, where the Raspberry Pi would turn off the screen to save energy…except the screen wouldn’t turn back on and the backlight stayed on.

image

After configuration:

image

If you end up having converter issues, check out the eLinux wiki page. That saved me.

The Pi also doesn’t have onboard WiFi but a USB WiFi dongle can easily correct this. I used the Edimax EW-7811Un connector and had a great plug-and-play experience.

The box itself is really up to your tastes and how much work you want to put into it. I wanted to keep mine pretty original, so I just sanded and repainted the base with Rust-Oleum to keep rust off of the carpet.

image

I painted and clear coated the bottom. The top I just clear coated (after spot sanding the large rust spots) since it only had light rust.

image

image

To mount the monitor, I found some cable channels from the hardware store, drilled out an extra hole and attached them to the bolts that also hold in the PlexiGlass. That seems to hold it fairly tightly against the front of the machine, and I think they cost maybe $3.

image

image

How I ended up mounting it. I’ll probably add 3M double sided mounting strips as well for extra support.

image

How deep the monitor goes into the box.

image

I also saved the newspaper holding grate/cage from the glass so if I ever wanted to go back to a regular machine there was nothing structurally changed about the box that would make it not original. I then used the grate to kind of help with wiring on the inside.

image

Setting up the Raspberry Pi 

I recommend following this tutorial to set the Raspberry Pi into kiosk mode from startup.

For the most part, this worked as advertised, though I had some monitor issues that required me to lightly change the script. I won’t complicate this post with those details, but I would  be happy to help troubleshoot if you run into a problem.

newspaper machine
The digital newspaper machine displays The Boston Globe from March 12, 2016.

If you have any comments or questions, feel free to shoot them my way! Thanks for looking!

Other things of note

St. Louis Globe-Democrat 1986 television ad

Published by Michael Gulledge

Software developer and freelance photojournalist based in St. Louis.

Leave a Reply