Figured out the issue with the encoder. We can determine when the encoder moves 7.5 degrees, as opposed to 30 degrees. We need to rework QuadEncoder.js.