VTOL RTL behaviour?

The way I understand it: When using RTL in a VTOL plane with Q_RTL_MODE parameter set to 1 the behaviour is to RTL at A): ALT_HOLD_RTL(100m), then within B): RTL_RADIUS (80m) it will switch to C): QRTL, slow to fly at D): Q_WP_SPEED (5m/s) and descend to E): Q_RTL_ALT(15m) initially, then down to F): Q_LAND_FINAL_ALT (6m) then land.

In the SITL the altitude at the point C) is still way too high, so the quadplane spends a very long time hovering, coming down, using lots of battery to land. So currently it seems to fly to Home at ALT_HOLD_RTL all the way until over Home, and then only starts descending once right over Home, slowly down to E).

How to get it to start the descent to Home at B) so that it reaches E) by the time it is over Home?

A diagram to explain it better:

It’s the same in Copter, the issue here is really the large amount of battery reserve used to descend from RTL altitude, if one has plenty battery capacity to spare then it’s not an issue but what multirotor has that to spare?

Why dont you, do land start, then loiter to alt 30 (Fixed wing more), then rtl from already low alt, but close to base.

Yes, that is an option, it does however open the door to operator errors and increased workload due to the extra waypoints that need to be added, which if the operator makes a mistake can be disastrous.

An reliable autonomous method would be a very desirable here. Click and forget, which is what this system is generally heading for, is it not?

I was flying a VTOL with one of the developers not long ago and asked about this very situation. He said the plane should descend on the way back and indeed it did when he was flying it but when I use QRTL I get the same behavior that you have outlined.

It really is an issue so I’m just going to have to adjust my workflow to make sure the plane is lower than the grid I’m flying before invoking QRTL. I totally agree with you that having the plane descend to the set RTL height on the way back to the launch point would be great.