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 –


  • Hi Randy / Leonard.

    Please can you have a look at my logs files for me and comment?  I finally got some time again to test 2.9.1 with stock PIDs and the following changed settings:

    THR_ACCEL_I = 1
    THR_ACCEL_P = 0.5

    The quad was very hard to keep in one place and it was also not flying level (all calibrations were done).

    Thanks in advance

    2013-03-14 18-37 4.log

    2013-03-14 18-20-19.tlog
  • Still having a tweak at my waypoint tracking.

    Did a little zig-zag route with almost 180deg turns at the ends. In one direction it was fine, turns in the spot and tracks right down the line. In the other direction it heads about 40deg off and gets about 10m off track and snakes really badly until it sorts it out (it that what you guys call a ‘toilet bowl’?). There was no wind at all.

    As far as I can tell my compass is spot on. I often do a log cal and check the difference. They are all below 40.


    Is this right? When it gets to a waypoint it uses the compass to point at the next one and moves in that direction, then corrects the cross track error.

    If thats what happens I guess it must be a compass thing. Whats the best thing to graph to see whats going on?


  • Hello everyone in this community
    Thank you for this fantastic job

    I have an arducopter with the follow setings:

    -apm2.5 with gps MediaTek MT3329 updated to 1.9 version

    -quad carbon frame x
    -4 tiger motor mt 3506-25 650kv
    -13x4,5  wooden props
    -Hobbywing Skywalker Quattro 4 x 20A ESC
    -3dr power module

    AUW 1450 with 3s 6000mah battery.

    After  stabilise mode i change it in Alt_hold  mode but my copter climbs . If  i decrease the throtle stick my copter stops climbing but the alt hold seems like  a manual  alt_hold

    please can you help me?

    this is my log
    thank you in advance

    14-3-2013 _1accelxyz.jpg


    2013-03-14 10-28 3.log

  • I have done a little bit of reading and thought that maybe someone in in this thread would be interested as well. 

    The way arducopter 2.9.1 does takeoff without RC remote is not very good. I have posted my train of thought to here. And also posted an enchantment request here

    Any feedback of my ideas are welcome. Now I will go back and try to figure out a way to implement this myself. 

  • Hello every one!!!

    Yesterday I have received my PX4 kit with GPS. I Also tuned my Apm2.5 quad – removed almost all vibration. So I’m ready to be a beta tester of new 2.9.2 on both platforms.

    Does anyone know when 2.9.2 as beta or RC? Is it will available on both platforms at same time? Or px4 version comes some time (what time?) later.

    Thanks a lot for you work. 

  • Arducopter drifts up when in loiter mode.

    I've been enjoying flying the arducopter (APM 2.5 with FW 2.9.1) on my tricopter; however, lately I noticed that the arducopter has been doing something  I have never seen before.

    When I put it in loiter mode in GPS lock, it now has a tendency to drift up and not lock in like it used to be. 

    Has anyone experienced this before with their arducopter?

  • One of final tests... Waypoints, Loiter, Guided mode, one of the most impressing Circle auto WP with ROI. Great job guys!

  • hi guys can anyone tell me what this part does, and is it supposed to get super hot (98C)


  • I saw a post (I think it was yesterday) showing the gps mounted on a pcb plate that should help gps accuracy, but I can't find the post today-does anyone know the link?

  • I had a crash which doesn't seem to be a hardware failure...

    I have a new 3DR quadcopter running 2.9.1 which I've flown a few times over the last month or so.  I was able to fly in Stabilize mode, Alt Hold, Hover, and manually put in in RTL once for testing and it worked with no problem.

    Since the last time I flew it, I enabled the Battery Monitor, Battery low failsafe, and Throttle Failsafe.  I set up my transmitter and receiver to drop the throttle below the normal range when the receiver loses the signal.

    Sunday, I took it for a flight...  I hovered it manually (within a few feet of the launch point) until it apparently got a momentary loss of signal, went into RTL, climbed, tilted to a crazy attitude and flew in a huge arc farther and farther from the launch point, slowly losing altitude until it crashed into a sticker bush (with no apparent damage!).

    The logs show the ERR FS 2, Auto Armed, Ascending, MODE RTL, then ERR FS 0.  That's about when things went south.

    The WP Distance increases continuously while the Nav Roll and Nav Pitch values go nuts.  The actual roll and pitch seem to match to Nav Roll and Nav Pitch, so I assume it wasn't a motor or ESC failure.

    Any ideas?  This is the first time I've looked at a log, if I've missed something obvious, that's why.


This reply was deleted.


Santiago Perez liked Santiago Perez's profile