ACRO bug (fixed in 2.9.1b): while doing flips in ACRO mode, if you switch to Stabilize while inverted your throttle will go to minimum.  To regain throttle control you need to switch back to ACRO then back to Stabilize again (i.e. switch to stabilize twice).  You never lose control of roll/pitch/yaw.

Loiter/AltHold/Auto/RTL bug: if you switch into these modes with throttle at zero motors will go to minimum until you raise the throttle.

Auto mode altitude bug (fixed in 2.9.1b): setting a waypoint altitude greater than 320m over home altitude may wrap around and instead be interpreted as a low altitude.

ArduCopter 2.9 is now in the mission planner and the downloads area!

The major improvement is we use inertial navigation to improve altitude hold.  This increased reliance on the accelerometers means you must do some additional set-up before flying:

1. Perform the new accelerometer calibration in the mission planner (video).  The auto-trim metho has also changed (video).

2. Add vibration dampening foam between your frame and the APM.  Some suggested materials: DuBrogelhk foam.

 3. If upgrading from 2.8.1, modify the throttle and altitude PID values:

  • Increase your Throttle Rate P, reduce I to zero, increase D
  • Increase Altitude Hold P, reduce I to zero
  • Tune Throttle Accel P and I terms but try to keep P about 1/2 the size of I


Here is the list of major changes (a more detailed list can be found in the release notes):  

  • Alt hold using inertial navigation (Leonard, Randy, Jonathan)
    • AUTO_VELZ_MIN, AUTO_VELZ_MAX parameters control the max climb/descent rate for the autopilot (cm/s)
    • PILOT_VELZ_MAX controls max climb/descent rate for the pilot (in cm/s)
  • Landing improvements (Leonard/Randy).  Copter will descend to 10m or until an object is sensed with the sonar.  Then slows to 50cm/s descent (speed can be adjusted with LAND_SPEED parameter). (video).
  • Surface tracking with sonar (Randy/Leonard).  Copter will attempt to maintain current distance from objects in front of sonar regardless of altitude.  Only used in alt-hold and loiter, not used for missions.  Sonar can be enabled/disabled with CH7 switch. (video)
  • Failsafe improvements (Randy/Craig/John Arne Birkeland) including bug fixes, additional check for PPM encoder failure and implementation of battery failsafe.  Set-up instructions are here.
  • Mediatek gps driver accuracy improvements and use of SBAS [Craig].  Instructions on upgrading your mediatek to firmware 1.9 are here.
  • Traditional Heli improvements (Rob) including (a) bringing heli code back into the fold, (b) enabled rate controller (previously only used angle controllers). (c) fix to rotor speed controllers - now operates by switching off channel 8.  (d) allow wider collective pitch range in acro and alt hold modes vs stabilize mode  (e) bug fix to allow collective pitch to use the entire range of servos
  • Acro trainer (Leonard). Copter will return to be generally upright if you release the sticks in acro mode.
    • ACRO_TRAINER : set to 1 to enable the auto-bring-upright feature
    • ACRO_BAL_ROLL, ACRO_BAL_PITCH : controls rate at which roll returns to level
  • Camera control improvements (Randy/Sandro Benigno):  (a) AP_Relay enabled for APM2  (b) Trigger camera with CH7 or DO_DIGICAM_CONTROL command  (c) Allow pilot override of yaw during missions and fixed CONDITIONAL_YAW command.
  • PPM sum support for transmitters with as few as 5 channels (Randy/Tridge/John Arne Birkeland).
  • Performance and memory useage improvements (Tridge).


As per usual PIDs are optimised for the 3DR/jDrones quad with 850 motors and 10" props. If you're using more powerful motors/props and are seeing bad flight behaviour in stabilize, start by turning down Rate Roll P in 25% steps.

Special thanks to our testing team lead Marco and the dedicated bunch on the 2.8.1 release thread who put their copters at risk while testing the pre-release version.  Some of their videos are here: 1 2 3 4 5 6 7 8

