geekhack

geekhack Projects => Making Stuff Together! => Topic started by: Pylon on Wed, 31 March 2021, 17:40:28

Title: An open-source, relatively inexpensive force curve meter for MX Switches
Post by: Pylon on Wed, 31 March 2021, 17:40:28
Hey all - this is a project I started working in early March, and ended up coming together quicker than I expected. There's been a general lack of force curve data since HaaTa largely stopped publishing curves on Plotly (due to issues with the Plotly website apparently). After xyz posted some photos (https://cdn.discordapp.com/attachments/719746702986313738/738631761591926886/image0.jpg) of a prototype meter on the Keyboard Atelier Discord using a stepper motor and a load cell rather than the expensive test stand and force gauge that Haata used, I was inspired to do something similar. It's still a work-in-progress, and I still need to do a thorough calibration of it, but I've been able to get a couple of curves out of it.

(https://raw.githubusercontent.com/bluepylons/Open-Switch-Curve-Meter/main/Pics/Vertical.jpg)
(https://github.com/bluepylons/Open-Switch-Curve-Meter/raw/main/Pics/Prototype-1.jpg?raw=true)

All the files (CAD, PCB, and firmware) are available on Github here, and I go into a more detailed writeup there.
https://github.com/bluepylons/Open-Switch-Curve-Meter

This was designed specifically for MX switches to simplify the design and make everything cheaper and more compact, and since most of the switches I am curious about (as well as almost all new switches released today) use the MX form factor. In theory it could be adapted to test say, Alps or other discrete switches (it would need a different plate and switch holder). This is not as versatile as force-curve testers like Haata's that use a test stand, and can't test arbitrary keyboards like that one, but it's much cheaper to build (I spent about $200 building this, and in theory this is buildable for ~$100 if one foregoes the custom PCB and order the parts from China.)






Title: Re: An open-source, relatively inexpensive force curve meter for MX Switches
Post by: Pylon on Wed, 31 March 2021, 17:58:00
I still need to do a thorough calibration of the load cell (I don't have a good scale at the moment nor any calibration weights, but did a rough calibration by estimating the weight of a keyboard plate from the CAD file, and hanging that off the load cell). I'm also still figuring out how to correct for backlash on the linear stage, to correctly line up the downstroke and upstroke curves.

However, the data generally seems to look good.

Here's one of the first test curves I made, of a Kailh  Box Navy:
[attachimg=1]

The general shape seems to compare favorably to Haata's curves for the same switch (https://chart-studio.plotly.com/~haata/415.embed), though the weight differ (though my curve looks closer to Kailhs' claimed 90g bottom out), and mine has visible alignment issues between the downstroke and upstroke, which is probably from the leadscrew backlash. That's something I'm working on for the time being.

I also forgot to order hotswap sockets, but I do have plans for also measuring the actuation point.

Title: Re: An open-source, relatively inexpensive force curve meter for MX Switches
Post by: nevin on Thu, 01 April 2021, 08:30:56
nice project. looks like there's a good bit more resolution/detail in the data then i've seen in other graphs.
Title: Re: An open-source, relatively inexpensive force curve meter for MX Switches
Post by: Pylon on Sun, 04 April 2021, 23:25:44
Thanks!

I mounted it vertically to my desk, and did another calibration with some stainless steel plates I got laser-cut last year that I measured with calipers and calculated the volume (and from there, mass). Not an ideal calibration, but I know their weights ±2gf, and the calibration should be within ±5gf. Also added some wires and added some code so I can determine the actuation point.
(https://raw.githubusercontent.com/bluepylons/Open-Switch-Curve-Meter/main/Pics/Prototype-1-vertical.jpg)

I will be publishing force curves here:
https://github.com/bluepylons/Open-Switch-Curve-Meter/tree/main/Force%20curves/

Some switches I have that I measured so far (I focused mostly on switches that don't have available curves from HaaTa)

AlphaKeys Dusk Panda:
(https://github.com/bluepylons/Open-Switch-Curve-Meter/blob/main/Force%20curves/April-4-21-calibration/Alphakeys-Dusk-Panda.png?raw=true)

Durock Koala (T1):
(https://raw.githubusercontent.com/bluepylons/Open-Switch-Curve-Meter/main/Force%20curves/April-4-21-calibration/Durock-Koala.png)

Durock Medium Tactile (65g):
(https://github.com/bluepylons/Open-Switch-Curve-Meter/blob/main/Force%20curves/April-4-21-calibration/Durock-Medium-Tactile.png?raw=true)

Gazzew Boba U4 (68g)
(https://github.com/bluepylons/Open-Switch-Curve-Meter/blob/main/Force%20curves/April-4-21-calibration/Gazzew-Boba-U4-68g.png?raw=true)

JWK Twilight: (currently in IC (https://geekhack.org/index.php?topic=111852.0))
(https://github.com/bluepylons/Open-Switch-Curve-Meter/blob/main/Force%20curves/April-4-21-calibration/JWK-Twilight.png?raw=true)

Kailh Speed Pale Blue:
(https://github.com/bluepylons/Open-Switch-Curve-Meter/blob/main/Force%20curves/April-4-21-calibration/Kailh-Speed-Pale-Blue.png?raw=true)

NK Blueberry:
(https://github.com/bluepylons/Open-Switch-Curve-Meter/blob/main/Force%20curves/April-4-21-calibration/Novelkeys-Blueberry.png?raw=true)

NK Sherbet:
(https://github.com/bluepylons/Open-Switch-Curve-Meter/blob/main/Force%20curves/April-4-21-calibration/Novelkeys-Sherbet.png?raw=true)

Outemu Silent Sky:
(https://github.com/bluepylons/Open-Switch-Curve-Meter/blob/main/Force%20curves/April-4-21-calibration/Outemu-Silent-Sky.png?raw=true)

Outemu Silent Sky stem in Boba housing:
(https://github.com/bluepylons/Open-Switch-Curve-Meter/blob/main/Force%20curves/April-4-21-calibration/Outemu-Silent-Sky-Stem-In-Boba.png?raw=true)

Title: Re: An open-source, relatively inexpensive force curve meter for MX Switches
Post by: Willtato on Fri, 16 April 2021, 20:03:06
Thanks for this!
Back when boba u4 switches were new, I really wanted to see force curves to compare...

I appreciate the effort

Sent from my HD1913 using Tapatalk

Title: Re: An open-source, relatively inexpensive force curve meter for MX Switches
Post by: Leopard223 on Thu, 01 July 2021, 16:08:47
This is absolutly fantastic,  I'd love to see more in the future.