Solo para corregirte entonces lo del sensor...
ya que el sensor emite datos cada 4ms
Es un error... El sensor siempre emite su señal analogica, el problema es que entre un cambio de angulo en el eje, recien a los 4ms se ve reflejado en su salida, es decir no es instantaneo.
4ms es muy lento para el microcontrolador lo cual no te permite saber donde se movió hasta no recién de 4ms... Es por eso que les pidió que ademas usaran un encoder incremental.
Resumen:
El sensor analogico te da la posicion absoluta.
El encoder te va a servir para saber si se movio de forma mas rapida que lo que te permite el sensor anterior.
Pasado un tiempo sin moverse... la posicion absoulta se los va a dar el analogico.