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

Reply to This

Replies to This Discussion

The GPS problems I've seen have always been related to close proximity with transmitters; 1.3GHz VTx's and 3dr-900 in particular, as they are kinda close to the 1.5G that GPS uses. However I'm not convinced motors/escs/high current wiring have much if any affect on GPS.

Here's my reasoning...

My buddy had an FPV quad with 2 GPS's: a skylark OSD gps (MTK I think?) taped on top of the arms near the motors (1/4" from esc wires), and a Naza GPS up high on it's pole mount. The Naza, despite being on a pole well away from motors, was within 4 inches of his 1.3G VTx. The Naza GPS would not get a lock unless he turned off the VTx. The Skylark always worked flawlessly, despite almost touching esc wires and being 1" from a motor.

@Mike: reduce the "LAND_SPEED" parameter and play with RATE_P/I.

My Spanish buddy confirms that the 1.3Ghz FPV TX will wipe out GPS totally when using the 1.32 channel. The ones either side, 1.28 and 1.36 are fine.

He is using a system like THIS

I think the difference between 8-9 and 11-12 satellites may have something to do with standard vs SBAS. I get 11 sats on avg with my uBlox (w/SBAS), although it has gone up to 14sats flying outside. It does take some time to get that many sats though; 15-20min from a cold start for my uBlox. I fly my first pack or 2 in just stab/alt, until the GPS is fully warmed up... that makes the time go by a lot faster. ;)

Ah good catch Marco... how do I know if he's plummeting 8m/s or inching 1m/s? Mike, I think most quads should be able to handle the 1.25 m/s default auto descent, but sometimes a quad won't obey that speed limit if it has alt hold problems.

Thanks for all that ben i will attempt a repair and see what the result is..

I reduced LAND_SPEED from 50 to 30 (I think it’s cm/sec) and that helps a little. Didn’t I read somewhere that you should not reduce it below 30? I don’t remember the reason. 20 would be fast enough for me.


Next time I go out I will setup for RATE_P to be adjustable and see what that does. Actually the wobble is not that bad but since I was doing the RTH tuning I thought it wound be nice if I could eliminate it.


How does RATE_I effect it? Should I go up or down?



I'll add a warning to the wiki about not powering a UBEC and connecting the USB at the same time. Especially if you have a UBEC that is not at around 5.0V.

Thanks Bill Hopefully that will save some else the same fate.

I am happy to report that once i removed the faulty mux chip i was able to connect on UART 0 on all three previously "fried" boards. 

2 of the mux chips came of nicely and will be replaced once the RS courier arrives.

the 3rd will be negated to a thrasharound quad, for flying like a maniac.

thank you to all for the shared knowledge,

also as a side note when connecting to UART Buad rate has tp be 57600 i did not see that anywhere so maybe add that to the wiki also.....

Thanks Again..

If you reduce the landing speed way too much like 20 or below, the motors would not turn off immediately upon landing and your multirotor will keep bouncing on the ground... lol... this may topple your copter on the ground.

Need to find a sweetspot between acceptable landing speed and the motor cutoff point

Can we expect similar performance with that of DJI on 2.9.2 ???
With due respect to all the developers and testers, DJI is still way ahead... in terms of filtering, smoothness and performance...

I am asking this because much of the code in 2.9.2 is being re-written.

Just had two incidents of power fade, spiral down and crash, can anyone shed some light on what happened? Battery was fresh, voltage fine - have telemetry on my Tx. Was in stable loiter first and suddenly things went pear-shaped. Tried again and it did it again. APM2 on X525 quad with 20-22L motors and 30A Super Simple ESC's.

Edit: thought I had a tlog but not, will try get the log from the APM.

Reply to Discussion


© 2020   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service