The ArduPilot development team is proud to announce the release of version 3.5.2 of APM:Plane. This is a minor release with small changes.

The main reason for this release over the recent 3.5.1 release is a fix for a bug where the px4io co-processor on a Pixhawk can run out of memory while booting. This causes the board to be unresponsive on boot. It only happens if you have a more complex servo setup and is caused by too much memory used by the IO failsafe mixer.

The second motivation for this release is to fix an issue where during a geofence altitude failsafe that happens at low speed an aircraft may dive much further than it should to gain speed. This only happened if the thrust line of the aircraft combined with low pitch integrator gain led to the aircraft not compensating sufficiently with elevator at full throttle in a TECS underspeed state. To fix this two changes have been made:

  • a minimum level of integrator in the pitch controller has been added. This level has a sufficiently small time constant to avoid the problem with the TECS controller in an underspeed state.
  • the underspeed state in TECS has been modified so that underspeed can end before the full target altitude has been reached, as long as the airspeed has risen sufficiently past the minimum airspeed for a sufficient period of time (by 15% above minimum airspeed for 3 seconds).

Many thanks to Marc Merlin for reporting this bug!

The default P gains for both roll and pitch have also been raised from 0.4 to 0.6. This is to help for users that fly with the default parameters. A value of 0.6 is safe for all aircraft that I have analysed logs for.

The default gains and filter frequencies of the QuadPlane code have also been adjusted to better reflect the types of aircraft users have been building.

Other changes include:

  • improved QuadPlane logging for better analysis and tuning (adding RATE and QTUN messages)
  • fixed a bug introduced in 3.5.1 in rangefinder landing
  • added TECS logging of speed_weight and flags
  • improvements to the lsm303d driver for Linux
  • improvements to the waf build system

Happy flying!

Views: 16255

Comment by Andrew Tridgell on April 4, 2016 at 10:58pm

@James, Is the video you linked to the right one? I don't see the nose-down.

I've started looking at the log file and I can see the problem happening in the first switch to AUTO. The other AUTO segments in the log are on the ground.

I haven't previously considered the case where a VTOL land is done as the first mission item. I suspect the new velocity controller is not being initialised correctly.

I will look into it and get back to you soon

Cheers, Tridge

Comment by James on April 4, 2016 at 11:32pm


Yes, that video is right, although it is hard to see due to the angle. At 0:21 the mode is changed from QStabilize to Auto and the plane starts accelerating of its own accord.

That log contains just one attempt at the auto mission. If it is useful, this (much larger) log contains two attempts at the mission towards the end. The start of this log shows succesfull use of QLoiter and QLand.

I realise this mission is somewhat contrived, we just wanted to verify that vtol_takeoff and vtol_land were working as expected before we tried full missions.

Thanks for looking into this!


Comment by Anthony Verloop on April 5, 2016 at 1:45am


I have a very strange phenomena. During startup, I have "Bad AHRS", which prevent me from arming. Since we are just doing static testing, I disable arming check and arming required.

Now, I still have bad AHRS, followed by "Error velocity variance", Error pos horiz variance", "Error compass variance" and the artificial horizon goes wild..

This continues for a minute or so, after which all become stable and all seems normal.

Very scary....

The logs are here:

Hope you can shed some light on this.

Comment by Mike Mac on April 5, 2016 at 10:39am

Today I decided to test out the new nav. logic "always exit loiter in AUTO towards next waypoint". I loaded an old mission that I had flown a couple of years back that have both CW and CCW LOITER_TURNS.

When it encountered a CCW loiter it turned CW. All loiters were CW. Is this a bug or is there a new way to input this information. I set the loiter radius to 1 for CW and –1 for CCW. I looked in the new documentation but could not find any information. Is this feature no longer supported?



Comment by Andrew Tridgell on April 5, 2016 at 2:03pm

@James, that older log is very useful, as it was with the 3.5.2 release version. That tells me the issue is not with the new velocity control landing code.

I still haven't found the bug, but at least this has narrowed it down a lot.

Comment by Andrew Tridgell on April 5, 2016 at 2:34pm

@James, I've found the problem. Your plane had the AUTO_FBW_STEER option set. That option completely disables autonomous navigation in AUTO mode. It is meant for users who want to fly manually but still use waypoint based control of relays and servos (eg. for dropping items at specific locations).

Do you know why you had that set?

Comment by James on April 5, 2016 at 3:14pm


That is very baffling. I can't think of any reason that option would have been set consciously. I guess we have to put that one down to user error. Sorry to send you on a wild goose chase looking for a bug that wasn't there.

We will try again with that parameter changed this afternoon and let you know how it goes.

Thanks for your help,


Comment by Andrew Tridgell on April 5, 2016 at 3:31pm

no worries, good luck with the test flights!

I've changed the AUTO_FBW_STEER option so it is now only is enabled if set to a value of 42. That should make it less likely someone will enable it accidentally.

Comment by Anthony Verloop on April 5, 2016 at 7:32pm


I got another very strange message on booting up this morning: "GPS 0 not fully configured". I re-booted and the message was gone, all worked well. You need the logfile?

By the way, what are the meaning of all those messages? I've been trying to find descriptions, explanations and possible suggestions for fixing, but cannot find anything.

Comment by Anthony Verloop on April 5, 2016 at 7:38pm


You need to be a member of DIY Drones to add comments!

Join DIY Drones

© 2018   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service