I made a 9-key Programmable Mechanical Keyboard
Posted: 25 Aug 2017, 05:53
Hey All - this is my first post - though I've been lurking here for some time.
The idea of doing a from scratch keyboard has crept into my mind and I haven't been able to get rid of it. I'd like to do the whole thing (minus the firmware) - Design and mill the PCB, cover plate, and case. It's a big task and I haven't convinced myself to start just yet.
instead, i decided to test the waters by making a 9-key programmable keypad. I used MX Blue switches and some spare keycaps I had around the shop.
I used a promicro for the controller, but because it is only 9 keys I just directly mapped each key to a pin instead of doing a matrix. Right now the 'firmware' is just an arduino sketch which looks for the button press, then sends out the appropriate ASCII code.
The PCB design was pretty straight forward - I wanted to keep everything in a small footprint, but I also wanted it to be a single sided board so I could cut it on my CNC without worrying about locating for a flip, and keeping everything lined up. All in the board was 2.75" x 3.125" and I managed to get all the traces on one side without growing it too much.
I used my CNC to cut the cover from mahagony and the bezel from a piece of 9mm baltic birch. everything snap fit nicely together. Although, I may switch out baltic birch bezel for a piece of aluminum to give the whole thing some weight.
Anyway - thanks for looking, let me know what you think!
-Edward
The idea of doing a from scratch keyboard has crept into my mind and I haven't been able to get rid of it. I'd like to do the whole thing (minus the firmware) - Design and mill the PCB, cover plate, and case. It's a big task and I haven't convinced myself to start just yet.
instead, i decided to test the waters by making a 9-key programmable keypad. I used MX Blue switches and some spare keycaps I had around the shop.
I used a promicro for the controller, but because it is only 9 keys I just directly mapped each key to a pin instead of doing a matrix. Right now the 'firmware' is just an arduino sketch which looks for the button press, then sends out the appropriate ASCII code.
The PCB design was pretty straight forward - I wanted to keep everything in a small footprint, but I also wanted it to be a single sided board so I could cut it on my CNC without worrying about locating for a flip, and keeping everything lined up. All in the board was 2.75" x 3.125" and I managed to get all the traces on one side without growing it too much.
I used my CNC to cut the cover from mahagony and the bezel from a piece of 9mm baltic birch. everything snap fit nicely together. Although, I may switch out baltic birch bezel for a piece of aluminum to give the whole thing some weight.
Anyway - thanks for looking, let me know what you think!
-Edward