Raspberry Pi Helps Forgotten Home Computer Rise From The Grave

The Sol-20 rebuild
(Image credit: Michael Gardi)

Who remembers the Sol-20? Us neither, but it was an important milestone on the path to where we, and our computers, are today. Without the Sol-20 the home computer world would be very different. This important point in home computer history is an excellent choice, then, for a retro computer reproduction project such as that carried out by Michael Gardi (and highlighted by Hackaday) using a Raspberry Pi in place of the Intel 8080 at the original computer’s heart.

The first fully assembled microcomputer with both a built-in keyboard and a TV output, the Sol-20 had the misfortune to be released in 1976, a year before Apple, Commodore and Tandy came and stomped all over the market with the Apple II, Pet and TRS-80. Initially sold in three versions - a motherboard kit; the Sol-10 added a case, keyboard and power supply, but came with no expansion slots; and the Sol-20 beefed up that power supply and added five S-100 bus slots (the Sol-20 would be by far the most popular model). The computer stayed in production until 1979 and would sell around 12,000 units, making them incredibly rare today. For contrast, total Apple II sales would hit around six million, including a million in 1983 alone.

For the 2021 version, having an authentic-looking case was a priority. The distinctive blue original was made of sheet metal with wooden sides, but Gardi reached for his 3D printer rather than his cutting torch to make the build more accessible to others. The sides are made from walnut, a material slightly befitting the aesthetic of the time.

Gardi also made a matching display for the Sol-20, again 3D printed and embellished with walnut, it utilises a 4:3 LCD panel and connects to the Pi via an HDMI cable.

The keyboard is a replica of the original in layout, but sits on modern Cherry MX switches. The board comes as a kit from osiweb.org. The brains of the operation is a Raspberry Pi 4 running an 8080 emulator written in Python and forked from one available on GitHub. The virtual CPU has 64kb of memory (most systems shipped with 8 or 16kb) and supports storage on virtual cassette tapes. There's a lot - and we mean a lot - more detail on Gardi’s Hackaday.io project site, including his use of an Arduino as a keyboard interface, the creation of an RS232 port, and his success ‘drawing’ the Sol-20 logo on a rectangle of acrylic using his 3D printer (see best 3D printers).

Ian Evenden
Freelance News Writer

Ian Evenden is a UK-based news writer for Tom’s Hardware US. He’ll write about anything, but stories about Raspberry Pi and DIY robots seem to find their way to him.

  • BaldFat
    This was my first computer. None of the kids would believe I had a computer because they were supposed to fill a room. So dozens of kids would come over to see the computer and I would play Star Trek on it.