Please feel free to report issues you find in the discussion below and/or add them to the issues list.


Views: 298434

Reply to This

Replies to This Discussion

This is the effect of Loiter P too high or Loiter I too low (3 meters of radius), if your quad although it seems to be stable but corrects too much you must adjust that parameters, the default of 2.9 is too high for some configurations.
In windy conditions the problem is reduced, because the wind tends to "push the quad" in the same direction, for this reason the effect circle is much less known.
The implementation of the "X/Y Inertial Navigation" greatly reduce this effect, not enabled in this video.
A bad gps signal can also affect the Loiter, like here i think.

Sorry for the poor video quality of my poor smartphone (LOL).

Cheers, Marco

Here the parameters of my latest tuning, used in this video and the other one when flight "hard" in Stabilize.


Thanks Randy, Nick.

This is spot on.

Try reducing Thr_Accel_P to 0.5 and Thr_Accel_I to 1. If it is still jumpy take it further in small increments.

Don't touch the Rate terms until you can fly confidently with Alt_Hold. Then as Randy says, you can adjust the Rate terms for feel.

2.9.1 was great. i can make 3 seconds remote "handsfree" for my indoor test :)

xaircraft quad, 30a esc simonk, 1045 prop, xaircraft motor. 3s lipo 2200mah x 2

very simple. just update 2.9.1, with stock parameters

and did savetrim at ch7. and quad stable.

one problem i notice, i try to takeoff with alt hold, but unsuccessful, quad takes time to takeof and overshoot.

Randy here is the raw data logs from a short flight. The INS_MPU6K_FILTER is set to the default of 0.  It looks a little noisy.  So do I set this to 20? The highest Z axis seems around -8.5 - 9.5 with the odd spike due to the severe wind and weather conditions I flew in today. Yes I hex'd myself by saying the weather would be good this afternoon :-)


     Yes, you might want to try setting it to 20 and reboot your APM and see if it makes it better.  In general I think it'll's a little noisy especially in the X/Y direction but you might be ok.

     If you want to "shoot for the stars" in terms of minimal vibration you can have a look at KevinB's graphs from his testing of various mounting methods (check-out the bottom right graph).  It doesn't need to be this good to fly well but just for reference.



Could you please explain the parameter "COMPASS_USE"


I have a peculiar problem. When I fly with "COMPASS_USE" set to 1, the copter automatically Yaws 20-25 degree. Also, in the Stabalize mode, the copter automatically starts moving to right and forward with the sticks centered.

I have done the calibration and autotrim as well. I have even tried the "Save Trim" but it did not work. 2.8.1 NEVER had any such issue. No mods made to the frame.


Then I turn the "COMPASS_USE" to 0, everything works fine.


I will upload log files if required. In the meanwhile, could you explain the impact of setting it to 0?

Randy, Regards the sonar. I'm a bit confused with your description of the sonar, as of v2.9

<The sonar tells you the distance to the nearest object below the copter (if it's within 7m or so)>

Q) Are you saying the the sonar is now only a read-out (takes no part in altitude control)?

Or only effective at home altitude!

For example, If we are away from home  on a hill which is say 15m higher than home.

The quad mission was to fly at height of 10m.

Then using only baro, the quad would hit the ground before that point while maintaining (15m above home) That makes sense.

Now the sonar would be reading 0m, is that ignored?

Or an easier way yo put it, what is the changes to sonar between pre and post v2.9?

its power wires near compass

when you increase throttle increase static magnetic field from battery to ESC wire

move wire out of compass or apm board out of power wires

Thanks for your time Alexey.


The power cables are away from APM. Infact I have kept all cables as far possible. This problem was not there in 2.8.1 with exactly the same setup. What else am I missing ?

I think that the 20 Hz filter should be our default setting so I always support the change to 20 Hz. Your vibration should be fine, especially with the 20 Hz filter setting.

Reply to Discussion


© 2019   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service