[BUILDLOG] TANK 93 | Mechanical keyboard from scratch

euf0ria

09 Sep 2014, 22:13

Image
Finding new interests and new forums is probably best described as being infected with a serious disease which can only be cured with medicine.The disease in this case is the fascination and satisfaction of mechanical keyboards and the medicine would be to actualize the plans of ones perfect keyboard which spins around in your head. I recently finished a Filco MJ2 modification which only left the switch-PCB intact, the rest was exchanged or modded in some way and this only led to an urge to continue and concluded with a thought, "It can't be that hard to design your own custom keyboard, can it?".
This brings us to this point, writing this post, starting the build of my personal most ultimate keyboard for daily use. There is no intent to to sell this idea and I'm not asking for any further suggestions regarding layout. This thread is simply to share my contribution to this wonderfully maxed-out-with-geekiness scene;)! Please, feel welcome to join my journey in building my first mechanical keyboard from the ground and up.


Background:
A typical desktop for a CAD engineer like me makes a home for lots of drawings, books, notepads, coffee mugs and Rubik's cubes in different designs. The space for the keyboard is, for me, often limited and the standard keyboard frequently interferes with the mouse on its pad since i want to center the letters when writing, I need something more compact. Besides that, the keyboard you are assigned as a consultant are 100% rubberdomes... used by others, not my melody. A third thing: Having a unique thing on your desk always triggers conversations which i like. For me personally, I have used and modded other mechanical keyboards before so this project isn't all new science to me, just the next level.

Objectives:
Main:
-A keyboard with engineering/CAD related tasks in mind.
-Compact without losing functionality or comfort, thus giving more room on your desktop.
-Supreme Quality with high standard and sturdy materials
Less important:
-Testing various modifications of key switches.
Possible:
-Groupbuy from Signature Plastics, ISO layout as default, modpacks to suite more enthusiasts.
-Adding 100% customizable LED lighting with shift registers and separate matrix. (because i want to learn new stuff)

Purpose:
-Get the idea out of my crowded mind.
-Solving the problem of lack of space.
-Learning new things, such as programming firmware to the controller
-Making something unique that nobody else have.

Solution:
-Design the chassis from scratch and make layout using community shared cad resources.
-Solder a P2P matrix controlled by a Teensy 2.0. (replaced with Teensy++ 2.0)
-Reach out to friends for help in manufacturing.
-Name the creation "TANK 93" which reflects the sturdy materials and 93 switches


To do:
[X] Design the custom layout
[X] Make a working layout for the Teensys switch matrix (writing layout is 17x6 at most)
[X] Decide which stabilizers to use
[X] Design a mountingplate to match the layout
[X] Fabricate the mountingplate through lazercutting
[X] Order small things missing
[X] Design chassis (as minimal as possible, keycaps should ideally constitute the external dimensions and the total height should be kept low)
[X] Design feets
[X] Fabricate the chassis
[/] Solder it all together P2P (point to point)
[] Connect the Teensy++ 2.0
[] Program Teensy++ 2.0
[X] Mod switches with stickers, lube and replace springs to 62g + som reds for the pinkies.
[] Fix matching keycaps for distinct understanding of functions.
[/] Connect LEDs and shift registers
[] Maybe manufacture wrist support (lack of space it was...)
---------------------------------------

Materials needed:
[X] Cherry MX switches
[X] switch stickers
[X] 62g springs
[X] Stickers
[X] Krytox grease lube
[X] diodes
[/] Plate 1.5mm thickness
[X] Chassis
[X] Screws
[X] connection wire
[/] Keycaps
[X] Stabilizers
[X] Teensy 2.0
[X] LEDs
[] Shift registers


Specifications:
-stabilizers: Costar
-Switches: Black linear stems, 62g + red springs, krytox grease lube, stickers
-Mounting plate: 1,5mm Stainless steel
-Chassis: One piece milled Stainless steel
-Controllers: Teensy++ 2.0, (Aiming to add Texas shift register for LED matrix later)
-Keycaps: Unclear atm.
-Functions:
*Swedish ISO layou
*Multiple layers with functions
*Macros and "alt+"-symbols often used when working with drawings and CAD
-Weight 2,2kg
-Rubber feets giving an angle of 4,5°.



This project is not a fantasy that will die by the lack of interest or dead ends in absence of manufacturing resources. The mounting plate is already in the making, chassis is being designed right now and many of the things needed is waiting at home. Just sit back and enjoy the show!
Last edited by euf0ria on 24 Nov 2014, 14:56, edited 4 times in total.

