TroubleshootingGravity

Limitations of SEN0502 360 Degree Rotary Encoder Module

userHead Yevhen.Lezniuk 2024-01-28 13:08:55 169 Views0 Replies

I purchased Gravity: 360 Degree Rotary Encoder Module some time ago, a great module but I see ways to make it even better. It would be nice to get my suggestion released, it just a few lines of code but huge improvement in user experience.
The values range is limited to 0….1024. There is no problem with a narrow range using Gain but what if the user needs to extend it? 
In one of my projects, I was about to use SEN0502 for PWM control with about 6100 counts. There is no big problem with implementing a workaround for the value itself, e.g. just calculating the difference between the current and last values, and resetting the encoder on 0/1023 but no way to reflect correctly the current position with LEDs or at least turn off the backlighting at all.

Possible solutions: 

1. Extend product API a bit to allow users to implement encoder rage on the application side: 
- add API/register to custom LED control. 
- in addition to custom LED control add an API to read the difference in encoder position compared to the last read instead of fixed range values.

2. Alternatively allow setting custom range in a more wide range, e.g, up to the max value of uint_16 (-32 768 to 32 767 or 0 to 65 535), and keep the current way of backlighting