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

Reply to This

Replies to This Discussion


In the video you are measuring the battery voltage when not under load. Should you not measure it under load (when connected to the APM?).



MP version 1.2.80 and firmware 3.1-rc2 quad.  When each step hits the 30 second timeout, it moves on to the next step.


Hi Alex. The messurement of voltage will follow the battery and give the same result, with or without load.

Br TviXen

I ran my 12v (3s Lipo) VTx at 2s Lipo for a while. It worked okay and the temps were definitely low but I lost a bit of range and went back to 3s setup. Vtx gets really hot. I placed it under a prop to keep the airflow continuous...

The hall effect sensor is nice, and looks like all the regulator parts are shielded... very nice!

You mention ripple caps, but you also need common mode chokes to satisfy the FPV purist. ;)

Those clean lines (5/9V) exit in the middle of very strong fields. Maybe it won't be a problem if quality shielded cable is used for the clean supply, but if you don't include some with the board, chances are there will be failures in the noise department.

Have you tested it to 200A, or is that just the rating of the HE sensor? I'm curious how hot those 24 vias got. What is the copper thickness BTW?

I agree a 12V option would be nice. I appreciate you guys doing research on many VTx's, but without seeing your method and results, we have to default to the countless hours of test/experience we have focused on the one or 2 VTx's we own/fly. I am guessing giving a 12V option won't be too hard to implement... just change some divider values right? Better yet include both 9/12 dividers, and bust them out on solder jumpers. ;)

I remember some large scale aircraft hobbyists used to use a simple "precharge" lead with high cell counts to prevent sparks. It's just a small plug with a series resistance that they plug in before connecting the big wires. I think the sparks are fun and stimulating, but they can eat away connectors over time. I'm curious how you implemented "precharge" in your design?

Various battery comments.

Is the batt remaining calculated on the APM or MP. Initially I thought it was in MP but then how would OSD display it?

On my MP wishlist would be a dropdown battery list of the ones I use. Its a little fiddly editing the parameters for capacity.

Could the MP audio 'low battery' warning (again where is it generated?) ignore spikes and instead take some sort of moving average. I guess this one is an overloaded APM issue?


 I've reviewed the logs again and totally agree with you, I suspect the voltage may be reported wrongly and that is the only problem I have here. I'm going to check calibration on the ATO and correct it.


In looking at the logs during the early part of the flight I can now see my problems in loiter mode as well. Please could you have a look?


I'm looking particularly at the roll. When in stab the hover was very good and still, when I change to loiter you can see from the graph data there is a much more coarse hover. Don't get me wrong here, it hovered fine but appeared to be jabbing at cyclic to hold position, There was an obvious change in sound as well since the motors seemed to be working much harder, possibly over correcting.

How can this be tuned out?  Is this nav P ?

Yes, I have the same experience.  A freshly charged 2S works, but by the time the battery get to about half charge, the signal is almost completely useless.  However, maybe 9V regulated supply will work fine?

I'm curious how they eliminate the spark.

Edit: Duh, I read the instructions.  They pre-charge through the balance plug with a resistor.  I've been doing that for almost a year.  It works great, except Arducopter doesn't like it.  It will boot up, and then register a low voltage failsafe due to the fact the series resistance is dropping the voltage. 

Re:  Arduino IDE

I'm trying to compile v3.0.1 (same as I did with 2.9.1b) but I keep getting "#error CONFIG_HAL_BOARD must be defined to build ArduCopter".

I noticed in APM_Config.h it says:

"If you used to define your CONFIG_APM_HARDWARE setting here, it is no longer valid! You should switch to using a HAL_BOARD flag in your local"

But I can't find this file.  Does someone know where this file is suppose to be?  Or do I need to create this file myself?

Is it possible to code "Auto Land" as an option for Channel 7?

So the soft overloads arduino in apm when driving an octocopter?

Maybe time to optimize code?


With a quad, in Simple Loiter mode, the 50Hz loop is running at about 20hz. It's slow, but it's still OK. However, with an Octo, the 50Hz loop drops to about 5Hz. It's barely running at all, and it performs very poorly. Once you turn on Mount, it drops below 5hz, and the process falls apart. I can't even measure the loop rate. In fact, it's so bad, that it stops being able to read the barometer properly. This can cause a flyaway. I tried 4 times to conduct this particular segment of test, and each one resulted in a crash. ...."

Arduino program, go to menubar... select ArduPilot / HAL Board / your Board

Reply to Discussion


© 2020   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service