Author Topic: Help with vintage mouse encoders  (Read 2384 times)

0 Members and 1 Guest are viewing this topic.

Offline Rasz

  • Super Contributor
  • ***
  • Posts: 2616
  • Country: 00
    • My random blog.
Re: Help with vintage mouse encoders
« Reply #25 on: June 21, 2021, 11:16:15 pm »
Anyway, you need to think of a way, to verify one or another. The most straightforward way would be to try to make one axis good by changing the bad one with a good one from another axis.

Yes, this is the obvious first step, without buying anything/waiting for shipping
Who logs in to gdm? Not I, said the duck.
My fireplace is on fire, but in all the wrong places.
 

Offline Manul

  • Super Contributor
  • ***
  • Posts: 1109
  • Country: lt
Re: Help with vintage mouse encoders
« Reply #26 on: June 21, 2021, 11:19:26 pm »
Except that it would be two different ports on the MCU that both failed in the same way, while the rest of the MCU was undamaged.

Port is a group of I/O pins, often 8, could be 4, which have their own dedicated control, data registers and all kinds of underlying logic.
 

Offline Ian.M

  • Super Contributor
  • ***
  • Posts: 12859
Re: Help with vintage mouse encoders
« Reply #27 on: June 21, 2021, 11:33:21 pm »
The MCU could be faulty, maybe the detectors are wired to different ports and one is bad. So it is not necessarily faulty detectors. There are many variants similar to OPL550, so we don't know which one it is exactly, until some testing of the output is performed.

Are not working detectors' output sitting at 0V or 5V?

The non-working outputs are at 0V. But with power off, a multimeter shows no continuity from those pins to ground.

So if the problem is in the MCU, it would be on two pins, and it would be forcing them to 0V only when the MCU is powered on, and it wouldn't be affecting anything else in the MCU. It seems unlikely.
It could be 'bit-rot'.  If the MCU's code is corrupted, and the two axes are each on the same bit positions of different ports, it would only take one bit flipped in the port initialization code, swapping one bit position from input to output to get the observed results.
 

Offline Manul

  • Super Contributor
  • ***
  • Posts: 1109
  • Country: lt
Re: Help with vintage mouse encoders
« Reply #28 on: June 21, 2021, 11:40:54 pm »
It could be 'bit-rot'.  If the MCU's code is corrupted, and the two axes are each on the same bit positions of different ports, it would only take one bit flipped in the port initialization code, swapping one bit position from input to output to get the observed results.

Yes, there are actually so many scenarios how a port could fail, even including software corruption, I did not think about that. Not very likely, but it could explain, how two separate inputs failed at once.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf