"EKF Primary changed" cause copter crashed

Hi Amilcar Lucas. Thanks for your response.
The vibration levels was low before the “EKF3 lane switch 1”. The figure below shows this problem.

But I can’t see the vibration levels of the 2nd IMU(VIBE[1] has no value). How can I activate it?

Can you please help me with this?

Hello Shawn. Thanks for your attention.
I think INS checks (i.e. Accelerometer and Gyro checks) were enabled and this doesn’t cause any problem.
INS_ACCEL_FILTER = 20 is the default value. Is the recommended value for this parameter equal to 10?

Yes, recommended value for INS_ACCEL_FILTER has changed to 10.
The default value needs to be updated. 10 is safe to use and there shouldn’t be any adverse effects, in fact probably a slight benefit.

1 Like

I tried this and got different results from each test.
Sometimes the 2nd IMU has zero value like this:
https://drive.google.com/file/d/1TMryu4DMpQNHFTGfnvtsuWpefcgjzh-N/view?usp=sharing
https://drive.google.com/file/d/1bPyEOtPemo7d4ozv2FRkxzA4bWjIc1cR/view?usp=sharing

Sometimes there is a large offset between the two IMU:
https://drive.google.com/file/d/1TFusc-nEWWmLwXF65vQ-K6DosY4mNK-b/view?usp=sharing

Sometimes they work correctly.
I noticed that when I turn on Pixhawk for the first time and the sensors have a low temperature, the second IMU shows a wrong value, but after a few reboots, this problem is partially solved and only the offset is still there!

Thanks for clarifying.

I don’t understand why position variance caused the lane switch. Both lanes use the same GPS.
Why isn’t the data of the parallel lane checked when changing lanes to avoid these issues?
Why IMU.GH and AH didn’t change to zero?

Time to replace the “cheap Pixhawk” (as you called it) with a branded Flight Controller.

2 Likes

This is the way to go!
Even disabling the second IMU would still leave doubts in my mind - which part will fail next?

1 Like

Thank you for your time and explanation.
But I still have questions.
I read this page EKF3 Affinity and Lane Switching — Dev documentation but I don’t understand why position variance caused the lane switch. Both lanes use the same GPS.
Why isn’t the data of the parallel lane checked when changing lanes to avoid these issues?
Why IMU.GH and AH didn’t change to zero?

I advise you to send that “creative” flight controller hardware to tridge so that he can change the FW to be more resilient.
And forget about it, just buy a new FC.

I will buy a new FC but how to avoid these problems?
The user should have been warned by the GCS if the backup EKF lane is unhealthy.

Objectively, which handphone or consumer electronics (I think premium coffee maker machine, expensive printer, yes) manufacturer heads up the user time to forget “him” and move on, except Apple “purposely” make you feel it.

So, in my view, if the feature is not available and if anyone like to generate money out from it, then one can potentially explore expand through the onboard companion board to do a hardware diagnostics and light up a LED.

The hardware is defective, it was not premium hardware.
What non-premium handphone or consumer electronics is reparable nowadays?

Can you replace a defective chip yourself? Probably not.

It is not about the repair.
The problem is actually to diagnose the fault and prevent unwanted consequences.
The user should have been warned by the GCS if the backup EKF lane is unhealthy. Or before switching to other lanes we should look for an alternative healthy EKF lane with lower error to switch to. Is this not possible?

Does anyone have an opinion on this?

@amilcarlucas @dkemxr @xfacta
Apparently, this problem has happened to other people with premium autopilot (like cube orange and black).

To prevent the problem from happening in the future, send the defective hardware to tridge and explain the problem to him in a way the he can reproduce it. Most problems do not get solved because the Devs have no way to reproduce them.

1 Like

Tnx. But my point is that the problem should be detected through the software and warn the user. Is this not possible?

This is possible and it is a current feature of the firmware already. But you found a bug. Bugs can only get fixed if they are reproduceble.