In Pursuit Of The Keyster

 In 2019 I first started thinking about a gaming keypad. I was tired of pushing my keyboard to the left to play on the arrow keys. Yes, I am among "those" gamers that abhor using WASD keys.

After a couple of false starts, due to health issues, I was ready for the quest to attain my dream machine. But where to start?

I bounced around the internet, as one does, looking at gaming controllers, one handed keyboards, split keyboards, ad nauseam. Frustratingly, time after time I came up empty handed.

At that time I believed building something was outside my wheel house. Little by little, what started as a burning desire began to wither away to a smoldering spark.

That is, until I stumbled upon the lads at deskthority and suddenly new life was given! They showed me that it was possible for me to build this dream on my own.

 And so I did!

I give you...

THE KEYSTER


I actually love the way it turned out! Were some mistakes made along the way? 
You betcha', but overall, I couldn't be happier.
 
Isolated arrow keys? Check
Ortholinear key pattern? Check
Compact size? Check
Backlit keys and underglow? Check and check.
What's not to love?
 
I'm no one to write a "how to" guide on this, by any means, but I would like to share the steps I took to get this made, so that others might avoid the mistakes I made along the way.

I knew I wanted back lit keys from the git-go, as my wife and I like to game in a dark environment. I also knew I didn't want the expense of using a pcb with led's. So it looked like hand wiring was going to be the route. I thought it would be cheaper. Oh-boy, was I in for an eye-opener!

I decided the way to go was to use clear acrylic for the entire thing. The only non clear layers being the back plate and the "name layer."

I sent out requests for quote from five cutting services and I settled on Ponoko for their fast turn around, dependability and friendly customer service. Besides, they were the cheapest. 
 
I received all the parts as one package and was generally pleased with all the parts, except the back plate. More on that later.
 


The switch plate was nice, with clean, crisp lines. I didn't know just what to expect, never having anything laser cut before, but I was pleased with the outcome. As you can see, I had the KP enter key hole cut to accept a stabilizer.

Since I didn't know what I was doing and since I had never had a mech keeb before and also since I didn't even know how a stabilizer worked, I didn't have the plate cut out the way it needed to be for a glue-in stabilizer. So, out came the Dremel and I went to work modifying the slot.



So, not a major deal. I was still in the ballgame.
 
Next up, install the switches. 

I should stop here to say I don't like clicky switches. Never have. When a video has someone using a keeb with clicky switches, I just can't hang. CLACK CLACK CLACK CLACKETY F-IN CLACK! WHO WANTS TO HEAR THAT SHIT ALL DAMNED NIGHT?!!

ahem....sorry, where was I? Oh, yeah...Clicky switches are a giant nope for me, so I went with linear. I also wanted something easy to push, 'cause we game for sometimes eight hours straight, and your hands can cramp, and I'm old...and lazy....but mostly 'cause I'm old.

I waffled around, looking at Cherry Red Silent, Kailh Box Silents, among others and finally decided on Durock Linear Clears at 55g.

I wanted clear switch bodies to allow the most light flow through the switch for the cap lighting and at 55g, they are super easy to push and have a nice response.
 
Gluing in the switches was pretty straight forward really. The only thing I needed to pay attention to was making sure I put the all in the same orientation, that is with the two pins towards the top of the switch.
 
 
A front view of the switches and the stabilizer installed. 
 
Now it was time for me to sail into uncharted waters...the wiring. Yeah, I took electronics class back in high school...had me a solid C average, too. What could go wrong?
 
Now I've never what you would call a "great solderer." Actually, I'm not even what you might consider to be a "good solderer," but I bought a decent soldering station with temp control and that helped me considerably.
 
I decided to follow the knowledgeable advice of people like matt3o and cribbit when I soldered the diodes. I made the little loops on one end of the diodes to fit around the post it was being soldered to. I have to say, if nothing else it made the diode stay in place while soldering and I didn't need to use any third hand device.
 