jacobolus

10 Sep 2014, 07:20

What does your layout design look like? Do you have specific optimizations for CAD usage? What other input devices do you use and how will you position them?

I highly recommend ditching the ISO layout (or any other standard layout), which is pretty bad but stays around by historical inertia. Instead, I recommend studying ergonomic keyboards like the DataStealth/Flinder (which never made it to market but were IMO a brilliant design), Maltron, NEC PK-KB015, μTron, keyboard.io, etc.

For CAD use in particular, I imagine easy access to many shortcuts is important, so I highly recommend thinking about when one of your hands will be occupied with a mouse, 6 DOF device, or tablet, and considering how you’ll accomplish what you need with just the other hand on the keyboard. If you include 4–5 easily accessible keys for each thumb, instead of the 1–2 keys on a standard keyboard, I promise it will make your life a whole lot nicer. Then you can stick your shortcuts on a separate layer instead of needing to move your hand all over to poke at dedicated function keys.

This guy’s project is kind of interesting: http://geekhack.org/index.php?topic=20578.0

Kurplop’s amazing keyboard has to be seen to be believed: http://geekhack.org/index.php?topic=477 ... msg1380701

euf0ria

10 Sep 2014, 11:17

Many interesting ergonomic designs there! Thank you jacobolus.
But as i said in the OP the designing phase of layout is already closed, and besides, the plate is on its way to me in a few days i hope=)

Now back to the story, starting from the beginning:

Layout and functions is the primary things to start with and below you find my very first layout.
Image
The empty white space along the bottom and right side is to show my layout in comparison to a standard full TK keyboard. As i wanted to save some space i made a descision to place a few keys on layers thus cutting them away and i also got rid of the space between the different sections of a regular keyboard.
There are three function keys across the board which you can see in the different colors.

Moving along to rev.b
Image
This time I changed the size for some keycaps to match those on a Filco layout (first row with space). Also the numpad button went from hold to toggle. Note that the arrowcluster stil remains but moved to the left while in the numpad layer.

Rev.c
Image
Small change in keycap size for the right WIN key, i changed this in order to preserve a standard feeling of the arrow cluster when they are toggled. I happen to have a 1x WINkey laying around already. The FN button mapping changed a bit, adding more special characters to the num row. Also the key under ESC was removed as i never use it and decided to move its chars to key 1,2 etc.

Rev.d
Image
The last revision, some buttons switched place in the numpad section, ESC moved down a row giving space to a logo and also inner space for housing usb contact or even the teensy. This time I feel pretty satisfied with the layout, the idéa of having more special characters on the num-row feels nice and can be further improved when I need to. The most important aspect is that I feel happy about the physical key position and sizes, if I later on decide to add layers and other mapping it's only a software issue which can be fixed any time.

There actually is a rev.e but i'll reveal that in the next post with details of making the mounting plate.

euf0ria

11 Sep 2014, 17:40

Moving on to the design phase:

The plate was drawn using cherry mx cutout resourses found on DT and GH and then laid out to fit my layout. I decided to go with Costar stabilizers after a search for availability on both costar and cherry and since the cherry ones seemed hard to find my choice fell on costar, I also like the feeling of these the most. Nothing much to say about this really, it's a piece of sheet metal;) The holes for stabilizers are placed in respect to having the LED on the top side of all switches except for spacebar which is rotated with the LED at the bottom. ISO-Enter key is rotated and have the led on the left side. All according to how ducky places their leds. The two slots in the top left corner will be lit by indication-leds for capslock and num-layer or similar.
This plate is in the making right now and will consist of a 1,5mm thick stainless steel plate.

I have had some toughts about the cutout dimensions and it is going to be exciting to see how snug my switches will fit in the plate.

Image
Above is measurement from a Corsair K65 keyboard and the other is Cherry MX datasheet dimensions

-Cherry datasheet says: 13,9446 - 14,042mm
-Corsair vengance K65 says: 13,93mm
-I measured the actual switch to: 13,90 - 13,91mm

The switches in the K65 board fitted really tight and I had to apply some force to get the switches out, the lazercutting machine has its tolerances too making this really interesting. My cutout is 13,9446 mm in the cad drawings and i hope this will work out ok. I'm soon about to find out!;)

Image
This is the dwg i have used to build my layout, big thanks to you guys sharing this stuff!

Image
My plate looks like this. Simple slots for costar stabilizer inserts and for the switches I choose to go with cutouts if I need to open a switch later on and five holes were added spread across the plate for mounting the plate to the chassis.

