ArduCopter 2.8 / 2.8.1 released

Arducopter 2.8.1 is now in the mission planner and in the downloads area! Remember to do your MP configuration again after loading this code, since it erases your EEPROM and sets it to the new defaults. 

Note: Issues with APM1 user's level feature not working are now resolved.  If you installed 2.8 we highly recommend you upgrade to 2.8.1 as 430 extra bytes of RAM have been freed up which reduces the chance of memory corruption (although we haven't seen any cases of this on the APM2 at least) .

Note #2: this release has not gone out for Traditional Helicopters until they can be tested fully.  Flip and Toy mode have also not been fully tested.

Improvements over 2.7.3:

  • Improved ACRO mode (Leonard Hall)
  • Improved stability patch to reduce "climb-on-yaw" problem (Leonard, Rob Lefebvre, Randy)
  • Rate controller targets moved to body frames (yaw control now works properly when copter is inverted) (Leonard/Randy)
  • Less bouncy Stabilize yaw control (Leonard)
  • OpticalFlow sensor support for APM2.5 (Randy)
  • DMP works again by adding "#define DMP_ENABLED ENABLED" to APM_Config.h You can also log DMP vs DCM to the dataflash by adding "#define SECONDARY_DMP_ENABLED ENABLED" (Randy)
  • Watch dog added to shutdown motors if main loop feezes for 2 seconds (Randy)
  • Thrust curve added to linearize pwm->thrust. Removes deadzone found above 90% throttle in most ESC/motors (Randy)
  • More timing improvements (main loop is now tied to MPU6000s interrupt) (Randy)
  • GPS NMEA bug fix (Alexey Kozin)
  • Logging improvements (log I terms, dump all settings at head of dataflash log) (Jason)


Bug Fixes / Parameter changes:

  • fixed skipping of last waypoint (Jason)
  • resolved twitching when no GPS attached (Tridge)
  • fixed loss of altitude if alt hold is engaged before first GPS lock (Randy/Jason)
  • moved Roll-Pitch I terms from Stabilize controllers to Rate controllers
  • TILT_COMPENSATION param tuned for TradHeli (Rob)

Code Cleanup:

  • HAL changes for platform portability (Pat Hickey)
  • Removed INSTANT_PWM (Randy)

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.

Please note that on this release we've moved the Roll and Pitch I terms from the Stabilize controller to the Rate controller. There's some evidence that says this can lead to flips on take-off if you move the roll or pitch sticks around as you take-off so we recommend you leave these sticks in the middle until you're in the air.

Please feel free to report issues you find in the discussion below and/or add them to the issues list.

Thanks and enjoy!

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

Join diydrones

Email me when people reply –


  • I just spent 2 battery packs just tuning up the Rate PID's.  This is with my DwarfStar, overpowered Octo with SimonK firmware ESC's. 

    I started with:

    Rate_P: 0.110

    Rate_I: 0.050

    Rate_Imax: 100

    Rate_D: 0.002

    I was really not happy with this setup.  I was fighting a battle where, the Rate P was driving a rate-judder so I had to hold it back, but then it was also unstable in the slightest breeze because it didn't have enough response. Also, with Rate_Imax set at 500 with these params, I had a really bad flip on take-off.

    Then I went to:

    Rate_P: 0.090

    Rate_I: 0.030

    Rate_Imax: 100

    Rate_D: 0.006

    This was much more stable at steady state, but I still wasn't happy with the stability in a little wind.  But the larger D-term really seemed to have calmed it down.  I reduced Imax to 100 to prevent flip on take-off.  But then I also found that it wasn't strong enough to hold well in fast-forward flight.  I had to keep pushing a LOT of stick to get it to fly forward.

    Now I have:

    Rate_P: 0.135

    Rate_I: 0.100

    Rate_Imax: 500

    Rate_D: 0.008

    As you can see, I've got Rate P much higher now.  The key to all of this, I think, is that D-term.  You've got to get it high enough.  Now I have no judder, but it's also stable in a breeze.  Fast forward flight should also be better but I haven't tested that.  And with Rate_Imax at 500, no flip on take-off.  I even tried to force the issue by sitting on the ground throttled up with the octo off-level, or pushing the stick over, then jumping into the air.  The wound-up I-term causes it to fly off-level a bit for about 1-2 seconds, but then it stops.  I think having a high I-max with a low I can cause the flip on takeoff, because they I-term can't wind down fast enough.

    But really, the D-term is key to the whole thing.  I'll probably try pushing it a little higher.

  • Hi,

    with 2.7.3. APM2 all is working fine, after updating to 2.8.1 all is wrong.. When i fly indoor, my copter goes in any direction, seems that it want to correct and keep the position but it make a spiral that is little and than bigger until i must land. I must always correct with pitch and roll from my transmitter... Try to reset to default parameters but nothing changed. 

    When outdoor, it correct always the yaw, oscillate from 20° left and right, even here it seems to keep the heading. I redo the log calibration but always with the same result. Could you say me how to do? I think i must upload the 2.7.3

  • Lately I haven't managed to get time to fly, but today I made the 2nd flight test with 2.8.1 and it looked great. Also I've acquired a lea 6h with Sarantel antenna and I get lock after about 5 seconds (great sensibility). As usual, my rate p is a lot lower than default. I'm flying a Xaircraft 650 diy with x2212 sunnysky and 10x4.7 props (3s) and I use 0.090 rate P on both axels. Also, I prefer lower Stab P too like 3.7 / 3.8 . Loiter is great with this GPS. My auto flights were very precise and fast without hesitations. I leave you with 2 images. First is the planned flight and the second, the real flight. Wind was calm but with some 5-8km/h gusts




  • A big thanks to all the developers & testers.  Upgraded from 2.7.3 and loiter is now a thing of beauty.  :)

    Thank you!

    Doug B.

  • Just my 2 cents. I dont know what esc's you have, but is it possible that you have selected a slow start option on some of them... ?
  • Upgraded my well working Hexa with 2.8.1 (had standard parameters in prev version)

    Tested. Moved the Pitch & Roll sticks on ground just to test if motors work ok. End result was instant flip.

    Turned hexa around and tested handheld, still violent oscillations.

    Now I notice the red text. Need to have a second test & see how my hexa behaves.

    Key input - moving pitch & roll on ground leads to flips.

  • Can anyone take a look at my logs ? I was happily zigging and zagging over a solar panel field with the gopro set for 10 sec. interval photo. I landed when my FrSky telemetry started beeping yellow 13.8V alarm on my 4S packs - I run two in paralel - hot-swapped them for fresh ones, set the gopro for movie and took off again. After a couple of minutes, my hexa just fell out of the sky. Not a single warning, no unresponsive control or weird behaviour. One moment it was 20m up there hovering, the next it was at 10m upside-down then splat! And I have that image on my retina with a discrete prop instead of a blurry disc at the tip of a boom.

    2012-10-31 23-05 7.kmz

    2012-10-31 23-05 7.log

    2012-10-31 23-05 7.log.gpx

  • Got some new problems with my quad...  When i apply just a little throttle to get the propellers spinning it just keep throtteling up untill it takes off... Then when i let off the throttle it just stalls and drops...

    Any ideas? 

  • Hi guys!

    Congrats for the great job!

    Have anyone found a solution for motor 'spikes'? I'm having some serious motor 'spikes' that make my quad go up very fast! Any solution to that?

    I'm using apm2.0, jdrones 880kv motors and 30A ESCs.


  • Not sure if this is the right place, but when changing modes, all except POSITION HOLD are dispayed in the APM.


    When moving to POSITION HOLD, it is displaying as UNKNOWN, is this an error ?



