Max Lupo’s CircuitPython-Powered Kind-Kind Adapts a Classic Electrical Typewriter for Printing



Artist and librarian Max Lupo has breathed new life right into a classic Swintech 1146 CMP digital typewriter, hooking it as much as an Adafruit Kee Boar KB2040 board to cross pre-written textual content recordsdata to its Centronics port for printing.

“The KB2040 has at its coronary heart the Raspberry Pi RP2040 chip, working CircuitPython,” Lupo explains. “This system ingests a textual content file, and sends the information character by character till it reaches a newline, at which level the typewriter sends a busy sign, and faucets out its textual content buffer. As soon as the typewriter is now not ‘busy’ the code sends extra characters, repeating the method till the file is totally printed.”

This typewriter has turn into an automatic story-telling machine, due to a CircuitPython-powered improve. (📹: Max Lupo)

Lupo’s mission is an attention-grabbing inversion within the conventional use of an Adafruit Kee Boar microcontroller board, which — because the identify implies — was constructed to be used as a keyboard driver, quite than a printer driver. Its small dimension made it supreme for Lupo’s functions, although, sitting neatly on a custom-built breakout board with a DB-25 connector which is, in flip, wired into the Swintech 1146 CMP’s Centronics communication port.

“Thank goodness the parallel printer port is clearly outlined, and it’s (moderately!) simple to fiddle with,” Lupo writes. “This mission makes use of the KB2040 to set excessive values on a sequence of pins related to the parallel port’s information pins, in addition to the port’s ‘STROBE’ pin. Throughout each STROBE cycle (STROBE pulls low when information is prepared), the excessive/low pins are interpreted by the typewriter as a binary character, which it prints after receiving a newline, or sure different escape characters.”

There’s an added bonus in Lupo’s breakout board design, too, within the type of a visible debug system: “I used to be having bother figuring why my code was nonetheless improper,” the maker explains, “so I added a row of pink LEDS to light up the binary information bits that I believed this system needs to be sending to the printer. It actually helped with debugging, and completely appears to be like cool, so I left them as a part of the design after I designed the PCB.”

The recordsdata to be printed, in the meantime, are plain-text tales loaded onto the Adafruit KB2040’s flash reminiscence — and chosen at random when the customers presses a satisfyingly-chunky button to set off a printout.

Lupo’s full write-up is offered on the mission’s GitHub repository, together with the CircuitPython supply code beneath the permissive MIT license.

Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Latest Articles