Crash on RTH due to oscillations

Hi All, I’m a bit of an ardupilot newbie but went through a standard setup without being adventurous. My setup:

S800 reptile, F405 Wing, running ardupilot 3.9.0

I ran an autotune, and it flew well. The next flight it generally flew well, however it did experience some strange oscillations. I triggered a return to home (via flight mode) and it went fine until going into a series of oscillations, which ended with a full speed crash into the ground. I’m assuming some form of hardware failure - could anyone point me in the right direction to look please?

Here is the link to the bin file: http://www.filedropper.com/2018-09-0817-29-50 I have a fpv video (sadly) if anyone wants to see it…

Thanks

Stu

I have updated to 3.9.1, replacing all variables, except PIDs - which are now stock 3.9.1. Issue occurred again in FBWA mode and I managed to land without damage. Still no idea what is causing this.

Can you check the video I posted on this post and confirm if your oscillations were the same?
The issue in my case was solved going back to the previous PID defaults.

Thank you, that’s exactly the same issue, however it was a little more inconsistent. I will try resetting the PIDs to the defaults for 3.9.0.

I recently had a hull loss due to extreme pitch oscillations, which has been occurring for quite some time as soon as the “displayed” airspeed drops too low. I was able to get away with it by pushing full throttle/diving down to increase airspeed back to normal value. Until I turned off EKF2 and displayed airspeed wouldn’t increase how matter hard I dive and the plane plummeted from over 300 metres into the lake (I panicked and forgot about manual mode) . I have compile a list of videos showing the problem on this thread:

Inaccurate airspeed estimate itself isn’t a big issue, at least for my application. But if inaccurate airspeed estimate causes extreme pitch oscillations and controllability issue, then it would effect everyone. Quoting from @tridge and @Naterater on another thread:

“… if you don’t have an airspeed sensor. It won’t yet have learned the wind strength, so it would have underestimated the airspeed. That means it would have scaled the control surface movements too high.”
“Ardupilot scales the PID/output values based on airspeed, so your initial takeoff into the wind made the autopilot think it was flying slow (GPS only reference) and needed to increase the elevon outputs to achieve the right pitch. After it had a good wind estimate, it knew its speed better and scaled the PID/output values properly.”

@Rolf mentioned something about “Scaling_Speed”. Can someone please explain what it does ? Am I correct to say that regardless of what PIDs values you set, how low you set before the flight, as long as airspeed drops below Scaling_Speed during flight, ardupilot would increase PIDs parameters to some unlimited, indefinitely high values causing extreme oscillations? Something I noticed on my flights is that regardless of how low I set PITCH2SRV_RMAX_DN and UP, they always reset to 120deg/s after every flight, which is outside the range of 0-100.