I found magnetometer calibration is done for soft/hard distortions also for tilt compensation using gyro data as well,

but all of them perform for know step of the procedure (rotating aligned with know axis etc.)

I don't understand when the product is made and when it's used in a different place how to perform the calibration? my application cannot rotate the sensor as above once the product is made (a robot).

is there any other way to calibrate the magnetometer? if the location or environment is changed?


Use it as a vector, there will be an offset, but it will prevent the yaw drift of the gyro, and can still trim the other 2, You have precision, but not accuracy, e.g. it can return to the same orientation, but it might not be that clean a path away from that orientation.

Otherwise have it as a background task, when its not in motion and the orientation has changed, used those points to build up a calibration map for the magnetometer,

  • \$\begingroup\$ I am not good at math can you show some example links here \$\endgroup\$
    – komto909
    May 4 '20 at 8:00

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.