ArduCopter 2.9 / 2.9.1 released

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.


You need to be a member of diydrones to add comments!

Join diydrones

Email me when people reply –


  • I just installed v 2.9.1 Beta and got carried away with tuning.  Now I want to go back to default PID's.  Can someone do a screen capture or snip of the default config screen in Mission Planner for the new Beta version Quad X?  Really appreciate the help...

  • Copter disarmed in flight.


    My son had a copter crash yesterday (caused by a TX antenna pigtail problem). The copter alternated rapidly between RTL and STAB, which he didn’t know at the time but he just thought it was not flying properly. Before he got it back it disarmed at 80mts and fell like a rock.

    I guess the logs will help – will post later. In the mean time, what are the disarming conditions?


  • Hi,

    I am wanting to load a beta .hex file in my apm25 based quad, I am wondering if the HIL (hardware in loop) version is the the one I load in my quad, or is it for simulation?



  • I had a crash like yours too, finally It was a motor axis loose.

  • Hello my name is Anders 

    I have APM 2.5 with software 2.91

    I have fly with AUTO and it have work before but suddenly it just go away in very fast speed and go down in ground. Can someone look in the log file and see if they can see what happend. The problem start about 92%-93% in the file.

    Hope someone can find what is the trouble

    Best regards Anders

  • Open pilot will have AUTOTUNE VERY SOON(ITS BETA) why can we have the same???

  • Developer

    A little preview  for your evaluation...

    Bests, Marco

  • Vibes look fine. So I guess I just have to hope it doesn't happen again. CoG good as well?

  • HI all,

    Not to sure where to ask this or start new thread so I will start here.

    DJI frame, HK20a (SK flashed) esc, 980kv, AC 2.9.1. Has been a very successful build and perfect missions and FPV with this setup.

    I am not sure how to read the log to look for Vibration? 

    I switched from Loiter to Alt hold and she reared back and flipped.I can see at 82% of the log it was instant. I went home put another arm on and it flies smooth as silk which is I want to post and see if anyone can check the log and see if there is anything obvious. 

    Thanks if anyone has the time.

    2013-04-16 15-56-47.tlog

  • Hi,

    I have a question, I know has been asked because I remember reading it somewhere. There is a parameter that can be set to zero (I think its zero) that controls if the gps is used for attitude. when turned off it stops the horizon line from jittering while inside.

    could someone please let me know which param it is? I didnt make a note when I read it, and I am not exactly sure which one it is.



This reply was deleted.


Santiago Perez liked Santiago Perez's profile