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!
I have used standard Octocopter code to fly an H-shaped Octocopter (like your hex shown, but with 8 rotors). It worked out OK.
I had a quick look. Has this vehicle flown before?
I don't see anything wrong though I'm not the expert in multirotors. I see your motor outputs are about 1250uS PWM on the first test. Then the second test they don't go above 1500, I think it flipped over?
I suspect it might just be that your multirotor is overpowered, or the ESC's aren't calibrated properly?
The copter does not slow to Land Speed until it believes it is 10m above Home Altitude. Your WPNAV_ACCEL_Z is set to 4.5 m/s. At this speed, it would hit the ground in 2.2 seconds. Your WPNAV_ACCEL_Z is set to 1.5 m/s/s. It would take 2.7 seconds to decelerate to 0.45m/s from 4.5 m/s. The copter did begin to slow and impacted the ground at about 2 m/s.
So it appears everything functioned as it was programmed to. I think the algorithm could be improved if it looked at the parameters to determine when it should begin to slow down, instead of using a 10m hard-coded setting.
thanks for looking into Rob!!...but it used to work just fine with these same parameters in 3.2.1, I dont recall crash landing like that....i do recall very well what you mention and it slowing down at 10m or so...but not now, at least visually, it doesnt seem to slow down at all...or doesnt try hard enough...
should I decrease the WPNAV parameters both?
well I meant I should increase the accel_z and reduce the accel right?
Ooops, WPNAV_ACCEL_Z is set to 4.5m/s should be WPNAV_SPEED_DN = 4.5m/s
I would decreased the WPNAV_SPEED_DN, and increase the WPNAV_ACCEL_Z. If you used 250 and 250, you'd have 2.5 m/s and 2.5 m/s/s. At 2.5 m/s, you have 4 seconds from 10m to impact, but would only take 1 second to decelerate to zero.
You can balance those off however you like.
It is curious, when it passed 10m, it didn't even begin to try decelerating for 500 milliseconds (half a second). I wonder if that's due to a jerk limiter? By that point it was already at just 7.5m. So it had just 1.67 seconds to stop.
I think this was just a rationalization of what the value needs to be. I've been pushing for it to be 4500 for a long time, which is what I typically run.
Another problem is that it appears to have impacted the ground while it thought it was at 2m still. So obviously there was a height estimation error.
So much has changed since 3.1.5 and I forgot so much since 3.2.1
I'm sure it's been discussed and answered over and over, BUT, if after Auto Tune the copter seems to not hold well in slightly windy conditions, should AUTOTUNE_AGGR be increased or decreased. I did it at .07.
Upgrading AC from 3.2.1 to 3.3 caused PIDs confusion.
I've never changed PID values for my PixHawk based quadcopter before. I always used the default values, and it flew perfectly. But one day after upgrading the firmware to AC3.3 (I did all necessary sensors re-calibration) my quad started flying very wobbly. It was harshly oscillating in any flight mode, especially when I let it just hover and do not touch a controller. It was twitching instead of being calm. I've never faced anything like that before... Sample video: https://youtu.be/FBSDrych4wo
I realised that it's a PID related issue and I decided to run AutoTune - I thought it's the easiest way to sort it out. After facing a crash during the AutoTune session (gps stick + arm were broken) I understood that it won't be so easy. Video: https://youtu.be/NfqnJZm1NsQ
I've gone through the Arducopter wiki and some other tutorials on Youtube, and tried to tune PIDs manually.
At first it was rather successful - I decreased Rate P value a bit (from 0.150 to 0.126) and those crazy oscillations went away.
Then I've faced the same issue that I had during AutoTune session:
1. I move roll/pitch stick in one direction
2. The quad gets some horizontal speed
3. Then I harshly move the stick in opposite direction (for emergency breaking or to instantly change the flight direction to the opposite one)
4. The quad tilts in that direction and starts resisting the speed and attitude (what is absolutely expected)
5. Then it suddenly kind of flies off the handle... and does a half-flip/flip of death with rotation around the vertical axis
Please see the video, which demonstrates several flips like that: https://youtu.be/jq_N8E_c4M4 (could provide log files if needed)
I tried to increase Rate I value (from 0.100 to 0.150) to solve the issue. At first it seemed to help. I got rid of the flips at a low speed, but when the quad speeded up significantly it appeared again.
Unfortunately, I didn't manage to play with Rate D, because of the broken GPS mast.
Gents, what parameter tuning could help me with the issue described above (flips)? Didn't try Rate D and Stabilize P yet.
Thank you in advance!
My quad details
Frame: custom 350mm V type (not Vtail)
Weight: around 1kg
Motors: SunnySky 2208 1100KV
ESC: Afro Opto 20a
Props: 8045 plastic
Battery: 4S 3300mah
FC: Pixhawk installed on a dampered plate
sorry to see your crash!!
Can you please provide a log of the flip and a couple of photos of your copter.
This is how you need to tune your copter.
Reduce Rate P, I, and D by 25% at a time, from defaults, until your copter is stable.
Increase Rate D until you start to see oscillations.
Reduce Rate D until you don't see oscillations
Increase Rate P until you see oscillations
Decrease Rate P until you see oscillations
Set Rate I equal to P
Check to make sure your copter is stable when quickly rolled and pitched to 45 degrees and the stick is let go. Don't hold the stick to build up speed, this test should be done as quickly as possible.
If the copter passes this test perform Autotune on each axis.