W.O.P.R. Display Kit
W.O.P.R. Missile Launch Code Display Kit is a modern take on the W.O.P.R. missile launch sequence from the 1983 movie War Games. It's a very versatile display made from 12x 14-segment digits, driven by a TinyPICO, TinyS2, or TinyS3.
Because it runs off an Unexpected Maker Tiny board plus an optional Audio Shield, it can play sounds and music, has WiFi and Bluetooth, making it a fully-featured IoT device with a sexy display.
What's in the Kit?
The kit comes with everything you need to build your W.O.P.R. display. A few components come pre-assembled on the PCB (RGB LEDs and one capacitor) as they have plastic cases and can't be hand soldered easily.
- PCB (with RGB LEDs and 1x 100nF capacitor pre-assembled)
- 6x Red 2-digit 14-segment displays
- 6x 10k 0805 resistors
- 3x HT16K33 LED drivers
- 3x 100nF 0805 capacitors
- 2x 47k 0805 resistors
- 2x Schottky diodes
- 2x Large tactile buttons
- 2x Small tactile buttons
- 1x Acrylic front plate
- 1x 3D printed back
- 4x Mounting screws and standoffs
- 5x Acrylic DEFCON number inserts
- 4x 10-pin female headers
Optional extras include a TinyPICO, TinyS2, or TinyS3[D] dev board, and an Analog Audio Shield.
DEFCON Numbers
The 5 acrylic numbers at the top right are DEFCON numbers, used in the project (and in the movie) to show the current defense condition -- 5 being at peace and 1 being at war. These numbers are lit up by the RGB LEDs that come pre-assembled on the PCB.
SMD Pre-Assembled Option
For a limited time, you can order your W.O.P.R. kit with all of the SMD components pre-assembled. You'll only need to solder the through-hole components yourself.
Code and Firmware
The official Arduino firmware is available on GitHub under the MIT license, implementing an NTP clock, a movie unlock sequence simulation, and a "display whatever message" random unlock sequence. Features are selectable via a menu on the display (right button is menu, left button start).
The Arduino code is written to run specifically on an ESP32, utilising ESP32-only functionality like RMT for the RGB LEDs.
There is also a CircuitPython version by scogswell available on GitHub.
What Else Can This Display Be Used For?
- Schedule/task reminder system
- Online messaging system
- Social media counter
- NTP Clock
- General IoT display
JBWopr Arduino Library
Jonny Bergdahl has created the JBWopr Arduino Library -- a helper library for the Arduino platform that makes it easy to interface with the W.O.P.R. board. It supports TinyPICO, TinyS2, and TinyS3 with both Arduino core 2.x and 3.x.
The library provides a tiered set of classes depending on what you need:
- JBWoprDevice -- Basic board interaction (display, DEFCON LEDs, buttons, audio)
- JBWoprWifiDevice -- Adds WiFi configuration via WiFiManager
- JBWoprMqttDevice -- Adds MQTT connectivity for remote control
- JBWoprHomeAssistantDevice -- Integrates with Home Assistant via MQTT Discovery
It also includes a built-in effects system, web-based configuration portal, customisable time/date formatting, and button click/double-click detection.
Do I Have to Use an Unexpected Maker Board?
No, you can wire in a different micro-controller board, but it won't look as neat. The Arduino code is written for ESP32 boards, so if you use a non-ESP32 board, you'll need to modify the code yourself.
For more information, please visit the W.O.P.R. product page.
Compatible Dev Boards
- TinyPICO (ESP32)
- TinyS2 (ESP32-S2)
- TinyS3[D] (ESP32-S3)
Display Hardware
- 12x 14-Segment Digits (6x dual displays)
- 3x HT16K33 LED Drivers
- Pre-assembled RGB LEDs (DEFCON indicators)
- 2x Large Tactile Buttons
- 2x Small Tactile Buttons
- Acrylic Front Plate
- 3D Printed Back
Updated on: February 8, 2026