CABLE 82 Project Update: Run Your Own Cable Network with New Channels

CABLE 82 started as one channel: a 1982-style community bulletin board on a Raspberry Pi, broadcast over RF to a 1987 Magnavox. With my latest GitHub release, v0.2.0, “The dial”, the CABLE 82 project becomes a cable network. And, you set the programming.

What changed

  • Video channels. Drop video files in a folder and point a channel at it. My folder of 90s commercials is now channel 2, for example.
  • A broadcast clock. Channels air whether you’re watching or not. Tune away, tune back, and you land mid-program.
  • Scheduled hours. Cartoons can keep Saturday-morning hours. Off the air, the channel shows a test card with the resume time, color bars, or static.
  • A tuner. Change channels with arrow keys, a USB gamepad, or an HTTP request. Every change cuts through a moment of tuner static and shows a channel banner.
  • A demo channel. node channels/fetch-demo-channel.js downloads eight public-domain films from the Internet Archive’s Prelinger collection. Duck and Cover, Design for Dreaming, One Got Fat. A working channel in one command.
  • The control room. A Channels panel with a folder picker, a schedule editor, and a week grid of your on-air windows.

The broadcast clock

A normal media player has a play state: what’s playing, where you paused, what’s next. A cable channel has none of that. Its position is a pure function of the wall clock: given the playlist and the time of day, the channel knows exactly what should be on the air and how far into it we are.

That means there is nothing to save and nothing to resume. Tune to channel 2 at 9:14 and you join a commercial already in progress, like TV that doesn’t wait for you.

I changed channels with an Atari joystick

The tuner reads NES-style D-pad buttons and the analog axis, so when I plugged in a single-button Atari USB stick, up and down worked on the first try. A 1977-style controller changing channels on a 1987 television driven by a modern Raspberry Pi. The input doesn’t care what you use: anything that can press a key, close a GPIO pin, or POST to /api/tune is a remote control.

My CABLE 82 network has a channel dedicated to 80s commercials, 90s commercials, retro movies, Beavis and Butthead, music videos, Transformers, Saturday morning cartoons, and the community bulletin board. I have been busy copying old VHS tapes to MP4.

Thermals

Software video decode is the hardest this Pi has ever worked. The bulletin board alone kept the 3 B+ in the high 50s C; continuous video holds it in the low 60s. That trips the 3 B+’s soft temperature cap at 60 C (vcgencmd get_throttled reports 0x80008), which is the chip protecting itself by design – not a power problem, and the picture doesn’t care.

Passive cooling has been fine, but a network that broadcasts around the clock earns a fan. I’m looking at a Raspberry Pi 3 case with a fan and heatsinks. It also comes with a 3A supply with a power switch, but don’t use the power switch. Send a proper shutdown signal to the Raspberry Pi. Older Pi’s can corrupt the SD card.

Get the latest CABLE 82 release

git clone https://github.com/nothans/cable-82
cd cable-82
node server.js

Open the address it prints and you’re on the air with channel 82, the community bulletin board. Run the demo channel fetcher, add it in the control room, and you have a network.

The repo is at github.com/nothans/cable-82. The original build story and the step-by-step tutorial cover the build from a blank SD card to a cable network of your own.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.