Version 2.5 of the ArduCopter code is now available in the AP Mission Planner and in the downloads area!



  1. The first ArduCopter code release optimized for the APM 2.  Leans and drift should be much reduced or even eliminated for most users.  This was accomplished through a number of core improvements to the DCM implementation by Tridge like this one and this one.
  2. Loiter and waypoint following should be improved due to a D term bug fix, some tuning and the improved DCM performance mentioned above.
  3. On start-up, the yaw heading is updated with first successful mag read (so you should no longer see the slow rotation from north to your actual heading).
  4. Increased output rate to ESCs to 490hz.  This update rate is also user selectable using the new RC_SPEED parameter.
  5. hexa copter stability patch bug fix (should resolve slight flattening when pitching forward and accelerating very rapidly).
  6. improved baro filtering
  7. fix to dataflash logging of Mag heading
  8. addition of H1 swash plate type and bug fix for proactive yaw compensation for collective pitch changes for TradHelis.



The default PIDs are optimized for a 3DR/Jdrones quad with 850 motors and 10" props. If you're using more powerful motors/props, start by turning down Rate Roll P in 25% steps.

While some testers have reported very good flights with the default PIDs, some have reported that this release is a little "sharper" due to the DCM improvements and have found they needed to:

     reduce stabilize P by 10% (i.e. 4.5 -> 4.2)

     reduce stabilize D by 30% (i.e. 0.15 -> 0.10)

     increase rate D from 0 to 0.001

Tuning loiter can be tricky.  Refer to the discussions which will appear below for more community feedback on what parameters work best.


Please post your feedback in this discussion.  For enhancement requests  and bug report, please add them to the arducopter issues list.  When possible please include logs (tlog and/or dataflash) and tell us whether you're using APM1 or APM2 and what version of the software you're using (presumably 2.5 but tell us anyway!).


Thanks for this release go to the developers (both in the core team but also those who have provided bug fixes through the issues list) and also the community members who participated in the previous release thread and provided some great detailed information in the form of issue reports and logs which allowed us to nail some bugs!


Views: 130998

Reply to This

Replies to This Discussion

Quick update on this, loaded 2.5.1 and the motors test is now how it should be. Will take it for a test flight tomorrow :-)


Altitude hold is now working for me.  I set TRIM_THROTTLE to 410 now when I change to altitude hold while I'm hovering my quad just settles down a little and the sonar kicks in to hold the altitude.

The question I have is if the you use the, 15 second right yaw while arming, to get a AUTO TRIMMING of a copter, will this also adjust the TRIM_THROTTLE setting??

 I'll try it today and see if that works.


Guys thanks for all the hard work, got to set it up again but thats fine, looks like its worth it for the improvements!

I was lucky enough in 2.4 that i could just dial down stab_p to 3.5 and it was perfect (large quad, 860kv motors, 1.4KG, 75cm m to m).

On 2.5 just ypdated thrugh APM Planner it 'flops' about, rather than being locked in to horizontal, almost how i imagine acro mode to work (it was definitely not in acro mode)

What setting do i need to adjust to help it stay forcefully locked to horizontal until i choose other wise, in other words, to feel like i can let go of the sticks and have it not shoot away in a direction?

Increase rate_P first, till it starts to oscillate when you waggle the sticks then back off about 10- 20%.

