Error message: "EKF3 Yaw inconsistent by 62 deg"

What does “EKF3 Yaw inconsistent” exactly mean ?
I’ve 2 compasses on this copter which i’m using for 5 years now and i never had such a prearm message that prevents me from arming. The reading of these compasses is stable and accurate.

What causes this message and how to resolv it ?

Just because the old firmware did not test for consistency problems, it does not mean that the problem was not there, five years ago.

It means that the “Extended Kalman Filter” did not find a consistent solution for yaw, the readings form some sensors do not match the readings from others hence the consistency problem.

To resolve it re-calibrate the accelerometers and the compasses. And make sure you do it outside with good GPS signal and no magnetic interference.

Accels have nothing to do with yaw.
For a short time gyros can be used to estimate yaw but not accels. Gyros are calibrated on each boot up.

Why is GPS needed to re-calibrate accels or compasses ???

Because then you get a proper magnetic declination for the geografic point you are flying and are able to move the copter around the world without having to redo the calibration.

I also used to get those errors. And the answer above is how I fixed it.

1 Like


This means that two EKF cores (or EKF vs DCM) have calculated very different yaw estimates. If only one IMU is enabled then the EKF will be compared vs DCM. If two (or more) IMUs are enabled then the EKF cores will be compared to each other (DCM will not be checked).

If you’ve got a log we could have a look more closely at what the issue is.

Meanwhile i recognized, that one compass has bad readings when the motors draw current. Here is a log of a short (indoor, only AltHold) flight which ended in a crash.
Despite the bad compass remains the question, why did the software choose the wrong EKF lane (the one with the bad compass) ???

70 16.01.2022 19-05-22.bin (1004 KB)

I’ve experienced this many times on my copter with dual GPS/Dual compass. It seemed to come and go.

Hey Guys, I am using cube orange with latest 4.1.3 firmware
Dual here 3 GPS unit.( have assigned two different node value as per instructions and successfully gave here3 gps compass as priority and calibration was successful)

I am getting EKF PRIMARY CHANGED 1 and 1 to 0 consistently, is this event a serious issue?( sorry I will upload log later today)

Does it uses imu and accels data from here3 unit as well? If yes how will I confirm it from any parameters?
Gps auto switch is in 1 which means uses best GPS no blend enabled, will this event goes off If I select blend option.

Later I was using copter firmware version 4.0.7, in which when I download log I will be able to see single VIBE, but in 4.1.3 there are sub selections 0,1,2 in VIBE Itself in which 0 ans 1 data of x,y and z seems similar but 2 data is completely different. I am very much confused.

I kindly request you guys to share if you have any doc regarding these questions. Sorry of this is very repetitive query.