Tuesday, September 28, 2021

The Sakhr AX170 Cyberdeck Build Part 2

First things first, getting the original MSX keyboard working. Without that I will lose the whole aesthetic of the project. While doing a little research on how to make the MSX keyboard compatible with the Raspberry Pi I came across a project by Carpespasm on hackaday who as it happens is also converting an AX170 into a cyberdeck, although he is going a different route than I. (Go follow his project) His post ultimately led me to this Intructables by Frank Adams which demonstrates how to use a Teensy microcontroller to convert a keyboard to USB. I have no experience with the Teensy but I decided to give it a try and ordered a Teensy 4.0 from PJRC. Upon its arrival I studied it and noticed that the pinout of the Teensy board had 13 data pins on one side and 11 on the other. That nearly matched the pinout of the dual ribbon connectors of the keyboard which is a dual row of 12 pins. This gave me an idea; I could solder the Teensy directly to pins of the keyboard connector on the reverse side of the perfboard. I would only need to jump one pin across to the opposing row. this would save me some real estate and I wouldn’t have to solder a bunch of jumper wires between the two. This proved to be more difficult to execute than I expected and partially due to my rusty soldering skills it took a couple of hours of frustration to complete. But I got it done in the end.


Teensy
Keyboard connector



With the soldering out of the way it was time to program the Teensy. I followed the instructions on Frank Adams' Instructables site to decode the keyboard pins then loaded the output into the matrix generator. Next I took the results of the matrix generator and input the matrix into one of Frank's custom keyboard Arduino files, then loaded in onto the Teensy. Opened up a text editor and started typing with the MSX keyboard. Success! Or so I thought. All of the keys worked except for the shift keys. I Scratched my head awhile then looked back over my files and ran the generator again in case I was doing something wrong. I tried to create a manual matrix per the instructions on the site but could not wrap my head around creating the matrix. I gave up and posted a comment on the Instructables site in case anyone had any ideas.

To my delight Frank responded the next day and offered to look at my files. Within a day he had sent me a new file. I put the new data into the Arduino file and uploaded it to the Teensy and it worked! Full keyboard functionality.


MSX keyboard


With the keyboard working successfully I can really get the project moving forward. Time to gather the other parts and plan the assembly.
 


No comments:

Post a Comment