trust

  • ****
  • 301
Re: East west oscillation in VelocityRoam
« Reply #45 on: January 20, 2021, 10:56:35 pm »
It occurs to me that is exactly what we would want it to do. Since it's normally best in hover to hold the nose pointed into the wind, if the wind drifts the aircraft backwards, the VR mode will turn it to try to point it back into the wind. There is also a vertical tail fin that assists with this. Although if the GPS thinks it's gone too far it'll try to turn back.
Well, anyway on to field testing!

trust

  • ****
  • 301
Re: East west oscillation in VelocityRoam
« Reply #46 on: January 21, 2021, 01:48:46 am »
I got in 5 flights, almost perfect no wind 67F sunny day. Up to 16 sats.
Most used fixedwing vehicle type, but I also tried VTOL mode.
VR mode for fixedwing does not seem to act the way I expected in VTOL mode - attempting to stay in the position it was when entering VR mode.
Instead, when entering VR mode it seems to lock in the VECTOR the aircraft is heading (in xyz) and tries to stay on that vector - same speed, same direction. If I was slowly climbing/sinking - it would keep on climbing/sinking. If I was flying in horizontal mode in a direction - it would just keep going at that speed and direction. Is there another mode that tries to hold position (position hold)?
  In VTOL mode, when starting in hover, it would begin to rock in pitch and accelerate rocking - the Hellaplane is very sensitive in pitch in hover mode - both the motors AND the rear elevons are moving to try to keep it level, which if too extreme starts rotating the wing. And I had the P values set to half of what I normally use. I can adjust these somewhat as the mixer gains for motor pitch and elevon pitch are separate - but the motor gains are at 12, the elevon at 100 - and for transitioning back to hover, I need all the elevon gain I can get - I have to be able to hold the nose up high enough that it will fly backwards - that will transition the wing. I noticed when using the pitch stick elevons did not move as much as when I did yaw, which was also set to 100. The pitch P=0.003.
  I would expect in INS13 attitude mode either VTOL or fixedwing in hover - the mix gains and PID values would yield the same results - but they seem to be very different in pitch at least. ?
  I later set the roll gains up quite high to eliminate the roll wobble it tends to have in horizontal attitude flight mode. Last flight was quite reasonably smooth.

Re: East west oscillation in VelocityRoam
« Reply #47 on: January 21, 2021, 01:00:32 pm »
Yes, because I am using servos to effect yaw on the elevons, I have a custom mixer set. So it apparently switched it to fixedwing.
Default is fixed wing.  TreatCustomAs is in VtolPfSettings.

That's probably why it yawed - it was drifting backwards - so it needed to move to a point behind its position so it yawed the aircraft thinking it needed to point that direction. It didn't really need to but no harm done - in one sense cool as then it always tries to point in whatever direction it's drifting to.
It shouldn't drift either for the same reason, unless the GPS fix is drifting, and then it doesn't think it is drifting and would still hold the yaw, but we know that VR does drift position.  It should never drift yaw.
But there is a setting in VtolPFSettings that says how the yaw responds in some GPS flight modes.  One setting says to hold yaw.  Another setting is to yaw into whatever direction it is traveling.  That second one can be dangerous when GPS fix moves a little this way and that.  It constantly yaws large random amounts.

