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
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!
Thanks for the reply about the AA.
How about logging settings?
hmn log file didn't seam to attach so here it is via google drive
Thanks for testing.
Looks like motor #4 (bottom back) is failing. It shows the classic signs which is sudden separation of the desired-pitch vs actual-pitch (it suddenly pitches back which is consistent with a rear motor failure) and the output sent to the back motor goes to full (i.e. it's trying to get more power out of the motor but it's not).
in my opinion, guys, not having reliable landing detection is a big problem for experienced and early adopters alike. Designing and building up craft for professional/research use and passing these large fliers onto pros is a big responsibility. Having to worry about them flying in Loiter (which will be a common practice for survey/imaging pros), then landing and having the rig flip on its side as they try to disarm, destroying expensive props at best and causing bodily or physical damage at worst, is enough to keep a guy awake at night.
Can we do better than "just switch to Stabilize"? My intention is to be constructive, here, and as an engineer, I'm happy to dive into code to help try out some potential patches.
Because for me, I can't reasonably write in a technical manual that they must get to Stabilize before landing to prevent a failure of landing detection for multiple reasons. First and foremost, we can't assume throttle parity. they might have throttle quite low in Loiter to allow for descent, so the same position might correlate to practically no thrust and we crash to the ground, or the opposite with higher throttle, and we have a perceived flyaway. Secondarily, giving a pro with enough to worry about as it is on the job shouldn't have to concern themselves with always flipping to an essentially manual flight mode just to get the craft on the ground and review imagery.
I've personally had at least two occurrences like this, one on a big hex spinning 16" props (running 3.2.1) that scared the daylights out of me and just a few days ago on a small Y6 (on 3.3 rc10). So it doesn't seem to discriminate for frame size or AUW. For me one of the triggers seems to be adjusting position while close to ground before landing, which is very common in even moderate wind to make sure you have a nice balanced landing, especially when you need to land on a particular spot due to topographical variation.
So - I'm looking for guidance from developers and community alike. How can we all work together to do better?
yes, I agree. I've learnt to land in landing mode/loiter, then the second it's landed to switch to stabilize and drop the throttle, but as you say that's not a great solution.
the devs have done quite a bit of work on the landing detector but then I think caused a few false positives where the craft then thinks it's landed (but hasn't) and drops the throttle so it then drops out of the sky. for me, it's better to have a tipover and lose a prop or two than have it drop out of the sky - i make sure to land it well away from me or anyone else for this reason, half expecting a tipover.
as I understand it, currently it 'feels' for the ground but doesn't really have any idea where it is, kind of like a blind man feeling for an obstacle. and if it's too optimistic, it will sometimes 'feel' something that isn't actually there, if it's too pessimistic it won't 'feel' what is actually there. as randy said in an earlier post, the real solution here is to use a range finder to actually know where the ground is - if we know from the rangefinder we're on on very near the ground then it's much easier to drop the power reliably, I guess.
hopefully this is something that can worked on for 3.4.
Copter-3.3-rc11 is now available through the mission planner’s beta firmwares link.
This has just one change from –rc10, instead of saying “Waiting for 3D Fix” during pre-arm it gives a detailed reason like “PreArm: Need 6 sats (have 5)”.
We're aiming to do a soft release of Copter-3.3 probably this weekend. So that will just be renaming -rc11 to Copter-3.3 and asking the general community to upgrade to 3.3 and report any issue into the APM Forum. We will let that go on for a couple of weeks and if nothing scary comes up we will replace 3.2.1 with 3.3 as the official, default for Pixhawk and other high CPU boards (APM2 will remain at AC3.2.1).
Thanks a lot Randy and all devs involved!
May I ask how did you eventually figure it out? Motors twitched or stopped? I have not noticed any of that. Were you able to solve that using logs somehow? Was the problem random or repeatable?
I don't get it as it flies nicely on the second try. It has always been the first flight that causes problems. I took the gimbal off and will test again today.
I use RTL and land once in a while and even land from a mission. They work every time for me. Landing detection has gotten way better than it use to be.
The thing is that I land often in Stabilize mode because of GPS Doppler effect from trees and building near my landing area. It is far safer to land in this mode than risk GPS drift causing the craft to veer off and hit something.
If your in an open area it should be fine to land in Loiter/Position hold or use RTL. Motors always spin down and stop. Too often people fly in front of there house and get unexpected results.
To get a good HDOP the satellites need to be very far apart from each other to get good contrasting angles which improves HDOP. This means that the satellite on the horizon that is blocked as you land is going to change the HDOP and your position.
It looks like a failure of the front left motor (#5 because you're using a hexacopter in the plus configuration) to start properly. It displays the classic signs of a motor failure, the actual roll/pitch separates from the desired suddenly and it rolls left in the direction of motors #3 and #5. In addition the output sent to motor #5 goes to maximum while it's opposite (#6, back right) goes to minimum.
It might not be a straight up motor failure but perhaps the motor needs to be calibrated or it's settings are different from the rest.
I would say best method is not to trust auto detection but put motor kill function on a switch and manually kill motors just as vehicle touches the ground. it is the only reliable method currently possible.
I hope may be in 3.4 if GPS signal analysis will be improved it may prevent constant vehicle repositioning as it is what happens when it gets closer to the ground and it tries to hop from one spot to another as gps starts giving wrong coordinates and it tries to readjust.
Larger vehicle in my opinion requires to have lidar by default so it would always be aware of its factual distance from the ground, so it is also partially a matter of a design.
Other simple good method is to turn on geofence in parameters as it will make sure vehicle will not arm until it hooks more of less properly into the GPS system.
Still, from a customer education perspective first thing to teach now is to show them how and when to use motor kill switch to prevent damage.
I'm pretty sure that is impossible now as they added another check that will not allow it to decided it's landed if the throttle is above 1/3 or something along those lines. So if your flying it's obviously above that.