Hello people, I've been working on building an actuator using an AS5600 on the control and servo sides to measure the position using the analog output from the sensor; the basic idea is that the control wheel is turned, the AS5600 there measures the angle, an Arduino does its PIDy thing and turns a motor until the angle in the servo matches the control position.
So far so good except for the fact that there is a deadband, or as the datasheet puts it "...if the range is 360 degrees, to avoid discontinuity points exactly at the limit of the range, a 10-LSB hysteresis is applied. This hysteresis suppresses toggling the OUT pin when the magnet is close to zero or 360 degrees.".
The consequence of that is that it's not possible to have control over the full 360 degrees of range, over that hysteresis gap turning the control doesn't move the actuator which ends up jumping from one side of the gap to the other.
The datasheet includes information about a CONF register that can be reprogrammed via I2C, I have no experience changing registers using I2C so before I go down that rabbit hole I thought I better ask in case anyone knows if that hysteresis setting affects the analog output hysteresis or if it only affects the ANGLE register values, from the datasheet it's not clear what the case is.
The TL;DR version is, is it possible to reduce or eliminate the deadband in the AS5600 sensor so that it can produce a continuous angle input over the full rotation?
Thanks a bunch.
As an added question, I did retrieve data using I2C from the sensor, from both the RAW ANGLE and the ANGLE, however both are extremely noisy, unusable really, is that normal?