Has anyone thought of using an optical mouse for more accurate positioning?

I wonder if it would be possible to extract higher precision positioning data from the system by using a USB mouse (mounted onto the sled someplace)? It’s easy enough to interface them to the computer - and even the cheapest $10 ones have a precision of around 400 to 800 dpi (“dots” per inch)…a good gamer mouse will get you 1600 dpi.
But even at 400 dpi - it would be a bazillion times more accurate than your chain length calculations…and at the slow speeds that the system moves - a mouse ought not to lose too many steps.

The problem with a mouse is that it’s only able to measure relative distances - and any error would tend to accumulate over time - but when COMBINED with the existing position estimation, I think there could be big wins.

With a corded mouse - you’d need a long USB extension cord (but no batteries and less concerns over electrical interference from the router motor.

Just a thought…feel free to shoot it down in flames!


It’s been brought up multiple times but don’t think it has ever been proven or disproven. It’s sounds like a great idea from the surface but don’t know how the details work. Even Bar has mentioned it. Here is the last thread on the topic: Optical mouse as a movement sensor on the sled

1 Like

Oh - OK - sorry for the duplicated thread!

I did some research on this in the past and read a few white papers, particularly one that used it as a basis for robot navigation… it used a pair of optical mice to handle rotation of the robot. I can’t remember the accuracy values, but as you said, the error is cumulative. Iirc, my calculations showed that it didn’t take very long before the error exceeded the goal of 0.5 mm accuracy.


We’ve talked about it before to replace an encoder based system, but we haven’t talked about using both in combination before. I’m not sure I understand exactly how it would work, but I think the idea is worth exploring

1 Like

HP uses a concept similar to this for their 3.2m commercial inkjet machines. It’s a little optical sensor that sits under the material as it passes under the print head. (OMAS) They combine the encoder data from the servo drive (that moves the material forward) with the data from that sensor to adjust which nozzles to turn on and off at the print head in order to eliminate banding/lines in the print.

It’s really amazing; the inkjet world has always had issues with material advancing too far/not far enough or stretching/shrinking due to heat, etc… they eliminated it all with a simple optical sensor. Really ingenious engineering.