Doing more with less

A project log for Mechanical keypad for digital use

Adapting the keypad from a Soviet mechanical calculator (Быстрица-2) to generate digital signals.

ThomasThomas 03/19/2020 at 10:280 Comments

I'm currently waiting for parts to arrive (shipping to Tbilisi, Georgia, from the US takes a few weeks) and while staring at the project on my workbench I had a small "aha" moment. I realized that my method for connecting the keypad to the Arduino was absurdly primitive: I was using an analog input for each key. That would be like having a computer keyboard with sixty wires coming off it. I see no reason I can't use the method that nearly all modern keyboards use, where rows and columns of keys form a matrix. This would take me from using 11 wires (one for each sensor) to seven wires (one for each row and column). But instead of the keystroke trigger being high, with my design it would have to be be low (the photo interrupters stop sending a signal when they are interrupted). 

This would involve a small hardware modification from my current layout, which is no problem, but the code would be substantially different. Coding has been the biggest challenge for me on this project, so for now I will push ahead with my original strategy (one analog input per key). Once I have a working prototype I'll evaluate ways to improve it for Mk II.