Configure debounce time in Windows for mouse

21

7

My mouse is broken and I am too lazy to buy a new one. The problem is with the left click button. A simple physical click will result in several clicks in Windows. There is already a debouncing circuit in the mouse to prevent this type of behavior, but it is no longer effective. How can I increase the debounce time in software? Or another to put it is how can I tell to Windows to ignore multiple mouse clicks if the time between them is less than 0.1 sec.

JcMaco

Posted 2010-11-06T02:03:18.350

Reputation: 950

Answers

18

The free (and open source) tool AutoHotkey allows users to write custom scripts that interact with the keyboard and mouse. In particular, one user has written a script called "Buggy Mouse" which "sets your mouse's minimum double-click speed (preventing single-clicks from being seen as double-clicks)". It does this by ignoring multiple clicks that occur too close to each other.

After installing AutoHotkey and loading the script, my own debouncing issues appear to have been solved.

You may need to adjust the DoubleClick_Min parameter at the top of the script which determines the minimum amount of time between mouse events to be considered as two independent clicks: I found that the default value caused legitimate double-clicks to be considered a bounce. The value of 75 seems to work well for me, however.

davidg

Posted 2010-11-06T02:03:18.350

Reputation: 389

That's a wonderful script! Unfortunately it doesn't handle dragging well when the mouse bounces. The mouse button will register as not being held. – Steen Schütt – 2017-07-10T22:11:21.900

3

Sorry I can't post comments, but I wanted to add to daviddg's answer. Searching the scripts section of the AutoHotkey web site did not find anything for "Buggy Mouse". However, I did find a script on this post: http://www.autohotkey.com/board/topic/82509-software-fix-for-double-clicking-mouse

And the script source is:

LButton::
If (A_TimeSincePriorHotkey < 100) ;hyperclick
Return
sendinput {LButton down}
KeyWait, LButton
sendinput {LButton up}
Return

Sandra

Posted 2010-11-06T02:03:18.350

Reputation: 205