My plane was on an auto flight using a Pixhawk running 3.8. It was flying at 25m then next waypoint up to 58 m to clear some pylons. The next waypoint was back to 25m but it never recovered from the dive and hit a small tree about 3m from the ground (no damage).
Thanks for posting the mission plan. It appears that your change in altitude was too abrupt for the distance between waypoints 19-22 and 33-36. You need to keep the Gradient % within the capabilities of the aircraft…especially when flying low like 20 meters altitude. Try using Waypoints that produce a Gradient % of <10% or even <5%.
I’m not sure that is the problem as this plane has dived many times up to 20 degrees with no issue levelling out. Looking at the kmz file it looks like there was no attempt to level out at all.
Perhaps there was an inaccuracy in the actual ground height. I typically fly at a higher altitude like 100m, which may negate any error. At Waypoint 21, you can see the “Crash detected” entry if you blow up the altitude chart like below. Perhaps the terrain has an effect on your detected altitude.
It looks like you live close to the English Channel. These are places I have only read about but never visited.
I haven’t tried it but there is also an Automatic Terrain Following feature available for fixed wing aircraft.