Computers have been important for me most of my life. As a kid they were new and fun. As an adolescent they were a bit of escape and an opportunity to learn and grow. As an adult they became my livelihood. Today they are everywhere and nowhere since we usually don’t think about them much, just as we don’t think about the lights we turn on when we enter a room or the water that flows from the tap when we turn on the faucet. Successful technology is technology that you don’t have to concern yourself with.
But it is just that lack of concern that takes the magic out of technology. When it becomes commonplace, it becomes uninteresting. Am I thankful that when I pick up my smartphone that it just works, automatically unlocking with a scan of my face and connecting me instantly to a worldwide network of computers and information that was still considered unfathomable when I was a child? Sure. But does anyone really care these days?
This is why I love tinkering with old technology. Retro tech is fascinating precisely because it was never commonplace during its time. It is always a transitory fossil in the historical record of technology. It shows an evolutionary path and also often shows you the struggles and genius of some truly remarkable inventors and engineers.
Today there are finally museums dedicated to the history of computers and technology. But sadly because of the transitory nature of technology, that is often the only place to see it. Moore’s law and the upgrade cycle doom all technology once it leaves the factory. So how can one practically experience classic technology at home?
Oscar Vermeulen of Obsolescence Guaranteed has done a fantastic job in bringing one of history’s most famous minicomputers into the hands of enthusiasts with his PiDP-8/I kit. Based on the venerable SimH software project running on a Raspberry Pi, this kit provides you with your own replica PDP-8/I console including all of the blinkenlights and switches that you can toggle to your heart’s content. And because it is running SimH, you can run all of the actual 1960s and 70s-era original software of which a surprisingly large amount is still available.
If you have any interest at all in the history of minicomputers, this kit is a must-have. Don’t be intimidated by having to solder it together. It’s a simple weekend project and very little can go wrong. And if you must have it and don’t want to assemble it, contact Oscar who has a network of people who can assemble it for you.
But please, please, please try to assemble it yourself. You will find it so much more rewarding. I hadn’t soldered since I was a teenager and was worried that I might not have the skills anymore. Oscar assured me it was doable and he was right. The first whiff of rosin wafting up from the PCB was not only nostalgic, but also so rewarding to know that I was putting it together myself.
So have some fun and compute like it’s 1967! Load Fortran IV from paper tape. Do some file management on DECtape. Or just toggle in your own machine code program directly into core memory. Why? Because now you can.
The following are some of the take-aways from my own experience building the kit. Since Oscar’s own instructions are already fantastic, take these as potentially useful personal observations. I hope they are helpful, but I make no warranty expressed or implied for their accuracy.
Tools and Supplies
- PiDP-8/I kit
- Raspberry Pi 3 (any Pi will actually run the simulation, but the lamp glow affect is only available on 3 and up)
- Safety glasses
- 9V battery
- Test leads with crocodile clips
- Extra resistor (ca 1k)
- Magnifying glass
- Masking tape
- Side cutter
- Phillips screwdriver (2-2.5 mm)
- Adhesive felt pads (like you get at a hardware store or Ikea for applying to the legs of tables or chairs)
- Drill (optional)
- Hobby knife (X-Acto or similar)
- Multimeter (optional)
- Jumper wire (optional)
Before you even open the kit, you need to read Oscar’s instructions in their entirety. They are exhaustive and precise. Reading them through once before diving in lets you know what you can expect.
Make sure to get the software running on your Raspberry Pi before you start building. First try the prebuilt image with everything pre-installed that Oscar points to, since that is the simplest option. I was not able to get it to work on first attempt, however. Still not sure why, but might have been something to do with my Pi3.
When I followed the build-it-yourself instructions on the Tangentsoft webpage using the latest stable release, I had no trouble. It really isn’t any more effort than using a prebuilt image and you also then have yourself setup to receive updates to the simulator easily when you are finished. You may need to also sudo apt install python3-yaml as well, but are prompted if you try to build and it is missing, so it is quite clear.
One note, if you buy a Pi in a starter kit that comes with a pre-loaded SD card, you probably should re-install the full Raspbian on the SD card. I tried with an extra one I had from another starter kit that and ran into some strange issues. Better to start with a clean installation.
Think about how you want to hook the PiDP up. Oscar suggests wifi to keep it simple, but I wanted to have it hard-wired to ethernet. There are some simple adapters that allow for power, ethernet, and even serial to be mounted to the case properly which he lists on his PiDP-11 project, which work great here as well.
Oscar recommends using leaded solder, but I found that lead-free solder works just fine. I used Stannol HS10 lead-free with the iron set to 235°C and it was great for this project. But do make sure you have an iron where you can set a specific temperature. Do not use a wood-burning or plumbing iron! The kit’s assembly is forgiving, but you don’t want to overheat parts.
Sort the parts out so that you have them all in little piles. If you have a soldering mat with storage compartments, great. If not, just find some small containers to arrange everything within reach. Don’t forget to sort the switches not just by color, but also by type (toggle or momentary).
Put on your safety glasses before you move on. Soldering itself is generally safe if you are careful, but trimming leads can send wire flying. Be safe and cover your eyes.
Start with the diodes. Bend one to fit the PCB (making sure you have polarity right). Remove it and bend the rest like that. Then insert them. I found this easier than bending each before inserting.
Diodes and Resistors
Make sure they are all flush and then take a length of masking tape and apply it to the whole row to hold them down.
Flip the board and before you start soldering, do a double-check on the polarity of them by using your multimeter.
Use the same trick with the tape for the resistors. They aren’t polarized, but a quick check with the multimeter can confirm that you have the right value resistors in the right place.
Before you start mounting the LEDs, use your 9V battery, resistor, and leads to test each lamp. LEDs are robust, and I didn’t find any dead ones or really expect to, but it is easier to check now before you mount and solder.
LEDs have polarity, so make sure that you connect the long leg to positive and make absolutely sure you use a resistor when testing. You WILL DETROY an LED if you allow the full voltage and current to pass through the LED.
Once you have soldered them, check every lamp again to make sure that you didn’t damage any during soldering. It is highly unlikely, but again it is simple to do and much easier to replace an LED now rather than later. Use a small bit of masking tape to mark any defective ones you find.
Take your time on the IC socket and 40 pin header. The header especially has pins that are close together. Give yourself time to do it right. it is especially easy here to end up with a blob of solder shorting a connection or end up overlooking a dry solder because they all start looking the same. Use your magnifying glass to check carefully.
Testing and Troubleshooting
Time to test your work! Connecting the Pi and running the check is so exciting. Don’t let some dark LEDs discourage you! Mark them with a bit of masking tape and disconnect the Pi.
You know none are burnt out since you checked them (twice), so it has got to be a bad solder joint somewhere. If you are comfortable with schematics, Oscar has the PCB layout on his site. Even if you aren’t, try just following the traces back to where the bad joint is. Using your magnifying glass, you’ll find the problem eventually.
Be sure to read his troubleshooting tips, which details this procedure.
I had one row and one column out. Since the lighting of the LEDs is multiplexed, the problem had to be at the IC or 40 pin socket. In both places I found a couple of dry joints.
Just a quick reheat with the iron and some fresh solder and everything was working.
You can use a bent piece of an LED like Oscar recommends to test the switch sockets, but I found it much easier to use a test jumper instead.
Take a Break!
Take a break at this point like Oscar suggests. If your PiDP-8/I is lighting up properly at this point, have a drink to celebrate and leave it to come back later or the next day refreshed.
I found it easiest to mount the first switch and then tape it down before soldering the first leg. But before you heat up the iron again, make sure you have the RIGHT switch inserted in the RIGHT way. White or brown? Momentary or toggle? Up or down? Check the markings on the PCB before inserting.
With the first one soldered, I mounted the next one and taped it to the first to align it and keep it flush. I did this all the way down and found that most were fairly straight, only needing a few adjustments.
Take another break as Oscar recommends. When you come back look at the switches from all angles, tilting the PCB before your eye to find any misalignment.
Just remember to take this slowly and don’t overheat the switches. They are the most sensitive components.
Measure twice and cut/drill once. No matter what connections you decide on, make sure you know just where you need to cut. I rushed things and ended up having to cut a larger hole because I didn’t make sure it lined up properly.
If you want more than just power, have a look at the connectors Oscar suggests for the PiDP-11. There are nice options for power, ethernet, and even HDMI if you want it.
Mounting and Finishing
Remember to insert any cabling through the back of the case at this point before mounting the PCB.
Oscar’s solution to the offset caused by the solder joints of the switches by using the felt pads as a spacer is a good one. However I found that when toggling the middle switches, the whole row would bow. I grabbed some extra felt pads and placed a few more along the mounting block along the bottom of the case to solve this.
Just a reminder that the LED spacer is supposed to be on permanently. You will need to remove it to screw down the PCB, but remember to remount it.
I found that the acrylic panel fit perfectly and stayed firmly in place on its own, as Oscar says. However the switches in mine were initially brushing against the panel. You may need to use a knife or fine-bladed screwdriver to nudge the panel down in the frame for clearance.
Now just connect and start computing like it’s 1968! There is so much you can do!