User avatar
matt3o
-[°_°]-

11 Sep 2014, 17:50

just FIY, the "official" switch hole size is 14mm. 13.94 is an approximation used when converting back and forth to inches and mm.

euf0ria

11 Sep 2014, 19:06

Thanks Matt3o, good to know!

User avatar
7bit

13 Sep 2014, 14:00

matt3o wrote: just FIY, the "official" switch hole size is 14mm. 13.94 is an approximation used when converting back and forth to inches and mm.
It is 14mm +-0.05mm, so 0.55" (13.97mm) is good, but 0.549" (~13.94mm) is off by 0.01mm !!!! :shock:

This mix of inch and mm is a real pain! But the allowed measure-tolerances are helpful to get round figures.
:-)

euf0ria

13 Sep 2014, 17:07

I agree that it's a real pain ;-) One thing that calms me down in the doubts of this dimension is the K65 keyboard that I myself measured to 13,93mm and that I have had a hands on dealing with unmounting switches in this keyboard. I guess the only problem could be with tolerances from the lazercutting machine. Exciting isn't it! ;-)?

euf0ria

15 Sep 2014, 09:43

A little note on the side (a glimpse into the near future) just because I´m really excited about it:

This weekend I ordered a Teensy ++2 with will replace the Teensy 2.0 and bring me from 25 to 46pins! This allows me to build the perfect matrix of 6x17, I will also have a lots of pins left to be able to connect the shift registers for LEDs and who knows what more, the only limit now is the USB current restriction of 500mA.
I also got a nice video from my friend helping me with the micro controllers where he already have made a program for the "touch´n´fade" effect I'm looking for. If i just get his permission to post it I'll show you guys;) Until then, I can only say...It's awesome!

euf0ria

15 Sep 2014, 23:21

And here's the video I was talking about earlier today!
A small video of a circuit controlling a set of LEDs, big thanks to you Peter for your kind help and knowledge!

If you where to ask the average Joe I guess he would't get the point with some LEDs turning on and off, but to us, more familiar with the keyboard and computer building scene,I guess this would qualify for being awesome! Sure, you could go out today and buy a ready-made keyboard with stroboscopic-epilepsy-Christmas_tree-disco-thump-thump-lights, but to see this demo and get a green light that this effect and others can be installed in your own creation is something special. I guess the difficulty will be to keep the effects at a mature level in the end. (read: it will probably end up with the ants war just because I can).

PS. "the Ants war", "war of the ants" is a crappy google-lost-in-translation version for the swedish word "myrornas krig" which refers to the black and white noise/snow that where shown on the analogue TV broadcastings back in the 90s when the broadcasting actually ended and took a pause for the night.

PS#2. The 90s seems soo far away, guess I'm getting old, but glad that mechanical keyboards got popular again...I wounder when Lazerdisc will hit the market again, they looked awesome.

euf0ria

18 Sep 2014, 11:54

UPDATE!

Just got the info from my friend helping me with manufacturing, material for chassis is collected! LDX stainless steel ;)
Also got this snapshot of a tryout for the front logo:

Image


I will soon post some renderings of the chassis to give you an opportunity to comment the design before the piece of metal goes in to machining. Maybe there's something a have missed and we can't let that happen do we;)

euf0ria

18 Sep 2014, 23:35

Here's a bunch of renders showing the chassis as of today, please leave a comment! I'm all ears if you finds something odd or if you just wonder how i plan to fit things.

Image
Image
Image
Image
Image
Image
Image
As you can see I have made two cavities for fitting the Teensy ++2 as well as the future LEDcontrollers that will go under the spacebar position.



Image
This is to show the inside, the space between the bottom of switch and chassis is 3mm. I plan to go with thin wire, preferably wires from a chopped up networking cable.

euf0ria

23 Sep 2014, 23:03

Another week, another milestone...(Yeah!)

Tonight I sent the cad files for chassis and feets to the workshop!

Image
Small changes since last, a chamfer was added on top and bottom edges. a little fiddling with thickness and I ended up with a weight of 1,75kg for chassis only.

This feels great! The physical parts are about go get real and i now have a cad-model less to think about;)

euf0ria

24 Sep 2014, 21:29

Welcome home Teensy ++2.0!

Image
It's a little bit longer than the regular Teensy 2.0 and measures approx: 51,6 x 18,3mm and thickness 1,7mm (PCB).


I also got the god news from my friend that he already has begun milling the chassis! Hopefully I will get some photos tomorrow for the progress.

euf0ria

30 Sep 2014, 22:32

