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

Reply to This

Replies to This Discussion

Dear Randy,

thank you for answer

i tried fail safe before few times and it was OK. but in tests copter always was below 10m, means that for RTL it increased altitude . last time it was in 30 m. and i though maybe it was the reason to fall down.




I have also nice words about AC3.0.1. Very very good review.
I have a good loiter, stab, alt-hold, rtl (small problem) and land.
All this, only after very well isolate imu, insulators from an old CD player, and add weight with tiny lead balls at the base of the box imu. Also and very importantly, raise the MAG and GPS over the electronics with a long spacer. 

I use only the signal wire from receiver to IMU to avoid vibrations spreading. (also from imu to escs)
I had a problem with the orientation of the external mag, which is already fixed (beware with silked arrows).
Thanks to the developers. Very good job.

The RTL issue is when I change from stable to RTL through loiter with a 3 position switch (stable->loiter->RTL). In this situation the motors stops a fraction of a second.

The yaw also are not good enough for me, but I think is a tuning issue.

Loiter and Land are awesome. (supersimple also)

Ok, thanks randy, ill try to get the logs, I'll have learn how to do that.
Thanks for your time.


So are you suggestion that I should uninstall my current mission planner 1.2.53 and do a new install of the Mission Planner (1.2.73) and the MSI in the above link you provided instead of going forward with internal update?

Or you mean, go ahead with internal update from my current mission planner (1.2.53) but after that also install the MSI from the link you provided?

Would you please clarify that for me?


Pay close attention to the wiring of the cables, I see that it passes very close to this carbon frame and with the vibrations could cut the sheath and create many problems.
I have seen many pictures around of wiring made ​​really bad, wild wiring, take better care of this aspect is to reduce the chances of crash.
Follow my example here:

OK i think i got the IMU enabled.  did the Terminal method because my mission planner has no software tab (another reson alot of these wiki instructions are no help because they are outdated and it makes it very confusing.  Can't really move my GPS much farther away from things.  The cord is only so long.

I'm not an expert by any stretch, I don't play one on TV, nor did I stay in a Holiday Inn Express last take my input with a grain of salt.

The first thing I notice in the logs is that you haven't done a Compass Motor calibration.  You have done a static compass calibration though.  Compass motor calibration attempts to correct for the influence of the magnetic fields created by current in the wires, ESCs, motors, battery, etc.  Its an effect that happens only when the copter is using power.  It will interfere with the compass and make the heading the copter thinks it is on differ from the actual heading...

The second has been mentioned, you have a low Satellite count and your HDOP values are high.  Both are bad things and are related.  Make sure you have a clear view of the sky, check to see that you have a solid GPS lock.  Give it some extra time after the 3D lock indication.  The 3d Lock indicator is when you have only 4 satellites (the minimum required for 3d positioning).

If you have a clear view of the sky, try to identify if there are things that could be interfering with the GPS signal.  On my copter, I had to move the receiver to a different location.  Basically, get the GPS away from all the stuff on the copter.  I have an APM 2.0 so that means moving the entire board away...coincidentally, this helps on the compass too.  If you have a APM 2.5 the compass is on the main board and the GPS is, of course, separate, so you can relocate the GPS easily, the compass, not so much.

You've already enabled the IMU logs, go do a short flight and post that log.  You can use this info to identify vibration problems.

Hi Alex

I just posted 1.2.74 to the downloads site.

Download 1.2.74

Uninstall 1.2.53

Install 1.2.74

Have fun!

Thank you very much guys, following your advices  I decided to change my dumpening device as I couldnt see any shaft bent, I put one kind of dumper that came with my fy21 stabilizer. Now Alt hold, loiter and rtl it's working very nice again, just the baro as seen bellow reads negative, is it normal to happens sometimes?. Thankyou one more time!


Hi Randy, the code mod doesnt seem to make any difference. Any ideas why? All altered code went onto APM but roll and pitch are still the wrong way round!

Cheers Alex

Is true, the wiring looks a bit wild ;-), but I did the wiring to the IMU on that purpose. I did not put the wires together in a bundle because I thought that vibrations was transmitted better in that way. It may seem that pass near the edges of the carbon frame, but are not so close. The motor cables to the ESC yes, it are touching the frame. I will try to improve that, you're right it can be a source of problems.
Thanks for the warning.

Hi Randy, sorry, I got it sorted in the end I had to reverse both 

  g.rc_1.set_pwm(APM_RC.InputCh(CH_2));          // reversed for JR transmitter                      g.rc_2.set_pwm(APM_RC.InputCh(CH_1));          // reversed for JR transmitter
Seems to work ok.

Reply to Discussion


© 2020   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service