Single Board Relay Computer

We all know you can build a computer out of relays, and if you’re a regular reader of Hackaday, you’ve probably seen a few. Actually designing and fabricating a computer built around relays is another thing entirely, and an accomplishment that will put you right up there with the hardware greats.

The newest inductee of the DIY microcomputer hall of fame is [Jhallen]. He’s built a microcomputer ‘trainer’ out of relays. It’s got more click and clack than the Tappet family, and is a work of art rendered in DPDT relays.

The biggest consideration in designing a relay computer is the memory. You can implement a CPU in a few dozen relays, but even a small amount of memory is still hundreds of additional components. In this computer, [Jhallen] is sort of cheating. The memory is implemented as 256 32-bit words on a microcontroller alongside a controller for the front panel. The CPU is still all relays, with support for self-modifying code, a bunch of instructions for conditional jumps, and an ‘increment and jump if not equal to zero’ instruction.

Below, you can check out a very in-depth video of the relay computer in action, starting off with some satisfying click and clack of Euclid’s algorithm and a demonstration of the variable clock rate. The video goes on to demonstrate the assembly language of the relay computer itself and a bit of the overall architecture. This is really one of the most educational demo videos for vintage computing we’ve ever seen.

[Jhallen] assembled a few of these boards and he’s selling some of the extras. If you have $600, you can pick one up over on Tindie (standard Hackaday / Tindie disclosure statement). Considering the amount of soldering required to assemble this board, we’re going to guess that’s a very fair price.
Continue reading “Single Board Relay Computer”

Relay Computer: You Can Hear It Think

Modern digital computers have complex instruction sets that runs on state-of-the-art ALUs which in turn are a consequence of miniaturized logic gates that are built with tiny transistors. These tiny transistors are essentially switches. You could imagine replacing with electromagnetic relays, and get what is called a relay computer. If you can imagine it, someone’s done it. In this case, [jhallenworld].

The Z3 was the first working programmable, fully automatic digital computer designed by Konrad Zuse. The board employs modern semiconductor devices such as memory and microcontrollers, however, the CPU is all relays. A hexadecimal keyboard allows for program entry and a segment display allows tracking the address and data. The program is piped into serial to the parallel decoder and fed to the CPU where the magic happens. Since the core is electromechanical it is possible to connect the output to peripherals such as a bell as demonstrated near the end of the video.

This project is a good balance of retro and modern to be useful to anyone interested in mechanical computers and should be a lot of fun for the geek kind. Hacking this computer to modify the instruction set should be equally rewarding and a good exercise for students of computing theory.

There is a SourceForge page dedicated to the project with the details on the project including the instruction set and architecture. Check out the video below and if you are inspired by the project, be sure to check out the [Clickity Clack]’a Videos on designing a relay computer bit by bit.

Relay Computing

Recently, [Manuel] did a post on making logic gates out of anything. He mentioned a site about relay logic. While it is true that you can build logic gates using switch logic (that is, two switches in series are an AND gate and two in parallel are an OR gate), it isn’t the only way. If you are wiring a large circuit, there’s some benefit to having regular modules. A lot of computers based on discrete switching elements worked this way: you had a PCB that contained some number of a basic gate (say, a two input NAND gate) and then the logic was all in how you wired them together. And in this context, the SPDT relay was used as a two input multiplexer (or mux).

In case you think the relay should be relegated to the historical curiosity bin, you should know there are still applications where they are the best tool for the job. If you’re not convinced by normal macroscopic relays, there is some work going on to make microscopic relays in ICs. And even if they don’t use relays to do it, some FPGAs use mux-based logic inside.  So it’s worth your time to dig into the past and see how simply switching between two connections can make a computer.

Mux Mania

How do you go from a two input mux to an arbitrary logic gate? Simple, if you paid attention to the banner image. (Or try it interactive). The mux symbols show the inputs to the left, the output to the right and the select input at the bottom. If the select is zero, the “0” input becomes the output. If the select is one, the “1” input routes to the output.

Continue reading “Relay Computing”

Relays Calculate Square Roots

After seeing an exhibit of an old relay-based computer as a kid, [Simon] was inspired to build a simple two-relay latching circuit. Since then, he’s been fascinated by how relays can function to do computation. He’s come quite a long way from that first latching circuit, however, and recently finished a huge five-year project which uses electromechanical relays to calculate square roots.

DSC_0240-e1394580570356

The frame of the square root calculator can hold up to 30 identical relay modules, each of which hold 16 relays on PCBs, for a total of 480 relays. The module-based setup makes repair and maintenance a breeze. Numbers are entered into the computer by a rotary dial from an old phone and stored in the calculator’s relay memory. A nixie tube display completes the bygone era-theme of the device and shows either the current number that’s being entered, or the square root of that number as it’s being calculated.

The real magic of this project is that each relay has an LED which illuminates whenever the relay is energized, which shows the user exactly where all of the bits of the machine are going. [Simon] worked on this project from 2009 and recently completed it in 2014, and it has been featured at the San Mateo Maker Faire and at Microsoft Research in Redmond, WA. We’ve seen smaller versions of this before, but never on this scale and never for one specific operation like square roots.

Video below. Thanks to [Bonsaichop] for the tip!

Continue reading “Relays Calculate Square Roots”

The TIM-8 is the smallest 8-bit relay computer ever

Who wouldn’t want to build a computer out of relays? We do, but we’ve got too many projects on our plate already. It looks like [rory] has his priorities in order because his build is one of the most amazing we’ve ever seen.

We’ve seen [Harry Porter]’s amazing relay computer and we’re familiar with [Konrad Zuse]’s WWII era endeavours. Relay computers aren’t exactly uncommon, but [rory] built the TIM-8, that may be the smallest 8-bit relay computer ever. The total relay count in the TIM-8 is 152 compared to [Harry Porter]’s 415 relays. This isn’t a fair comparison because [Harry]’s uses 4-pole relays, while the TIM-8 uses 1-pole relays, making the [rory]’s project 8 times smaller than [Harry]’s.

There are a couple of neat features that makes the TIM-8 really exceptional. Programs for the TIM-8 are written in a text editor on [rory]’s desktop,  then compiled and printed onto receipt paper. The TIM-8 has a few phototransistors to read the bands of white and black printed on the paper. [rory] has come a long way from a three bit adder made with relays and light bulbs.

Check out a ton of videos after the break. There’s a few demos of programs running off of receipt tape, calculating the Fibonacci sequence, and playing ‘Mary Had a Little Lamb’ on the relay sound card. Thanks to [J. Peterson] for sending this one in.

Continue reading “The TIM-8 is the smallest 8-bit relay computer ever”