EKF2 IMU2 switching to internal compass in Copter 3.4.4

I’m trying to understand the new goodness of EKF2. In my logs NKF2->MI is always zero but NKF7->MI shows periodic switching to the internal compass late in the flight. The first EKF instance is always used, so it doesn’t really make things worse, but certainly the second instance errors get large when the second compass is used, My external compass is rock solid so I really don’t want the EKF to use the internal except in the case of failure.

Is this normal? Should I switch off the internal compass? Should I switch off IMU2 (I always used to with Copter 3.3)?



can you upload the log? so we can analysis it.

A couple of logs here:

Couldn’t see how to attach them with this new forum system!

in my opinion, if you do not want use the internal compass, you could disable it.

after seeing your log, I have no idea why the second ekf change the using of compass. looking forward to developer’s reply.

I don’t want to disable it because I have had problems with external compasses in the past. The internal should be a reasonable backup - if I disable it it cannot be.

@wyq200704 in some commercial environments it is a requirement that redundancy exists in every system.
This is also the reason that multiple IMU/Mag’s are being included in the base flight controllers, as well as their ability to accept more.
If we are gong back to a single sensor then we no longer need the expense, complexity and weight of all the others,

in my ardupilot, the internal compass was interfered by motor, with 180% interference of motor compensation. So i cannot use the internal compass sadly.Maybe ardupilot will support two external compass in future.@mboland

Unless I’m forgetting something I believe we already support more than one external compass. We just support 3 in total though - but your external ones should take priority over the internal ones.

So I’m really looking for a response from Paul Risborough, but no joy. I’ll repost to development team.