ISSUE?: IMU sensor failure while flying, won't trigger EKF core switch

Hello,

It seems that there is place for improvement how ArduPilot handles critical sensor failure while flying.
Recently there was a case where IMU used by primary EKF core died while the drone was flying. Used autopilot hardware was The Cube black with one IMU still operating at the time. That working IMU was used by second EKF core.

The current EKF failure logic does not switch cores unless EKF estimation score goes bad or unless velocity, position and height test ratios go over 1.

My suggestion is to monitor directly sensor health and in case of failure core switch would be initiated immediately. This could save the drone from crash in case of primary IMU failure.
From the logs it is possible to see that Gyro (IMU.GH) and Acc (IMU.AH) health go to bad ( 0 ) at the same instant when the IMU died. Using that information to trigger core switch may have saved the drone.

Case info and logs on the cubepilot discuss forum. Link

Please correct me if Iā€™m wrong about this.

1 Like

It seems that this issue is being worked on and will be fixed on future releases.
Thanks to jschall for working on this.