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
This is weird. Seems that flashing it back to 3.2.1 and then connecting then flashing it back to 3.3-rc8 has fixed the issue for me as now it connects fine. Not sure how or why it fixed it but it seems to have and that means now I get to calibrate and test! Joy.
Craig,
There may be an issue with the auto detect of the flow control pins. Setting BRD_SER1_RTSCTS or BRD_SER2_RTSCTS to zero will likely sort it out. There is also a PR to fix the underlying issue but I'll need to test it first. Maybe we need to put that into -rc9.
Thanks Randy for your prompt answer! I have copied this info and will post it on the RGC group for the Lite board just in case anyone else has this issue.
I find it strange that flashing it back to 3.2.1 then back to 3.3-rc8 also fixed it as well though.
And yes I would think that putting the fix into rc9 will go a long way in avioding having to answer this issue over and over as I am pretty sure I am not the only one running 4 wire radios :)
Thanks again for the work around though!
Unless you changed some parameter in the process of flashing back and forth, the problem may still be there as it depends on timing and for me exhibits about half the time on 3.3rc7. If you post elsewhere, you might want to include a link to the bug report I filed. It has details about what causes the problem and a pointer to the pull request where it is fixed.
https://github.com/diydrones/ardupilot/issues/2532
It is interesting that more people are reporting problems that seem to be this issue than earlier. It seems like either more people are testing the release candidates or the timing changed again in rc8 and the issue is even more likely to happen than it was in earlier test releases.
Randy,
If you have any questions or comments on the new code for flow control detection in the PR, I'd love to see comments there. It has not gotten much attention yet. I'm sure you guys are extreamly busy trying to get 3.3 finalized! I did test the code rather completely before I submitted the PR.
--Brad
I have 2 visually similar 3DR radio transmitters - one works fine with any value of BRD_SER1_RTSCTS, other one required CTS/RTS to be soldered in and BRD_SER1_RTSCTS set to ON, otherwise it would not start telemetry feed in 2 power ups out of 5, in average.
With all that done as described it works fine at every startup now. I presumed it was something in the radio and not in the code, but, yes, I had that issue too.
It's a guess but I'd expect the two radios to have different settings for the RTS CTS checkbox. Above is a screen shot of one of my 3DR radios and I'm surprised to find that it's unchecked.
@Brad, I'll review that PR (or maybe Tridge will). As you guessed, it's just a matter of time and I've been concentrating on trying to get the EKF and it's vibration resistance sorted out with Paul.
Not to mention you're running a REALLY old SiK version. 1.9 is the latest from Tridge.
The following issue has been observed with RC-8:
- When going from inside to outside with the Pixhawk already powered up no issues.
- With pixhawk powered off, going outside and then powering up, sometimes bad Gyro message, and compass variance errors appear.
- The change in temperature is ~30-40Degrees F from inside to outside.
- Repeating the same process except letting the pixhawk acclimate to the new temperature before powering up. no issues.
I do not know if the Gyro message and or compass variance error are purely coincidence or not. Should the pixhawk be allowed to adjust to temperatures from location to location? can these temperature swings cause gyro / accelerometer errors? should the gyro's and accel be calibrated in the highest temperature area or does it matter?
Secondly after running Autotune and observing the ATUN data from the log file. I noticed it only provides Atun: RP and RD values. Does the autotune process not test various Rate "I" values? I know that following a successful autotune the rate P and I value for each axis always match. Should everybody expect to adjust their rate I value following autotune or does rate I typically not need to be changed from Rp for the average multirotor?
Maury,
That's an interesting report. Yes, the temperature change can affect both gyros and accelerometers. We've seen gyro drift of up to 5deg/sec in Planes caused by temperature changes. As you've discovered, if you let the vehicle sit there for a bit it will learn the new offsets and you should be able to arm and takeoff.
The compass variance could possibly appear because the gyros and compass info become inconsistent but we'd need to see a dataflash log to be sure (make sure to enable logging-while-disabled).
One issue is that the mission planner displays warnings for a minimum of 30seconds. This can make it appear that issues are lasting much longer than they actually do. There's a to-do item for all the GCSs to improve reporting of the EKF's state.
The new RTL_CLIMB_MIN parameter made me think of this. Not that I plan to try this, but someone will probably do it by accident eventually. What happens if your RTL altitude parameter is higher than your geofence altitude parameter? This would be an operator error in configuration, but curious what would happen. What happens if RTL_CLIMB_MIN causes you to climb higher than the geofence altitude?