Sunday, May 24, 2015

Compass Calibration procedure

Did I miss a memo? It seems the Compass Calibration procedure has changed?

Edit 12-2016 : Many in the forum pilots say "Dennis Balwin's Way" is the best way to calibrate compass. Also, if having trouble over 915Mhz SiK Radios, try a good USB cable. OK ... now back to the old post.

Now, it's just ... "One strategy for capturing all the white dots is to rotate the vehicle slowly so that each side (front, back, left, right, top and bottom) points down toward the ground for a few seconds."

It's more like the linked video. There is certainly no "dancing" or "chair spinning"in that video.

All I know is that I'm trying to calibrate the compass via 915mhz radios. After trying "compass dance" and "spinning chair method" ... MP errors out before it Auto-Completes. Many white dots are still left.

Best I can tell, after some testing (and multiple tries for a clean compass calibration) the new procedure is very easy.

Initial Setup/ Mandatory Hardware/ Compass/ Live Calibration (at bottom)

Holding the quad in front of you (like it's hovering) ... you slowly rotate it these 3 ways (toward ground), until it's back where it started from.

1. Pitch forward 360 degrees (toward ground). Two complete times (2 revolutions)
2. Roll it 360 degrees (toward ground). Two complete times (2 revolutions)
3. Yaw it 360 degrees (on it's side, like a wheel rolling on the ground). Start with motor(s) pointing directly to ground and Yaw it all the way around. Two complete times (2 revolutions)

Toward the end of step 3, it should beep (auto complete) and give you the Offsets. If it won't complete:
  1. Just try again. If done clean--and-fast it seems normal for it to Auto-Complete early, toward end of step 2. If it misses a dot early, it's easier to just reset.
  2. Be sure radios aren't too close (resend errors cause dots to not populate properly?).
  3. Go slower and turn more perpendicular and carefully. Slightly sway as each major "face" points straight down to earth.
  4. Start over and add step 4 below ...

4. Hold it like a cross (instead of X) and pitch-rotate so each motor points to ground. Turn it 90-degrees and do the other 2 motors. Some time during this Step-4, it should Auto-Complete.

It's something real close to this I think. I used the above, got a nice (clean and fast) calibration done (over 915mhz radios with ECC on) and haven't repeated it since. It's been working fine in flight.

  • It's normal for it to show 2 compasses. It's normal for phantom/un-used Compass-2 to show Error:99.
  • This is with AC 3.1.5 and MissionPlanner 1.3.27.
  • I think it's better to go outside to do compass calibration. This removes any chance of structure interference during calibration or general compass operation (finding exact North, etc.).
  • I leave Auto-Dec on and go outside to calibrate compass. This allows a basic GPS fix and then FC can use Auto-Dec (lookup-table based on GPS). I'm not sure if Declination is used during calibration or not, but maybe it is.
    • If inside with no GPS, I temporarily turn-off Auto-Dec and set it manually during compass calibration. However, other benefits of going outside are undeniable.
  • My original Compass Calibration notes are in a section here (most still apply). The last time I previously tried to calibrate my compass (months ago) the normal "compass dance" worked fine for me. But not now.
  • If compass is set to External, it uses the compass's orientation parameter (COMPASS_ORIENT,0). If set to Internal (COMPASS_EXTERNAL,0) it's ignored (and instead uses the FC's orientation). Pretty sure that is the only difference between them.
  • After compass calibration, MP should give you a pretty good indication if your compass is working. Watch heading as you yaw and pitch quad on table. While testing (only), don't power-up with Nova pointing direct North (the FC's default when no compass is attached).
  • You only need one good/clean compass calibration done on quad. You don't need to keep re-calibrating it every time you fly or even at a new field or even country. The only time you need to recal is if you re-mount compass due to frame upgrade, crash, or something like that (and then you are back on the work-bench running MissionPlanner anyway). Once the compass is calibrated, you are done. Everyone should leave Auto-Declination Enabled. When you go to any field, you will have a minimal (4-6 satellite) GPS 3D-fix anyway. The flight controller uses this to look-up actual Declination on stored table.
  • After compass calibration, you can check quad against a good quality conventional (old-school magnetic) compass. Test in all 4 directions and at various quad pitches. Do not use cell-phone compass. Do not get cell-phone (or similar device) near compass, especially not while calibrating or checking.


  1. Okay, help out the pilot term challenged. I think I might have it, but just want confirmation.

    Step 1 - is pretty self-explanatory. You start off level with the front pointing away and then act as though it was flying and went into a nose dive (pitch forward) and then just keep that rotation going clear around 360 degrees until it's back level with the front pointing away from you. Correct?

    Step 2 - does it matter if you roll left or right? By roll you mean tilt it to the right and then continue that rotation until you come back home again. Correct?

    Step 3 - for this step it will stay parallel to the ground. Up will stay up and down will stay down and it will "sit and spin" as though it's trying to get dizzy, Correct:?

    Sorry, I do believe I've got these terms down, but it took me a few reads of your instructs to really be certain (that is if I am correct).

    Just installed 3.1.5 and did the Initial Setup Wizard (did an indoor compass) and now taking it out into the field to do the compass calibration right.

    1. I tried to use the same terms that we fly with.

      1. Right
      2. Doesn't matter. Right.
      3. Well, I turn on it's side, and Yaw it 360 degrees. Like a wheel rolling on ground. Your way might work also. The quad's orientation might not matter as long as it's Yawing.

  2. When I do live calibration on an APM mini 3.1 - newest AP2 version (with newest firmware) there pops up no windows with the dots (like in old versions) - is this be removed? I always get finally: "not enough data points to calibrate the compass". Any idea whats wrong? Thanks

    1. Are you sure a compass is connected properly? Maybe it can be tested from Terminal?

  3. since we are talking compass... what is/ does the COMPASS_LEARN peram do ? options are 1=on 0=off

    sounds like it automatically learning compass offsets??

    1. I don't know. This page says:
      Mine is Disabled:

      I did find this

      If I'm understanding this right ... we manually calibrate the compass and get good offsets. As long as aircraft build doesn't change, there is no need to have it automatically LEARNing new offsets ( or, even us re-calibrating it).


    2. Yep, after reading some of the links you posted, that seems logical to leave it at "0"

      If this was a cure-all for bad compass calibrations someone someplace would have mentioned it by now, rather than all the calibration youtube videos

      Thanks, John

  4. I upgrade to 3.2.1 on my cx20 now I can't manually calibrate the compass with the radio. Any help will be appreciated.

    1. I don't know about using Transmitter to calibrate compass. I only use Mission-Planner (always have). You only need one good compass calibration. Its my understanding that with a GPS fix and (compass)
      Auto-Declination ON, you are good to fly practically anywhere in the world.


The stupid spammers have now forced me to approve each Comment before it appears (but I am usually pretty quick about it).