Increase stab_P next, it will become more and more solid until you see a 'bounce' when changing direction (fly forward, stop, fly back, it should feel like you have full control at all times, no sloppiness and no over compensation to roll/pitch direction changes.

Then you can play with a bit of stab_D and/or rate_D, small increments (0.002) to get even more locked in. TOo much rate_D will cause twitching, too much stab_D will start to make the transistion from one angle to another feel sludgy and less controlled.

And then finally rate_I OR stab_I. (0.05 increments - in my experience don't go as high as 1.0 with I and I've never found any benefit with having rate_I AND stab_I - although I like being proved wrong, especially if its something good I'm missing out on...)

Generally I prefer using rate_I, but try them both, whilst the other is at Zero. Stab_I may be better depending on your frame. Too much causes the quad/multi to start to feel a bit unnatural, likes its thinking about disobeying you... if that makes sense.

When its flying nice, with some rate_D, stab_d and rate OR stab_I you should find that you can up the stab_P and rate_P a bit more for a super locked in 'ninja' feel, if this is what you are looking for.

Once you've got this feel you can soften the whole thing by simply reducing all or some of the above parameters, have a play with some high, some low, then reverse them.  

Obviously so much easier if you have telemetry (or a very long and soft USB cable ;) (Don't do this, you WILL tear the usb header off the board!!!)

Also for a very slightly different method, you can use the attached spreadsheet to help, courtesy of Angel, thank you my friend, this saves many words ;)

The only thing I'd change is where Angel finds his 100% value then reduces to 50%, i think about 70-80%, even 100% is ok now with the DCM filtering :)

Good luck


Hey, great spreadsheet!!  was it posted before?? if so how could I have missed it??

Excellent, well explained Dave! Can we use this for the wiki?

Yes of course Graham, although I'll be finishing the tuning guide this weekend, and passing it around the Devs for approval. Maybe include that?

I should mention that the above mini guide is for when you are actually flying and trying to dial it in.

The steps in the spreadsheet, that I find really result in the best tuning, should only be done holding the copter in your hand, above your head with sensible safety measures, at hover throttle and above.

Your airframe will not fly with no stab_p or rate_p, so tuning rate_D first MUST be done in hand.

I find tuning this method really educates you about the behaviour of each parameter, the guide, that's been further postponed due to a big contract at work, will explain.

I need a change in career...

Thank You for this great Work :)

I got my APM 2.0 Today, i hope i can fly soon :)

This was an amazing reply, thank you so much.

I'll try shortly and report back!

FYI folks, hitting up the Y6, Hexa and 3DR Hexa today with APM1.x and 2.5--will report back on progress.

Is it only me...?

While most of you guys here seems slightly euphoric about the new release, I seem to have issues with it. At this time I address mainly yaw and attitude control, but I have doubts about loiter and auto as well (sorry to sound negative).

3DR stock quad, APM2 (soft suspension), code git_2.5.1_ed52caa6bc0a, 3SLiPo4500mAh

First one can always start blaming the parameters for any anomalies showing up. But after having played with for some flights I would say there is something else going on. AHRS stuff spooking with me...


Yaw: Steep attitudes like 20-30 degrees makes yaw drift several degrees, feels like 10 deg or more. Flying back and forth at aggressive attitude provokes this, every time. Yes, I could make a video, I did not, please believe me anyway. There is no doubt. Yaw rate and stab PIDs seems to do their job otherwise, but I think the reference data (from DCM) is the crook here.

Attitude: Having been observing my quad very thoroughly I am convinced that DCM acts up here too. Often, after returning to level after some attitude, it does not really return to level. There is an artifact making it show some degrees nose up when it is actually nose down (simultaneously observing quad and the artificial horizon). Then soon it returns to true level, airframe and attitude indicator.  This seems very much like the artifact that has been there in many previous code versions.

Alt hold works fine, like before.

Loiter, hm. Tried Marcos setup. Could work fine in weak stable wind, but from that, still in loiter mode, climbing to 40 meters and coming up above tree tops, wind increasing, it started circling / oscillating really bad, violently. Tried auto yesterday and it accelerated towards the first waypoint an then it was all over the place, I had to abort the mission.

I have logs, but I the source of error is the DCM then I doubt that logs would provide anything of interest(?)

To wrap it up. I had much better flying with previous 2.2-2.4 versions and there are weird things going on with yaw and attitude, DCM is a suspect. It is not difficult to fly it, but it does not behaving exactly as it should.

I would be VERY interested if any more of you guys observed something like this??

Finally, to cheer you up after my complaints, a fresh pic showing the result of too little focus on the job while tuning and hand testing. It´s on me ;-)

Yes - it hurt. Carbon reinforced props.


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