Giving Typecasting a New Meaning
Watch a Raspberry Pi and 50 solenoids hijack a vintage electromechanical typewriter and turn it into a computer-controllable printer.
How many times have you found yourself pining for an old impact printer, like a daisy wheel, only to realize that you have nothing but an electromechanical typewriter at your disposal? If you happen to be Konstantin Schauwecker, this is a daily occurrence. The thought has probably never even occurred to those that are not completely obsessed with typewriters, but on seeing Schauwecker’s creation they may develop a newfound appreciation for all things typewriter.
Schauwecker has made something that is a very strange sight in the age of inkjet and laser printers — an electromechanical typewriter that, under the control of a computer, acts like an impact printer. This may sound strange to the modern ear, but computer-controllable versions of electric typewriters, like the IBM Selectric-based printers, were common in the 1960s through the early 1980s. They essentially replace key presses with electrical signals from a computer, which in turn causes the typewriter to print characters on paper.
That is the ideal way to do it, anyway. But things were nowhere near ideal for Schauwecker. He had a typewriter at his disposal that was never meant for this purpose. It had only a single motor that, when a key was pressed, triggered a complex mechanism (that Schauwecker could not fully understand) that caused the character to be printed. Without an individual switch for each key, the only reasonable path forward seemed to be to actually physically press each key, then let the mysterious mechanism do its magic.
The solution is extremely clunky, to put it lightly. Schauwecker put a set of 50 solenoids into a 3D-printed frame stiffened with aluminum. The solenoids are aligned with the keys, and when triggered, they physically press them. Each solenoid is triggered by a circuit consisting of a matrix of transistors and supporting components. The GPIO pins of a Raspberry Pi send a signal to determine when a particular solenoid should be activated.
To print a document, it is first converted to a PDF. A background process then picks up new PDFs and uses an application that converts them into text in a way that preserves spacing and other layout elements. The Raspberry Pi then prints these characters by activating the proper solenoids.
While the large, complex printing mechanism smacks of overengineering, it also seems strangely appropriate for the purpose. Unfortunately, it is not entirely reliable, however. Schauwecker noted that when a certain key, like space, needs to be repeated many times, key presses are occasionally missed. Despite his best efforts to fix the problem, it still happens. He believes it may actually be an issue with the typewriter itself, so it may not be fixable.
Schauwecker also experimented with creating graphics by backspacing and typing multiple characters over the same position. This would be a very cool trick, however, the reliability issues made it impossible to get a good result. Oh well, there is always ASCII art!
This project definitely falls into the “just because I can” category. It is not useful in this day and age, but it is fun to watch it work. You do not want to miss this video.