I have an OG Organelle which is a few years old now, and I’ve noticed that even since new, that rotating the encoder counter-clockwise to move the selector up sometimes moves the selector down - particularly when rotated quickly. Rotating the encoder clockwise to move the selector down usually works fine.
Has anyone else had this issue, or can suggest any fixes? Is it resolvable in software through some type of filtering (similar to a debounce algorithm)? Or is a new encoder the order of the day? I was hoping it might be resolvable through software, since I would assume having a faulty decoder from the factory is unlikely.
Any thoughts, tips or suggestions gratefully received!
Edit: I’ve found the relevant source code for the rotary encoder driver, and it looks like it might be a software, rather than a hardware, issue. Essentially it appears (from a cursory glance), that the encoder is periodically polled and uses combinatorial logic to decode it with no high-pass filter. To me this looks like, depending on the polling frequency of the encoder, the rotational speed, and amount of noise from the encoder, it might be easy for the rotation direction to be confused. I’d be keen to try some different algorithms, does anyone have any tips on cross-compiling the operating system on a Mac or Linux VM for the Organelle?