Arduino Mechanical Keypad

12,501

32

7

Introduction: Arduino Mechanical Keypad

Hello! My name is Adriano and I'm 16.
I live in Italy and before that this 'guide' starts i want to say sorry for my pooooor english :3

Step 1: What ?

I decided to build a Keypad with Arduino while I was looking for a Razer Tartarus.
I thought that I had to build something that was nice to play with..
I'm a Moba / simulation game player and I fell in love with Cherry MX keys that sound like old keyboard and are nice to press!

Step 2: Arduino Leonardo

To simulate the keyboard I used an Arduino Leonardo that fits perfectly my needs except that for the number of pin that were a bit less then what I was aiming for (but at the end were okay).

Step 3: Problems

First thing I had to solve was the program.
Nothing of special but anyway I had to code for a long time to be satisfied.
The multikey function were a bit trickful to solve, I set up an Array that load all the states of the keys and then press all the keys that has changed state.
The stick works like an 8 direction digital input plus a click function (that i will probably swap for a state led).
Another thing I had to deal with is that the Cherry MX have to be mounted on a plate of 1.5 mm, cut 14 holes of 14 mm on a plate of 1.5 mm isn't an easy job, the great thing is that I have a friend that has a 3D printer so I did the case with him.

Step 4: Build It

The Case is 3D printed and the project was made with CAD and a program to export for 3D printing..
The Key Hole has to be 14x14 mm but with the Keycap the key fill a 18x18 mm square.
The best thing to do is find someone that can print you the case or just the top plate because cut it manually is hard..
Mine Case is very high because I had to leave a lot of space to wire the project and I didn't calculate properly the space but it feels good anyway..

Step 5: Solder It

You have to solder 1 of the 2 pin of every key and connect them to the GND of the Arduino.
I used a tiny cable for the gnd and a insulated cable for all the digital input.
The solder time took me like 2 hours but I'm a beginner so was fine!

Step 6: Connect It

Connect the top plate to the arduino and then just program the Array with keys to change the keys.

Step 7: Done

Have fun, hope you understood every thing, i will add soon datasheet and link, have fun with Arduino, best wishes,

Bye, Adriano

Be the First to Share

    Recommendations

    • For the Home Contest

      For the Home Contest
    • Game Design: Student Design Challenge

      Game Design: Student Design Challenge
    • Make It Bridge

      Make It Bridge

    7 Comments

    0
    desmondtheredx
    desmondtheredx

    7 years ago

    Have you considered using a matrix keyboard instead. It would use 8 pins instead of 12

    0
    AdrianoD2
    AdrianoD2

    7 years ago

    +dan3008 I considered that but i had problem with multikey code :)

    0
    AdrianoD2
    AdrianoD2

    7 years ago

    @tomatoskins I will post it soon, sorry ;)

    did you consider a keypad matrix for the keys? would have let you have more keys if you wanted them?