Every embedded systems student learns the same lesson eventually: constraints breed cleverness. The Apollo Guidance Computer that flew astronauts to the Moon ran on roughly 2 KB of erasable memory and a clock near 2 MHz, yet it was enough to land people on another world. That is why a faithful recreation of its Display Keyboard, the DSKY, is more than nostalgia. It is a hands-on window into how 1960s engineers squeezed spaceflight out of hardware weaker than today’s pocket calculator.
A hardware hacker named Michael spent several months building a near-exact DSKY replica and published every file so you can make one too. The unit reproduces the numeric keypad, the green annunciator lights, and the register displays that Apollo crews used to talk to the flight computer. Because it runs on modern parts, you can wire it to almost any project, not just a spacecraft simulator.
How the electronics come together
A Raspberry Pi does the heavy lifting, running the open-source VirtualAGC emulator that recreates the original guidance computer developed by Ron Burkey and a community of enthusiasts. A cluster of Arduino microcontrollers handles the physical layer: scanning key presses, driving the annunciator panel, and updating the display. A Python script on the Pi bridges the two over a serial link, so the buttons and lights behave exactly like the real hardware. The parts count is low and the wiring is straightforward, which makes it a strong classroom or capstone build for students who want to see how a host computer and microcontrollers split the work.
What you’d need to build your own
Michael documented the whole project on GitHub, including the CAD files, schematics, and source code. To start, you’ll want a Raspberry Pi, a few Arduino boards, a keypad matrix, and LEDs or a small display for the annunciator panel. The case parts were modeled from archived NASA engineering drawings, so the finished replica matches the real proportions. A second-generation version is already underway with a custom PCB, redesigned lighting and keyboard controllers, and swappable panels for both the Command Module and Lunar Module layouts. Grab the files from the VirtualAGC GitHub repo, breadboard the keypad matrix first, and confirm your serial connection between the Pi and an Arduino before you solder the final panel.
Frequently Asked Questions
What software makes this DSKY replica work?
It runs VirtualAGC, an open-source emulator of the Apollo Guidance Computer, on a Raspberry Pi. Arduino boards handle the keypad, annunciator lights, and display, and a Python script links them to the Pi over serial.
What parts do I need to build one?
A Raspberry Pi, several Arduino microcontrollers, a keypad matrix, LEDs for the annunciator panel, and a small display. The CAD files, schematics, and code are all published on the project’s GitHub.
What will I learn if I build this?
You’ll practice serial communication between a Raspberry Pi and Arduinos, wiring a keypad matrix, driving indicator LEDs, and reading schematics. It’s a solid intro to how real embedded systems split work between a host computer and microcontrollers.
