ArduCopter 3.0.1 has been released and is now available in the Mission Planner,, GitHub and the new Downloads Area.

Warning #1: Compass calibration and reducing interference is far more important than with 2.9.1b

Warning #2: GPS glitches can cause sudden and aggressive position changes while in loiter mode.  You may wish to reduce the Loiter PID P to 0.5 (from 1.0) to reduce aggressiveness (see image below of where this gain can be found in mission planner).

Warning #3: optical flow is not supported but will be back in the next release (AC-3.0.2 or AC-3.1.0).

Warning #4: loiter turns does not maintain altitude.  This bug will be fixed in AC-3.0.2.

Warning #5: This release has only been lightly tested on Traditional Helicopters.

Improvements over 2.9.1b include:

  • Inertial Navigation for Loiter and Auto meaning much more accurate control (Randy,Leonard,JonathanC)
  • 3D navigation controller follows straight lines in all dimensions between waypoints (Leonard,Randy)

         WPNAV_SPEED, WPNAV_SPEED_UP, WPNAV_SPEED_DN, WPNAV_ACCEL allows configuring speeds and acceleration during missions

  • "compassmot" to compensate for interference on compass from the pdb, motors, ESCs and battery.  (Randy,JonathanC) (Set-up video here)
  • Safety improvements:
    • simple Tin Can shaped Geo Fence
    • pre-arm checks to ensure all calibration has been performed before arming (can be disabled by setting ARMING_CHECK to zero).  (video description here)
    • GPS failsafe - switches to LAND if GPS is lost for 5 seconds
    • stability patch improvements to stop rapid climbs in very overpowered or overtuned copters
  • Circle mode improvements including "panorama" when CIRCLE_RADIUS set to zero (Randy,Leonard)
  • SONAR_GAIN parameter added to allow better tuning of sonar surface tracking
  • CH8 auxiliary switch (same features as CH7)
  • works on PX4 (some minor features still not available) (Tridge,PatH)

How to upgrade:

1. Make sure you are using Mission Planner 1.2.59 or newer (get it here)

2. Click on the MissionPlanner's Hardware, Install Firmware screen.  The version numbers should appear as "ArduCopter-3.0.1", then click the appropriate frame icon and it should upgrade as per usual.

3. Reduce the Loiter and Alt Hold PIDs if you have modified them from the defaults.  The modified PID values for the 3DR frame can be seen in the image below.

Note: Nav parameters have been combined with Loiter so do not be concerned if you can't find them.

4. Although not directly related to this release, if you purchased an APM prior to March of 2013, update your PPM encoder to the latest firmware (instructions here).

5. Try out the new version in stabilize mode first, then alt-hold, then loiter and finally RTL and Auto.

Numerous How-To videos are available:

Special Thanks to MarcoDaveC and the large number of testers on the pre-release thread who put their copters at risk during the extended testing period.  Some of their videos can be found hereherehereherehere and here.  Thanks also to MichaelO for the MP changes required for this release.

All feedback welcome.  Please put your questions, comments (good and bad!) below.

Views: 387148

Reply to This

Replies to This Discussion

ok for instructions to replace, I have to reset the parameters use the default values ​​for the test of autotune.

Today, if the weather is good I do the test


No, just use the same parameters you have at the moment.

Have you reduced Stab P or do you still have the same parameters you got from Auto tune?


I am not actually asking you to test autotune here I am getting you to test the basic stability control to make sure your copter can handle the tuned values. Infact, this parameter is disabled during autotune.

The problem with overshoot isn't that your autotune values are wrong or too high, it is that the controller was simplified until we added this parameter. This parameter lets us get much more out of the control system.

The test you are doing is to test this parameter. So the way we want to test this is by using the PID gains that we knew caused problems for you before. This parameter should ensure that your copter behaves the same when going from limit to limit as when you move the stick only a little.

In the next release this parameter will be automatically calculated by Autotune but I hope to make sure it does what I expect with your tests.

Now I understand what you do, keep the parameters of the autotune, I reduce the value of Stab P from 6.75 to 4.5, is the value that I had no autotune, and I try to see if I still have the oscillations.



    Re the external compass, if you haven't seen it already, you might want to check out the video on this wiki page which has instructions to ensure that you've cut the trace properly and that the external compass is working.

     I strongly suspect that the compass orientation is incorrect but I really don't know.  I'm only familiar with the 3dr compass and the one you have looks a bit different.

Almost :)

I want you to see if you still have the problem with ALL the autotune parameters. I just wanted to make sure you haven't changed any of them since you did autotune. The change you made to the code should remove those overshoots you were getting with the autotuned gains.

I am sorry that I have not made myself clear mate!!!

Thanks for your help.

I compiled with Arduino firmware and loaded on APM2, but the card shows no signs of life, the red and blue LED are off do not blink, so I tried to load the firmware with MP but by an error in the verification of the code.
What is wrong?

I reloaded the firmware 3.1.RC5 original with the MP's all OK!!

Thanks Randy,

I'm using a spectrum dx8 ,the board is a 2012 .apm 2.5,Will reflash it anyway ,

The yaw signals look strange ?, what you think ,

Thank you very much

Did you do this bit?

#define OPTFLOW DISABLED // disable optical flow sensor to save 5K of flash space
#define MOUNT DISABLED // disable the camera gimbal to save 8K of flash space

if you did, try also disabling the auto tune.

Another bonus for manufacturers like 3DR

Detlef, Bruce,

     Thanks very much for testing this.  Drag that the slower speeds aren't working for Bruce (and most aren't even working for Detlef).  I was wondering if you could try this one as well.  I don't think it will work but there's a chance it might.  It's running at 8mhz but there's a small delay added between when the "chip select" pin is pulled (low i think) and when it starts to send or receive data.  Basically the theory is not that the rate is too high but that it takes a small amount of time for the chip select pin being pulled low to reach the mpu6k.

     This version is not exactly AC3.1-rc5.  It's actually 'master' so it's got a few other changes in there that haven't been tested all that much so I wouldn't recommend flying it (although i have this morning).

I compiled with Arduino firmware and loaded on APM2,
I also disabled
# define AUTOTUNE DISABLED / / disable the auto tune functionality to save 7k of flash

 All OK!!

The memory of APM2, is almost full.....  ;)

Reply to Discussion



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

© 2020   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service