I'd like to add few words about my own experience. I'm currently flying two wings with Revolution FC and Librepilot Next r735/r782 that proved fully capable of autonomous flight (PH, RTB, AC, PP). WingWing Z-84 (elevon type, like Mako) and MiniTalon (V-tail).
The key features (along with some hacks that
TheOtherCliff mentioned above) that allow for stable and reliable autonomous flight are:
1. Use of a real airspeed sensor (pitot tube & MPXV7002DP) instead of GroundSpeedBasedEstimation. I guess it is not intended to properly work on planes without rudder control (Z-84). Anyway, nothing replaces true airspeed sensor when flying in gusty winds and/or looking for efficiency. I've carefully calibrated the sensor (Scale & Zero Point). I'm also checking ZeroPoint before every flight, just for peace of mind.
2. Planes are trimmed to (slowly) gain altitude when throttle is above ThrustLimits.Neutral. I recall I did it on Z-84 by mechanically trimming elevons just a hair "up".
Also tweaked settings for BoardRotation (
TheOtherCliff has also discussed this some time ago) to fool the flight controller to keep the nose slightly up when FC board is level in Attitude mode.
AttitudeSettings / BoardRotation / Pitch = -2
AuxMagSettings / BoardRotation / Pitch = -2 (if using external mag sensor)
It may also be beneficial to raise a little
FixedWingPathFollowerSettings / PitchLimit Min, Neutral & Max values. I've added 7 degrees there in Z-84 setup but left the default values for MiniTalon as it seems to not need changes there.
For the last two years I've flown hundreds of kilometers with both planes in autonomous mode (PathPlan & AutoCruise) without single altitude control issue. I'm also using PH / RTB after each takeoff to test autopilot and failsafe behavior.
Edited video from a MiniTalon fully autonomous flight (40+km predefined flight plan), except takeoff and landing (attitude) here:
Btw, I've found the FWPF handles well motor/esc failures (when no thrust is available). I've had a situation the ESC on MT stopped and did not start again the motor during PH in a VERY windy occasion(HighPower alarm causing CutThrust in fixedwingflycontroller.cpp) (ESC issue/protective feature? with ESC brake enabled and throttle command going to zero and up again for too short pulse). The plane kept well airspeed while gradually descending instead of pitching up (if trying to maintain altitude by adding up elevator) and stalling.
PIDs windup can really be an issue on takeoff in Attitude, I've had few scary launches with Z-84 when being too slow (when waiting for more than 3-4sec before throwing plane after arming, switching from manual to attitude and applying throttle). Here is a related thread about a possible solution/workaround:
https://forum.librepilot.org/index.php?topic=4723.0