UPDATE!

Today the mountingplate arrived at my friends house. (ordered through the same guy who is milling the chassis)
Image
Even thou it's upside down it seems like a nice and clean cut. Now i only hope that my measurements is enough to fit the switches or I will have to spend a good weekend making it fit and learn a sour lesson.;)

euf0ria

06 Oct 2014, 10:42

My logo on has come to life!

Image

euf0ria

10 Oct 2014, 10:07

I'm happy to be able to say that i got the moountingplate the other day and that the dimensions for switch cutout where absolutely perfect! No problem getting the switch in place and not the smallest wiggle at all! One small problem though is that the stabilizer holes in a strange way seems to be a bit out of track. I will show pictures of this matter soon but the problem is that when plate stabilizer insert are mounted as well as the switch with cap inserts, the cap inserts are not centered in the plate insert and thus interfere with one of the walls. I find this strange because I used the offset for stabilizer holes as found here on DT By this thread: http://deskthority.net/keyboards-f2/cos ... t5872.html (0,75mm)

Can anyone comment if this is the right offset? What would be the easiest way to get this working better? the plate stabilizer is a bit flexible with its mounting tabs...is it then best to work off a bit of the insert or the hole in the plate?
The problem goes away if I press hard on the underside of the insert in the middle which cause the insert walls to twist out and creating a bigger space between them. Hard to put in words but pictures will come!

jacobolus

10 Oct 2014, 20:42

I’d use whatever measurements are here:
http://geekhack.org/index.php?topic=47744.0

euf0ria

11 Oct 2014, 00:22

Thank you sir, I can tell you that the dimensions over at GH and especially the files for phantom says 0.03" offset from the top which is 0,761998476mm and length 0.55" which is 13,97mm and looking at my cutout file tells me something else is wrong:

Image

The stabilizer plate inserts fit really snug on a 1,46mm thick plate but after a quick hit with the knife it's now fitted properly.

Take a look at the picture below and see for yourselves, the 0,75mm offset seems to be just to much in my oppinnion:
Image
Shift. This key is hard to press.

Image
Enter. Feels normal after a hit with the knife on the plate insert and some lubrication.


Edit:
After taking away a ridiculously small amount of plastic from these two red areas the insert fits better, a noticable wiggle but it sits securely in place in the plate.
Image
The key feels just as it should now even without lubrication.
Last edited by euf0ria on 19 Nov 2014, 08:57, edited 1 time in total.

euf0ria

11 Oct 2014, 16:26

Kind of OT:
Last nights tryouts with stabilizers got me thinking. Isn't 0,75mm a to big offset towards the "led-side" of the switch? Looking at my pictures knowing that all dimensions are correct I feel there's room for improvement here. Please mighty gurus and old foxes, if you read this, give it a thought, maybe it's best to update the community shared resources and make this offset smaller or equal to none?

On with the progress!
Here's a couple of photos of the plate i got earlier this week and it's a nice and shiny plate with my brand new design that only exists in two physical copies in the whole world right now;)

Image

Image

Image

From here the plate has gotten sanded for a nice even look without scratchmarks and now has a nice brushed look to it, today I also filled the LED-slots with glue for the leds to shine through. These will eventually be covered from the inside with cameraflash-coloring-filter for a non transparent look when no LED is lit.
Image
24h hardening process is a long time when you want to continue working!
Last edited by euf0ria on 19 Nov 2014, 08:59, edited 1 time in total.

User avatar
chzel

11 Oct 2014, 17:03

The board is shaping up beautifully!
I just measured the offset on a naked Filco plate I have and I get 0.70mm.
I can't be really accurate though, since it is a stamped plate!
But 0.75mm sounds good.

User avatar
matt3o
-[°_°]-

11 Oct 2014, 17:29

euf0ria wrote: Thank you sir, I can tell you that the dimensions over at GH and especially the files for phantom says 0.03" offset from the top which is 0,761998476mm and length 0.55" which is 13,97mm and looking at my cutout file tells me something else is wrong:

Image
Stop distributing this picture for costar stabs :) I see those numbers everywhere and they are just plain wrong! Last time I tried 0.5 as distance from top and it's still too much. I suspect it's more like 0.2mm but haven't tried yet

User avatar
chzel

11 Oct 2014, 17:54

Sorry to question you matt3o, but it does check out with measurements on a Filco plate, the "reference" design. It really is 14x3mm cutout offset ~0.75mm to the bottom.

euf0ria

11 Oct 2014, 19:02

