launching a model

Flight modes

The power of flight modes

Flight modes are a cool feature of high end radios. At their simplest, they allow you to switch quickly between different trim settings. But they can do a whole lot more! In this article, I explain how to configure them, and how to take advantage of their power.

All screenshots are taken from a RadioMaster TX16S running EdgeTX. The menus differ slightly between EdgeTX and OpenTX, but functionality is identical.

Sailplane example

Suppose that you're cruising around with your sailplane, and encounter a thermal. At that point you might wish to:

If you made the adjustments manually, the thermal would be gone before you started! Worse, you'd lose your previous settings. However, by setting up a couple of flight modes called say 'Cruise' and 'Thermal' you could switch quickly between the two groups of settings, each optimised for the particular task. And of course you can extend the idea to other modes of flight such as speed flying, landing etc.

Flight modes overview

EdgeTX offers up to nine flight modes, numbered FM0 to FM8.

There is one simple rule:

"One flight mode - and only one - is always active!"

As we'll see, a priority system is used to determine the active flight mode.

The flight mode which is active is referred to as 'the active flight mode'. When a flight mode is active, all its dependent settings (trims, mixers, special functions etc.) are enabled. Those of any other flight modes are disabled.

User defined flight modes (FM1 to FM8)

Unlike the default flight mode (FM0), user defined flight modes are optional. To emply a user-defined flight mode, you must specify a switch condition. The switch condition may be a physical or logical switch:

Switch conditions

If the condition is satisfied then the flight mode is a candidate to be active. Note that it doesn't mean that it will be active, since other flight modes may also have their switch conditions satisfied. In the next section we'll see how EdgeTX resolves these conflicts, using a priority system.

Flight mode priorities

You may be asking: what happens when more than one flight mode has their the switch conditions satisfied - which flight mode is chosen to be active? To resolve such conflicts, every flight mode has a priority. The priority is related to the FM number - the smaller the number the higher the priority.

There is one important exception: the default flight mode (FM0) has lowest priority despite having the smallest number. The highest priority flight mode is therefore FM1, followed by FM2 and FM3 etc. with FM0 last.

To summarise :

Managing flight modes

Okay, so let's get into the nitty gritty! The Flight modes menu is your springboard:

flight modes menu showing four flight modes

Flight modes menu.

The Flight modes menu displays a summary of the flight modes in the system. The screenshot above shows a scheme with four flight modes. The default flight mode (FM0) is at the top of the list, followed three user defined flight modes. (Up to 8 user-defined flight modes may be specified, with ids FM1 - FM8.)

There are 11 columns of data:

The flight mode editor

The flight mode editor is where you'll configure your flight modes. The first page looks like this:

flight mode editor

The fields are:

Other options are set in a second page (not shown).

Note: the default flight mode does not have a switch associated.

Planning a flight mode scheme

Try to plan your flight modes early in the development process, as it may be difficult to alter later on. Here's a rough workflow:

Identify the phases of flight.

Start by identifying the various phases of flight. These should form a contiguous sequence. An example for a DLG would be: launch, zoom, normal, landing - these cover the whole flight from launch to landing without any gaps.

Expand the phases into flight modes

The next step is to identify the flight modes. These may be based directly on the phases that you have identified above. Additionally you can include alternatives for specific flight phases. So in the case of DLG example, you might split the 'normal' phase into a choice of 'speed', 'thermal' and 'cruise'. So the complete list of flight modes would be: Launch, Zoom, Speed/Thermal/Cruise and Landing.

Assign priorities

As we've seen, the flight mode number determines the priority. Try to get the priorities right first since EdgeTX doesn't make it easy to change later (you have to fix up all the changed references in mixers etc.). If you're not sure, then leave gaps in the flight mode numbering which you can fill later with minimal disruption.

Best practice

In general, flight modes should be broad in scope rather than being tied to specific mixers. An example of a poor choice would be 'Crow brakes'. It would be better to have a more general 'Landing' mode, with crow-brakes as just one of several settings which would be active in that mode.

Example for F3F slope soarer

F3F slope soarers generally have 4 flight modes controlled by 2 switches. A typical scheme is:

The first step is to determine the priorities. If you used the word 'override' to describe a function, that's a clue to assign a high priority! So Landing mode is assigned highest priority, with the rest lesser priority.

This is how it might be implemented:

Flight mode list

Flight mode list.

To check that it works, imagine that the pilot by selects SA↓ and SF↑. The intention is to activate Thermal mode. Let's see what happens as EdgeTX steps through list, highest priority first, looking for a match:

Suppose that SF is now moved to the SF↓ position, in preparation for landing. The condition for FM1 (Landing mode) is now satisfied. It therefore becomes active, overriding all the SA-controlled flight modes.

Suppose that we have SF↑ and SA—, then none of FM1, FM2 or FM3 would be selected, and the default flight mode Cruise would become active.

The active flight mode is highlighted in the flight mode list, and also displayed in the home screen.

Auto-activation of flight modes

Flight modes are even cooler when they activate themselves! Consider an electric model such as an F5J sailplane. When the motor is running, you may wish to activate a motor-to-elevator mix and reduce the elevator rate - but you don't want to have to flip a switch to do this.

The solution is to activate the flight mode via a logical switch which goes True when the motor is running. Assuming the motor is on CH7:

L01 CH7:Motor > -100%

FM1:Power Switch=L01

For safety, there should also be an arming switch which is independent of flight mode. The state of the arming switch will determine whether the motor can actually run.

Similarly, a Landing mode might be activated by pulling on the throttle stick:

L01 Thr < +100%

FM1:Landing Switch=L01

Landing mode would typically be used to activate a crow brake mix.

Uses for flight modes

So far, we've seen how flight modes are managed. In this section, we'll learn how to put them to use. There are essentially six contexts in which Flight modes can be employed:

Let's look at each in turn.

Sharing trims

Trims can be independent in each flight mode, or shared between flight modes or a mixture of both. For more details, see Advanced trims.

Enabling mixers

By default, mixers are active in all flight modes. However sometimes a mix should be active only in certain flight modes. With an F3F slope racer, for example, snapflap might be enabled in Normal and Speed modes, but disabled in Thermal and Landing modes.

To restrict a mixer to just a subset of flight modes, open the mixer menu and edit the Modes field. Tick the flight mode numbers in which the mix should be active and leave the rest unticked.

Mixer active in FM3

Mixers editor screen, showing mixer active in FM2 only

To trigger special functions

Flight modes can be used as the trigger condition in special functions. A typical use is for a flight mode to announce itself using a Play Sound or Play Track action:

Special functions for flight mode announcements

Special functions for flight mode alert

In logical switches

Flight modes can also be used in logical switch conditions. For example, you might want a behaviour to change depending on a switch, but only in a particular flight mode. In the code below, L01 is true if the 6-pos switch is in position 1 and FM1 is active.

Logical switches with FM as condition

Logical switch with an FM as one of the operands

To set FM-specific rates

Each flight mode can have its own rate.

Here's a screenshot of the Inputs menu. The elevator input has two lines, one for FM3, and the last line without any condition. When FM3 is active, the rate is 50%. For all other flight modes, the rate falls through to 100%.

Important: to setup dual rates safely, please read the Inputs page, in particular the use of a 'catchall' line.
FM dependent rates

Elevator input showing FM-dependent rates

With GVARs

GVARs can store a different value for each flight mode. This can be very useful for supplying FM-dependent weights or diff values. For more info see All about GVARs.

Wrapping up

Flight modes are a powerful feature in any RC system, and particularly so in EdgeTX and OpenTX thanks to the multiple contexts in which they can be employed.