# Calibrating the outputs

## Introduction to calibration

Creating a setup in EdgeTX is a story of two parts.

The first part is about designing the mixing scheme - how stick commands are converted to channel values. In the diagram above, it's everything to the left of the outputs.

The second part - and the subject of this article - is about Outputs calibration. This deals with your model's geometry, including imperfections. Calibration is performed in the Outputs menu - think of it as a sophisticated servo programmer, and you have the idea!

## Benefits of calibration

So why bother with a formal calibration? A properly calibrated model offers several benefits:

• It sets hard limits for your servos, preventing any possibility of damage.
• It compensates for geometrical differences between left and right sides
• It allows you to employ identical weights for your left- and right-side mixers, which allows for some cool optimisations in your setup.
• It allows you to distinguish between (unwanted) servo drift and (wanted) trim offsets.
• It provides precise tracking of flaps.
• It allows you to replace servos with the minimum adjustments necessary.

## Prerequisites

In order to perform a calibration you'll need:

• The actual model (obviously!)
• A way of generating mixer values of −100%, 0% and +100%. These are needed so you can visualise the calibrated limits and centres. My Calibration Mode does this on demand. If that's not possible, then set all your input and mixer weights to 100%, and centre your trims.

Calibration will be performed in the Outputs menu, so let's take a quick look.

The parameters (marked in blue at the top of the diagram above) which used for calibration are as follows:

• Min - end point 1
• Max - end point 2
• Dir - direction
• Curve - response curve (alternative to Min/Max/Subtrim)
• Subtrim mode - use delta mode (so adjusting subtrim does not affect the end points)

### Curves

Normally, you'll calibrate each output by adjusting Min, Max and Subtrim. However, you can also use output curves. Curves offer finer control, and we'll use curves when calibration the flaps.

To use a curve, you first have to create it in the Curves menu. Then, go the Outputs menu and assign it to the curve field. Once the curve is created, you can edit it by long pressing on the curve field (on most radios).

CH1 calibrated via min/max/subtrim
CH3 calibrated via curve

Note that Min/Max and Subtrim are always applied, even when you assign a curve. Min/Max/Subtrim are applied first, followed by the curve.

If using a curve, it's much easier to see what's going on if you do all the adjustments in the curve, with Min/Max and Subtrim set to their 'pass thru' values of −100%, 0%, +100% respectively.

Okay, so let's get calibrating...

## Calibrating ailerons, elevator, rudder, V-tail

Calibration of these surfaces is very simple, but I'll spell it out anyway:

2. Activate Calibration Mode. If you don't have a calibration mode, just set the input and mixer weights to 100%, and centre the trims.
3. Adjust Subtrim for correct centre position.
4. Adjust Max and Min for each servo:
• First, adjust thee for maximum possible control surface travel
• Next, refine so that control surface travel is equal up/down (or left/right).
• Finally, refine so that left and right surfaces match.
5. Exit from Calibration mode

The outputs are now calibrated.

Ailerons often have differential, where the downgoing aileron is less then the upgoing in response to roll commands. Where possible calibrate the ailerons for equal up/down movement as described above, and set the differential in the aileron mixers. This will ensure that that diff is applied only for aileron commands.

## Calibrating flaps (using curves)

Flaps present a greater challenge. They are characterised by grossly asymmetric movement. Also, flaps have large deflections, and it's important that they track precisely. Fortunately OpenTX allows these to be calibrated with great precision. Instead of adjusting Min/Max and Subtrim, you can use curves.

So the procedure calibrating flaps is:

• Calibrate one flap with a 2-point curve, in other words just set the end points. This flap will be the reference for calibrating the second flap.
• Calibrate the second flap with a 5-point curve, to track the first flap.
• Adjust the flap neutral using an offset mix.

Here's the procedure in a more detail:

### Step 1: set Min, Max and Subtrim to 'pass thru' values

Since we're using curves, we should set Min, Max and Subtrim to their 'do nothing' values:

2. For each flap servo, set Min, Max and Subtrim to −100%, +100% and 0% respectively (or -150%, +150% and 0% if using extended limits)..

### Step 2: calibrate left flap

Start by calibrating the left flap. The aim is to (a) set the limits of servo movement, and (b) to obtain an approximately linear response. The neutral position is not considered here.
1. In the Curves menu, create a 2-point curve with points (−100%, -20%) and (100%,20%). The low point values (20%) are to avoid accidental damage to your linkages before finalising the adjustment.
2. In the Outputs menu, go to the Curve column, and select the curve you just created
3. Enter Calibration mode
4. Set the curve points for maximum possible travel, as limited by the linkages. The flap deflection should vary more or less linearly with the calibration input. If necessary, you can add third point aound the middle of the curve.
6. Exit Calibration mode

### Step 3: calibrate right flap

The next task is to synchronise the right flap with the left flap. Do this using a 5-point curve.