The reason i bring this up is really just because it's very confusing and I will make sure to add a note in my picture stating that this dim is no good.
But, as i said, it might be a good thing to edit the sources that the majority of newcomers uses and those being the dwg/dxf- files linked from here and GH to some dropbox account. I personally will not give out any cad material since this is a highly private project but the fact is I got it wrong from the beginning using the community shared recourses and if we can help newcomers from this day on in making the ultimate design i think we (or the person holding the files) should make this small but yet important dimension.

And don't get me wrong here, I'm not trying to start a fight, I just want the best for all of us and especially to make things easy for future dedicated keyboard builders. :D

User avatar
matt3o
-[°_°]-

11 Oct 2014, 19:32

chzel wrote: Sorry to question you matt3o, but it does check out with measurements on a Filco plate, the "reference" design. It really is 14x3mm cutout offset ~0.75mm to the bottom.
I don't know if Filco is using slightly different stabilizers, but I laser cut dozens (literally) of plates and none of them worked out of the box with those numbers (ask to those who participated to the laser cut group buy). I had to file the holes a little and the stabilizers themselves.

The very last plate that I cut and that 100% works without any post-processing is 14.6x3mm with an offset lower than 0.5mm (I have to double check, I don't remember now).

User avatar
chzel

11 Oct 2014, 20:14

Don't get me wrong, I know that you have way more experience at this than me, it just seems funny that Costar-made KBs use the "wrong" dimensions and when we apply them to a design they are not working.
Filco plate is stamped from the top and that rounds the edge a bit, so that might be a contributing factor.
BTW the Filco inserts are 13.5x3mm at the indentation that snaps on the plate.

User avatar
matt3o
-[°_°]-

11 Oct 2014, 20:23

The tooling used for mass production are probably very different to those that we are using. As you can see the difference between a working and not working hole is in the <0.5mm range.

My suggestion to those who laser cut is to make the hole slightly bigger towards the top, otherwise you'll have to file the hole and the stabilizer.

euf0ria

12 Oct 2014, 20:53

Stab dim...Very interesting but luckily fixable...
Lets keep things in motion and take a look at the latest pictures of the chassis:

Image
Machining of the inside was calculated for at total of 7.5H. Sweet.

Image
And here it is! According to my friend who made this chassis for me there is some small details that I still need to take care of but all in all...it has finally come to life!

euf0ria

19 Nov 2014, 08:33

UPDATE!
Its been a long wait but finally my chassis has arrived and I have learned a lesson in what shipping company I will ban and never use again!

Image
This is from the day it arrived the 3rd of november and the first thing i noticed was that that the plate did not get into position since the corner radius of the chassis was to big, the overall finnish is also a rather rough and I think I will spend some time to sand and polish this later on. From this point I will make sure that the plate fits and then i will get on to working on the plate and the switches.

More pictures coming up very soon!

euf0ria

19 Nov 2014, 10:20

UPDATE!

So, now that I got all the parts needed I can finally get some physical work done and first of all I took care of the chassis. Lets start with a couple of pictures and talk about the important notes on my design.



Image
Image
Finally at home, +2kg of machined stainless steel in my very own design.

Image
Close-up on the recess for the Teensy 2.0++ controller, the total cavity is approx 9mm and a recess of further 2mm leefs like a good idéa for fitting everything, in the end it's going to be tight with all the cables. A similar recess is also placed under the space bar position and this is for future placement of LED-drivers.

Image
Close-up on the logo that turned out really nice! In the cad design i drew this with a thickness/outlined text but in the end we decided to find the centerline and just let the tip of the machining tool do the letters. This was mainly because of the small font used.

Image
Looking at the bottom side we find my own branding with a euf0ria logo.


Image
Image
The stainless steel feets also turned out really nice and here i have mounted them together with hemispherical rubber pads. The total height of the feets is made to give a writing angle of 4,5deg whish I have tested out and confirmed as my favourite angle for a machanical keyboard.

Image
Then there's this little thing to take care of, the corner radii in the chassis was done to big (whole chassis is made in a rather oldschool machine, real craftmanship that is;).) This results in the plate not getting into its position.


Image
Fast forwarding a couple of hours this was a problem of the past. I used my multi-tool and a suitable tool and started grinding the corners away, and kept on going for really long time. I realized that I was not used to be working with stainless steel and comparing to aluminum this was as different as night and day.

Image
The mounting holes in the plate also got countersunk to better fit the M3 machine screws that will be used in the end.




Next up:
Mounting and modding the switches.

Post Reply

Return to “Workshop”