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

Reply to This

Replies to This Discussion

I have had no issues at all with ArduCopter 2.8.1, flown many times without fail and upgraded this weekend to 2.9. I have a standard 3DR Quad-C (850kV, 10 inch props) with APM 2.5

During a second flight with ArduCopter 2.9 today, my Quad suddenly failed to react to any command, while being airborne. The quad was approx 20 meters away from me and from the transmitter (Spectrum DX8) I could see I was connected to the receiver with no frame losses. Signal was not a problem.

The quad was dangerously circling, not perfect circles, ascending and descending and complete unresponsive to the receiver. I tried switching the receiver off (had failsafe programmed) but no reaction, switched receiver back on, tried switching from Stabilize to Loiter, RTL, back to Stabilize... No response from the quad at all, and circling dangerously in the field, getting closer to trees and houses. 'Thankfully' it angle of the circles got steeper and eventually it hit the ground (hard!). Broke two pairs of legs, two bent arms, two engines bent, camera mount broken, two props broken... But I was relieved that at least it crashed in the field and did not fly away.
There were no other flyers around, it was an empty field.

I was unfortunately not connected via MAvLink, was just outside with my Spektrum and the Quad, so I have no log files :-(

Very scary and I don't trust it now with 2.9. Am considering downgrading to 2.8.1 as I have never have experienced complete lack of response. I could not regain control of the Quad at all. No failsafe response,which I had set to Rx failsafe. no RTL, no nothing.

I have of followed the exact instructions when upgrading , changed the PID settings as per instructions ( I think it is less smooth now). I turned off the Sonar and Optical Flow sensor I have as I noticed during the first flight that it would not hold altitude well with sonar on.

Prior to the crash it was in Loiter mode, doing fine, and when I wanted to regain control and switch back to Stabilize, the problems started, random circling at an increasingly steep angle (as such ascending, descending) (between 3 feet and 20 feet) and the center of the circle also shifted randomly.

I have no clue but do not feel comfortable. I was getting pretty comfortable flying it up til now, have recorded videos flying over water etc)

Any suggestions as to what could have caused this?

Thank you, leonardthall, for pointing this out to me as this what cured the rapid jerky motion that my copter was making in Loiter and Altitude Hold modes. 

I tuned the THR_ACCEL_P and THR_ACCEL_I terms by adjusting them to Randy's instructions above and the rapid bouncing immediately went away.  

Yay! I guess the perseverance paid off. I can sleep well tonight...

I like thank you all who replied to my posts and helped me finally get rid off the rapid bouncing while in Loiter and Altitude modes.

Ok, I got that figured out, when in stabilize to hover my Futaba throttle/collective is about 25%, as soon as I engage loiter, it drops, so I move my throttle to the mid-point and it works fine. Do I adjust my curve on my radio, or something else. Also do you suggest auto declination. How about expo in the Futaba radio, thanks for your help......Don

I am an ArduCopter rookie.  I got started with an AR Drone 2.0 and then added my own PCB version of the "mirumod" to give it standard Rx/Tx controls.  

Now I am on my first DIY "kit" build.

I have an RCT clone 2.5, RCT Hex 550 DJI clone, RCT HP2212-1000KV motors, RCT 10x4.5 CF props, RCT SK-30 ESCs and RCT UBEC - and a 2.5 APM side-entry case from 3DR.  I use 5000 mah 3S batteries.  The battery is mounted on the lower plate.  FrSky D8R-XP and Turnigy 9X.  

I mounted the APM with APM side entry case dead-center on my frame top plate using 3M double-stick foam tape (it is about 1.5 mm thick).  The foam tape was cut in the outline of the case (not just pads on the corners).

Balanced props with DuBro (they were close when I got them) and balanced the motors (they required more work) using both iPhone Vibration app and laser+mirror technique.  

Loaded 2.9 rc2 and tinkered a bit.  Loaded the release 2.9 for my first hover testing with RAW enabled for logs.

Long story short - my accel x,y, z graphs from RAW are better than the "good" example in this thread.

I plan to leave the APM mounted as is until I hear strong motivation to do differently (remember rookie talking here).

Jeff - i had the same issue because the mounting tape doesnt stick to the foam. As a solution I used epoxy and glued the foam in between two carbon fiber plates. This way I was able to use double sided mounting tape to mount this sandwich assembly to the carrier plate and then the apm on top of that. If you don't have carbon fiber plates like I used you can use thin ply wood.

Thanks Marco.


My level was still off, as can be seen below.

I then found the AHRS_TRIM_X in the advanced parameter list and changed this to -0.025 which brought the level straight.

I presume its OK to alter these parameters to level the UAV for minor offsets ?

Many thanks,


thanks Randy! I was used to keeping the throttle at the top of the dead band in previous versions and now I am getting used to Lowering it a bit. Altitude hold is hanging in very good. I also raised accell p and i to 1 and 2 and it seems to stay very solid in altitude hold. Watching it track stairs 6 inches at a time is truly amazing.


I have the F450 Frame with APM 2.5 and arducopter 2.9. I have problem with the ALTHold, because after 10-20sec the quad fall more and more and after 1-2min it´s so low that land. I have the default settings. It´s a problem from 2.9 or i had to make PID settings better ? Have anyone the same Frame or a similar, if so please send me the PID´s.


I'm sorry for your crash, can you download the flash log and upload here please?
During this anomaly the throttle stick work or not?

Which Spektrum RC were using using (Tx/Rx)? That will help us debug...

Marco,what program do i have tu use to read those parameters?or to upload them....?

O forgotten here is my Log File. Maybe it helps


Reply to Discussion


© 2020   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service