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

Reply to This

Replies to This Discussion

Hi Randy,

I'd like to clarify three things in fw 3.1 rc2.

1. Here's my current settings:

MOT_TCRV_MAXPCT: 93 - Options: 20 80 - Set to the lowest pwm position that produces the maximum thrust of the motors. Most motors produce maximum thrust below the maximum pwm value that they accept.

Question: Should I limit this number (93) up to 80 only?

2. And here's my current settings for GPS HDOP.

GPS_HDOP_GOOD: 150 Options: 100 900 - GPS Hdop value below which represent a good position. Used for pre-arm checks.

Question: Is 150 equal to 1.5 as displayed in my MP?

3. Lastly here's my settings for my compass.

My current settings: COMPASS_EXTERNAL: 0 Options: 0: Internal, 1: External

- Configure compass so it is attached externally. This is auto-detected on PX4, but must be set correctly on an APM2. Set to 1 if the compass is externally connected. When externally connected the COMPASS_ORIENT option operates independently of the AHRS_ORIENTATION board orientation option.

Question: Should I set this to 1 since I'm using an external compass for may amp 2.6 board? If yes, should I also change the COMPASS_ORIENT parameter (Which is currently set to 8 - Roll180)?


Hi randy, I loaded ArduCopter 3.1-rc2 on my Talon Hex, it flew like mushy dog poo, then I swapped the cheap plastic props for some Rctimer CF 9 x 5 and WOW, 3.1-rc2 flies the Hex beautifully now, had no idea CF props could make that much difference.

I am using a not yet release ublox based Rctimer CN06 PLus GPS and Mag

Boring video of silky smooth loiter in about 10 kt winds just above a 30 meter tree.

Some log graphs from that test flight, I start off surrounded by tall trees, I do connect Lipo and wait 5 minutes to allow GPS and Baro to stabilize BEFORE Flying




Thanks for all the effort you and the Dev team has put into this release, words fail to describe just how good it really is.

Thank you Randy,

In the Image below my "best" Result in Alt Hold after Month of Tuning.

Now I have no more Ideas what to try because every combination of Values already tested.

Here the blue line is Throttle Rate from 3.0 (left)to 6.0 (right)

Perhaps you can help.

Far eway from your Video of the Sprayer, really good.

Kind regards, Otto

Hi All, I am new to APM 2.6 (with external GPS/Compass) and have initially installed firmware 3.0.1 which worked ok after the required setup of frame type,  live compass, accelerometer and radio calibration. I then re-wired and changed the multirotor setup as compassmot resulted in 200% vs current (using the 3DR PM). After this the compassmot was 4% and vibration is around 2 with a few peaks to 2.8.

Did some test flights after auto trim and stabilize is good. Loiter however still has some drift (max 2m around target). I tested with auto declination and fixed using the website but no real change. Wind conditions were very calm. The multirotor also showed a few twitches during loiter which somewhat freaked me out :p

I then decided to install the 3.1-rc2 firmware with a small adjustment in radio.pde to swap my Turnigy 9x channel 5 to 6. This way I can use the 3-way switch for flight modes as I'm using a PPM receiver. Thanks to RickP for this!! 

The firmware installation worked fine using the modified Arduino IDE but now the rotors spin after arming with trottle 0 (stick down). Re-calibrating radio and ESC gives the same result. The twitches during loiter also seem more aggressive. I have attached the last test flight log for analysis. See pitch twitch around 12 min followed by my panic reaction :p 

Can anyone give me some direction where to fine tune the small loiter drift, twitches and motor spin-up with arming only? Overall I'm very pleased with the flight behavior of 3.1-rc2. 

My Setup;

- Tarot Iron Man 650 Quad

- T-Motor 4008-12 600kv

- T-Motor T-40A ESC

- CF 15x4 props




