Setting up external mag/compass

I got an external compass to hopefully drive the interference down, but the documentation is not very straight forward. 

1) what is the i2c pinout? I cant find this information anywhere with some precision, and the eagle files dont detail the pinout of the i2c df13 plug. THIS page talks about it briefly, so this is how i understand it:

starting from the inner most pin

-vcc (inner)

-scl (mid inner)

-sca (mid outer)

-gnd (outer)

can anyone confirm this?

2) what are the settings in mission planner that need to be in place in order to get an external compass to work? I have already severed the internal/on board compass' connection between the two pads. 

In the compass setup window, is the "enable" radio button for the internal compass? or does this control using a compass all together? it doesnt appear that my external compass is working. will the cli compass test still work with an external compass? I have confirmed that my hmc5883l is getting 3.3v @ the breakout board...

thanks in advance

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

Join diydrones

Email me when people reply –


  • At this point, im just talking to myself. but w/e.

    so ive finally been able to do some more testing. This external mag is still not working. I could really use someones help here.

    Yes, i have followed the instructions on the wiki.

    I have confirmed that this compass is working,and is accurate (North ~ 360/0 heading) through the sample HMC58x3 ardu codes:3691101513?profile=original


    the ardupilot board reads "bad compass health" when connected to ardupilot. WTF?!


    The curious part is that the cli test for the compass appears to work (with incorrect heading values) when the compass is NOT PLUGGED IN: (note: the trace is cut and the compass test works. is that normal?)

    3691101264?profile=original( I think the offset values are ridiculous due to the fact that I have cut the trace...???)

    But fails to initialize when the compass IS plugged in:


    ...I am still looking for someone, anyone to confirm that the process is cut the trace, and plug in the compass, and fly. Is there any other steps involved?

    This is now the second board that I have cut the compass trace on and yet still failed to get a working external compass. WHAT AM I DOING WRONG?

    • Hi Ted,

      In my previous message I forgot to mention that you also should do the 'live calibration' in mission planner. That solved my problems.

      A link to that discussion:

      Best regards,

      Jan Willem
    • Hi Ted,

      I can confirm that it's just as simple as you describe.
      Cut the trace on you board, plug in the compass and finally change your hardware settings in the mission planner to external compass. Be carefull to check the orientation of your compass. That's all.

      Best regards,

      Jan Willem
  • C'mon, guys. Can anyone offer any direction here? EVERYONE else with an ext compass was really just plug and play?

    Cut trace, plugged in compass. Now i get a compass initialisation error when running cli test, and no apparent change in heading when i rotate the compas around.

  • Still having trouble here. I have now cut the trace on my board, and now i am getting a compass initialisation error when running the cli test. 

    I have cut the trace, and plugged in my compass. However, the board thinks it is oriented north regardless of heading upon each connect event to MP. Moving the compass around in any axis yields no change in heading. rotating the board itself yeilds a change, but i assume this is due to the inertial nav, since the cli test stops before it starts. 

    Any Ideas?

    The only thing i thought of to check was that the compass is getting its voltage, and indeed, it is recieveing 3.3v at the breakout board.

  • Admin


    Have you followed these Wiki instructions to attach an external compass:

    I have built four external compasses using these Wiki instructions and all four worked the first time out so the instructions must be pretty foolproof.


    TCIII ArduRover2 Developer

  • C'mon, guys. Someone has to know how to set up an ext compass.

    What needs to happen to get an ext mag to work? Is it just cut the trace, and plug in the compass and fly away? Cause thats what ive done, but no worky.

This reply was deleted.


Laurie J. Troy liked Jasper Kueppers's profile
Apr 1
Timothy Miller liked Joseph Udofia's profile
Mar 18
Joseph Udofia liked Joseph Udofia's profile
Mar 3