I'm thinking about making a custom Arduino-based mouse and I expect not to be the first one to have the idea. Does anybody know what speed I can expect to achieve? Suppose I use a mechanical mouse as a base, meaning I'll have to monitor 3 buttons and 3 axes (X, Y and wheel), debounce the signals coming from the buttons and transmit all that data via USB. How many times per second will I be able to do this, theoretically? Are there any projects which did something similar, and if so, what speed were they able to achieve?

To make a good mouse, I suppose I should at least beat my display's refresh rate which is 60 Hz, otherwise pointer movement won't be smooth. My current (commercially produced) mouse runs at 100 Hz.

  • 1
    I suppose that 1000 times per second could be possible, but I don't know if that is somewhere slowed down, for example in the driver on the computer. The pro micro board uses a usb interface which is very fast. Please add to your question why you ask this. You know someone who presses a button 1000 times per second? or is the button only shortly pressed and you don't want to miss it? – Jot Jan 20 '18 at 15:18
  • Thanks for updating your question. 100 Hz is no problem, and there is still time to debounce the buttons. What kind of mechanical mouse? With rotary encoders? With two interrupts per encoder and 3 axis you need 6 interrupts. The pro micro has 4 normal interrupts and 6 pcint interrupts. Pinmapping: pighixxx.com/test/portfolio-items/pro-micro – Jot Jan 20 '18 at 18:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.