I opted to use the tails of the diodes as the "row" portion of the wiring. I used a couple of bare wires to bridge the gap across the 3rd and 4th rows.
Here's how it came out:
 

OK. Rows done, now columns.
 
I wanted the column wiring to be one piece of wire, but I didn't have those fancy wire strippers that can strip wire insulation in the center of the wire. So I used a razor blade. It wasn't hard, actually. After marking the wire, I just made sure they were as straight as possible and rolled the wire using the razor blade each place it needed bared. then I sliced along the length at the cuts. Turned out pretty neat. Then I soldered them on the opposite pins from the diodes.

Here's how we're lookin' now.

So, that's basically the switch layer done. Easy peasy, lemon squeezy. 

Let's move on. 

Like I ranted before, I wanted lights in this. To this point, nobody had any ideas that I was considering. All the keebs I had seen that had any kind of lighting used a pcb, either store-bought or self made. Well, for a keypad like this, store-bought was out. I couldn't imagine how much a one-off like this would cost. I also knew that making my own pcb was out of the question.

Having already committed to glue-in switches and acrylic case/switch plate, I needed some creative thinking.
 
So I thought about the led strips that people put on cabinets and walls. They do colors also. What would I have to do to make something like that work out? 
 
They would have to be small and I wanted them to be able to be cut between every led, so I could custom fit them under the keys. I searched the internet and found some cheap affordable led lights.
 
The controller was so big:
 

I knew there was no room for that, so I stripped it down and used a bit of heat shrink to seal it up:


To turn the led's into a matrix-like configuration, I first made a mock-up of the keypad case, then I cut the led's strips to length, corresponding to the keypad switch placement. Then, using my engineering prowess....OK, I used scotch tape...I taped them to a piece of paper with scotch tape. I'm not proud of it, but it worked.


I used some left-over wire from the keeb and hot glued it to the strips before removing them from the paper, just to keep the orientation in check.


The lights came with 3M peel and stick adhesive on them, so it wasn't to hard to nail them down to the backing plate. I then removed the white stabilizing wires and ended up with this:


So that's the lights sorted. Now the hard part, (at least for me.) I have never even heard of a Teensy before this, let alone used one. I am not a computer geek by any stretch of the imagination. I had a bad feeling that this whole project stood a very real chance of ending up on a shelf as a spectacular failure.

I used the Teensy 2.0 because I only need 16 pins and it is cheap...mostly 'cause it's cheap. It was at this point I finally started looking at exactly how I was going to cram all this hardware into the case. I'm not gonna' lie, I had concerns.

I eventually realized it wasn't going to fit...not in the current configuration. I had no room for the Teensy along side the led controller! So I did the only thing I could think of. I had to revisit the switch layer for some creative rewiring.


By dropping the row 3 wire to the bottom and rerouting the column 5, 6, and 7 wires to the side, I was able to make just enough room to squeeze everything in.

Next came wiring the Teensy. That was a trip in itself. I didn't have the luxury of 16 different wires, because I was using an old cat 5 cable for the wiring, so I had 8 different wires. 

In the end I opted to use all blue and white wires for the columns and the brown and white for the rows. I used heat shrink to try to keep them bunched into groups.


So as you can see, I had to remove the stabilizer from the kp enter key. Turns out the 55g Durocks just don't have the oomph to return when having to push the stabilizer. After removing it, I filled the holes with, wait for it, hot glue. The key seems to push just fine without it, even pressing on the ends. Maybe after ten or twenty thousand presses it will show some issue, but that's a problem for future me.

So far, so good. Now, how to pierce the case to access the needed connections? In my tiny mind I had the vision of drilling a hole for the light controller and using the Dremel to make a slot for the Teensy. The controller had to have an eight millimeter hole. 
 
My open and closed layer totaled 9mm. Add to that the fact that I would need to drill an eight mm hole into two 4.5mm layers and leave .5mm on each side, there was just no way I was going to be able to do it. I don't have a drill press or a lathe. It was a similar outcome for the Teensy connection. I would be using a mini USB for the port which would take up nearly the whole 4.5mm of the open layer. 
 