Hi Dimitri
Randy will be able to anwer better, but here are a few points

  • 2m drift is not bad for a hobby (non military) grade GPS in my opinion. I have seen better, but 2m is not bad at all
  • In Version 3.1 the motors DO spin on arming, much like the DJI setup. Its designed like that, but I am sure there will be a parameter to change that behaviour. Check your Advanced params, I am sure you will find it.(Found it since, See what happens if you set MOT_SPIN_ARMED to 0)
  • The more aggressive twitching may be because the PIDs for 3.1 are a bit different. Not sure what is causing the "twitching" at this point, but at a guess I would say that you may need to reduce your Loiter Pid P value to 0.4 or so.

Try that for starters, let me know how you get along.

Hi Wessie,

Thanks for your reply. Good to hear it's normal for the motors to spin up when arming. As a previous DJI Phantom owner, I see the advantages safety wise. 

For Loiter all I see are videos where the vehicle is just staying in position and that's what I want :-) Agree, 2M around is not that bad but if it can be improved, it's welcome. My current loiter P setting is 0.6 but I don't see how this setting could remove twitches when the multirotor does not move and is in position.



fw ac3.01


about followme mode,

seems have default altitude, how to maintain current altitude when trigger followme mode? any parameter setting?


Hi devs and generally clever people,

Just posting here as I have been one of several people with very similar-sounding crashes recently in RTL or Loiter mode. There have been several threads but none have had the attention of any of the devs or other super-knowledgeable people who hang out on this thread so I just wanted to try and get some expert input.

Here is my thread. In summary: copter flew well in all modes including Loiter and RTL, even on quite a windy day. Flying again two days later, much calmer weather, I seemingly lost control of the flight mode and eventually triggered RTL by switching off the Tx. RTL was triggered successfully but did not behave right: it did not climb to RTL altitude; it applied maximum pitch and throttle and flew at full speed (faster than the configured navigation speed) to the ground, destroying itself and nearly me. The GPS and other values from the log indicate that it knew it was getting further away from where it needed to be. There was no evidence of toilet-bowling or other compass related issues, or GPS glitches; the logs show the copter going exactly where it did in reality, and previously it had flown well.

Then there is this thread. Although that user's copter was by his own admission not well set up the logs show the same story of RTL requesting a massive pitch / roll and throttle input resulting in speeds far in excess of what it should try and achieve and ultimately a crash.

Then there has just been this one posted. Hard to be clear from the very short section of the log so this one could just be a GPS glitch but once again a similar massive input requested in Loiter mode this time. 

Then there is this thread which has no logs posted unfortunately but describes a similar problem of an uncommanded flight, again in a straight line rather than the toilet bowling of compass problems.

I've spent quite a bit of time trying to figure out what went wrong with my flight and have posted logs and selected relevant graphs on my thread. I am clearly not alone in having this problem. I know that Arducopter can be and normally is superb, but there is, to my eyes, something going on here that is NOT answered by the "same old" vibration, compassmot, etc questions. I'd really, really, appreciate it if somebody could take a look.



Best is to clear your logs, Switch on MOTORS, IMU, do a a loiter for 2-3 minutes, and post the log here so the boffins can take a peek under the hood.

Just my two cents worth. It looks like all of these cases are GPS glitchs or failures and if you've ever watched GPS lock in, it bounces hundreds of miles away until it locks in. So if you lose GPS your copter thinks it's hundreds of miles away and then it tries to fly off in that direction. I believe development is aware of this issue and they are working on code to address this issue.


    I've replied over on your thread.  It looks like a compass issue to me but if you have tlogs we can likely confirm.  Alternatively some bench tests of your compass heading with motors on and off might highlight where it's going wrong.

The GPS Glitch protection is in AC3.1 hasn't been flight tested much yet but simulator and bench tests look good.  I'll be doing a flight test with a simulated glitch in the next few days.

..but sadly thid wouldn't have helped Harry or Frank.  For them it looks like their compass heading out by over 90 degrees and although it's very obvious to a human reviewing the logs (or watching!) that something has gone wrong the APM doesn't have a feature to self-diagnose the compass beyond a simple health check.  I've raised an issue and I'll talk about it with the other devs to see if we can come up with a way to catch the compass heading being significantly off.  We definitely want APM to be as reliable as possible.

Reply to Discussion


© 2019   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service