Copter-3.3 beta testing

Warning #1: an issue has been found with Tower's Pause button which can cause the vehicle to fly to an old position if the vehicle has not sent a position update to Tower in some time.

Warning #2: Copter-3.3.2 fixes a bug found in Copter-3.3.1's desired climb rate initialisation which could lead to a sudden momentary drop when switching from Stabilize or Acro to AltHold, Loiter or PosHold.

Warning #3: Copter-3.3.2 fixes an issue found in Copter-3.3.1 which could lead to hard landings in RTL or AUTO if the WPNAV_SPEED_DN was set too high (i.e. >400 or 4m/s) and/or the WPNAV_ACCEL_Z was set too low (i.e. <100 or 1m/s/s).

Warning #4: a bug was found in Copter-3.3 which could cause a sudden crash if you abort a Take-off initiated from a ground station.  Video description is here.  The bug is fixed in Copter-3.3.1 so we recommend upgrading.

Note #1: AC3.3-rc8 corrected a long standing bug in the HDOP reporting.  HDOP values will appear about 40% lower than previously but this does not actually mean the GPS position is better than before.
Note #2: if upgrading from AC3.2.1 the vehicle's accelerometer calibration needs to be done again.
Note #3: set SERIAL2_PROTOCOL to "3" and reboot the board to enable FrSky telemetry like in previous versions.
Note #4: the wiki will be updated over the next few weeks to explain how to use the new features

Copter-3.3.1 is available through the mission planner.  The full list of changes vs AC3.2.1 can be see in the ReleaseNotes and below are the most recent changes since AC3.3.

Sadly this version (and all future versions) will not run on the APM2.x boards due to CPU speed, flash and RAM restrictions.

Changes from 3.3:

1) Bug fix to prevent potential crash if Follow-Me is used after an aborted takeoff

2) compiler upgraded to 4.9.3 (runs slightly faster than 4.7.2 which was used previously)

Changes from 3.3-rc11:

1) EKF recovers from pre-arm "Compass variance" failure if compasses are consistent

Changes from 3.3-rc10:

1) PreArm "Need 3D Fix" message replaced with detailed reason from EKF

Changes from 3.3-rc9
1) EKF improvements:
    a) simpler optical flow takeoff check
2) Bug Fixes/Minor enhancements:
    a) fix INS3_USE parameter eeprom location
    b) fix SToRM32 serial protocol driver to work with recent versions
    c) increase motor pwm->thrust conversion (aka MOT_THST_EXPO) to 0.65 (was 0.50)
    d) Firmware version sent to GCS in AUTOPILOT_VERSION message
3) Safety:
    a) pre-arm check of compass variance if arming in Loiter, PosHold, Guided
    b) always check GPS before arming in Loiter (previously could be disabled if ARMING_CHECK=0)
    c) sanity check locations received from GCS for follow-me, do-set-home, do-set-ROI
    d) fix optical flow failsafe (was not always triggering LAND when optical flow failed)
    e) failsafe RTL vs LAND decision based on hardcoded 5m from home check (previously used WPNAV_RADIUS parameter)

Thanks for your testing!

You need to be a member of diydrones to add comments!

Join diydrones