This reply was deleted.


DIY Robocars via Twitter
RT @knightsautoteam: Hi @diyrobocars, we are Orlando's first Autonomous racing club and would love your support. We are hosting our first K…
Jan 20
DIY Robocars via Twitter
RT @Heavy02011: #VirtualRaceLeague: @DIYRobocars Race #14 - #ParkingLotNerds join us January 15th for #AutonomousRacing #RoboRace ⁦@DAVGtec…
Jan 16
DIY Robocars via Twitter
RT @chr1sa: And after that came our races, 50 in all. This battle between these two Russians was the best we've ever seen -- incredible fig…
Jan 16
DIY Robocars via Twitter
RT @chr1sa: Before our @DIYRobocars virtual race this weekend, we had a presentation from the team that won the Indy Autonomous Challenge i…
Jan 16
DIY Drones via Twitter
Dec 12, 2021
DIY Robocars via Twitter
Dec 12, 2021
DIY Robocars via Twitter
RT @chr1sa: Just a week to go before our next @DIYRobocars race at @circuitlaunch, complete with famous Brazilian BBQ. It's free, fun for k…
Dec 4, 2021
DIY Robocars via Twitter
How to use the new @donkey_car graphical UI to edit driving data for better training
Nov 28, 2021
DIY Robocars via Twitter
RT @SmallpixelCar: Wrote a program to find the light positions at @circuitlaunch. Here is the hypothesis of the light locations updating ba…
Nov 26, 2021
DIY Robocars via Twitter
RT @SmallpixelCar: Broke my @HokuyoUsa Lidar today. Luckily the non-cone localization, based on @a1k0n LightSLAM idea, works. It will help…
Nov 25, 2021
DIY Robocars via Twitter
@gclue_akira CC @NVIDIAEmbedded
Nov 23, 2021
DIY Robocars via Twitter
RT @luxonis: OAK-D PoE Autonomous Vehicle (Courtesy of zonyl in our Discord:
Nov 23, 2021
DIY Robocars via Twitter
RT @f1tenth: It is getting dark and rainy on the F1TENTH racetrack in the @LGSVLSimulator. Testing out the new flood lights for the racetra…
Nov 23, 2021
DIY Robocars via Twitter
RT @JoeSpeeds: Live Now! Alex of @IndyAChallenge winning @TU_Muenchen team talking about their racing strategy and open source @OpenRobotic…
Nov 20, 2021
DIY Robocars via Twitter
RT @DAVGtech: Live NOW! Alexander Wischnewski of Indy Autonomous Challenge winning TUM team talking racing @diyrobocars @Heavy02011 @Ottawa…
Nov 20, 2021
DIY Robocars via Twitter
Incredible training performance with Donkeycar
Nov 9, 2021