180 degree horizon flip on landing


Recently we were conducting some flight testes to measure GCS antenna characteristics. We conducted several flights during which plane was flying in half of the circle around the antenna. After automatic part, pilot was taking over control in manual mode and was landing the plane on a grass airfield.

Our aircraft is 7-kg foam fixed wing plane. Autopilot is CubeOrange+, mounted between the nose and the COG of the aircraft in standard position. Cube is brand new, from the recent, metallized series.

Situation described here has happened two times so far. During landing, on the touchdown, artificial horizon on the GCS started indicating 180 degree roll, despite being already on the ground and safely landed. No damage has been made to the aircraft and after autopilot reboot we conducted another flight.

I tried to analyze the logs and came to following conclusions:

  1. All IMUs showed the same measurements except the moment of touchdown - IMU0 and IMU1 show similar rates on Z and Y (also weird) axis but with opposite signs. IMU2 shows much smaller rates.
  2. AHR2 beside brief moment shows correct roll. ATT flips, go back to correct position and then flips again - after plane stopped moving. XKF[2] shows correct attitude all the time. XKF[1] presents very erratic behavior - indicates that aircraft made full flip and clips the angle reading (!), also there’s some unusual ripple while the plane was laying on the ground - no one was touching it and it was not moving. XKF0 shows just flip - measurement is steady but also incorrect.

We’ve had some much more dramatic landings, some with multiple bounces or collisions with molehills and autopilot never had problems with determining it’s attitude.

I am wondering whether it’s some unusual hardware problem which is causing intermittent issues or it is some kind of software failure inside ardupilot’s stack.

I appreciate any help! Please find logs attached.