If you want to program a microcontroller today, you pop open your editor of choice, bang out some code, and flash it over USB. But back in ancient times, when your editor was a piece of paper and you didn’t even have a computer of your own, things were a bit different. In that case, you might have reached for a “trainer”: a PCB that included the chip you wanted to program along with an array of switches, LEDs, and maybe even a hex keypad for good measure. Grab yourself the programming manual (printed on paper, naturally), and you’re good to go.
So when [Nicola Cimmino] became curious about the Motorola MC14500, a 1-bit ICU (Industrial Control Unit) from the 1970s, he could think of no more appropriate way to get up close and personal with the chip than to design an era-appropriate trainer for it. The resulting board, which he’s calling the PLC14500 Nano, is festooned with LEDs that show the status of the system buses and registers. Thanks to the chip’s single-step mode, this gives you valuable insight into what’s happening inside this piece of classic silicon.
But just because the board looks like it could have come from the 1970s doesn’t mean you have to live in the past. There’s an Arduino Nano on the backside of the trainer that handles communicating with a modern computer. [Nicola] even provided an assembler that lets you write your code in ASM before shuttling the binary off to the board for execution.
Interested in getting your hands on one? Not a problem. The design is completely open source for anyone who wants to build one at home. In fact, [Nicola] even got his trainer OSHW Certified. He’s also selling kits on Tindie, though at the time of this writing, they’re sold out.
This project has actually been a long time coming. We covered an early breadboard prototype of the concept back in 2015. We’re glad to see that [Nicola] was finally able to bring this one across the finish line. It’s a beautiful piece of hardware, and thanks to its open-source nature, something that the whole community can enjoy and learn from.
Eight-bit computers are all the retro rage these days, with people rushing to build computers either from chips like the 6502 or the Z80, or even recreating these chips from a collection of TTL logic chips. And while we respect and covet those builds immensely, 8-bit computers aren’t the only game going on. To wit we present this lovely single-board computer sporting a 1-bit CPU.
The machine, which creator [Simon Boak] cheekily dubs “the world’s least-powerful computer,” is based on the Motorola MC14500B, a chip from the 1970s that was aimed at the industrial controls market. There, the chip’s limited instruction set and narrow bus width were not as limiting as they would be in a general-purpose computer. In fact, since the chip requires an external program counter, it offers a great degree of design flexibility. [Simon] chose a 4-bit address space, but with a little wizardry he was able to get eight bits of input in the form of DIP switches and eight bits of output LEDs. It’s not good for much past making lights blink, but it does that with nary an Arduino in view — although it does sport a couple of 555s.
[Simon]’s goal for the build was simply to build cool from an unusual chip, and we think he succeeded. In fact, we can’t recall seeing a neater perfboard build — it’s almost to the level of circuit sculpture. We especially like the hybrid solder and wirewrap construction. We’ve seen builds based on this chip before, but never one so neat and attractive.
A major snag with using the Raspberry Pi as a PLC is the lack of industrial I/O capacity. This requires additional hardware, in this case adding a four-channel ADC board as well as a custom board to condition the signals. The Raspberry Pi looks for 0-3 V inputs where industrial control applications are usually in the -10 to 10 V range and often use a 4-20 mA current loop.
Using a PLC leverages so-called ladder logic, where each action depends on conditions. With each update scan, the PLC ensures that all input conditions are translated into the appropriate output conditions in real-time. It’s only job is to monitor the process at hand and it does this very well.
Here the flexibility and generic nature of the Raspberry Pi running Linux was a disadvantage. Unlike the PLC, the lack of a hard real-time OS means you can’t guarantee the Pi will be as responsive to changing inputs.
The behavior of the two systems showed that while both did the task they were programmed for, the Raspberry Pi was decidedly more erratic. Although one could program around a lot of these issues (presumably using Linux in stripped-down, soft real-time configuration with interrupt-driven native code), the effort needed to make a Raspberry Pi system suitable for an industrial environment shows why single-board computers haven’t seen adoption as replacements for PLCs.