Email me when people reply –


  • Hi Leonard,

    An update on this. I have done some manual tuning on Roll using the Dave C method. The results are ok but I note a couple of things:

    Roll_P needs to be quite high for good response, its much too soggy otherwise

    Roll_I set to the same level results in unflyable oscillations.

    So I conclude that autotune will never be able to tune this copter if it sets Roll_P == Roll_I.

    Roll still feels less responsive than pitch. Not sure how I can improve this. I'm also going to try go back to simon K to see what different that makes (but with active braking enabled).



    2015-11-20 13-10-14.bin

    • I've drastically improved roll responsiveness by upping ATC_ACCEL_R_MAX. Autotune had set this to a very low value (53000), I increased it to 180000 and now the copter feels much, much more responsive.

      So the $1m question is if I now try autotune on this - which actually feels pretty good - will it make it better or worse?

      Too much wind at the moment to try it out!

      • Finally completed an autotune on roll. It resulted in very low Roll_P (0.04) and Roll_I (0.04) - very different to my manual tune above which has Roll_P (0.16) and Roll_I (0.03). Difficult to say which feels better as they both fly quite well. The autotune version seems softer. Be interested in opinions on which is better and pros/cons of both.

        • Autotune log


  • Hello Everyone,
    I'm doing some test with some new multirotor.

    I have problem with land detector.

    This is the video.
    Attached to this post the log.

    Can you find the problem?

    AC 3.3 Stable on VrBrain 5.


    • Developer

      I think you've stumbled onto a little loop hole in our landing detector logic.

      The THR_MID is very low (only 300) and the THR_MIN is quiet high (200).  This means the throttle out can never get to 1/2 of THR_MID (i.e. 150) so the landing detector won't work.

      So I think either THR_MID should be raised (to maybe 400 although it depends upon the frame) and/or THR_MIN reduced (130 is the default.. it must be brought under 150).

      • THR_MID and THR_MIN changed. Problem solved =D Now I can land my copter in the correct way.

        Thank you very much Randy, you solve everything (=

    • Developer

      Hi Andrea,

      Could you please do an accelerometer calibration and set your log bitmask to 157693 and do this test again. This should give us the logs we need.

  • I had an unpleasant throttle cut when flicking from Stabilize to Loiter on the new 3.3.1 the other day, and I haven't been able to figure out what caused it yet.  I have just upgraded from 3.2 which has flown fine for a long time, but on my second or third flight, after landing to fix the camera and then taking off again, the moment I flicked into Loiter from Stabilize it dropped (3 metres) to the ground out the sky.  From the logs I see that just after mode change to Loiter at 10:53:40.932 Throttle was cut from 500 down to 129  over a couple of cycles without me moving the throttle stick from centre position.

    It's a DJI S800 Evo running pixhawk, good conditions, no sun, no wind. It had been flying fine on Arcudopter 3.2 for several months until now.

    It just suddenly happened on 3.3.1 on my second flight. (The first flight went ok, although the copter seemed very jumpy).  - GPS situation looks good,  Vibrations look ok. Is it an EKF problem?

    I'm Reluctant to try it again so I might downgrade to 3.2 again for now...


    ArduLog 3.3.1 sudden drop on Loiter mode.BIN

    • Developer


      First off, I'm very sorry about your crash.  .. and unfortunately I believe you've uncovered a bug.  The issue appears to be that the desired climb rate is not being reset properly as the vehicle enters Loiter.  Instead of being reset to zero (or better yet the vehicle's current climb rate), it's being left as whatever it was the last time the vehicle was in Loiter.

      Below is a graph of the issue recreated in the simulator.  Around the middle (see "6") the vehicle is in Loiter and the pilot's throttle is pulled low which demands a -ve climb rate (5m/s in this example).  The vehicle is next switched to Stabilize, throttle is raised to mid and then switched back to Loiter.  At this point you can see the climb rate (in green) dips as the desired climb rate starts again at -5m/s instead of zero.

      3702604102?profile=originalSo, very crappy, and sincere apologies.  I'll post a warning and we will fix the issue and push out Copter-3.3.2-rc1 for testing asap.  I imagine that will take a day or maybe two.  If we can get the -rc tested, we could have an officially fixed version within two weeks.

      Thanks very much for the report though!

This reply was deleted.


DIY Robocars via Twitter
DIY Robocars via Twitter
DIY Robocars via Twitter
DIY Robocars via Twitter
RT @f1tenth: Say hi to our newest #F1TENTH creation for @ieee_ras_icra next week in Philly. It’s going to be huge! 😎 🔥 @AutowareFdn @PennEn…
DIY Robocars via Twitter
May 11
DIY Robocars via Twitter
May 8
DIY Robocars via Twitter
RT @SmallpixelCar: Noticed my car zigzagged in last run. It turned out to be the grass stuck in the wheel and made the odometry less accura…
May 8
DIY Robocars via Twitter
RT @SmallpixelCar: Test my car. RTK GPS worked great. Thanks @emlid for their support.
May 8
DIY Drones via Twitter
RT @chr1sa: @kane That's @diydrones circa 2009. Still have a box of those Canon cameras that we used to strap into planes, just like this.…
May 3
DIY Robocars via Twitter
RT @chr1sa: Our next @diyrobocars race is going to be outside at a real RC racetrack in Fremont on May 28. Fully autonomous racing, head-to…
Apr 30
DIY Robocars via Twitter
RT @f1tenth: Our Spring 2022 F1TENTH course @PennEngineers is coming to an end with a head-to-head race as a big finale. So proud of our st…
Apr 26
DIY Robocars via Twitter
RT @DanielChiaJH: I wrote a thing! Throughout the development of my @diyrobocars car I've been using @foxglovedev Studio to visualize and d…
Apr 23
DIY Robocars via Twitter
RT @SmallpixelCar: My new car for high speed. Low body, everything ( @NVIDIAEmbedded Jetson Xavier NX, @emlid RTK GPS, IMC) under the deck…
Apr 23
DIY Robocars via Twitter
Apr 21
DIY Robocars via Twitter
RT @f1tenth: F1TENTH Race training setup @PennEngineers for our upcoming ICRA2022 @ieee_ras_icra competition. @OpenRoboticsOrg @IndyAChalle…
Apr 21
DIY Robocars via Twitter
RT @fatcatFABLAB: Proud to be hosting a restarted DIY Robocars NYC Meetup April 26. Come by if you want to talk about and race self-driving…
Apr 17