Building the Ultimate BATC Jukebox: Feature Complete (For Now!)
Posted: Tue Feb 10, 2026 4:49 am
BATC Jukebox & Overlay System: Feature Complete!
View the Live Stream Here
______________________________________________________
Hello everyone!
I am absolutely thrilled to finally share this project with you. It has been a labour of love, a bit of late-night coding, and a whole lot of ham radio spirit. I have officially reached "Feature Complete" status on my BATC Jukebox and Overlay System.
Of course, as any tinkerer knows, "complete" usually just means "until I have another idea at 2 AM," but the core vision is alive, stable, and ready for the airwaves.
What is this thing?
This project is a custom-built ecosystem designed to make a BATC (British Amateur Television Club) stream more interactive and informative. It bridges the gap between a static video stream and a dynamic, living broadcast by combining a Node.js backend with a sleek web-based overlay and a remote control interface.
The star of the show is the Public Jukebox Control. I wanted a way for the community to interact with the stream in real-time, choosing what we watch together.
The Features
How to Use the Jukebox (User Guide)
1. The Remote Control Panel
Head over to jukebox.gregoryfenton.com. This is the "cockpit" for the stream.
The system responds to several "!" commands via the mailbox and overlay:
!mail [callsign] [message]
Leaves a message in a user's digital pigeonhole.
!getmail
Retrieves and displays your pending messages.
!location [text]
Updates your current location on the stream overlay.
3. Checking the News
The ticker at the bottom cycles through global ham radio news. Scan the generated QR codes to read the full articles on your mobile device.
______________________________________________________
Under the Hood
For the fellow geeks out there, the heart of this is jukebox-server.js.
Source Code:
My current version is on my GitHub at: https://github.com/gregoryfenton/BATC-jukebox-plus
73 de M0ODZ
Greg
View the Live Stream Here
______________________________________________________
Hello everyone!
I am absolutely thrilled to finally share this project with you. It has been a labour of love, a bit of late-night coding, and a whole lot of ham radio spirit. I have officially reached "Feature Complete" status on my BATC Jukebox and Overlay System.
Of course, as any tinkerer knows, "complete" usually just means "until I have another idea at 2 AM," but the core vision is alive, stable, and ready for the airwaves.
What is this thing?
This project is a custom-built ecosystem designed to make a BATC (British Amateur Television Club) stream more interactive and informative. It bridges the gap between a static video stream and a dynamic, living broadcast by combining a Node.js backend with a sleek web-based overlay and a remote control interface.
The star of the show is the Public Jukebox Control. I wanted a way for the community to interact with the stream in real-time, choosing what we watch together.
The Features
- Smart Newsfeed: Integrated custom RSS/Atom parser pulling headlines from ARRL, RSGB, Southgate, AMSAT, and more. It even highlights "Silent Key" reports.
- Interactive Commands: Lots of useful (and not so useful!) commands - try !help for the full list.
- Dynamic QR Codes: Generates high-quality QR codes on the overlay for every video so viewers can scan to find the source.
- The "Doorbell" & Speech: Uses espeak-ng to announce new visitors in my shack so I don't miss anyone while I'm working on hardware.
- Security Minded: Built-in "honeypot" detection to automatically ban IPs sniffing for vulnerabilities.
How to Use the Jukebox (User Guide)
1. The Remote Control Panel
Head over to jukebox.gregoryfenton.com. This is the "cockpit" for the stream.
- Set Your Callsign: Enter your callsign in the top box first. It saves to a cookie so you only do it once.
- Pick a Video: Browse the grid and click any card to add it to the play queue.
The system responds to several "!" commands via the mailbox and overlay:
!mail [callsign] [message]
Leaves a message in a user's digital pigeonhole.
!getmail
Retrieves and displays your pending messages.
!location [text]
Updates your current location on the stream overlay.
3. Checking the News
The ticker at the bottom cycles through global ham radio news. Scan the generated QR codes to read the full articles on your mobile device.
______________________________________________________
Under the Hood
For the fellow geeks out there, the heart of this is jukebox-server.js.
- Backend: Node.js
- Libraries: chokidar (file watching), qrcode/canvas (overlays), fast-xml-parser (news feeds).
Source Code:
My current version is on my GitHub at: https://github.com/gregoryfenton/BATC-jukebox-plus
73 de M0ODZ
Greg