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!
Replies
Log files - https://www.dropbox.com/sh/qb1quw427ak72hf/AADLxYfHgvbjQBSp8WbIRMkB...
I must be missing something because I can't think why the highest vibrations are not now in the horizontal axes. Do most people have similar values for all 3 axes or could the Z axis be more sensitive?
It's normal for the Z-axis (vertical) to have higher vibrations. We think it's because the vibrations are largely caused by the propeller passing over the arms of the vehicle.
I'm reasonably confident the reporting is correct. There's not much too it really.
In the log https://www.dropbox.com/sh/qb1quw427ak72hf/AADLxYfHgvbjQBSp8WbIRMkB... the first half shows high VibeY as it is on its side and then it corrects its attitude showing high VibeZ ending with a 'crash' error. No harm as it was just being suspended on its side.
Philip,
The vibration calculation code is here and it doesn't have any special code that should affect the vibration levels based on orientation as far as I can tell. From the logs it appears the Z-axis vibrations are always the highest regardless of orientation although I can also see the X, Y are higher in the "on right side" log - that could be environmental though perhaps.
I get much higher reported on the Z-axis and have never had a problem. I'm not convinced the reporting is accurrate ...
Flying 3.3 rc8 on a 250 class racer. Just got it built. I use a 1300mah 3 cell battery.
I am trying to do an autotune. Auto tune starts and gets past the autotune of the roll and into the pitch autotune. I only get about 5 minutes of flight time, and the autotune doesnt finish before I run out of battery.
Is it possible to do a 3 step autotune? i.e. during the first autotune session it will tune the roll. Then you land and save those pids, then you switch to pitch autotune, land save those pids and finally do a Yaw autotune?
I've shut off everything I can to get max flight time, and I just cant get the autotune finished before I run out of batteries.
Thanks for your help!
Scott...
Nevermind I found it :)
There’s also a new AUTOTUNE_AXES parameter which can be used to enable just a single axis:
7 = do all axis
1 = roll only
2 = pitch only
4 = yaw only
Yes, Setting the autotune_axis to 1 (Roll only) 2 (Pitch Only) and 4(Yaw Only) will allow you to do as you've requested. Default is 7
Thank you. Looks like we posted at the same time :)
I few two short flights on 3.3rc8 this morning after many successful flights on other days. In both cases I experienced a WTF moment involving a persistent loss of manual influence over the craft. Both times I took off in loiter mode (I get lazy sometimes). The first time I immediately had no positional control at all (only altitude control) but I managed to land, hard, but safely, just before it drifted into the house. The second flight after a power cycle was normal for a minute, then i lost positional control again, this time at a higher altitude and, recognizing the symptoms more quickly, I switched to altitude hold and landed safely.
Examining the code and the logs, it looks like I must have an intermittent serial connection to my GPS. Most of the log shows normal GPS messages, but in one case, there is a gap of over a minute with no GPS data before the data resumes. I'm sure I can fix the connection, but the current behavior in the face of this type of failure seems very bad.
I believe in both cases the code detected the period of missing GPS data and entered "constant position mode" (See the comments in AP_NavEKF.cpp). The comments imply that the only way to recover from this condition is to disarm and rearm.
I see at least four major problems with this: First, why was I allowed to take off in loiter mode while in this GPS lost state?
Second, when the GPS data stream is restored, why doesn't the EKF code adapt and begin using the data again?
Third, why not allow manual positional control even in this state? If the EKF is functioning via inertial data only well enough to attempt to maintain position, it may as well change the target position in response to pilot directives. I can understand the "hold here" behavior in auto mode, but allowing more control in loiter mode might allow a safe landing even without understanding the problem.
Fourth, I think I may have heard a report of "lost GPS" or something to that effect a while before I took off the first time, but when I checked the display, tower continued to report a nice small HDOP and high satellite count and it allowed me to arm and takeoff in loiter mode. Though in hindsight, I suspect the GPS icon may have changed in a subtle way as it did on the second flight. Should there be a more obvious indication that the craft is in a failed state?
Am I missing something? Does it not recover in any mode? Should I file a bug?
Overall, 3.3 is looking good!
Thanks,
--Brad