“I looked at all the available rotary encoder sketches and none of them met my needs, so I have written my own, and here it is”.
This library implements non-blocking functions to detect encoder rotation actions. The library can handle multiple encoders.