Developer

APM:Plane double release 3.5.3 and 3.6.0beta1

3689651507?profile=originalAs mentioned on the 3.5.2 release discussion we have decided to do a 3.5.3 release to fix a couple of important bugs found by users in 3.5.2.

The main motivation for the release is a problem with flying without a compass enabled. If you fly 3.5.2 with MAG_ENABLE=0 or no compass attached then there is a risk that the EKF2 attitude estimator may become unstable before takeoff. This can cause the aircraft to crash.

The other changes in the 3.5.2 release are more minor:

  • fixed loiter radius for counter-clockwise loiter
  • fixed the loiter radius when doing a RTL at the end of a mission
  • provide reasons to the GCS when a uBlox GPS fails to properly configure
  • support a wider variety of NMEA GPS receivers
  • use EKF1 by default if no compass is enabled

For those of you feeling a bit more adventurous you might like to try the 3.6.0beta1 release. There is still a fair bit more to do before 3.6.0 is out, but it already has a lot of new features and I have been flying it for a while now.

The biggest single change in 3.6.0beta1 is the update of PX4Firmware. This brings with it a lot of changes, including much better support for the Pixracer flight board.

There has also been a lot more work on QuadPlane support, which a new QRTL flight mode, plus support for using the forward motor in VTOL flight and active weathervaning support. If you are flying a QuadPlane you'll find the names of the copter rate control parameters have changed (just like they have in copter). You should be able to find the new parameters OK, but if not then please ask. I'll provide more detailed documentation with the final 3.6.0 release.

Detailed changes in 3.6.0beta1 include:

  • merge upstream PX4Firmware changes
  • new AC_AttitudeControl library from copter for quadplane
  • modified default gains for quadplanes
  • new velocity controller for initial quadplane landing
  • smooth out final descent for VTOL landing
  • changed default loop rate for quadplanes to 300Hz
  • support up to 16 output channels (two via SBUS output only)
  • fixed bug with landing flare for high values of LAND_FLARE_SEC
  • improved crash detection logic
  • added in-flight transmitter tuning
  • fix handling of SET_HOME_POSITION
  • added Q_VFWD_GAIN for forward motor in VTOL modes
  • added Q_WVANE_GAIN for active weathervaning
  • log the number of lost log messages
  • Move position update to 50hz loop rather then the 10hz
  • Suppress throttle when parachute release initiated, not after release.
  • support Y6 frame class in quadplane
  • log L1 xtrack error integrator and remove extra yaw logging
  • limit roll before calculating load factor
  • simplify landing flare logic
  • smooth-out the end of takeoff pitch by reducing takeoff pitch min via TKOFF_PLIM_SEC
  • added support for DO_VTOL_TRANSITION as a mission item
  • fixed is_flying() for VTOL flight
  • added Q_ENABLE=2 for starting AUTO in VTOL
  • reload airspeed after VTOL landing
  • lower default VTOL ANGLE_MAX to 30 degrees
  • Change mode to RTL on end of mission rather then staying in auto
  • implemented QRTL for quadplane RTL
  • added Q_RTL_MODE parameter for QRTL after RTL approach
  • reduced the rate of EKF and attitude logging to 25Hz
  • added CHUTE_DELAY_MS parameter
  • allow remapping of any input channel to any output channel
  • numerous waf build improvements
  • support fast timer capture for camera trigger feedback
  • numerous improvements for Pixracer support
  • added more general tiltrotor support to SITL

I flew both 3.5.3 and 3.6.0beta1 today and both are really flying nicely. I hope you all enjoy flying it as much as the dev team enjoy working on it!

Happy flying!

E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones

Comments

  • Developer

    @Cala, we aren't doing updates for the old APM2 any more so we froze development on APM1 and APM2 quite a while ago. The last release for APM2 was 3.4.0.

    We completely ran out of resources on the 8 bit processor on the APM2.

  • Developer

    @Kristian,

    Sorry to not replying to your report earlier. The discussion came up as part of a crash report from a user. That led Paul to investigate and he reproduced the issue and gave us a fix. I did a test flight with no magnetometer to confirm the fix. It really was a nasty problem if you don't have a mag enabled.

    Cheers, Tridge

  • Developer

    @Justin,

    Plane is getting many of the features of copter, and you can indeed fly a "wingless quadplane". There are still lots of features in the copter code which aren't in plane and I don't think it is likely that plane will become a full replacement for copter in the forseeable future. For a start it just wouldn't fit in the flash space available on most Pixhawk1 boards.

    It may be that some people fly copters using the plane firmware though. I've done that and it could be appealing for people who want a single firmware across a fleet of aircraft.

    Cheers, Tridge

  • Than'k Andrew for so excellent work!!!

    It's still possible to download in an APM?

  • Is the copter and plane code being unified for easier updates and mantaneince? Is the future of APM quadplanes where if you only have a copter or plane you set the parameter accordingly?
  • Hi,

    I reported an error on the compass issue here; http://discuss.ardupilot.org/t/ekf2-consistently-blowing-up-when-di...; but never got any reply. Where can I read the discussion you had about this issue?

    Regards,

    Kristian

  • HI

    need options CHUTE_SET_RC1, CHUTE_SET_RC2, CHUTE_SET_RC.. specify the position of the steering surfaces

    support fast timer capture for camera trigger feedback

    how many milliseconds?

  • Developer

    Thumbs up, thanks Andrew.
    I've to start doing experiments on Quadplane... :-)

  • Developer

    @Hughes,

    The full list of changes to PX4Firmware is quite large. We periodically sync with the upstream PX4Firmware tree as it makes it easier to contribute changes back and we benefit from the developments made by the px4 developers. As part of this particular sync we have contributed 29 patch sets to the PX4 project and also benefited from a lot of their changes in areas like device drivers and timer support.

    Two of the major motivations for doing the re-sync this time was the support for microsecond timer capture which allowed us to support very accurate camera feedback capture and better support for the Pixracer.

    Most of the changes in PX4Firmware actually don't affect ArduPilot at all as they are changes in the px4 flight stack (ie. the code to fly a fixed wing aircraft or multicopter). We don't use that code as we have our own flight stack, but we bring in the changes anyway as it helps to minimise differences in the two git trees which makes shared development of drivers and other infrastructure easier.

    Cheers, Tridge

  • MR60

    Thank you Tridge !

    I wonder what contains the PX4 firmware upgrade in 3.6? Is this a "middleware" layer between FC's hardware and the Ardupilot code ? Why was it upgraded (what's improved or coorected vs previous firmware ?)

This reply was deleted.