Unexpected flyaway on our VTOL tailsitter drone

Good morning,

We are developing a VTOL-Tailsitter drone, which we have sucessfully flown a number of times, but my colleague saw some unexpected behaviour during a test flight yesterday, and I wondered if anyone could shed any light onto the chain of events that would have caused it.

The drone was lauched in QLOITER, and he used to RC sticks to perform a little up/down and side-side. Then it appeared that the drone flew away before coming down with a bump.
It appeared as if the flyaway was commanded.

We have done some initial analysis of the log, and I’ve been trying to look at how this connects with various bits of the code.
Initial observations:

  • Just before the flyaway, we see an EKF3 lane switch 1, although the error scores appear to show lane 0 in a better state at this point.
  • The Roll and Yaw esitimators on XKF1 messages appears to differ between lanes.

Is anyone able to help understand the chain of events that lead to this? In particular - even if there was an estimator error, what could cause the drone command a high speed flyaway?

The log file is available here:

Note that this was loaded with Ardupilot 4.5.2 plus a modification around the VTOL landing which makes some hard-coded parameters tunable, and avoids triggering the overshoot message so readily:

Regards,
Simon.

is this a quad tailsitter? with 4 motors?

yes it is - 4 motor quadplane tailsitter. (runs ArduPlane with Q_ENABLE=2, Q_TAILSIT_ENABLE=2).

I am flying this type of aircraft myself and have done multiple flights already, but your Aircraft seems to be pitching in the wrong direction. Your motor effort maxes out at the end, maybe there is an internal failure of some sort. but can you please let me know what the RCOU is mapped to. what each motor is mapped to on your vtol. Follow this for your aircraft Make sure the motor 4 and 2 are for the top of the aircraft while flying horizontally