geekhack Projects > Making Stuff Together!

Designing kb with special punctuation keys


I'd like to do a build with dedicated punctuation keys such as {} () : $ " < > ? ! @ # ~ +.   Specifically for programming, so I don't have to hold down shift for them.  I'm new to kb building though have experience in electronics and microcontrollers. For fabrication my thought is to hand-wire, not PCB, and laser cut a plate from plexi as that's something I have readily available.  With all the guides I'm feeling pretty good about tackling this :)  My question is just, are there any 'gotchas' to watch out for with a special layout like this?

From a customer's build I learnt that you can actually send ASCII codes as macros, so you can generate those characters. We found it was not ideal for his case scenario, and that it was simpler to create a macro to switch language, but it can be done if so you desire.

Sent from my GM1917 using Tapatalk

what... like 15 dedicated punctuation keys? could even stuff it on a numpad...

depending on what size board you end up building, you might want to make the switch plate 3mm instead of the 1.5-1.6mm just for a little more stiffness in the board. or 1.5-1.6 switch plate with a 2nd layer underneath with larger openings so the switches can still "snap" into place. if going with 3mm switchplate, switches won't "snap" into place and you can affix with a dab of hot glue to hold them in place.

create your layout in KLE, copy raw data to swill plate builder or AI03's plate builder, pick your options, get your files for cutting the material generated. if ordering through a vendor, pay attention to "kerf" and if it's needed to be accounted for in the file.

plate resources
ai03 plate builder -
swill plate builder -


depending on layout & size of keys, you may need plate mount stabs instead of pcb mount stabs. here was a set that look a little better than generic costar stabs. (*no experience with them to be able to comment)

Some good handwiring articles:

- some sort of "holder" for the controller (very few have mounting holes to attach with hardware)
- solid core wire is usually preferred for wiring the matrix. stranded for wiring matrix to controller.

if you need a hand with firmware when you get to that point, let me know. i've helped a couple people here with one-off handwires.
- even being a handwire you could still use VIA/Vial as a graphic frontend to programming the keyboard (once initially flashed).

hi! just realized I haven't logged in for a bit and wanted to say thanks!
it's a project on a slow burn but it will happen for sure.  there are some woodworking and general fabrication things that I have to figure out first, but it's good to know that ultimately the keyboard part of it will be do-able  :D

the form factor is a bit unusual. all the extra punctuation will be on other parts of the object, not the main plate. 

one thing I was worried about is a limit on the number of keys in the matrix that the microcontroller can support.  (125 keys or so?)

i'll post updates once this gets going, it'll be fun.  although I might shelve it completely after seeing that Apple M0110 ... wonder if I can do that with the Adam ...


[0] Message Index

Go to full version