Modeling an F key mechanism

User avatar
DMA

03 Feb 2026, 07:34

Turns out, using MX stabilizers is quite tricky with buckling spring mechanisms: barrel top is 0.6mm above the top plate and all the dust and bread crumbs will go straight under the flipper.

So one either needs to severely redesign key travel limiter or add dust caps to the stems.
Added dust caps today. Not sure they warp when molded - I want to have a flat side so that LED can be added, and post-molding shrinking of the assymmetric part can be problematic.. Will think about travel limiter redesign.
barrel-side.jpg
barrel-side.jpg (148.68 KiB) Viewed 458 times
barrel_front.jpg
barrel_front.jpg (134.08 KiB) Viewed 458 times
barrel-side.jpg
barrel-side.jpg (148.68 KiB) Viewed 458 times
barrel-front-pressed.jpg
barrel-front-pressed.jpg (118.97 KiB) Viewed 458 times
horizontal plates are, from the top, MX cross base (5.6mm above plate), plate, PCB.
Attachments
barrel-side-pressed.jpg
barrel-side-pressed.jpg (138.3 KiB) Viewed 458 times

User avatar
DMA

03 Feb 2026, 23:39

attached dust sleeves to barrels relatively easily. Supporting wall came about 0.75mm thick - should be enough for people not explicitly trying to break the key, I guess. Increasing barrel diameter should provide more sturdiness - but can cause barrel to keycap contact.
dust_sleeve_up.jpg
dust_sleeve_up.jpg (207.32 KiB) Viewed 441 times
dust_sleeve_pressed.jpg
dust_sleeve_pressed.jpg (201.54 KiB) Viewed 441 times
I guess I'm close to actually trying to find somebody who can do injection molding of these. Any ideas who can do it?

User avatar
DMA

06 Feb 2026, 00:18

Printed!
printed!.jpg
printed!.jpg (843.49 KiB) Viewed 411 times
It's moderately scratchy and moderately wobbly (kinda comparable to MX switches I have, may be tad more. Comparable to model F, actually).
It doesn't bind.
It doesn't click either. I mean it clicks outside of the barrel. It clicks when key is all the way down and flipper disturbed. The spring resets when key gets back up. It just doesn't click when fully assembled. Key travel is 3.8mm - but actuation is somehow even lower.

