I'm trying to use two BNO80 orientation sensors to measure the deflection of a universal joint in both pitch and yaw (there are components in the way that prevent the use of rotary position sensors). The BNO80 outputs a quarternion to describe its rotation. Problem is I can't seem to get the two sensors to agree on the same quarternion even when they are in the same orientation (I'm using the standard rotation vector output, game, ARVR stabilised and geomagnetic all offer no improvement). I have a feeling this has to do with the magnetometers since most of the drift is on the yaw axis. I've moved the sensors away from any metal components and tried calibration using this method several times to compensate for any remaining hard and soft iron biases, but the difference persists. It's typically not a small error either, often tens of degrees, though that changes with each calibration, sometimes worse, sometimes better.