Electronics geeks hacking oscilloscopes fall, for me, into the same category as support truck racing at Dakar: Technicians having fun with their tools. Following in the proud tradition of Oscilloscope Tennis, Oscilloscope Pong, and Oscilloscope Clocks, Matthew Sarnoff has built a VT100 serial terminal – from an oscilloscope. Here’s why this entirely impractical idea is also entirely awesome.
Sitting here in my shop, looking at piles of cast off serial terminals and monitors, I can’t think of a single utilitarian reason for doing this. The brilliance though, as with so many other seemingly useless DIY projects, is in their function as “homework.” Either doing something trivial as an exploration or doing something particularly tricky and arcane to learn from the challenge of doing it has value in the shared education for all of the DIYers who are watching. And this one is particularly tricky because, you see, this isn’t really how an oscilloscope is supposed to work.
An oscilloscope scans the beam from left to right with time and deflects the beam up and down with the amplitude of the signal applied. This makes a plot of voltage vs. time. When the scope is being used normally, one scroll across the screen plots one signal and yields one single waveform – picture a sine wave in the middle of the screen. In this serial terminal oscilloscope however, the external circuitry hacks the beam into scanning a whole series of horizontal lines. It is still sweeping left to right, but it is now being controlled by this circuit to cycle those scan lines from top to bottom in a very orderly fashion so as to periodically touch on every “point” on the screen. This is what is known as a raster scan, and it is what is happening inside a CRT television.
To make that happen, two op-amps are used as integrators to create the signals that control the scope’s beam as it is hacked into a raster scan. The higher-level control and timing-resetting those scan signals when the end of the scan is reached and modulating the intensity of the beam at the right times so as to actually draw the screen—are handled in software by an ATmega328P microcontroller. A second microcontroller services the keyboard. Much more detail is available on the project page.
In addition to the value projects like this provide to the education of the DIY community, there is clearly also a certain aspect of showing off. In this project, Matthew has set the bar rather high. Well done.