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
I tested 3.3 today with a early model lidar-lite attached using the PWM interface, following the wiki instructions.
It appears to work hand-held (sonar alt makes sense while disarmed.) However, I had rapid, short climbs when switching into alt hold or pos hold.
My quad is a bit heavy for it's size, 400 class, 8" props, 1.8kg but flies fine on 3.2.1. Winds were light and variable.
Here's the flight with Lidar-light active. Here's one without.
Also, I'll add to the report that Pos hold is not showing up as a valid mode, but only with the lidar active.
Are there any plans in the future for Altitude Verification/Input using LidarLITE?
I noticed an immediate improvement on my newly built quad. It takes off much more nicely and descent is smoother. No Auto Tune done yet, but just did one yesterday with 3.2.1. Based on comments I think I'll wait.
That's my 2 minute observation report :)
Is there any more information on what changed to reduce the CPU load so drastically?
I hesitate to respond because I'm pretty vague on this one, but just to try to answer... It was something like, the processor was spending a lot of time doing stack overflow checking or something, and we don't need to do that at all because we never use dynamic memory allocation. Basically, it was spending a lot of time doing something that we didn't need it to be doing. It wasn't a change in the actual main code.
Did a first test with 3.3-rc1 today. The F450 flew quite nice with the default settings, did an Autotune and it is a little bit more rapid after the autotuning but is seems as it doesn't stabilize as quickly as before the autotune
PID settings before and after tuning are in the end of the video.
http://www.maciej.se/F450new.html#NewVersion
hi Maciej,
I did an autotune and it maybe similar with your test. After I did autotune, it was perfect, but when I went to fly another day with a full battery 6s, the voltage was about 25v (higher than the voltage during autotune), it was very unstable. So this problem maybe result from battery voltage. During autotune, batt voltage is lower, and PID value from autotune is suitable at that time, but when use a full batt, those PID values become unsuitabe, accurately, too large.
How do think about that?
Thanks!
Eric
Hi Maciej,
Yeh, that is a bad tune. Can you provide a log file of the tune so I can have a look.
I have made some improvements to Autotune that will be out in the next release candidate. It would be great if you could redo your tune then and let me know how it goes.
Thanks!!
It would be really useful to be able to tell autotune what size the drone is and what application it is used for and tune accordingly. I have an 800 and the 3.2 tune makes it far too twitchy for video work.
Hi Terry,
That is why we have these parameters:
ACRO_YAW_P,3
ANGLE_MAX,4500
ATC_ACCEL_P_MAX,75000
ATC_ACCEL_R_MAX,75000
ATC_ACCEL_Y_MAX,18000
ATC_RATE_FF_ENAB,1
RC_FEEL_RP,100
Autotune will set them to their highest safe value so after you have done just drop them back to the value you like. Then you get the best of both worlds. The numbers I have above I think are a good soft setting but you can go as low as 54000 on roll and pitch accel.
So the tuning process I recommend is do an Autotune then change the parameters above to get the feel you want. Then you can apply them to any copter from a 250 to a 1200 and it will fly the same (assuming the parameters are all less than what autotune generates).