I’m a computer guy, and while I’m not quite old enough to have first-hand experience with classic golden age hardware like the PDP-8, I spent a good deal of time in college working on the VAX, still own my first computer, and have an appreciation for those forefathers of the amazing PCs and servers we use today.
Back in 2009 (episode #177 of the Security Now! podcast), Steve Gibson mentioned Bob Armstrong’s PDP-8/E-like front panel for his SBC1620 single-board computer. Watch any episode of Security Now! since then and you can see three of those units with their blinking lights over Steve’s left shoulder. The kit was expensive, though, and I couldn’t justify the cost or effort necessary to procure the necessary parts for a system I could really only use for eye candy.
Fast forward 8 years or so to this past April, where in episode #505 of Security Now!, Steve mentioned Oscar Vermeulen’s PDP-8/I kit, based on the Raspberry Pi, available for under $200. After just a few minutes of browsing the pages on Obsolescence Guaranteed, I immediately joined the mailing list …
In June I placed my order for one of the first 250 kits Oscar was producing. Originally I was going to buy the completely assembled unit (~$300 including the Raspberry Pi), worried that my soldering skills were not up to the task, but once I got the order form in June, I decided to take the risk, have some fun, and go with the basic $165 kit (which included international shipping and everything except the RasPi, which I already had anyway). About a month later, near the end of July, the kit arrived on my doorstep:
I got busy with work and family in August and didn’t have time to jump into assembling the kit right away. I starting procuring the accessories I would need, like paint, paintbrushes, a new soldering iron, 60/40 solder, desoldering braid, a multimeter, etc. (I already had side-cutters). Oh, and also a new Raspberry Pi B+! 😮 While reviewing the instructions I realized my original RasPi Model B wouldn’t work with the kit since it only had a 26-pin GPIO interface instead of 40-pin like the newer A+, B+ and Pi2 models. Oops! So I ordered one of those and a new 16gb microSD card to go with it from Amazon.
Finally in late August I had everything I needed, including the free time to work on the kit and working software on the new Pi. I started with the switch skewer assembly and painting the switches. This took a week since I did three coats, one a night, for the brown and white switches separately (I used Artist’s Loft Arctic White and Liquitex Professional Raw Sienna acrylics purchased from my local art supplies shop).
I was out of town over Labor Day weekend so didn’t get around to starting the PCB soldering until a few days after that. This was the part I was most worried about. I hadn’t done any real soldering, especially electronic soldering, since a grade school science project. While I was waiting for all my parts and accessories to arrive, I had done a little practice soldering and even purchased a cheap training project to shake off the rust and hopefully prevent a screw-up on the kit. Over the next few days after work, following the instructions, I soldered on the 26 diodes, 15 resistors, and 89 (!!) LEDs. With each of those elements having two pins, that added up to 260 solder joints. As far as I could tell, I wasn’t having any major problems with my joints and really got the hang of soldering again pretty quickly.
Next I moved on to the IC chip, GPIO riser (another 18 and 40 solder joints, respectively) and finally the switch skewer (another 52 solder joints). If you weren’t keeping track, that’s a total of 370 solder joints … and then I had to snip all of those leads!
The last (and easiest) bit was mounting the RasPi to the PCB.
With the major assembly done, it was time for a test boot! I was thinking about all the soldering mistakes I could have made, with fingers crossed, as I plugged in the RasPi for the first time. There was no puff of smoke, no blown fuses … I waited anxiously as I watched Raspian boot, and a few seconds later the front panel came to life. It worked! What a relief! I ran through the included sample programs (like Colossal Cave!) and a LED/switch test to confirm that everything was functional. I had blinkenlights!
Then it was time to put the PiDP-8 into its wooden case. This was cause for more trepidation since my woodworking skills are worse than my soldering skills. The kit included two wooden blocks to attach to the PCB with standard wood screws, pretty simple. Those blocks were then meant to be attached to the rear of the wooden case, holding the entire assembly in place. I opted to not attach the PCB to the case so I could easily remove it to show off or to access the network and USB ports on the side of the RasPi. My plan was to only put a small hole in the back for the power cable and not put a big slot in the side for access to those ports, but that plan would change.
After drilling the initial hole in the back, I decided to make it slightly bigger in case I wanted to run an HDMI cable out the back to hook up the RasPi to a monitor when needed. That hole ended up being much larger than necessary due to my lack of a measure-twice-drill-once mentality, but that’s the rear of the case so no one will really see that. I also had a wireless dongle to use which I hoped would fit inside the case, again obviating the need for that side cutout, but that turned out to be not workable either. The USB dongle stuck out just slightly too far, preventing the PCB from fitting into the case, so I had to get out my drill and reciprocating saw and carefully cut out a slot on the left-hand side. Again, my lack of measuring and woodworking skills caused the slot to be not as perfect as I would have liked, but it did provide access to the ethernet jack and two of the four USB ports (due to the slant of the PCB in the case). And thank goodness I didn’t crack the case or do any serious cosmetic damage.
Oscar’s instructions also called for the acrylic front panel to have two holes drilled into it (and also a hole drilled through the PCB!) to attach it to the case. Other kit owners on the PiDP-8 Google Group were coming up with alternative methods: some people’s panels were snug enough that they stayed in the case on their own, others were using magnets. I decided to go with velcro so it could be easily removed. Due to the thickness of the velcro the faceplate sticks out from the wood case a little, but at least it’s even and doesn’t look too bad. This also gives me an edge to grip making it easier to remove the faceplate (since the velcro is pretty sticky). Finally, I put some adhesive clear rubber feet on the bottom of the case to give it some lift/tilt and also purchase so it doesn’t slide around on my desk when using the switches.
If you want to see the entire assembly (everything I just described above) in just 5 minutes, check out my time-lapse video (you may have noticed the video camera in my workbench photo above):
And that’s it … here’s my finished PiDP-8 (with a few pertinent bumper stickers I had lying around):
The beauty of Oscar’s kit (other than its cosmetic looks) is the use of the Raspberry Pi running Rasbian behind the scenes. It uses SIMH to run OS/8 (which also drives the LEDs and switches on the front panel), but you can still SSH into the Linux shell and run other processes, like X Windows or whatever other apps you may want to host on the RasPi. I already have a Linux server, though, so what I need to do next is start tinkering with the PDP-8 stuff (like toggling in programs via those front switches!). This was a really fun kit to build, and I feel quite accomplished that I was able to put it together successfully.
Some other related links: