I'm trying to get a simulated magnetometer (B0x, B0y, B0z) via X-Plane. Can magnetic heading be reverse engineered into its components so I can run an EKF on it. I've got it working with the real thing but it'd be nice if everyone could get the EKF to run without hardware.I've introduced an unrelated bug to my EKF that I've been spending time on so I'm hoping someone can beat me to figuring this out. I realize potentially their could be more than one solution which would make it impossible but if that's the case can someone confirm it?X, Y, Z = magnetic components in x, y and z axisXh = X * cos(roll) + Y * sin(pitch) * sin(roll) - Z * cos(pitch) * sin(roll)Yh = Y * cos(pitch) + Z * sin(pitch)Azimuth = arcTan(Yh/Xh)Summary: The problem is I have Azimuth and I need X, Y, Z. Can it be done?

You need to be a member of diydrones to add comments!

Join diydrones

Email me when people reply –


  • What I do to "measure" (simulate) a magnetometer in X-Plane is the next:

    1º Take the GPS coordinates.
    2º Calculate the XYZ with an Earth's magnetic model with the GPS coordinates.
    3º Rotate this coordinates from the Flat Earth's Frame to Body's Frame (roll, pitch, yaw) to simulate the magnetometer measurement.
    4º Add noise or whatever.

    Do you know if X-Plane 10 will include magnetometer measurements?
  • Developer
    This might not follow your exact convention but you should be able to follow. Hope you can read the pic if not I have it on hand.

This reply was deleted.


David Hori liked Isabella Domi's profile
gotham liked gotham's profile
Dec 3, 2020