1. In the Curves menu, create a 5-point straight line curve
2. In the Outputs menu, go to the Curve column and assign the new curve.
3. Enter Calibration mode
4. Move the stick to the 0/25/50/75/100 positions; at each position, adjust the corresponding point so that the right flap exactly matches the left flap. (Depending on the linkage geometry, it may be necessary to go back and reduce one or other end point on the left flap.)
6. Exit Calibration mode

### Step 4: offset the flap

The flap servos are now calibrated, and the flaps should track perfectly. However since the flap has more down-travel than up-, each flap's 'home' position (that is, with the servo at its natural centre position) will be around 30 degrees down. In other words, with all mixers disabled (servos at centre), the flaps will droop 30 degrees! Clearly this is not what we want.

To fix this we need to apply an offset at the mixer level as follows:

1. Exit Calibration mode
2. Create a mix in each flap servo channel.
3. For each flap mix, set source = 'MAX'. This generates a fixed offset of value 100%.
4. Adjust the weights of the mixes, so both flap are at the correct neutral.

All the mixes for roll control, crow, camber and so on will then start from the correct neutral position. The end points of flap travel are not affected - since of course we have already calibrated these in steps 2 and 3.

Once calibration is done, you can finalise the control travel in the Inputs and Mixers menus.

1. For the flight controls (elevator, aileron and rudder): adjust travel in the Inputs menu and leave mixer weights at 100% (the input weights will propagate to the mixers).
2. For all other interactions: adjust the Mixer menu. Following calibration, the mixer weights should be equal on the left and right sides.

## Using CAL mode to identify servo drift

Most models will suffer during their lifetime from drifting servo neutrals. This may be due to temperature effects, or damaged linkages. Now here's the thing: it can be difficult to distinguish between drift and valid trim offsets which you've dialled in yourself.

However if you calibrate your setup regularly, you can tell the difference. Enter CAL mode, and see if the calibrated centres have changed. If yes, then the servos or linkages have drifted.

If the amount of drift is small, there's no need to do a complete recalibration, you can simply adjust PPM Centre - the effect is similar to moving the servo arm on its spline. Once you exit CAL mode, all trim offsets will be restored.

So, by calibrating your channels and checking regularly, you can correct for servo drift while at the same time preserving your carefully adjusted trim offsets!

## Trims => Subtrims - AVOID!!

OpenTx allows you to re-centre your trims, by moving the offsets to Subtrim. Obviously, using this feature will trash your calibration settings. Avoid!

## Calibration-centred design

Even greater benefits can be achieved by designing your setup with calibration in mind from the start. I call this 'calibration-centred design'. The two main elements are:

### Integrated CAL flight mode

The first step is to create a CAL mode. That way, you can check the calibration at any time for drifting servos, bent linkages and so on.

A key goal of calibration is to match up left/right outputs. This means that paired mixers can have identical weights, and you can take advantage of this by employing GVARs and cascading mixers in your setup. This will result in:

• single point of adjustment for left/right mixes
• cleaner logic
• reduced data entry errors

### Calibration the easy way

All the canned setups published on this site have CAL mode already built-in, protected against accidental operation.

## Digging deeper: the mapping layer (advanced)

Okay, we've covered the basics, let's drill down a bit and look at the internal processes.

The Outputs layers is a simple mapping of mixer values to PWM values. In effect, Min, Max and Subtrim define a 3-point curve:

• Min defines the PWM value for a mixer value of −100%
• Max defines the PWM value for a mixer value of +100%
• Subtrim defines the PWM value corresponding to a mixer value of zero.
• Direction reverses the effect

On entry to the Outputs stage, mixer values are clipped to +/−100%. Min and Max therefore represent absolute travel limits. Think of them as electronic end stops.

## Conversion of Min/Max/Subtrim % values to PWM units

Min, Max and Subtrim represent PWM values, yet OpenTX displays them as percentages. The conversion is as follows:

• −150% = 732 μs
• −100% = 988 μs
• 0% = 1500 μs
• 100% = 2012 μs
• 150% = 2268 μs

Standard servos have a nominal range of 1000 to 2000μs, so you can think of these percentages as 'percentage of the range of a standard servo - roughly!'.

PWM values outside the range 988 - 2012 μs are only available if the 'extended limits' option is enabled (in the MODEL menu).

## Subtrim modes and PPM Centre

The Subtrim mode determines how the limits are calculated. Subtrim mode is set in the Outputs menu (last column). There are two options:

• 'delta' (default) - Limits are defined by Min and Max. Adjusting Subtrim does not affect limits.
• 'equals': Limits are Min +Subtrim and Max + Subtrim, with clipping if the result exceeds Min and Max. Subtrim shifts end points.

Delta mode is recommended!

Switching between "equals" and "delta" modes will cause the end points to jump, so start with delta mode and stick with it. If later on you need to shift the whole curve with a single adjustment, then use the PPM Centre adjustment. The effect is similar to 'equals' mode.