Since I've built regular computers in the past I had an idea one day to try and build one inside of a typewriter. The goal would be to build a fully functioning computer inside of a Smith Corona Electra 210 typewriter, complete with a working screen that would move on the slide and a working keyboard that would type on the computer and move the hammers up and down which would then shift the slide with each keypress.
To start, I disassembled the typewriter, keeping track of all the components that work to move the hammers and the slide. With all the unneeded components removed, It was easier to see the amount of space there was to work with.
Smith Corona Electra 210
Case Removed - Top View
Case Removed - Bottom View
Typewriter Chassis After Dissassembly
To fit the computer inside the typewriter we’ll need to slim down the typewriter keyboard to a modern keyboard and increase its height to give us even more room to work with inside the typewriter. The Keyboard is made up of a Case, PCB, Keys, and Backplate.
So instead of measuring every single feature by hand we I used photogrammetry, which is basically just taking a bunch of 360 pictures of whatever we want to model and filter those photos through software to reconstruct the 3D model. I then imported the model into SOLIDWORKS and modified it to add height, then 3D printed it.
Photogrammetry
Original Keyboard Case
Modified Keyboard Case
3D Printing Slicer
The PCB is a custom design consisting of a diode and key-switch matrix all controlled by an Arduino, After receiving the custom PCB from the manufacturer I soldered all the connections and coded the keyboard myself through Arduino IDE.
Keyboard Wiring Diagram
Keyboard PCB Layout and Wire Paths
Blank Custom PCB
Components Soldered to PCB
The keys are the same ones used in the typewriter, I had to model and 3D print adapters for each key.
Different Mounting Pattern Between Key and Key-Switch
3D Printed Adapters
The backplate just holds everything together and prevents debris from dropping into the computer from the keys.
The PCB was mounted on pegs protruding from the bottom of the case, then the backplate was placed on top and the pegs were soldered to the backplate securing the assembly together. The keys were then placed on top of the key-switches.
Keyboard Assembly Bottom
Keyboard Assembly Top
To fit inside the typewriter, the computer utilized an ITX style motherboard and a low profile graphics card, below are the specs:
Motherboard: ASRock B650I
CPU: AMD Ryzen 7 9700X 8-Core 16-Thread
GPU: GIGABYTE RTX 4060 OC
CPU Cooler: Noctua NH-L9a AM5
RAM: (2) 16GB Corsair Vengeance DDR5
Storage: (2) 1TB M.2 SSD
Power Supply: HD-Plex 500W PSU
CPU
RAM
CPU Cooler
1st M.2 SSD
2nd M.2 SSD
GPU
Since this computer is going inside an old typewriter that's full of metal shavings and debris, I 3D printed a cover out of ABS heat resistant plastic. Along with this cover I designed an airflow system which intakes air from the outside through a slot in the keybard. After cooling the PC parts, this air is then exhausted through the gaps in the typewriter hammers with the use of two smaller Nactua fans.
3D Printed Debris Cover
3D Printed Intake and Fan Mounts
Rear of Vent and Debris Cover
Exhaust Fans Installed
Typewriters don't have a source for power input, so I added a C14 power connector as well as a passthrough to route cables.
Cutting Out Holes
Adding C14 Connector and 3D Printed Passthrough Guard
Without keeping the movement of the typewriter hammers and slide this would be no different than a normal computer case. To add functionality, I hooked up a 2nd Arduino to the keyboard Arduino so that I could read whenever a key is pressed. Once a keypress is detected, the 2nd Arduino moves a servo motor back and forth which then moves the hammer and in turn the slide.
Servo Attached to Typewriter Hammer
2nd View of Servo Assembly
Above is a section view of the keyboard assembly to better see how the intake works. The servo Arduino is mounted to the debris plate, and the keyboard is attached on top of the vent. The keyboard is also easily removable so accessing the I/O of the motherboard is easy.
Final Assembly Without Keyboard
Final Assembly With Keyboard
The monitor is attached to the typewriter using an adapter I designed that uses the paper flip up stand to hold a VESA mount which the monitor is then attached to. The mount also acts as a cable loop, so that excess cable lengths can be properly managed even when the slide is moved. A WIFI antenna is also attached to the back of the monitor.
Monitor Mounted to VESA Adapter
Final Assembly Typing Test