So I opted to just saw them out and use, you guessed it, hot glue to backfill the holes around the plugs.

(Boy, after seeing this picture, I have to say it looks better in person. It looks kinda rough here.)

I thought I was going to make my own mini USB extension cable for the Teensy. I bought male and female ends to make it with.When they came I took one look at the female ends and realized there was no way I could do it. The pins were smaller than the wire I was using:

Yeah, that wire is covering 2 of the pins, not to mention my soldering "skills." So I looked around and finally came up with this breakout board from Adafruit:


Which, to solve some clearance issues, I cut down to this:


 That seemed to fit the bill rather nicely and the whole connection issue turned out fine with a bit more, say it with me...hot glue.


So I seemingly had all the hardware issues solved. Now came the part I had been dreading from the start; the programming.

I've already made it clear I'm no geek, nerd, guru, or techie of any sort. In the forums I visit I see talk of people writing code for this or that, how they had to bypass, piggy back, loop, and what have you. I could sooner learn Latin. But I had to somehow get over this final hurtle.

Someone pointed me towards Keyboard Layout Editor. It took me the better part of a day to figure out how to configure it to spit out the keys I needed in the size and configuration I wanted, but I got there.

Now the wizard part. I saw something about TMK and building firmware. I thought this might be a good place to start, only to find out that TMK was out & now I should use QMK, so I looked at that.

I WAS DOOMED! There was no frickin' way I was ever going to understand this enough to get my keeb up and running. I was panicing! My wife was going to kill me for spending all this money on something I couldn't even make work! 

Then I stumbled on my saving grace. A website called Keyboard Firmware Builder.

The footnotes said it uses QMK as its firmware base! But it also said that it's end-of-life. My only hope was that it still worked.

I fiddled around with the config there and, with the helpful pointers from others, I managed to download what I thought was a viable firmware!

I plugged the keypad into my computer and ran the Teensy flash program. I was prompted to upload the firmware I made and, to my complete amazement, it worked! IT ACTUALLY WORKED!!

Not willing to believe it, I opened a program called Aquakey Test and tried every key. They all responded! I couldn't believe it. It was working on the first try! I was a programming God! OK, well I was very lucky.

Still though, my first and second builds were a success. "Uh, what do you mean 'first and second builds?'" Well, when I told my wife what I was thinking of doing, she said she wanted one as well. So I ended up making 2 of them!



 I used nylon cable sheathing to wrap the USB data cable and the 5 volt power cable together.

Some shots of various colors.






This video is showing some of the color modes the controller is capable of. I would never use any of these while gaming. I'm strictly a one color person. It would be too distracting.


You can also check it out on uTube:

https://youtu.be/tuMHDRru8mI

I wanted to make this build special for my wife and I, as it will probably be the last thing ever I build like this. I made a drawing of her and I high fiving wearing our gaming headsets and had that laser engraved on the backplate. #forever_young

I mentioned at the beginning of this that I wasn't happy with the back plate. What you see here is actually the 2nd back plate. When I received the first order, you could barely see the drawing. It was like someone scratched it in with a pin.

I called them and showed them what I got. To be fair, I asked for line engraving, and that's what I got. What I should have asked for is combined engraving, which is what you see here.
 
The folks at Ponoko were more than helpful in solving the issue and made two new back plates and shipped them out to me for free. I didn't even have to return the old ones! 

I have to say that I'm not super happy with the keycaps either. I went with HK pudding in ANSI layout. I wish I could have found doubleshot pudding caps in ortho. The profile on some of the keys leave something to be desired. You can see what I mean on the video. The "0", "-", and "=+" on the bottom row of the num-pad are from the number row.
 
That can be changed in the future if it proves to be too much of a pain.
If that's all I got to bitch about, I'm a happy boy!

If you made it this far, Thanks a lot. It means a bunch. Take care.

 


Comments