IBM Model M buckling spring switch bounce oscilloscope measurement

I've searched all over the web for information on the default switch bounce for IBM's buckling spring design, but couldn't fit anything. I'm sure there's some IBM whitepaper or datasheet that has all the info, but it's probably locked away in some dusty-ass IBM archive and will not ever see the light of day again.

I've added a feature to my replacement controller (here vendors-f52/ibm-model-m-bluetooth-usb-hybrid-controller-conversion-kits-t17388.html) to allow for manual adjustment of the default debounce period (I haven't implemented a fancy debouncing algorithm yet, only a first-edge detect + timer algorithm), but I wasn't sure about the physical properties of the 'buckling spring torsional snap actuator' + membrane contacts. So I hacked together a testing rig with a strip of perboard, two FFC sockets and a pull up and hooked it up to my scope to take a few measurements.

The outcome is this: most buckling spring switches on the Model M keyboard assembly used for testing have actually <3ms of bounce. 3.23ms was the worst I could find. In comparison, the average Cherry switch (1ms max) or even a run-of-the-mill microswitch (400us) seem to perform much, much better.

ibm_switch_bounce1.png

Not exactly the kind of result you would expect after reading the patent description from 1983 - "a switch actuator having minimum bounce of the switch actuator during release of the switch actuator from the position in which it activated a contact switch."
mind_prepared

Unread post11 Jan 2018, 00:56

X
mind_prepared
 
Posts: 42
Joined: 01 Jul 2014, 12:49
Location: Berlin
Main keyboard: Matias Quiet Mini w/blue ALPS
Main mouse: Microsoft Intellimouse Optical 1.0
Favorite switch: complicated ALPS
Club member: -
 
Very interesting, thanks for the insight. This also definitely makes my argument that Bloody's measurement of a 22 ms bounce time on Cherry switches is bollox seem pretty fair xD .
Chyros
User avatar

Unread post11 Jan 2018, 06:26

User avatar
X
Chyros
 
Posts: 3818
Joined: 28 Feb 2015, 22:04
Location: The Netherlands
Main keyboard: whatever I'm reviewing next :p
Main mouse: a cheap Logitech
Favorite switch: Alps SKCM Blue
Club member: -
 
 
Hey good to see you back mind_prepared, and you're doing technical research now? Impressive work.
seebart
User avatar
Offtopicthority Instigator

Unread post11 Jan 2018, 06:30

User avatar
X
seebart
Offtopicthority Instigator
 
Posts: 11226
Joined: 22 Nov 2013, 20:20
Location: Germany
Main keyboard: Rotation
Main mouse: Steelseries Sensei
Favorite switch: IBM capacitive buckling spring
Club member: 0061
 
 
Glad to hear it is of use to anyone. However, you might wanna take my measurements with a grain of salt. I'm not a professional electronics engineer, so there's a chance I didn't do this the proper way (what is the 'proper' way?). I've done it pretty much the same way Hasu did on GH (where he disclosed that he wasn't an electronics engineer either).

The fact of the matter is that Cherry Corp. is stating a maximum of 5 ms of bounce for their MX-series switches. I have not been able to measure anything near 5 ms though, not even 1 ms (that's Hasu's worst-case reading when activating the switch by flipping a finger). Why is that? I don't know.

I suppose it would help if some guys who are more versed in measuring switch bounce would chip in.
mind_prepared

Unread post11 Jan 2018, 11:31

X
mind_prepared
 
Posts: 42
Joined: 01 Jul 2014, 12:49
Location: Berlin
Main keyboard: Matias Quiet Mini w/blue ALPS
Main mouse: Microsoft Intellimouse Optical 1.0
Favorite switch: complicated ALPS
Club member: -
 
5 ms is a standard debouncing time. It's just Cherry saying they don't bounce on a standard rig. Other manufacturers do this as well (at least the ones using electromechanical switches).
Chyros
User avatar

Unread post11 Jan 2018, 11:47

User avatar
X
Chyros
 
Posts: 3818
Joined: 28 Feb 2015, 22:04
Location: The Netherlands
Main keyboard: whatever I'm reviewing next :p
Main mouse: a cheap Logitech
Favorite switch: Alps SKCM Blue
Club member: -
 
 
model F doesn't bounce: https://github.com/dmaone/CommonSense/b...F/head.png
(actually it does, a bit. For some keys there's peak at 80% ~1ms before it settles, then it goes down to like 30% and then settles. CS has 8 bit debouncing buffer - it translates to about 2.5ms. 4 bits also work, but the "e" key on my testbed is sometimes registered twice.)
DMA

Unread post13 Jan 2018, 02:43

X
DMA
 
Posts: 384
Joined: 23 May 2016, 06:24
Location: Seattle, US
Main keyboard: T420
Main mouse: Trackpoint
Favorite switch: beamspring
Club member: -
 
 
The bringer of PSoC
mind_prepared wrote:Glad to hear it is of use to anyone. However, you might wanna take my measurements with a grain of salt. I'm not a professional electronics engineer, so there's a chance I didn't do this the proper way (what is the 'proper' way?). I've done it pretty much the same way Hasu did on GH (where he disclosed that he wasn't an electronics engineer either).

It's the effort that counts and the fact that you point out that you are not a professional electronics engineer. Good work! I have a problem with people putting down other peoples efforts which is what I've been experiencing elsewhere on DT recently...
seebart
User avatar
Offtopicthority Instigator

Unread post13 Jan 2018, 06:54

User avatar
X
seebart
Offtopicthority Instigator
 
Posts: 11226
Joined: 22 Nov 2013, 20:20
Location: Germany
Main keyboard: Rotation
Main mouse: Steelseries Sensei
Favorite switch: IBM capacitive buckling spring
Club member: 0061
 

Who is online

Users browsing this forum: desal, DiodeHead, Starck and 31 guests