Hi. There is a bug whereby if an encoder is missing(optional) and I call updateStatus().
In this case All interrupt routines are launched for
Encoder is released!
Encoder is pushed!
Encoder is long pushed!
Encoder is double pushed!
..
all this because this function does not check the error reported by the I2C bus
_stat = readEncoderByte(REG_ESTATUS);
receive -1 = 255
in lib i don't see a test function to check the connection.
I would add a "connected" boolean during setup or reset or begin
For the rest I am fine .. thanks
-Federico