A common sight in the days before cheap PCs conquered the world was the dumb terminal. A keyboard and a monitor with a serial port on the back that was usually hooked up to a minicomputer or even a mainframe, these were simple devices. Anything that came into the serial port was rendered on the screen, anything typed on the keyboard was sent out through the serial port. They didn’t need to contain a microprocessor. If you are old enough, you may remember electronics magazines of the 1970s and early 1980s publishing terminal designs based entirely on 74 series logic.
The serial terminal might seem like a redundant historical footnote when viewed from 2016, but they can still find a use among those working with systems such as small embedded microcontrollers that only possess a serial port. To address this application, Hackaday.io user [K.C.Lee] has created a low-cost terminal module for a VGA monitor and a PS/2 keyboard based around an inexpensive STM32F030F4 processor.
To squeeze VGA from such an inexpensive device without extra hardware, he’s made use of the device’s SPI port as a fast shift register. This was not as simple as it sounds. He had to work carefully with the clock frequencies to make it work at the VGA pixel rate. He goes into detail on the chip’s internals in how he achieved this, as well as the mechanics of character generation.
The resulting device is tiny enough, but his latest project log shows how it will eventually be fitted within a connector adaptor case. It’s all open-source, so if you want to take a closer look you can find everything you need in the Github repository.
We’ve featured dumb terminals before here of course, but they have more often been classic hardware. From the Hack42 computer museum in the Netherlands to an ADM-3A with a Raspberry Pi attached, we’re always up for some text-mode goodness. This project is also of interest because it’s yet another example of pushing the on-chip serial peripheral ports into something they weren’t quite intended to do. That technique has featured here with a Raspberry Pi ADC port, and of course the ESP8266 NTSC TV transmitter.