Looking for best/easiest rotary encoder library

Hey gang.

I am building a project with an oled display and am attempting to create a basic menuing system. I will use a standard rotary encoder to navigate it. I am looking for advice on a wicked awesome rotary encoder library.

I have researched a few of them and have learned enough to know that I don't even know what I don't know. I could try several out, but I am hoping to shortcut that and get some advice.

I would love to find that perfect library that would make it very easy to deal with the encoder. It would be awesome if it was a simple as looking for objectname.turnedLeft() or objectname.turnedRight(). Of course I need for it to be non-blocking, but I don't have a preference of interrupt driven or not (unless you guys have a preference that you could impart that knowledge to me).

Additionally, it would be cool, though not necessary, if it had a fast mode or something so that if you turned it fast it would "fire" / "make available" additional turnedLeft() or turnedRight() = trues to cause speed up functionally.

Again, I am not opposed to doing trial and error, it is just that I am somewhat lazy and hoped to draw on your experience, especially give that I have never used a rotary encoder before.

Thanks for your kind-hearted advice.


I've only ever used one encoder library, and never bothered to check the alternatives because it worked fine for me:

This library is maintained by Paul Stoffregen, creator of the Teensy line of Arduino compatible development boards. That alone is a very significant reason for using it.

For some info on how to do the 'speedup' functionality you may want to read this: Adaptive User Input with a Rotary Encoder – Arduino++

Thanks guys for the info. I will give them a shot.


+1 for the Stoffregen library.

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.