I’m using a MA600 encoder. I’m seeing a dramatic increase in standard deviation noise depending on the angle. I’m seeing on the order of 0.01 degrees noise in the 0-180 range and 0.10 degrees noise in the 180-360 range. Almost (but not quite exactly?) at the 0 and 180 mark. This persists if I reverse the orientation of the breakout — the noise stays in the 180-360 reading range, not in the same physical range. It also persists if I use the functional test mode that bypasses the physical sensing altogether — noise at 270 degrees is about 10x the noise at 90 degrees.
I tested parity, and the noisy measurements have correct parity. I tested disabling the filter with no improvement. I got the MA600 on a very simple breakout from MJBots. I’ve got it connected to a seeed Studio Xiao RP2350 using 1 Mhz SPI. I’m programming that through the Arduino IDE, just logging measurements.
I have spreadsheets with captured data that I could share. It includes observations on each side of 0 degrees with their dramatically different noise. I’ll paste in an image of a plot of some data. This was captured at 1 kHz. The mean measurement was just 0.114 degrees apart (named before and after “bump”), but the noise profiles are immensely different. These are so close to 0 that the distribution of noise crosses the 0 line… but doesn’t magically become more or less noisy when it crosses. This pattern is very repeatable and also happens at 180 degrees.
I’m desperate for ideas.
