Summary of CLOCK HACK GIVES DEC RAINBOW A NEW LEASE ON LIFE
The DEC Rainbow 100-B, with both Z80 and 8088 CPUs, failed to boot after recapping due to a dead ~24 MHz clock. Dr. Joshua Reichard diagnosed the flatlined clock and temporarily restored operation by building a clock source using an Arduino Uno and an Si5351 clock generator, reviving the machine until a permanent replacement is found.
Parts used in theDEC Rainbow 100-B Clock Repair:
- DEC Rainbow 100-B (target machine)
- Arduino Uno
- Si5351 clock generator module
- Wiring/cables to connect Si5351 output to Rainbow main board
- Custom Arduino code to generate the required frequency (~24 MHz)
In retrocomputing circles, it’s often the case that the weirder and rarer the machine, the more likely it is to attract attention. And machines don’t get much weirder than the DEC Rainbow 100-B, sporting as it does both Z80 and 8088 microprocessors and usable as either a VT100 terminal or as a PC with either CP/M or MS-DOS. But hey — at least it got the plain beige box look right.

Weird or not, all computers have at least a few things in common, a fact which helped [Dr. Joshua Reichard] home in on the problem with a Rainbow that was dead on arrival. After a full recapping — a prudent move given the four decades since the machine was manufactured — the machine failed to show any signs of life. The usual low-hanging diagnostic fruit didn’t provide much help, as both the Z80 and 8088 CPUs seemed to be fine. It was then that [Joshua] decided to look at the heartbeat of the machine — the 24-ish MHz clock shared between the two processors — and found that it was flatlined.
Unwilling to wait for a replacement, [Joshua] cobbled together a temporary clock from an Arduino Uno and an Si5351 clock generator. He connected the output of the card to the main board, whipped up a little code to generate the right frequency, and the nearly departed machine sprang back to life. [Dr. Reichard] characterizes this as a “defibrillation” of the Rainbow, and while one hates to argue with a doctor — OK, that’s a lie; we push back on doctors all the time — we’d say the closer medical analogy is that of fitting a temporary pacemaker while waiting for a suitable donor for a transplant.
This is the second recent appearance of the Rainbow on these pages — [David] over at Usagi Electric has been working on the graphics on his Rainbow lately.
Source: CLOCK HACK GIVES DEC RAINBOW A NEW LEASE ON LIFE
- What problem prevented the Rainbow from booting?
The shared ~24 MHz clock for the Z80 and 8088 CPUs was dead, preventing the machine from booting. - How was the clock issue diagnosed?
The operator checked the 24-ish MHz clock signal and found it flatlined, indicating the clock was dead despite the CPUs appearing fine. - Can an Arduino be used to replace the Rainbow clock?
Yes; an Arduino Uno plus an Si5351 clock generator was used to create a temporary clock output to the main board. - What component generated the replacement clock signal?
The Si5351 clock generator module produced the required clock frequency under Arduino control. - Was the repair permanent?
No; the Arduino/Si5351 setup was a temporary solution described as a pacemaker while awaiting a suitable donor or permanent replacement. - Did the CPUs appear to be functioning before the clock fix?
Yes; both the Z80 and 8088 CPUs seemed fine during initial diagnostics before the clock was restored.
