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

Reply to This

Replies to This Discussion

I just purchased.
A simple diagram to connect i2c?

Best regards - Giuseppe

great new

what is the real improvement with this latest chip?

j ai aucune information avec ton compassmot la!!!!!!quel est ton resultat a la fin de la procedure?cette valeure est en pourcentage.

je suis quasi certain que t as eu un probleme de compas ou de perte de signal gps..

as tu eu une reaction de la sorte

you can t do nothing against this s gps  glitch and for the moment there are nothing to do with it.

we need to wait and priest than all the team could find a solution to fix it.

to avoid this you could check before each take off you hdop(best is 1),sat numbers

here connections explaned.

Ciao - Giuseppe 

What Mag does THIS ONE  use?

Like written in the 1st line: HMC5883L

The ublox is ok but I would go for an also GLONASS capable ublox like (navilock NL-662ETTL).

I wouldn't expect miracles from the HMC5983. But even a slight boost of precision/less drift over a temperature range will not harm.

I have gone through the datasheets and you are correct - the HMC5883 datasheet requires that CRA7 must be cleared for correct operation where as for the HMC5983 uses CRA7 as such:


Set this bit to enable temperature sensor. Temperature
sensor will be measured at each magnetic measurement.
Enable Temperature sensor for automatic compensation of
Sensitivity over temperature.


I have gone over the code and it looks like in AP_Compass_HMC5843.cpp we need to alter line 175 to be:

if (!write_register(ConfigRegA, 0x01≪7 | SampleAveraging_8≪5 | DataOutputRate_75HZ≪2 | NormalOperation) ||

and 181 to be:

if ( _base_config == (0x01≪7 | SampleAveraging_8≪5 | DataOutputRate_75HZ≪2 | NormalOperation)) {

(note the ≪ char should be two '<' characters in the actual code)

This should enable the temperature compensation feature of the HMC5983. I will try this in the morning and report back.

Rate Loiter PIDs in 3.0.1

Hello, I have a quad with 850kv motors, and tbs discovery frame. I try the stock (in 2.9.1b) Rate Loiter PIDs on the new version (3.0.1) and the performance is awesome.  However with the stock PID of the v.3.0.1 the performance of the Loiter is worse.

I must change de Rate Loiter PIDs to the default of v.3.0.1? Is there any risk in using the Rate Loiter pid of the version 2.9.1b in the new version?

Why this PIDs on the new version? I only change the Loiter PID P from 1 to 0,5 for reduce the aggressiveness.

Best Regards.


what did you put in compass_orient for this mag? I have some troubles with this.


Hi Ivan, as I mentioned here:, I left the default setting for compass_orient and just ensured that the chip on the external board was mounted in the same orientation as the chip on the APM

great james!

it will be interessing to add this for the next release.

if this new compass is better it could be great to have one for everybody

Reply to Discussion


© 2019   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service