External Compass and CLI test

Can someone tell me if the cli compass test should work the same with an external compass?

Also, if Bad Compass Health comes from a discrepnecy between the compass and GPS heading, what happens when the copter is not moving? does the GPS a) have a heading? and b) is it accurate?

This was posted over in the 2.x forum, but i figured that is would get some more traffic here:

I havnt been able to get an external compass working for months, and 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) by running the sample HMC58x3 ardu codes on a basic arduino:3691101513?profile=original

...But...

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

3691101531?profile=original

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:

3691101556?profile=original

...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?

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

Join diydrones

Email me when people reply –

Replies

  • Ted, the CLI test will still give you heading changes in the correct direction even if the compass is disconnected. It is the gyro that is providing this information. In this case the heading will always be zero when you initialise the APM - regardless of its actual orientation

    • well after running the blade back across the compass trace, the CLI test now fails to initialise without the compass plugged in.

      • hi, have you try to run firmware 3.0.1 instead of 3.1.x ?

        I had the same behavior and using 3.0 solved all my problem. And the machine fly like a charm.

    • The CLI test for the compass pulls data from the IMU? Why is it called a compass test if it then pulls data from the IMU? it should be called a compass/gyro test

      the CLI test should use the compass exclusively. how else would someone debug?

      • Ted, yes it did seem odd when you stated it back to me... I am 100% wrong on this count. :( If the compass does not initialise then the HUD still shows movement in the correct direction starting from zero degrees. The CLI test is compass specific and does nothing if the compass does not initialise. Sorry for the confusion.

        • no worries. sorry if i sounded bullish, i just want this damn thing to behave.

  • ok, after trying a few times, i finally got the compass calibration to produce reasonable results:

    3701687244?profile=original

    ...but the copter STILL thinks that it is pointed north upon connect with MP no matter the orientation.

    • 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?)

      That seems to imply the compass inside the APM Is always working. All the extra stuff your doing for the external is irrelevant since its reading the internal. You havent cut the trace sufficiently. It makes no sense your still getting compass readings when you should have none.

      • so should the CLI compass test fail to initialize if the trace is cut enough? or will the values be 0?

    • Did you try my suggestion of lifting the compass above and significantly out of the way until it points correctly ?

This reply was deleted.

Activity