How does a Logitech scroll wheel detect movement?

81

17

I just replaced my scroll wheel in my mouse, a one minute repair. But now I've seen something that can't be unseen.

Logitech scroll wheels apparently function using magic.

It freely rests on three buttons that detect left, right, and straight down presses. But the wheel itself is not electrically connected to anything whatsoever. It's plastic resting on a spring.

How does the mouse know when I'm scrolling? And why was it affected by dust and gunk?

Edit: and how does it detect which direction you are scrolling?

enter image description here

Steve Hanov

Posted 2017-11-23T21:27:11.953

Reputation: 801

I don't know if this is the same for this mouse, but in the past, it was a laser that shines through the wheel, and inside the wheel were sparks (or whatever the word is, it has areas that are open and areas that are closed). If the laser was intercepted it could sense that it was scrolled and in which direction. – LPChip – 2017-11-23T21:30:21.880

2Look here. Each mouse setup is different, but based on the fact the pic you have posted shows clear mounts on the wheel implies there is an optical encoder at play. – JakeGould – 2017-11-24T02:58:31.597

5

This might surprise you, but the old ball-mouse (not the modern laser-mouse) works exactly in the same way, except that it has 2 wheels -- for X and Y directions. If you manage to find and open one, you'll see that the ball is not attached to anything. Here's a pic: https://38.media.tumblr.com/7d0bb30a71fba01f9c191fc48ca457f5/tumblr_inline_mlrx4d0kts1qz4rgp.jpg

– dr01 – 2017-11-24T13:27:05.413

2

The answers cover the way it's actually done; another possibility would be to use a Hall effect sensor, which basically counts electrical pulses generated by a magnet in the wheel passing a coil. Those are often used in power tools, car engines and other things that rotate quickly.

– David Richerby – 2017-11-25T14:25:50.823

Answers

100

There's a diode (probably infrared) and a receptor, one on either sides of the wheel, soldered directly into the green PCB. Wheel is SPOKED, and by turning it you interrupt light travelling from the diode to the sensor. No magic there.

Oh, and dust sitting in there can permanently block sensor from any light coming from the diode, so there's no way for it to register interruptions, that's why the wheel appear to not work.

location of light transmitter and receiver, don't know which is which

Kitet

Posted 2017-11-23T21:27:11.953

Reputation: 1 857

19now you just need to explain how it detects which direction you are scrolling – Sampo Sarrala - codidact.org – 2017-11-24T01:17:07.347

116Two receptors, spaced 1.5 spokes apart so that their interruption patterns are 90deg out of phase with each other. The technical term for this is a quadrature encoder if you'd like to google it. Combining these two on/off signals gives 4 unique "symbols" that appear in a specific order for one direction and reverse order for the opposite direction. – AaronD – 2017-11-24T04:16:24.190

1I've had more issues with the lubricant getting into the spokes. – ratchet freak – 2017-11-24T12:07:02.837

9If you miss the good old days of cleaning off your mouseballs, cleaning off these spokes when scrolling gets slippy is a good replacement. – Doug Kavendek – 2017-11-24T17:12:21.700

10As stated this answer is incorrect since it specifically states that there are a singular pair of optical components, when in fact as AaronD points out, two are required. The edit to repair it would be simple, but as a factual change only Kitet should make it. – Chris Stratton – 2017-11-24T19:35:41.647

3

@ChrisStratton That's a pretty minor quibble. A quadrature encoder is undoubtedly sold as a single integrated component. Example1, Example2

– Mike Ounsworth – 2017-11-25T19:57:46.083

3@MikeOunsworth - it might be a single package, but it's not the singular diode and receptor falsely claimed in this posting. There's no evidence that the answer's author even understands that quadrature is involved, and there is no statement contained here as to how the directions are distinguished. – Chris Stratton – 2017-11-26T04:57:22.030

Which suggests that Steve didn't need to replace the whole wheel, just blow out the dust. – Isaac Rabinovitch – 2017-11-29T22:19:00.843

40

To answer your edit and expanding AAronD's excellent comment, the direction is sensed by a microcontroller by the sequence of the codes when the wheel is turned.

For example, the two diodes, when turning the wheel, let's say, counter clockwise will translate to the following sequence:

    A B
    0 0 
    0 1 
    1 1 
    1 0 

For the clockwise direction, the inputs will be shifted in the oposite direction.

An excellent graphic illustration is also available here: http://www.creative-robotics.com/quadrature-intro

Alex C

Posted 2017-11-23T21:27:11.953

Reputation: 501

5

I did some research and found out that there are many types of scroll wheel types. It is not just Logitech , but almost all mouse manufacturers use this type of scroll wheel.The one here is optical scroll wheel. This uses a light shining onto a photodiode through slits in a metal or glass disc. Reflective versions also exist. This is one of the most common technologies. Optical encoders are very sensitive to dust.

The optical encoder's disc is made of glass or plastic with transparent and opaque areas. A light source and photo detector array reads the optical pattern that results from the disc's position at any one time. The Gray code is often used. This code can be read by a controlling device, such as a microprocessor or micro-controller to determine the angle of the shaft.

The absolute analog type produces a unique dual analog code that can be translated into an absolute angle of the shaft

Vedant

Posted 2017-11-23T21:27:11.953

Reputation: 206

Logitec doesn't use a Gray code, it uses simple quadrature modulation. This only gives angular velocity, not position. – Mark – 2017-11-24T19:01:50.200

@Mark - quadrature is a 2-bit gray code, but yes, given that there are only two bits and many cycles around the wheel, you are correct that it gives only an incremental result and not angle as claimed. – Chris Stratton – 2017-11-24T19:38:49.340

@Mark thank you, I will study the matter and upset the answer . Thanks again – Vedant – 2017-11-24T19:48:05.910