So I was thinking a little bit earlier today about mechanical switches, their advantages, and their shortcomings...
Now, as we all know, typical mechanical switches differ from their membrane counterparts in that there is a significant amount of travel between the activation point and the maximum travel of the switch. In general, this gap is A Good Thing, improving both comfort and responsiveness compared to domes of the same travel. It does, however, lead to certain weaknesses in gaming situations, where keys are often held down at full travel:
Firstly, because the switch must travel upwards a distance before passing the reset point, there is a loss of precision for actions that are done by ceasing to hold a key. The extent of this weakness varies considerably by switch type; on MX Blacks, the heavy spring and linear action reduce the severity of the issue, while green XM switches have the problem to quite a pronounced degree. Even with MX Black switches, however, the distance between full travel and reset exists, and therefore there is theoretical room for improvement-- and even an improvement that is hard for lower users to notice is better than no improvement at all. On some, but not all switches, it is theoretically possible for the problem to be reduced if users refrain from holding the key all the way down, but requiring such behavior in high-energy gaming settings would be to place more burden than necessary on the user.
Secondly, because the switch must reset before it can be re-pressed, very fast multiple presses will be read as holding the key down, which may not be desired. The speed at which the key can lift from full travel to reset imposes a limit on keypress rate in situations where concerns of speed, excitement, or imperfect user coordination make it impractical for the user to refrain from applying force in excess of that required to activate the switch; furthermore, with some switches, a difference between activation and reset point might result in a limitation on repeat rate even where no excessive force is applied.
It seems to me, though, that these issues are avoidable, and without even having to design a new switch to solve them. Basically, all you'd have to do is detect when a key is bottomed out; then, when it stops being bottomed out, even if the switch itself is still active, have it send that the key has been raised. If bottoming out again is detected while the switch itself has not been released, have it send that the key has been pressed again. As for how, exactly, you detect bottoming out, it seems that there are plenty of possibilities even without resorting to modifying the switches. For example, conductive O-rings plus conductive tape running up either side of the switch housing (and ultimately connected back to the PCB) would have bottoming out close a circuit. I'm sure it'd be possible to come up with other methods, too.
Hopefully, the potential of such a system is obvious...for example, you could have a keyboard using a light, tactile, and clicky switch (MX Blue, for instance) but still have precision and repeat-press-rate similar or superior to heavy linear switches.
Thoughts?