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: 289858

Reply to This

Replies to This Discussion

I did the calibration again without pressing Done button I pressed any key  , I still receiving same -11 , what is the acceptable value ? because when I do it manually and put the value to 0 I got -1.6 , is this acceptable or I need to play around to get it to almost 0?

Thanks Randy, I will check the AHRS_Trim Y and X settings and report back. At work right now, so later this afternoon when I get home. 


     If done correctly, your HUD should be flat immediately after you do the calibration.  Can you do a video maybe and post it?  Feel free to PM the link to me privately if you'd like.

I managed to get in some more flights on 2.9.1 to dial in my quad (jdrones frame, 880Kv motors, 30A ESCs and 12 x45 props)  today with mixed results.  The weather was not too bad with slight winds and gusting a little later during my second flight and then calmer conditions on the third (last flight).  I have recently posted my calibration results, initial PIDs and graphs showing the RAW accel values which indicate z is ok with some slight noise (tolerable on x/y) 

My first flight was good in Stablize mode and then in loiter I did not have to touch the radio until the very end with some drift off the original position as the wind picked up.  This was very encouraging.  Even though I had no ALT hold on, I was not touching the throttle.  I analyzed the logs after to see the number of satellites and check GPS data for the very end when the quad drifted.  I had no less than 9 SATs, good lock and towards the end 11 SAts.  I am using the MTK GPS with v 1.9 code.

The second flight was very disappointing.  I had good control in stab mode but was unable to hold any position using Loiter mode.  In several instances the quad moved off position consistent with the wind direction and in two specific instances moved very quick off position after engaging Loiter. I had to reengage stab mode to gain control.  I again checked GPS data and maintained solid lock and around 11 SATs So I do not suspect any GPS issue.  It would seem Loiter mode is ok in very calm conditions but unable to maintain hold in slight winds / slight gusty conditions.  

I changed my PIDs as follows from my last flights, for today's testing, but have yet to change the Loiter parameters from the defaults in 2.9.1. So maybe someone with a similar config and good loiter hold in slight to moderate winds could suggest some PID changes / advice?

On Randy's and other advice I increased the Rate P Roll and Pitch from 0.090 t0 0.12 fro today's filights. I also bumped up the " I" from 0.06 to 0.08  (Note I try to maintain original P to I ratio).  I did originally reduce the Stab P roll and Pitch down from 4.5 to 3.0 and for these flights today it was on P 3.5 and IMAX from 8 to 5.  Note I made these adjustments due to running 880Kv motors with 12x45. Some people have advised me to put these back on 4.5 I thought I would do this in increments. Again open to advice here.

As I say my Loiter values are default i.e Rate Loiter P 5.0, I 0.04, D 0.4 and IMAX 30.0 and Loiter Speed P0.2 I 0 etc

I am puzzled why the default Loiter values which are optimized for the 3DR Quad with 850Kv motors and 10" props would fail to keep my quad with larger motors and props from drifting off position.  If anything I assumed eventually I would have to reduce the values to avoid over shoots?

My final flight confirmed the slight wind effects on Loiter.  With calm conditions my quad held on position, but started drifting and did not recover when some slight breeze popped up mid flight.  Another interesting effect I noticed. When holding well in Loiter my quad appeared to be rocking slightly along the roll and pitch axes.  What would be the best value to change to reduce this rocking  motion along pitch and roll axes while quad is not climbing or descending ie. on station in loiter maintaining altitude with no throttle input?

Now to end on a good note. I tried ALT HOLD for the first time in 2.9.1.  WOW!  Fantastic  I switched from stab mode and loiter mode into ALT HOLD with no appreciable drop in height i.e really nice throttle calibration and end points.  ALT Hold was solid; move up or down and its like the quad is stuck in the air.  Very well done guys.  It did not get a lot of time on ALT HOLD as the loiter drift problem keep me busy.

Sorry no logs but hoping the description and PIDs I am using might be enough for some general tuning on Loiter for larger motor quads. 

Yeh, Loiter isn't that flash at the moment. We have rewritten the loiter controller to use inertial navigation and also improved the control loop design. If you bare with us until 2.9.2 hopefully you will feel the same way about loiter as you do about ALT_HOLD.

Thanks for the feedback and support :)

Thank you for then feedback. It is good confirm findings like this. I have paid a lot of attention to detail in my builds to make sure I have minimal interference and vibration. Happy to test things out more as required.

No sure what issues I am having with Alt Hold. The quad - Flamewheel 450 SK3 1040KV running 10x4.5 props.

It seems over powered not matter what I do with the PIDs. I wind them right down to try and stop the high thrust bouncing but then the quad slowly sinks to the ground. Putting 8x4.5 makes it a lot better but I should be able to tune it to the bigger props.

APM 2.5

Any ideas?

If the quad is slowly dropping you probably don't have your throttle centered. If you give us some logs we can confirm that for you. Just make sure RAW and INAV are turned on.

Just remember that the Alt_Hold now has a much smaller dead band so it is easy to be just out of it, causing a slow decent.

To summarize how to tune Alt Hold. Reduce Thr_Accel_P and Thr_Accel_I keeping a 1:2 ratio until Alt_Hold doesn't bounce. I have found values of 0.5 for P and 1 for I work well on more powerful copters. If you can't stop it bouncing you probably have vibration problems.

Good luck!

I think I am below the deadband at hover and that makes sense.

How do I adjust the sticks to be center at Hover?

Thanks :)

** cancel that - just saw Randys post updating the wiki. Will give THR_MID parameter a try.

Well done on 2.9 guys.

By the way, this question about slow-descent has been raised so many times that I've added it to the trouble shooting guide along with the other common questions re 2.9.1.

Look for "My copter slowly rises or descends when I enable Alt-Hold or Loiter"


I am seeing the dreaded tilt after upgrading 3 of 3 of my tricopters. I can't seem to get rid of it, any secret sauce here. I tried the accel calibration per video and all suggestions in the thread, but I am still showing a left tilt on take off, I can trim it out and fly but it is annoying as all heck! My 3 quads and 1 Octo and 1 Hexa are fine, so I am wondering is this possibly something in the tricopter firmware for 2.9.1 ?

In the troubleshooting guide it refers to THR_MID is this the same as Trim_Throttle (I cant see THR_MID)


DIY Drones Monthly


Season Two of the Trust Time Trial (T3) Contest 
A list of all T3 contests is here. The current round, the Vertical Horizontal one, is here

© 2016   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service