diff --git a/ArduPlane/ArduPlane.pde b/ArduPlane/ArduPlane.pde index 61fef59a701af..26264479734d3 100644 --- a/ArduPlane/ArduPlane.pde +++ b/ArduPlane/ArduPlane.pde @@ -1,6 +1,6 @@ /// -*- tab-width: 4; Mode: C++; c-basic-offset: 4; indent-tabs-mode: nil -*- -#define THISFIRMWARE "ArduPlane V3.1.2beta3" +#define THISFIRMWARE "ArduPlane V3.2.0" /* Lead developer: Andrew Tridgell diff --git a/ArduPlane/release-notes.txt b/ArduPlane/release-notes.txt index c519b86126f2a..c21d63d51097a 100644 --- a/ArduPlane/release-notes.txt +++ b/ArduPlane/release-notes.txt @@ -1,10 +1,115 @@ -Release 3.1.2beta2, November 16th 2014 ----------------------------------- +Release 3.2.0, November 25th 2014 +--------------------------------- The ardupilot development team is proud to announce the release of -version 3.1.2 of APM:Plane. This is a major release with a lot of +version 3.2.0 of APM:Plane. This is a major release with a lot of new features. +The changes span a lot of different areas of the code, but arguably +the most important changes are: + + - automatic stall prevention code + - PX4IO based RC override code on FMU failure + - I2C crash bugfix + - new autoland code from Michael Day + - compass independent auto takeoff + +I'll go into each of these changes in a bit more detail. + +Automatic Stall Prevention +-------------------------- + +The automatic stall prevention code is code that uses the aerodynamic +load factor (calculated from demanded bank angle) to adjust both the +maximum roll angle and the minimum airspeed. You can enable/disable +this code with the STALL_PREVENTION parameter which defaults to +enabled. + +When in stabilised manual throttle modes this option has the effect of +limiting how much bank angle you can demand when close to the +configured minimum airspeed (from ARSPD_FBW_MIN). That means when in +FBWA mode if you try to turn hard while close to ARSPD_FBW_MIN it will +limit the bank angle to an amount that will keep the speed above +ARSPD_FBW_MIN times the aerodynamic load factor. It will always allow +you at bank at least 25 degrees however, to ensure you keep some +maneuverability if the airspeed estimate is incorrect. + +When in auto-throttle modes (such as AUTO, RTL, CRUISE etc) it will +additionally raise the minimum airspeed in proportion to the +aerodynamic load factor. That means if a mission demands a sharp turn +at low speed then initially the turn will be less sharp, and the TECS +controller will add power to bring the airspeed up to a level that can +handle the demanded turn. After the turn is complete the minimum +airspeed will drop back to the normal level. + +This change won't completely eliminate stalls of course, but it should +make them less likely if you properly configure ARSPD_FBW_MIN for your +aircraft. + +PX4IO based RC override code +---------------------------- + +This releases adds support for PX4IO based RC override. This is a +safety feature where the stm32 IO co-processor on the PX4 and Pixhawk +will give the pilot manual control if the main ArduPilot +micro-controller fails (or the autopilot code crashes). This is +particularly useful when testing new code that may not be stable. + +As part of this new RC override support we also have a new +OVERRIDE_CHAN parameter, which allows you to specify a RC input +channel which can be used to test the RC override support. See the +documentation on OVERRIDE_CHAN for details. + +I2C bugfix +---------- + +This release fixes another I2C bug in NuttX which could cause the +Pixhawk to lock up under high I2C load with noise on I2C cables. This +bug has caused at least two aircraft to crash, so it is an important +fix. I hope this will be the last I2C crash bug we find in NuttX! An +audit of the code was done to try to confirm that no more bugs of this +type are present. + +New Autoland code +----------------- + +This release incorporates some new autoland capabilities contributed +by Michael Day. The key new feature is the ability to trigger an +automatic landing when a RTL completes, which for the first time +allows a user to setup their aircraft to land using only transmitter +control. + +The way it works is there is a new parameter RTL_AUTOLAND. If that is +set to 1 and the aircraft reaches its target location in an RTL it +will look for DO_LAND_START mission item in the mission. If that is +found then the aircraft will switch to AUTO starting at that section +of the mission. The user sets up their land mission commands starting +with a DO_LAND_START mission item. + +There is more to do in this autoland support. We have been discussing +more advanced go-around capabilities and also better path planning for +landing. The code in this release is an important first step though, +and will be a good basis for future work. + +Compass independent takeoff code +-------------------------------- + +The auto-takeoff code has been changed to make it more independent of +compass settings, allowing for reliable takeoff down a runway with +poor compass offsets. The new takeoff code uses the gyroscope as the +primary heading control for the first part of the takeoff, until the +aircraft gains enough speed for a GPS heading to be reliable. + +Many thanks to all the contributors, especially: + + - Paul and Jon for EKF and TECS updates + - Bret and Grant for stall prevention testing + - Michael for all his autoland work + - all the work on NavIO, PXF and Zynq by John, Victor, George and Siddarth + - The PX4 team for all the PX4 updates + +More complete list of changes: + - allow GCS to enable/disable PX4 safety switch - make auto-takeoff independent of compass errors - report gyro unhealthy if calibration failed @@ -22,7 +127,7 @@ new features. - added STALL_PREVENTION parameter - fixed handling of TKOFF_THR_MAX parameter - added ARSPD_SKIP_CAL parameter - - fixed flaperon trim handling (WARNING: need to retrim flaperons) + - fixed flaperon trim handling (WARNING: may need to retrim flaperons) - EKF robustness improvements, especially for MAG handling - lots of HAL_Linux updates - support wider range of I2C Lidars @@ -32,6 +137,22 @@ new features. - AP_Mount: added lead filter to improve servo gimbals - Zynq and NavIO updates - fixed preflight calibration to prevent losing 3D accel cal + - perform a gyro calibration when doing 3D accel cal + - added DO_CONTINUE_AND_CHANGE_ALT mission command + - added support for DO_FENCE_ENABLE mission command + - allow gyro calibration to take up to 30 seconds + - improved health checks in the EKF for DCM fallback + +Note: If you use flaperons you may need to re-trim them before you +fly due to the change in flaperon trim handling. + +I hope that everyone enjoys flying this new APM:Plane release as much +as we enjoyed producing it! It is a major milestone in the development +of the fixed wing code for APM, and I think puts us in a great +position for future development. + +Happy flying! + Release 3.1.1, September 12th 2014 @@ -665,5 +786,5 @@ as we enjoyed producing it! It is a major milestone in the development of the fixed wing code for APM, and I think puts us in a great position for future development. -Happy flying! +Happy flying!