I'm currently building my quad and noticed that I have a lot of motor vibration causing a lot of noise on my IMU data. I use the razor 9dof. And yes I allready read that a lot of poeple don't like this imu for mulitcopter projects because it is sensitive to noise. But I got this imu so I wan't to finish my quad with this one.
When I was looking at the raw data comming from the HMC5843 (triple-axis, digital magnetometer sensor). I noticed some strange behaviour that I can't explain. I noticed that the data comming from HMC5843 is not sensitive to vibration, because amplitudes stay the same in all cases at all motorspeeds. But when I powerup the motors the data shifts upwards. This happens on al 3 axis (x,y,z)
I think this behaviour will cause drift when I use the AHRS code with DCM calculations. Because the data shifts up lineair to my motorspeed I should be able to hardcode a compensation. But I would like to understand why this happens? someone has en idea?