Lesen von Schreibmaschinentastendrücken mit einem Arduino

Lesen von Schreibmaschinentastendrücken mit einem Arduino

Arduino-Team – 3. August 2022

Es gab eine Zeit in den späten 70er und 80er Jahren, in der Schreibmaschinenhersteller versuchten, mit dem digitalen Zeitalter Schritt zu halten. Personal Computer erzielten Preise, die bürgerliche Familien rechtfertigen konnten, und selbst die einfachsten Modelle waren weitaus praktischer als die besten Schreibmaschinen auf dem Markt. In dieser Zeit kamen viele elektrische Schreibmaschinen auf den Markt. Anstelle schwerer mechanischer Verbindungen verwendeten diese Daisy-Chain-Mechanismen, die von computerähnlichen elektronischen Tastaturen angetrieben wurden. Artillect baute eine dieser Schreibmaschinen, die Brother AX-25, in einen Computer um und verwendete einen Arduino, um Tastendrücke zu lesen.

Der Computer hier ist ein Raspberry Pi, der im Headless-Modus auf dem Debian-Linux-Terminal bootet. Aber der interessante Teil des Projekts ist, wie Artillect den Raspberry Pi mit der Brother AX-25-Schreibmaschine verbunden hat. Diese Schreibmaschine verwendet eine Tastaturmatrix, um Tastendrücke zu lesen, wobei jede Spalten-/Zeilenverbindung einer bestimmten Taste entspricht. Artillect verband ein Arduino Uno-Board über zwei Multiplexer-Boards mit all diesen Zeilen-/Spalten-Pins. Dadurch konnte er jeden Pin auf HIGH oder LOW setzen. Mit dieser Fähigkeit konnte er jeden Tastendruck auslösen und die Schreibmaschine würde dieses Zeichen drucken.

Da der Arduino die Ausgabe der Schreibmaschine steuerte, musste Artillect ihm nur Text vom Linux-Terminal zuführen. Der Raspberry Pi hat einen eingebauten UART für die serielle Kommunikation und der Arduino kann diesen Ausgang lesen. Im Headless-Modus sendet der Raspberry Pi alles, was sich im Terminal befindet, an diese serielle Schnittstelle. Der Arduino empfängt dies, puffert den Text und sendet dann die Tastendrücke mit einer Geschwindigkeit, die er verarbeiten kann, an die Schreibmaschine. Da der Arduino nur an die Tastatur der Schreibmaschine ausgibt und ihre Tasten nicht liest, musste Artillect mit einem Laptop eine Remote-Verbindung zum Terminal des Raspberry Pi herstellen, um die Befehle einzugeben. Trotzdem ist es schön zu sehen, wie die Schreibmaschine von selbst einrastet, während sie die Terminalausgabe druckt.

Lesen von Schreibmaschinentastendrücken mit einem Arduino
Lesen von Schreibmaschinentastendrücken mit einem Arduino

Arduino-Team – 3. August 2022

Es gab eine Zeit in den späten 70er und 80er Jahren, in der Schreibmaschinenhersteller versuchten, mit dem digitalen Zeitalter Schritt zu halten. Personal Computer erzielten Preise, die bürgerliche Familien rechtfertigen konnten, und selbst die einfachsten Modelle waren weitaus praktischer als die besten Schreibmaschinen auf dem Markt. In dieser Zeit kamen viele elektrische Schreibmaschinen auf den Markt. Anstelle schwerer mechanischer Verbindungen verwendeten diese Daisy-Chain-Mechanismen, die von computerähnlichen elektronischen Tastaturen angetrieben wurden. Artillect baute eine dieser Schreibmaschinen, die Brother AX-25, in einen Computer um und verwendete einen Arduino, um Tastendrücke zu lesen.

Der Computer hier ist ein Raspberry Pi, der im Headless-Modus auf dem Debian-Linux-Terminal bootet. Aber der interessante Teil des Projekts ist, wie Artillect den Raspberry Pi mit der Brother AX-25-Schreibmaschine verbunden hat. Diese Schreibmaschine verwendet eine Tastaturmatrix, um Tastendrücke zu lesen, wobei jede Spalten-/Zeilenverbindung einer bestimmten Taste entspricht. Artillect verband ein Arduino Uno-Board über zwei Multiplexer-Boards mit all diesen Zeilen-/Spalten-Pins. Dadurch konnte er jeden Pin auf HIGH oder LOW setzen. Mit dieser Fähigkeit konnte er jeden Tastendruck auslösen und die Schreibmaschine würde dieses Zeichen drucken.

Da der Arduino die Ausgabe der Schreibmaschine steuerte, musste Artillect ihm nur Text vom Linux-Terminal zuführen. Der Raspberry Pi hat einen eingebauten UART für die serielle Kommunikation und der Arduino kann diesen Ausgang lesen. Im Headless-Modus sendet der Raspberry Pi alles, was sich im Terminal befindet, an diese serielle Schnittstelle. Der Arduino empfängt dies, puffert den Text und sendet dann die Tastendrücke mit einer Geschwindigkeit, die er verarbeiten kann, an die Schreibmaschine. Da der Arduino nur an die Tastatur der Schreibmaschine ausgibt und ihre Tasten nicht liest, musste Artillect mit einem Laptop eine Remote-Verbindung zum Terminal des Raspberry Pi herstellen, um die Befehle einzugeben. Trotzdem ist es schön zu sehen, wie die Schreibmaschine von selbst einrastet, während sie die Terminalausgabe druckt.

What's Your Reaction?

like

dislike

love

funny

angry

sad

wow