Re: East west oscillation in VelocityRoam
« Reply #48 on: January 21, 2021, 01:06:50 pm »
It occurs to me that is exactly what we would want it to do. Since it's normally best in hover to hold the nose pointed into the wind, if the wind drifts the aircraft backwards, the VR mode will turn it to try to point it back into the wind.
It shouldn't drift yaw or in VR mode but we know it does and know several fixes.  :(
The wind drift would push it downwind, it would think it was flying in that direction, and the nose would turn downwind.  Pretty sure this is backwards of what you would want.  :(

Re: East west oscillation in VelocityRoam
« Reply #49 on: January 21, 2021, 02:37:54 pm »


Is there another mode that tries to hold position (position hold)?
PH for VTOL tries to hover motionless.  PH for FW tries to constantly try to turn back to the hold point as soon as it passes it.  Basically random bowties.

  In VTOL mode, when starting in hover, it would begin to rock in pitch and accelerate rocking - the Hellaplane is very sensitive in pitch in hover mode - both the motors AND the rear elevons are moving to try to keep it level, which if too extreme starts rotating the wing. And I had the P values set to half of what I normally use. I can adjust these somewhat as the mixer gains for motor pitch and elevon pitch are separate - but the motor gains are at 12, the elevon at 100 - and for transitioning back to hover, I need all the elevon gain I can get - I have to be able to hold the nose up high enough that it will fly backwards - that will transition the wing. I noticed when using the pitch stick elevons did not move as much as when I did yaw, which was also set to 100. The pitch P=0.003.
Generally speaking, you want the control to physically actuate as much as will ever be needed but not more.  Then leave linkages and mixer settings alone from then on and adjust PIDs.  Thus you get maximum Manual mode control but not more than reasonable, and PIDs to make that work in stabilized modes.

Often times, the I term is important too if you are not getting enough control.  A quad that won't hold pitch at high speed (pitch "blow outs") needs more I term.

I stand by my statement about the rotating wing changing e.g. ailerons controlling yaw in a hover to ailerons controlling roll in forward flight being problematic.  Some of the problem can be helped by for instance having a rudder that only is effective in forward flight, and having the rudder and ailerons both connected to the yaw channel or leaving yaw unstabilized and uncontrolled in forward flight (use PID banks to set the yaw PID to zero).  Maybe having an aileron function with no prop blast on it so that it is only effective in forward flight.  Some of the problem needs to be rethought.  With all the control functions on the wing, I don't see how you can have a self levelling mode both with wings vertical and with wings horizontal.  All those controls rotate 90 into a different function and for instance hovering aileron left yaw becomes forward flight aileron right roll so what I suggested before would be backwards ailerons hard to fly.

  I would expect in INS13 attitude mode either VTOL or fixedwing in hover - the mix gains and PID values would yield the same results - but they seem to be very different in pitch at least. ?
There is no code that does fixed wing hover, only loiter.  I suppose that you could think about a normal airplane pointed straight up to be a level hover in Atti mode, but then you have the same problem getting it to fly forward flight.

What you really need is some fancy mixing enhancement if you basically want e.g. ailerons connected to the yaw stick (with Rate stabilization) when hovering and to the roll stick (with Atti stabilization) in forward flight.  Add a timed smooth change from one mode to the other and you have an enhancement that is in my notes, that I daydream about, but realistically probably won't get around to.

That enhancement is to allow tail sitter airplanes to be Atti stabilized either horizontally or vertically and for that it also needs to have RotateVirtual be part of the PID banks so you can define one bank to hover horizontally and the other vertically (both in Atti mode. with hover aileron yaw in Rate and forward flight rudder yaw in Rate or Manual).

trust

  • ****
  • 301
Re: East west oscillation in VelocityRoam
« Reply #50 on: January 21, 2021, 05:58:38 pm »
Ok, just so I'm clear - VR and PH are about the same with a VTOL aircraft - trying to stay at holdpoint, but with fixedwing, VR holds a vector and PH tries to fly back to hold point? What are the differences between VR & PH?
  My yaw control in Vtolpathfollowersettings  is set to manual. There are 5 different modes available - Manual, Tailin, Movementdirection, Pathdirection, and POI. They're mostly self explanatory. I assume POI is point of interest - is that the hold point?
  I suppose in horizontal flight since it has a fairly big vertical stabilizer it will generally yaw into whatever direction it's flying anyway, so manual is probably fine. That also explains the yawing it was doing to keep it pointed in the direction it was drifting.

Re: East west oscillation in VelocityRoam
« Reply #51 on: January 21, 2021, 10:57:23 pm »
Yes, on VTOL, VR can be though of as an adjustable PH and is supposed to be exactly PH (same code) with sticks centered.  The recently found deadband issue means that it doesn't usually get into PH and so it can drift with the wind (much slower than the wind).

The only GPS modes I have flown on fixed wing are waypoint and RTB.

I make a guess that VR was not designed to be used with FW.  VR code uses things from VtolPfSettings without checking if VTOL or FW.  I suspect that for a normal FW, you would have to hold full forward stick (down elevator) to get it to fly forward fast enough to fly.  It uses VtolPfSettings horizontal vel as max vel when using full forward so you would need to set that accordingly.

I make a guess that you should look into AutoCruise which seems to be an FW cousin of VTOL VR.  Fly in the direction it was pointed when the mode was entered with speed controlled by throttle stick.

VR (again, designed for VTOL) has many siblings that all use the same code.  I suspect that POI flight mode is just VR that is relative to the POI like HomeLeash is relative to TakeOffLocation.  There is a POILearn setting that is an accessory for selecting the POI.  I suspect that you select the POI with the appropriate accessory channel while hovering, then you can use POI mode to fly relative to that or use the VtolPFS YawControl to always point at it.  Again, for VTOL.

In horizontal flight, the differential thrust will cause yaw when it sees a roll it doesn't like and that may add or subtract from the rudder.  You need code changes or the equivalent REALLY fancy mixers that can reroute e.g. differential thrust when hovering ... to aileron roll when in forward flight.

trust

  • ****
  • 301
Re: East west oscillation in VelocityRoam
« Reply #52 on: January 22, 2021, 02:38:55 am »
I went out at tested PHold mode along with VR mode in fixedwing again.
This time, PHOLD works as you say - I could take hands off the sticks and it would either fly circles or bowties around the hold point indefinitely, when I started from horizontal flight mode. Nice!
  VR mode in fixed wing does not seem to ever want to come back to the hold point. It is more like autocruise - it just stays on whatever vector it's on at the time VR mode is turned on. And moving the controls don't seem to do anything either, unlike VTOL versions.
  I did try PHOLD in hover mode, trying to hold it as still as possible before activating. In every case it rolled or pitched too much. If the Hellaplane pitches down and accelerates too much, it will rotate the wing into horizontal mode & go into horizontal flight. Normally if there is too much wind and I want to hover, I'll hold it 90 or 180 to the wind - that will keep it in hover mode. At any rate, once it was in horizontal mode it ran the circles/bowtie flight path around the hold position.
  I'm wondering if I can set the limits of pitch (primarily) in PHOLD mode such that it won't have the tendency to rotate the wing. Is there a max pitch setting?

Re: East west oscillation in VelocityRoam
« Reply #53 on: January 22, 2021, 06:06:58 am »
First of all is this custom aircraft going to consistently be a VTOL or FW in TreatCustomAs?  This boils down to whether this is a long range GPS controlled airplane at the heart of it's purpose.

I did try PHOLD in hover mode, trying to hold it as still as possible before activating. In every case it rolled or pitched too much.
Normally I would say that if it flies OK in Atti but oscillates in PH / VR it sounds like it needs tuning in either VtolPFS or FwPFS, but I know that you are trying to get a compromise working where some actuator results are 90 degrees from where they should be.  That alone causes oscillation.

Is there a max pitch setting?
There is not a place that simply says for instance anything more that 50% up elevator stick or stabilization is limited to 50% so that 50% stick is 50% control and 100% stick is still 50% control.  There are places to limit it to 50% of throw, but then 50% stick is 25% control and 100% stick is 50% control; a different animal.
I don't think that is the way to tackle this.  Servo arm holes, horn holes and mixer settings to allow only the max the airframe will ever need and not more.  Then leave that alone and tune.  If you ever go back to change the control surface throws, you have to retune.  But I don't want to send you to beat your head on a boulder when I don't think you can break the boulder.

I suspect that you have oscillation whether or not you have too much throw.

:'(  There may be ways to get something like this to work, but for me to help, it needs to start from technical principles that LP can address.  If we had a feature that would make this work (rotating the wing so that e.g. ailerons go from doing yaw to doing roll) (besides mounting the FC on the wing and some other changes, which it seems you reject) I could help.  I have a JJRC MO2 (letter oh, not number zero) that has features that you could use; for instance twin motors rotate 90 degrees (like yours) and go from a differential thrust roll actuator (like you have) and differential motor tilt yaw actuator in hover to a differential thrust yaw actuator in forward airplane flight, so it can be done.  LP can't do that without someone writing some code.  Buying an MO2 won't help you because there is no setup program to configure the other, similar issues.

It is possible to write LP code to make your aircraft work.  All you need for this is a super mixer to e.g.
mode 1 (hover):
send roll to differential thrust (mixed with throttle)
send pitch to flaps
send yaw to ailerons
mode 2 (airplane):
send roll to ailerons
send pitch to elevator
send yaw to differential thrust (mixed with throttle) and to rudder

of course you could just mix flaps and ailerons into elevons while you are at it

some of these can be done away with like you can leave the airplane elevator and rudder always active, and you don't really need differential thrust for airplane yaw

In addition, there are some things a modern transmitter can do, like have a switch to move the aileron control from this stick to that stick and reverse it at the same time.  If you do that with an LP mode switch, you can do the flying wing setup and have the sticks working the way you want.  That is the best way I can see.

What happens if you ignore forward flight, configure and tune it as VTOL, and hover in Atti and VR?  You should be able to get that working really well as LP can do all that.
« Last Edit: January 22, 2021, 06:13:29 am by TheOtherCliff »

trust

  • ****
  • 301
Re: East west oscillation in VelocityRoam
« Reply #54 on: January 22, 2021, 09:07:16 am »
Under VtolPathFollowerSettings, there is a MaxRollPitch parameter of 25 degrees. That looks like what I want. If I set it to some small value like 5 degrees, it should limit the ability to try to push nose down and shift into horizontal flight mode when hovering.
  Right now I'm just trying to explore what I can do with the existing code, just by modifying parameters.

Normally, we envision take offs are from Hover, so it's a VTOL. Then transition to horizontal flight for the majority of the flight, culminating in a transition back to hover mode prior to landing vertically. In strong winds take off may be vertical but landing is likely horizontal - just at a fairly high AOA.
So most of the time it's a fixed wing aircraft.

However, there are times we may want to loiter. There we would H->V loiter then V->H again. Hovering burns way too much energy though - if there is even the slightest wind you're better off in horizontal wing mode just holding a high AOA and adjusting throttle to hover into the wind - the wings greatly increase efficiency. But here is where it'd be nice to be able to do a PHOLD and just stay in place.

I've considered a number of times the super mixer idea - for that matter, just taking two flight controllers and digitally mix the outputs to accomplish what you're suggesting. Mixing could be blended or just A/B selectable by switch or a switch tied to the wing position. Or use a servo sensor to get a PWM value of the wing position. Of course just coding it would be a cleaner solution.

On the other versions of Hellaplanes with Atom FCs, the flight mode switch is used to select between what I call "aerobatic" mode - pitch/roll/yaw all on rates with somewhat different PID values, and attitude mode which is used for hover and nowadays most of the flight. I have a mixing switch on the transmitter that when on mixes aileron into rudder, so I get more coordinated turns with just aileron. The Hellaplane does awesome tight flat turns with rudder only thanks to differential thrust. The attitude mode is set to max 65 degrees - makes a handy stop when pitching up for landing mode to keep from inadvertently flipping over. One can do some quite fun pirouettes in horizontal wing hover mode. It'll loop easily. It rolls inverted a bit TOO easily - especially versions without tiplets. There's also the dreaded loop done badly - if it stalls inverted, the wings will go vertical, and it falls like a rock - but fortunately as long as it's nose heavy it tends nose down, which then (eventually) rotates the wing back to horizontal mode. We have an impressive video library of "things going nothing like we planned". There is however a clever recovery if you're quick - simply hard roll to either side, which rolls it back to vertical hover mode!
   This is another fun aspect of what we're doing. Exploring a whole range of aerobatics and flying maneuvers perhaps not possible with any other aircraft.

  What I'm trying to explain by the above examples is that it flies just fine with the controls the way they are - you can fly an entire flight in attitude mode just fine, from V to H and back to V and land. There is a little roll oscillation (like dutch roll) in attitude mode when you overcorrect or hit turbulence - but I've been able to dial this down to near zero. In aerobatic "rate" mode there is none of that - smooth flying  especially when using the downlink video monitor - and the turn and bank, altitude, heading etc overlays adds to the ease of aerobatic flying. So I have somewhat of a reluctance to go down a different development path than what works already. Chris' versions have an extra set of servos driving outboard true ailerons on the front wing (or back wing depending on the version). He's also testing with no gyros affecting any of the control surfaces - they are entirely controlled by mixers (an extra Atom FC in manual mode), but he has the motors on a flight control mode switch to switch between attitude mode for hover and rate mode. The goal there is to try to minimize the need for flight controllers as much as possible and built the aircraft itself with more designed built in stability.

  As for trying VTOL mode again, I'll try the Maxpitchroll angle first - if that helps enough, then I'll try VTOL mode again. Looks like rain for a while however in the next weeks forecast.

Re: East west oscillation in VelocityRoam
« Reply #55 on: January 22, 2021, 09:32:58 am »
Sorry, thought you meant max pitch actuator, like keeping the control surface from moving as much.

Setting max bank angle should work, unless oscillation is a problem.

It might be that a unique aircraft is easy to fly without an FC, but the FC can't be configured to fly it at all without code changes.

The reason I asked whether it was to be a VTOL or FW is that I suspect you will only be able to get it to fly self leveling modes (and thus GPS modes) in either hover or forward flight, not both with the same configuration (without LP code changes or a super mixer).
« Last Edit: January 22, 2021, 09:39:53 am by TheOtherCliff »

trust

  • ****
  • 301
Re: East west oscillation in VelocityRoam
« Reply #56 on: January 24, 2021, 04:07:32 am »
After some moderate rains, we got a short break before the heavy rains come, so I did some testing in 8-12mph wnw winds.

First flight was using fixed wing with the 5 degree maxpitchroll.
Both VR and PHOLD modes acted as before - just more drift in the downwind mode.

Then I switched to VTOL mode.
I set it in hover stab1, 90 degrees to the wind. When I switched to PHOLD, it held position for about 30 seconds, then began to drift downwind. It held altitude, but drifted. I switched back to stab1, pitched down to transition to horizontal mode.
I brought it back, then set up a horizontal wing hover into the wind. This is very nose high - 25-30 degree AOA.
When I switched to VR mode - it retained the hover and stayed reasonably well in place - nose high as in a typical horizontal hover and drifted around the hold position reasonably well.

In the third flight I started in vertical wing hover and set VR mode - here too it held position for a while, but not long - maybe 10 seconds - it rotated into the wind then transitioned to horizontal wing mode - but here then it acted different than fixed wing - the nose pitched up and it went into a horizontal wing hover.

It seems like the maxpitchhold values don't really prevent it from pitching/rolling past the set values - either absolute or relative to the set point values.

At any rate, when aircraft is set to VTOL, as with quads, in VR mode you can roam around - laterally or forward/backward with the control sticks. PHOLD does not seem to allow any position changes.
In the case of the Hellaplane, if its kept 90 or 180 to the wind, it will stay in vertical wing hover in VR or PHOLD mode, but if there's wind and it rotates into the wind, it'll transition into horizontal wing mode - then shift to nose high hover.

Nice!


Re: East west oscillation in VelocityRoam
« Reply #57 on: January 28, 2021, 06:28:06 am »
I've been considering my rather big mixer enhancement and I think for your special case, it only needs a small piece of it; a 2nd mixer table that gets used with configurable flight mode switch positions (and some programmer stuff).  One FMS position set up for hovering in one mixer where e.g. roll is differential thrust and another FMS position set up for airplane flight in the other mixer where e.g. roll is aileron.

This would be implemented as a mixer table offset.  Normally zero in all FMS positions.  I am guessing that you have 6 independent output channels, so set the offset to 0 for hover FMS and 6 for airplane FMS.

Forgive me for being pedantic.  I would like to remind that the mixer table is output (servo / actuator) configuration.  For each "servo" you get a configured amount of roll plus a configured amount of pitch plus ...  (where the command can come from transmitter stick position or "FC doing the same thing with code").

I presume you are 100% Windows.  Can you do your own builds?  I use Linux and don't build Windows GCS.  I may be able to do a double cross compile, but I haven't set that up in years.

If you are interested in this then I ask that you get it tuned and flying well independently in both modes.  Your mixer table will be completely different for hover than for airplane.  E.g. In hover, roll will be connected to differential thrust (+roll for one servo and -roll for the other servo).  In airplane mode of course roll will be connected to the ailerons and not differential thrust.  E.g. In hover you may choose to have rudder and elevator outputs (servos) enabled in the mixer, but all inputs set to zero (this should hold both to neutral servo regardless of stick positions).  In airplane mode rudder and elevator outputs will be active and you may choose to do away with differential thrust or move it to yaw input.  Etc.

Do away with any mixes or mods that try to get a compromise between hover and airplane.  I assume you have 6 controlled channels.  Two independent motors (differential thrust plus throttle), two independent ailerons (elevons), airplane rudder, and airplane elevator.  Let me know if you must have more or different than that as that could make or break the mod.  At 6+6=12 we will be using all mixers.  If you have 4 aileron servos, they should be physically wired to be controlled as 2 servos; left elevon and right elevon.

Have TreatCustomCraftAs set to VTOL.  Lock the wing into hover position and get that configured, tuned (PIDs) and flying really well in Attitude mode.  It should be doable including hovering at any compass heading relative to the wind.  After you get it flying really well, you might try AutoTune (initial PIDs not too high) and see what PIDs that gives and whether it feels better to you.

Save that/those configuration(s) for later reference.

Have TreatCustomCraftAs set to FixedWing.  Lock the wing into airplane position and get that configured, tuned (PIDs) and flying really well in Attitude mode.  I always start with full Manual mode, then Rate, then finally Attitude.  Do not adjust a previous step such as changing control horn throw (Manual) when doing Rate or such as Rate settings when doing Atti.  When you e.g. first try Rate, make the mental assumption that you will change right back to Manual.  A good Rate tuning rule is set I and D to zero and get P adjusted to mild oscillation, then cut P in half (multiply by 0.45 actually) and then tune I up to oscillation and back off till oscillation is completely gone.  Leave D zero.
https://en.wikipedia.org/wiki/PID_controller#Ziegler%E2%80%93Nichols_method

When done, the main things you have are a mixer table and set of PIDs for hover and a very different mixer table and set of PIDs for airplane.  Different mixer tables will be handled with this mixer table offset enhancement.  Different PIDs will be handled using current "stabilization settings banks" functionality.

Without a way of locking into airplane mode, I don't know if it's reasonable to consider waypoint missions.  :(

Let me know if you want to try this, whether you can build a GCS, and what version you want to start from.

Firmware is the same wherever it is built, so I can do that much for sure.  This version (GCS and firmware) should be considered incompatible with everything else although most stuff will work.  StabilizationSettings is probably where I would put the mixer table offset (one per flight mode) and so it would be incompatible with all other versions.
« Last Edit: January 28, 2021, 08:24:35 am by TheOtherCliff »

trust

  • ****
  • 301
Re: East west oscillation in VelocityRoam
« Reply #58 on: February 01, 2021, 02:10:51 am »
This seems like a good approach - creating a mixer table with two sets selectable by an offset.

Bu today I did some more testing on Hellaplane V1 - testing RTB and Land modes. In VTOL plane mode, if a selected RTB, aircraft seemed to shudder slightly - but then just kept going in whatever direction it was going prior to RTB. Control inputs did nothing. I tried pointing aircraft back towards home, hit RTB - it traveled well past the home position and did not seem to respond to being near home at all.
  So I tried fixedwing mode. This seemed to work. The aircraft banked and flew back towards home, then circled around home. I had autoland set - but it never seemed to go into land mode. Whatever altitude I was at when I set RTB - that altitude is what it stayed at flying back to home.
  So then I set a separate LAND switch mode in fixed wing. This time when I switched to LAND, the motors cut off completely. I suppose it's meant to then glide in but this seems drastic.
   I went back to VTOL mode and tried LAND. Here it was much more reasonable, cutting throttle to achieve a certain sink rate. I didn't actually land to see what happens then.
  I know RTB has worked on 16.09 on a VTOL aircraft, but I've never tried it in next. Is there a problem there? I can test it on my quad which is now set up on next.
  Shouldn't RTB in VTOL mode pitch and bank back towards home, and keep trying till it heads towards home?

Re: East west oscillation in VelocityRoam
« Reply #59 on: February 01, 2021, 06:59:26 am »
RTB acts completely differently for VTOL than for FW.  It uses different code for VTOL than for FW.

For VTOL, all it has to do is hold the correct amount of roll and pitch to fly in whatever direction the takeoff location is.  When it gets there, it just uses roll and pitch to fine tune the exact location.  All this because it is hovering.

For FW, roll and pitch generally stay neutral with occasional tweaks to keep it on track.  When it goes past takeoff location it turns back to fly over it again and again.

This is one of the programmer tweaks I mentioned I would do.  For it to think it is VTOL in one switch position and FW in the other.

Your aircraft is capable of doing GPS flight modes either hovering or as an airplane.  That's one of the issues I was trying to get at.  With the stock LibrePilot code it can be configured as VTOL or FW, but not both in one flight.  RTB as a VTOL will just hover to home and hover when it gets there.  RTB as FW will airplane home and then constantly fly back and forth when there.  It shouldn't be expected to fly like an airplane if it is configured as a VTOL.