PS: Noticed a weird thing: assembled model F actuates at around 2mm travel, and original parts assembled on the table at around 3. Turns out, it does matter how spring is mounted: mounting spring in a correct position (see Fig. 1) produces initial incline (see Fig. 2) of about 5 degrees, which - together with initial ~2.5mm of compression pre-bends the spring, setting the direction of future buckling, as well as dictating it's future direction.
Interestingly, Brother flavor of buckling spring is mounted strictly vertically. And they buckle at ~3mm! Except Brother pre-compresses their spring 1mm more (and key stem end actually stops ~0.5mm below the flipper's bottom!) - so I'm kinda lucky my "improperly mounted model F" buckes at 3mm.
Also, Brother springs are essentially model M - so it looks like that extra 15 grams of force are coming solely from that extra 1mm of spring compression!

Fig. 1: correct spring placement
spring_correct_placement.jpg
spring_correct_placement.jpg (381.22 KiB) Viewed 411 times
Fig. 2: initial angling of the spring
spring_initial_angle.jpg
spring_initial_angle.jpg (427.43 KiB) Viewed 411 times

User avatar
DMA

06 Feb 2026, 05:57

And so, I quickly designed some test flippers with varying degree of spring slant: 5 degree (varying spring support height), and 10 degree with default height.
flippers_galore.jpg
flippers_galore.jpg (927.08 KiB) Viewed 405 times
Results: (flipper - actuation point)
5° - 3.5mm
5°+0.5mm - 2.75mm
5°+1mm - 2mm
5°+1.5mm - 1.5mm (fails to reset)
10° - 2mm

Somehow 5°+1mm feels crispier than 10°, and 5°+0.5mm even crispier - probably because the spring manages to store more energy before buckling, or there is such thing as too much pre-bending of the spring, so it buckles too readily - who knows!

User avatar
DMA

09 Feb 2026, 22:25

Quoted barrel and stem at protolabs.com

Stem:
up to 1000 copies: $6385 + $2.83/copy. 1000 shots = $9215 = $9.215/shot
20k - 1 cavity: $9580 + $1.35/copy, total $33780 = $1.689/shot
20k - 8 cavities: $49140 + $0.50/copy, total $59140 = $2.957/shot

Barrel:
up to 1000 copies: $7430 + $2.82/copy. 1000 shots = $10,250.00 = $10.25/shot
20k - 1 cavity: $11145 + $1.21/copy, total $35345 = $1.767/shot
20k - 8 cavities: $52305 + $0.51/copy, total $62505 = $3.125/shot

So, standard 87-key keyboard is $222.72 for just the keys, not even springs or flippers - plus $20725 in tooling.
Or, $87.87 + $101445 in tooling.

Looks like it's not really feasible as a group buy without kickstarter. I kinda had an idea to make a limited run of 100 TKLs with nice 2-digit serials - but this puts the price way north of $2k per unit..

User avatar
DMA

11 Feb 2026, 02:39

..by experimenting with spring support length & angle I discovered a configuration which only clicks on the keypress - return trip is silent (unless you flick the key - this way stem hits the barrel on the way back with a pretty loud "thud" - but you need to be really intentional about it, even on medium-speed typing the rebound is pretty silent).
I also discovered a configuration that's nearly silent - but still tactile! (Also, turns out tactility is greatly hampered by 3D-printed surface roughness. Not only that - the key whistles as it moves, too :( )
So I'm kinda ready to mold the switches - if there's anybody alive out there for a group buy.

User avatar
kbdfr
The Tiproman

11 Feb 2026, 08:31

Not being an IBM guy, I have no use for all that,
but I do admire all the energy, care and precision you are unfolding here.

Green Maned Lion

13 Feb 2026, 18:41

kbdfr wrote: 11 Feb 2026, 08:31 Not being an IBM guy, I have no use for all that,
but I do admire all the energy, care and precision you are unfolding here.
How could anyone not be an IBM person? :lol:

User avatar
vvp

14 Feb 2026, 12:41

Green Maned Lion wrote: 13 Feb 2026, 18:41 How could anyone not be an IBM person? :lol:
IBM keyboards do not have enough keys :D
viewtopic.php?p=502674#p502674

User avatar
DMA

15 Feb 2026, 00:06

vvp wrote: 14 Feb 2026, 12:41 IBM keyboards do not have enough keys :D
viewtopic.php?p=502674#p502674
Easily doable.
In fact the more keys the better - larger number of switches drives cost per unit down.

User avatar
DMA

15 Feb 2026, 03:32

Today I remembered that with 3D printing one doesn't need to drill into things to see what's inside - can just punch a hole in the model itself and print.
model_holes.jpg
model_holes.jpg (52.24 KiB) Viewed 167 times
So I now have a see-thru barrel and a see-thru stem.
PXL_20260215_020917354.jpg
PXL_20260215_020917354.jpg (1.91 MiB) Viewed 167 times
Also I wanted to see what will happen if I make the spring rest angle sharper. Turns out, it becomes a momentary switch: the spring buckles, but there's not enough space - so it springs back as you press the key further. On the trip up, it produces another keypress.

Also I experimented with flipper size - thinner paddle, paddle so narrow it's a finger, and no paddle at all. Turns out, loudness of the click is kinda proportional to flipper mass - the heavier the flipper, the louder the click - while tactility is not affected at all. This paves the way for an office friendly model F, keeping all of the wonderful tactility (and supposed ergononic benefits with it), but having almost no click - with a single part change vs standard model! Also, EXTRA-THICC FLIPPERS for the extra-loud slaps!
(probably material also plays a role - ABS-like resin light flipper is 190mg, heavy is 220mg, and original model F one is 260mg and kind of disproportionately louder)

User avatar
DMA

15 Feb 2026, 23:09

Printed GINORMOUS 320mg and 350mg flippers:
PXL_20260215_213435838.jpg
PXL_20260215_213435838.jpg (1.52 MiB) Viewed 109 times
Boy, do those SLAP! Checkmate!
I think it's because heavier flipper spends more time in flight, so spring has time to pump more energy into it (a = F/m, higher m -> lower a -> longer travel time).
Seems like 5-degree are slappier - also likely because of greater flipper impact energy: those activate deeper, so spring stores more energy at buckling time, resulting in greater force (which should result in flipper reaching the impact faster - but maybe total energy is still higher somehow - who knows..)

Also, 40-degree spring stand slope works, not worse than 45 - but should help with spring catching on the spring slide in assembly. Spring can still catch at the slope and not seat properly - Ellipse's keys not seating properly when spring is not totally vertical are likely exactly this problem: stem molds not being polished enough in the spring guide area, resulting in not smooth enough spring slide.
I found that pressing all the way down and then removing my finger tothe side has a good chance to reseat the spring properly - at least on my 3D-printed stems.
Tried to print couple solutions to aid re-seating - nothing worked so far, but I'm not out of ideas either.

User avatar
vvp

Yesterday, 09:31

Energy pumped into flippers depends only on the force at position r (F(r)) and the tiny position change (dr) over which the force is exerted: E = ∫ F(r) . dr
If two flippers differ in their mass only then the force must be different to result in different energy. Force being different is plausible because the amount of buckling (and therefore the force) can be different a given position r ... this being due to different flipper speed ... as you said.
Different flipper mass will also result in different frequency spectrum of the final sound which may contribute to the feeling of having a different loudness.

User avatar
DMA

Yesterday, 21:17

vvp wrote: Yesterday, 09:31 Energy pumped into flippers depends only on the force at position r (F(r)) and the tiny position change (dr) over which the force is exerted: E = ∫ F(r) . dr
If two flippers differ in their mass only then the force must be different to result in different energy.
I kinda see heavier flippers moving slower - I don't have a high-enough-speed camera to confirm that tho. I also think same force applied over longer time results in more energy transfer. Tell me where I'm wrong?

Force being different is plausible because the amount of buckling (and therefore the force) can be different a given position r
the spring support part is identical - so the spring initial position is identical and trigger moment as well.
I actually made some experiments: varying spring support angle and distance between pivot point and center of spring support. Within "same angle, same flipper weight" batch, there's ideal (loudest) position, corresponding to deepest buckling point - which kind of confirms my hypothesis of "the energy the spring distributes is proportional to it's compression at the time of buckling". Sure, that force decays over time - I'm not sure if it decays quickly enough to take that decay into account.
Different flipper mass will also result in different frequency spectrum of the final sound which may contribute to the feeling of having a different loudness.
it's not only sound - when holding the assembly aloft and clicking it heavier flippers definitely produce more vibration. Could also be attributed to spectrum - but the slap sounds about the same, just louder. I really don't want to build an anechoic chamber only to find out that spectrum is the same, it's just higher amplitude :)

Green Maned Lion

Yesterday, 22:24

I'd love for you to upload sound files.

Post Reply

Return to “Workshop”