Warning EKF Ground Mag Anomaly Message?

Hi guys.

Traveled about 400 miles away to Florida to do some test flights and this was the first flight of the day and happened a couple of times after.

Started out in Loiter mode and as soon as I lifted off the ground I got two messages saying “EKF Ground Mag Anomaly”. I flew with caution, but when I pressed the pitch to go forward it went, but off to the left about 10 degrees and upon letting go of the sticks it did a slight toilet bowl. I tried to recalibrate the compass and I would not always get the message, but it happened 3-4 flights out of 8 flights total.

Is this because it was in a new location and was learning the automatic declination? Is the mag getting to much interference? Should I have redone the compass calibration (thought I read you just have to do this once)?

Trying to get this message to go away, but want to understand what is causing the warning message and how to fix it. Is this a problem that can crash the copter?

Please see attached log. Thank you.

Re calibration should help. Give it a shot…

Ok, thank you. I did try that and still got the message, but not every flight. I will get some flights in today and see how if it is the same.

You have turned off internal compass right?

I did and did another compass calibration, flew it to learn offsets and did about 10 flights with no issues. Thank you @UAVSkies.

I am seeing something strange with the declination stuff and I am not sure if there is something wrong or it is the way it is supposed to act. With automatic declination learn checked, then do a compass calibration, it is usually 1-3 degrees off from my location actual declination.

Also, if I uncheck the automatic learn declination box and manually type in the actual declination for where I am flying then go out of the compass menu and back in the compass menu it changes the declination to something totally different even though I manually put the numbers in. Is this normal?

Thank you.

Don’t change Declination manually. Use automatic learn declination.

If I remember correctly someone said this before that its hard coded into the firmware, and declination normally doesn’t change over time unless like 100 years pass by.

let me tag few people who may have a better idea on this issues @xfacta

Ok, great.

Thank you.

In the .bin file I can see Compass3 is an exact match for throttle (loosely translates to Current) and Compass2 is not much different. The external compass looks good. You could set these:
COMPASS_USE2,0
COMPASS_USE3,0
But I’d highly recommend doing the Compass/Motor calibration procedure in a SAFE manor:
https://ardupilot.org/copter/docs/common-compass-setup-advanced.html?highlight=compassmot#compassmot-compensation-for-interference-from-the-power-wires-escs-and-motors

You’ve got this set for very slow RC Input reactions (RC Feel), maybe because of a sprayer/heavy take off weight?
ATC_INPUT_TC,0.49
Normally I’d only recommend about 0.2 to 0.3 for larger frames, but that’s just my preference.
Maybe check and test ATC_ANG_LIM_TC to slow the reactions of the frame rather than slowing the RC inputs.
https://ardupilot.org/copter/docs/parameters.html#atc-ang-lim-tc-angle-limit-to-maintain-altitude-time-constant

Ok, thank you Shawn.

What exactly does atc_ang_lim_tc actually do? What is the default number for this parameter and what will changing of the numbers do say up vs down? I read about the parameter, but not quite understanding the effect of change.

Thank you!!

I am going to do a compass motor calibration, but a little nervous about it with big powerful motors and props…lol.

I went and bought a 12 ft. USB cable to do it.

check the instructions carefully - you’ll need to flip all your props and move them around one position.
With smaller craft you can sometimes convince a brave (crazy) soul to hold the craft above their head.

Ok, I will be careful.

Can you comment on my reply about the atc_ang_lim_tc and what it does or effects?

Thank you.

" ATC_ANG_LIM_TC may be increased to provide a very smooth feeling on the sticks at the expense of a slower reaction time."
In the https://ardupilot.org/copter/docs/tuning-process-instructions.html
You can bet that if Leonard Hall mentions it in the Tuning Guide that it will be both useful and important.

Default is 1 as per your existing parameters. Probably increase it steps of 0.2 or 0.5 and see what the effect is. I would set ATC_INPUT_TC back to about 0.2 or 0.3 first in order to get a more direct stick feel before changing ATC_ANG_LIM_TC.

Be aware, probably not a lot of people change ATC_ANG_LIM_TC so there may not be much experience around.These days it seems “every man and their dog” has a sprayer and large take-off weight and I think it might be an appropriate parameter to at least test. It might even have detrimental effects in wind (or with sloshing), but then you’re usually not spraying in wind.

Ok, will change ATC_INPUT_TC to .3 first and then work on the other one and see how it feels/reacts.

Thank you.

Hey Shawn.

Did some flights yesterday and brought the atc_input_tc to .3 and it feels much better, thank you.

Going to do compass/motor calibration tomorrow? I see in the wiki that I am looking for under 30% on interference. What will it do when I press finish? Will it right new parameters? Do I need to write parameters or is this just a measuremnet? The wiki does not say anything to do after pressing finish. Does it store new values of some sort?

Scared as these props are 30" and big powerful motors.

Thank you.

For compass/motor if it is a big bird you can do it in flight. We have done it and it is really handy.

@Corrado_Steri

I have done this, but would this replace doing the advanced compass motor calibration by putting the propellers upside down and measuring the interference? It says in the wiki somewhere under 30% is good.

Thank you.

I would say it does replace it. Actually you calibrate the mag in flying conditions so the best you can do.

1 Like

Ok, thank you.

Definitely is alot easier and safer.