Introduction: Microwriter Keyboard and Trainer
The Microwriter was an innovative stand alone word processing device using a chorded keyboard which was produced circa 1980.
This project links an original chorded key unit from that device with a 32u4 ProMicro board so that it can be used as a computer keyboard; my design also includes the option of adding a 20*4 LCD display unit for training the chords (alternative software is provided for this).
1* 32U4 Pro Micro clone
1* Stripboard 24*37
2* 12 way 0.1 inch sockets - for the Pro Micro
1* JYK 8 pin straight header (with friction lock) - for the keyboard
2* 4k7 ohm resistors
1* 4 way 0.1 inch pin strip - for the I2C backpack
Wire - assorted colours
1* 20*4 LCD display
1* I2C Backpack for LCD display
1* Microwriter keyboard (unplugged and removed from an original Microwriter unit)
Step 1: Construction
I designed and build a small board to hold all of the components.
I plugged the 2*12 way sockets into the pro micro for stability and then soldered in the corner pins first before soldering the rest. I then soldered in the connectors and resistors then did the wiring. Finally I put in the track breaks.
The Pro Micro is plugged into 2* 12 way 0.1 inch sockets. The Microwriter keyboard unit is plugged onto the 8 way JYK pins. The I2C backpack for the 20*4 LCD display is plugged ont the 4 way 0.1 inch pins. Connection to the PC is via the USB connector of the Pro Micro.
Step 2: Software 1 - Keyboard Emulator (Does Not Use the LCD Display)
I wrote the software and programmed the Pro Micro using the Arduino IDE.
For programming purposes the Pro Micro shows up as Arduino Leonardo.
The software uses a timer interrupt to poll and debounce the buttons, the individual keyboard characters are each represented by a specific combination of buttons, you press all the buttons required to form the chord then, on release of 1 or more buttons, that character is sent to the computer.
The unit is just plug and play, it shows up as a HID device to the PC and there are no drivers to install. You do have to learn the key chords, crib sheets can be found at  and the chords are also listed in the original Microwriter user guide 
I note that the Arduino USB keyboard library is set up for a US keyboard, this does produce problems when the receiving computer is not set up for that format, in my case £ does not show up and the @ and " chords show transposed outputs.
Step 3: Software 2 - Keyboard Trainer (Uses the LCD Display)
With the chord trainer software the Microwriter character set is shuffled and shown to you one at a time to copy, the keys pressed are also displayed. There is a counter to keep track of your score but you are not punished for mistakes.
Once you have run through the character set you will be asked if you want to go again to which you chord the letter y if you do.
The training character set does not include the characters \ £ or ".
The I2C address for my specific display driver unit is 0x3F but the value of 0x27 seems more common so if your display is blank try altering this value in the initializer first.
The line you are looking for will be -> LiquidCrystal_I2C lcd(0x3F,20,4);
Step 4: References (Checked October 2021)
Participated in the
Retro Tech Challenge