Arduino, Development, DIY, IMSAI, Retro, Vintage

IMSAI 8080 Replica Build

February 7, 2021

Having rescued, restored or otherwise acquired about every type of Apple II and Mac computer that is realistically obtainable (I’m looking at you Apple I), I decided to switch it up a bit and work on something a little outside of the box. Not so far outside of the box that it was not a computer, per se, but at least not an Apple or Mac computer. I had been reading about the computers that predated the Apple I, and I found a small series of home computers that had toggle switches on the front panel for inputting data into the computer. Now, I had seen the Altair 8800 and the IMSAI 8080 before in many articles, magazines and geek-culture references before, and I had a vague idea of how they worked and even what they were used for. My research showed me that the Altair was largely considered the first PC or ‘home computer’ while the IMSAI was considered the first PC clone. (Not starting a flame war, I know that is debatable.)

The next thing that I found out about these two mid-70s specimens of computer history was that they were both fairly expensive to purchase in today’s collector’s market. The average going price on eBay for a complete IMSAI 8080 was around $1600 USD and that was untested and unrestored. A tested, working model with disk drives would bring closer to $4000-$6000. I wanted to experience these machines and learn from them but I was not ready to spend that kind of money. Most of my Apple and Mac restorations have cost me $0, having acquired many of the machines as donations. Even the ones I did pay money for were several orders of magnitude less than these S-100 machines were bringing in. I think the most I ever paid for any of my existing retro computers was in the ballpark of $150. So I set out to determine how realistic this idea was. I joined a couple of forums and Facebook groups and long story short, I was told about this really great Arduino-based IMSAI 8080 replica kit from www.thehighnibble.com. It is running an Arduino-based micro-controller and running an emulator based on the z80pack emulation software. It was a fully functional replica of the IMSAI 8080 and even allowed for real serial connections to other physical hardware. After talking with a few people about whether or not it was realistic to purchase an IMSAI or Altair computer for less than most of the cars that I have owned, I decided to give the IMSAI kit a go. It would still be a fun project to build, it would challenge my soldering skills, and when I was done, I would still be able to toggle in programs from the front panel switches. Plus, it would not be 20″ deep and weigh 40 lbs, which would make it easier to find a home for the computer once I have it completed. I made the purchase and waited a few weeks for the kit to arrive from Australia. While I waited, I watched a series of YouTube videos from TheHighNibble. This guy has his stuff together! He goes through every step and shows you how to not only assemble the kit, but how to assemble the kit perfectly.

Once the kit arrived, I felt like I knew the steps inside and out, due to the videos that I watched more times that I really care to admit. I carefully unboxed and inspected each piece. I found that there were a few plastic spacers missing and I emailed Dave at thehighnibble.com to get some replacements. He apologized for the oversight and sent them out right away. I offered to pay for the postage, but Dave insisted that he would take care of it. In the meantime, I set out soldering piece by piece, taking my time and really enjoying the process. I decided from watching the video series that this kit could be assembled entirely in one or two days with relative ease, but because I wanted it to be perfect, I would take three or four days to get the job done. Each day, I decided how many components I would solder into place, carefully solder those pieces, and then I would stop, examine my work, test my connections with a multimeter and then stop for the day, cleaning up my soldering iron tip and work area. Pacing myself, worrying about quality over quantity. I put a fresh small tip on my soldering iron as my last tip was burned out to nearly being hollow at the point. I wanted to make sure that these solder connections were clean, neat and tidy because the back panel of this kit is translucent acrylic and I will be able to see every soldering connection I made on that side. And because if the job is worth doing, it’s worth doing it right.

My process and pace worked great. Each day, I assembled about two videos worth of the process, referring back to the videos often to get the exact methods that Dave demonstrates. After the initial installation of the socket rails for the ESP32 Pico controller, I installed the two hardest components: The surface-mount PSRAM chip and the surface mount microSD card socket. Surface mount components are much more difficult than through hole components for a few reasons but mostly because they do not stay in place as easily and they are often quite small. It took me a few tries to get all of the pins on the PSRAM chip soldered down correctly, but the method taught by Dave in the videos is a great help. He suggests that you first solder down the pins on two opposite corners to lock the component in place. Then go back and solder the remaining pins. Again, taking my time paid off here. Also, using a lot of flux and only putting solder on the iron, not trying to apply solder directly to the pins on these smaller components.

Backside of PCB: ESP32 socket rails and resistor network
Frontside of PCB: PSRAM, microSD socket, resistor and capacitor

Once you have these three components (the ESP32, the PSRAM and the microSD card socket) and a few through-hole resistors and capacitors installed, you can actually boot up the machine while connected to a computer via USB and test it via a terminal program. I used my iMac and the terminal program CoolTerm to do the testing. I had to download the driver for the USB ESP32 PICO (found in the step-by-step installation guide at thehighnibble.com) and install it on my iMac. Once I did that, I fired up the connection with CoolTerm and hit the reset button on the ESP32 and… everything booted up and worked! No errors or complaints about the PSRAM or the SDCard. I connected my computer to the IMSAI8080 WiFi network that showed up in my available networks list and opened up a Chrome browser (Safari does not work with the built-in web server) and went to the url: imsai8080.local and I was able to see the dashboard with all of the icons on it. Everything was there. The hardest components to solder were tested and verified to be working. I felt really great about that.

The rest of the build was less challenging for me and went pretty quickly. All of the remaining components are fairly straightforward and all of them are through hole, so the soldering is easier to do as well. The most significant and interesting thing about the remainder of the build is the alignment tools that are included in the kit. There are a few of them, two for the LEDs and one for the switches. Using these alignment tools keeps everything perfectly spaced and even and also sets the proper height of the LEDs off of the PCB. That is correct, the LEDs do not flush mount onto the PCB, there is a slight gap between the components and the circuit board. The spacers make this such a non-event that I really cannot say enough about the design of this kit. It truly is remarkable.

Here are some pics of the rest of the build:

All LEDs and IC sockets in place, with their resistors and capacitors.
Switches held in place by the alignment fixture
Soldering is looking satisfactory to me
First look at the completed kit
This angle shows the depth of the completed kit computer
And here it is all lit up!

In conclusion, this kit was super fun to build. It was a great mixture of challenge and reward, and no frustration for me which I can only give credit to the design of the kit and the instructions online. The kit is really well designed and I cannot say enough about two things: the complete and thorough documentation and instructional video series, which makes the kit something that anyone can learn how to assemble, and the super helpful alignment tools that come with the kit. Without these tools, my completed machine would not look nearly as uniformly aligned. I would recommend this kit to anyone who wants to build their own replica of a 1970s computer. Or anyone who just wants to learn about how these computers work.

In my next post, I’ll show how to input an assembly language program using the front panel switches as well as how to use some CP/M software and BASIC programming using a real Wyse serial terminal that I found on Craigslist.

You Might Also Like

No Comments

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.