#encoder only registering one direction (mostly)

1 messages · Page 1 of 1 (latest)

subtle knot
#

I lost my original config in a hard drive crash, so I'm trying to get things working again.

I have a rotary encoder for a trim wheel, but am only seeing events for one direction (LEFT and LEFT_FAST). I am debugging using Logging set to Info in Settings, and then running in Test mode.

Very rarely, a RIGHT or RIGHT_FAST will come through, but just about as often on the same direction as LEFT as not.

I was hoping to get some confirmation that this is a connection problem before I spend the time to tear everything apart. I thought it was working fine prior to the crash, so it seems weird that I would also suddenly have a problem with this device simultaneously, but maybe I knocked it without realizing while tearing my computer apart and putting it back together.

pallid pulsar
#

Oh, sorry to hear that!

The Arduino configs are stored on the Arduinos' EPROM memory, so your lost .MCC file should not matter in the events , only in the mapping of simulator events would be lost and has to be redone.

So you could maybe delete the encoder config and instead configure the two pins as button input, so you can see the individual pin signals from tbe encoder - they are phase-shifted alternating presses and releases:

A press
B press
A release
B release
A press
B press
.... and so on. Like on the picture

#

and see if you get only one pin signalling through, that might be there is a loose connection somewhere?

#

or maybe one wire is in a wrong pin? But the events should work without a .MCC configuration file also, so something else has caused this issue.

#

If the right events also happen, I suspect you might have a bad intermittent connection on the other pin.

subtle knot
#

Awesome, thanks!

#

As buttons, I'm seeing the phase-shifted behavior described above for one direction, but not the other. I suspect then that my axle broke, and broke in such a way that it catches in one direction but not the other somehow. Thanks.