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 –


      • MR60

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

        I understand from this graph the 40 cm offset is confirmed on PWM.

        • Distributor

          according to my measurements the I2C delivers very good results, being close to the expected value.

          PWM has an offset (I used the standard settings, as described in the wiki), which does actually increase slightly with distance (see the graph below).

          My understanding was that I2C could get locked up (due to the LIDAR-Lite sensor), and it was therefore recommended to use PWM instead of I2C to connect to the Pixhawk.


          • Developer


            Really nice analysis.  So setting the RNGFND_OFFSET to 20 would bring the pwm and i2c values closer together although, they strangely don't seem to be exactly lined up even after taking the offset into account.  It seems like either the sensor or the pixhawk is not getting the pwm value quite right.

            I hear the LidarLite will not cause the I2C to lock-up anymore but it puts a nasty spike on the I2C line fairly regularly as it takes a reading.  That spike will apparently ruin other i2c traffic that's happening on the same i2c line .. that means some compass readings will be lost.  We've seen the spikes but we haven't confirmed it's effect on the compass.

            I'm going to set-up an optflow and lidar-lite on a copter next week so I'll go through the set-up in detail and see if I also run into some problems.

    • Developer


      I talked about this with Tridge and Philip and they've also noticed the offset in the sensor.  For Tridge the offset was different for each sensor but Philip's three sensors all had an offset of about 40cm (similar to what you're seeing I think).  Could you try setting the RNGFND_OFFSET parameter to 40 (=40cm) to see if it correct the problem?

    • Hi Hugues, nice work as usual.

      Just to be clear, you were using the I2C interface to get the measurements on Arduino. And then you are comparing it to the PWM measurements on the Pixhawk?  I'm not sure this is a firmware issue, as much as it is likely to be analog signalling errors.  PWM is not digital, it is time-analog, and is subject to noise.  This is the cause of "jitter" on PWM RC inputs, and would be expected on a PWM range measurement as well.

      It's possible something can be done on the Pixhawk firmware to improve this.  But it might also be the best that can be achieved already.

      • MR60

        You are right, I tested with pwm on Pixhawk as the I2C interface does not seem to work yet. I am sure Randy and you will find the solution ;)

        • Developer

          The I2C interface on the Pixhawk does work, but the sensor / bus may lock up while it is being used.  Obviously not an issue for bench testing.

          It would be great if you could repeat your test using the I2C interface so we have that as a data point and can compare the I2C interfaces for both systems.

          • MR60

            Hi Craig,

            Yes that is possible but I'm at the moment ordering more pixhawks at 3DR (I'm a new reseller) as I am out of everything ! So I could only test with an arduino laying on my bench for the moment...

      • mmmh yes you might be right.. But from what I heard, most have about 40cm offset (+/-5cm). If its analog errors, does it not to have be more spread? I also have these errors just with pix and lidar powered and nothing else on the bench. 

    • Developer

      Nice analysis Hugues.  So I guess we have some debugging we need to do on the px4 lidar-lite driver!

This reply was deleted.


Shivchand Jaysaval liked Shivchand Jaysaval's profile
Aug 25