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 –


      • That is great. Which gps ( and link to the laptop running mission planner ) is recommended on the "me" side?

        Thank you



        • Note to self: google USB GPS and there are the answers...

          wiki follow me

    • Developer


      you know we don't actually have a 'follow-me' feature in copter.  It's all just done with guided mode's position or velocity controllers.  We could add a follow-me mode but another option is for the GCS developers to do it... and I think tower supports all kinds of things like orbit and "lead-me"... I think..  I haven't tried it myself..

  • I just ran into a strange issue on my Pixhawk (Genuine 3DR). It's been months since I last had time to work with it and decided to try out 3.3 as I needed a good challenge. I previously had been running 3.1.5 and everything worked fine. Since I am running a Spektrum DX8 trans, I am using an Orange RX and feeding the Pix through SBUS. I have to switch the channel order which was no problem on 3.1 but after loading up 3.3 every time I would change the channel order in Mission Planner and restart I would get some weird combination when trying to calibrate the radio. I could switch to a known order I had just tried and it would show up completely different in the calibration screen. Nothing would give me a correct channel order, something was always swapped. I proceeded to erase the Pixhawk and put 3.2 on it and all works fine again.

    Did something get corrupt when I flashed 3.3 or is this some sort of bug? Should I try again? I spent almost 3 hours last night carefully writing down each combination and gave up when I realized that even combinations already tried weren't giving the same channel order in the cali screen.

    • My OrangeRX and LemonRX sit idle on the bench because of this (and related) issue. The channel mapping only half works (in 3.2.1 also), I would not risk trying it with this combo (same combo as me) until it's fully fixed, which is supposed to be coming soon.

      • Thanks Andy. Much appreciated.

        • Does anyone know when the RCMap issue might be fixed? I know Andy said "soon" but was hoping someone might be able to narrow it down a bit.

  • MR60

    Coming back on Lidarlite measurements issue with 3.3 firmware, in order to make an objective assessment, I setup a test bench as follows:

    -Lidarlite is in a fixed position

    -A 5 meter ruler is fixed with its zero origin corresponding to the base of the lidarlite unit

    -A wood panel target is positioned every 10 centimeters

    -A measurement is made with an Arduino mega board running I2C code from the manufacturer of lidarlite:

    -All measurements that were giving an error of 5cm of more were repeated multiple times to exclude bad measurements.

    The results are shown in the graph below, plotting measured distance versus real distance:

    3702000768?profile=originalThis graph confirms that the obtained precision remains overall in the order of a couple to a few centimeters; except for strange measurement points like at 400 cm that I could not get better (eventhough I tried multiple times).

    The graph confirms also that any measurement under 60cm is not reliable. This is far more than the 20cm that is documented in the wiki. I would suggest to setup a minimum of 50cm in the parameter RNGFND_MIN_CM (rather than 20 cm).

    The graph confirms there is an issue in firmware 3.3 which produces wrong lidarlite measurements, for the same hardware unit (so exclusing HW variance), by about a 10x factor (40-50cm) versus the precision obtained through Arduino.

    • Distributor

      I have repeated the test, connecting the LIDAR-Lite sensor to a Pixhawk via PWM and I2C

      • LIDAR-Lite is in a fixed position
      • a 4 meter ruler is fixed, with zero corresponding to the top of the LIDAR-Lite unit
      • a wood panel target is positioned every 10 cm
      • the sonarrange value is recorded
      • at each distance three separate measurements are made, the average value is plotted on a graph

      for PWM:

      • the sensor is connected to AUX6 and AUX5 according to the wiki
      • the resistor is installed (470 Ohm)
      • the servo rail is powered through a BEC
      • software - ArduCopter 3.3 RC4
      • RNGFND_TYPE = 5
      • RNGFND_STOP_PIN = 55
      • BRD_PWM_COUNT = 4
      • RNGFND_OFFSET = 0
      • RNGFND_MAX_CM = 4000
      • RNGFND_MIN_CM = 20

      for I2C

      • the sensor is connected to I2C according to the wiki
      • the sensor is powered through a BEC (ground is connected to the servo rail)
      • software - ArduCopter 3.3 RC4
      • RNGFND_TYPE = 4
      • RNGFND_MAX_CM = 4000
      • RNGFND_MIN_CM = 20

      [the raw data is attached]


      lidar lite measurements.ods
      • MR60

        thx very much for doing the I2C test. So no difference in measurements between my measurements on Arduino & I2C / Pixhawk & PWM / Pixhawk & I2C. Does this mean there are no more issues with latest firmware 3.3RC4 using lidarlite on I2C interface & pixhawk ?

This reply was deleted.


David Hori liked Isabella Domi's profile
Jan 12