This is a minor release with a number of important bug fixes and some small feature additions.
The most important general fixes are for an I2C device detection bug and fixing the implementation of MANUAL_RCMASK.
There are quite a number of small fixes in lots of areas, plus big improvements to the handling of tailsitter transitions.
Another significant change is to the handling of transitions from RTL to QRTL when Q_RTL_MODE=1. We now transition to QRTL at a distance which is the maximum of RTL_RADIUS and a distance calculated based on a new Q_TRANS_DECEL "transition deceleration" parameter. That allows you to tune the amount of deceleration you want in the transition according to how much drag your quadplane has. This also means it automatically accounts for wind speed and approach speed in calculating the transition point.
We have also added a new Q_OPTIONS parameter which is a bitmask of option flags to control quadplane behaviour. We have three options so far. The first is to allow for keeping the wings within LEVEL_ROLL_LIMIT degrees during transitions, for users that prefer transitions to be kept level. The 2nd and 3rd options are to treat NAV_TAKEOFF as NAV_VTOL_TAKEOFF and NAV_LAND as NAV_VTOL_LAND in quadplane missions, so that you can use GCS software that doesn't know
about the VTOL takeoff and land commands.
Other changes include:
- allow vertical takeoffs in GUIDED mode with Q_GUIDED_MODE=0
- fixed a bug in implementation of MANUAL_RCMASK
- eliminate airspeed positive bias after offset zero
- prevent quadplane controller windup on the ground
- added Q_MAV_TYPE for setup of VTOL vehicle type for QGC
- improved performance of FlightAxis SITL
- support LOITER_TO_ALT in quadplanes
- fixed a bug in TECS related to descending quadplane transitions
- added Q_OPTIONS for controlling roll during transitions and allowing for fixed wing takeoff and landing
- fixed a race condition in IMU logging
- fixed a race in i2c device probing
- log critical messages while disarmed
- added IST8310 compass on FMUv3 I2C
- probe for QMC5883 by default
- avoid double detection of AK09916 compass
- smooth out tailsitter transitions in both directions
- fixed use of RTL_RADIUS for QRTL threshold and added Q_TRANS_DECEL
- fixed course unlocking with rudder in CRUISE mode
We hope you have as much fun flying this release as we had producing it.