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

Reply to This

Replies to This Discussion

Thanks for your time Randy! HUD still spins when I connect to MP after plugging in the battery.  

I tried several RC4s and had the same issue.  I am now using RC3 - 2013-10/2013-10-11-06:10. And the issue is absent.   I am going to try each beta  until the problem shows it's ugly head again.  I'll do that this weekend and get back to you.  Thanks again !

I'm replying back here so we can maintain some more depth on this thread.

So it's clear that the MPU6k is not happy when the battery is plugged in.  Attached are two graphs, in each graph you can see when the battery is plugged in the X and Z axis accels and Y-axis gyros go very bad.

Could you repeat the test with AC3.1 and AC3.0.1 without doing the accel calibration?  Also if you could turn on the IMU dataflash message and provide that as well that's be great.

...and apologies to Leonard...we do indeed pull data from the MPU6k sensor at 8Mhz instead of 500khz in AC3.1 vs AC3.0.1 so that is very likely related.

Has any changes been made to the code since 3.1-rc2 that would affect the COMPASSMOT value?  In 3.1-rc2 I always got 11% when running the COMPASSMOT but last night I loaded 3.1-rc5 and it went up to 19%.  I did it twice and got the same result.  Nothing on my quad has changed, only the code...

I just looked at a log from last night and my USB voltage to the board varies between 4.9 down to 4.6V and even random spikes to 4.1V. But I have that shaking even with battery plugged in. If its voltage related then why not with 3.0.1 and connected on the same USB port?

Maybe its related to certain peripherals connected like ESCs, LEDs, beeper? I haven't started to pull plugs to see if that would stop the twitching. I was thinking on the weekend to also swap my boards since the plain other board did not show those issues.

If I get a chance tomorrow I can create logs with both FW versions under various conditions.

Here ya go Randy.  




     Ok, so it must be this mpu6k speed up that is causing problems.  Could you try out these binaries (AC3.1 for APM2 on quad).  There's actually 3 modified versions in that zip file that run the mpu6k spi at 1mhz, 2mhz or 4mhz.  You should be able to load them using the mission planner's "Load Custom firmware" link on the firmware page.

     We'd like the highest possible value that works reliably...or maybe one speed lower than that just to be sure.

Hi Rob, when I enable oscillate the buzzer goes half on half off. All I looking for is when there is low battery event for the buzzer to beep-beep-beep-beep rather than beeeeeeeeeeeeeeeeeeep currently :). Way back in this thread Randy said v3.1 would have this behaviour, I'm just trying to get it to work.

No, if ACRO_TRAINER is set to zero it is like having the switch at the low position. All leveling is off in ACRO no matter what other settings you have.


Leonard, with the old PIDs I have 36 min with the new ones 35 min of Loiter. It is not that easy to come up with exact numbers, because of wind etc.. Anyway, even if the difference will be two minutes that is absolutely ok in relation to the flight time.

Leonard, after cleaning up all parameters, I switched back to the old PIDs and run an Autotune again with no wind. Autotune itself works perfect. However I am a little scared because of the resulting PIDs and because I almost had an overshot. Stab_P is no at 9.0, Rate_P is at 0.24 and Rate_D at 0.015. All are out of the listed ranges. The problem is, that the hexa is a little under-powered and Pitch and Roll are very responsive now. Thus flying the copter feels like it has lots of power - which it does not. This results in situations where the copter is almost not able to recover. So for copters like this such a responsiveness might lead to false conclusions/crashes.

Just an idea, but what might help detecting the power of a copter and adjusting the PIDs accordingly during Autotune is to check (or also to tune) Throttle Accel.

Reply to Discussion


© 2020   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service