Skip to content

Measure the elevon throw

The build specifies 25 degrees of elevon travel at ArduPilot’s servo endpoints, and the SITL model uses that value. The slow-flight findings on the parameters page depend on it. This procedure measures the throw on the built aircraft and puts the measured number into the model.

You need a steel rule or calipers, the flight pack, the radio, and a GCS on a laptop. The elevon chord is 41 mm at the middle of the elevon, 506 mm from the centreline. It is 49 mm at the root end and 33 mm at the tip end.

WARNING: Remove all five propellers before you connect the pack. A servo test can arm the motors.

  1. Remove the propellers.
  2. Put the aircraft on a flat bench, wings level.
  3. Connect the pack, then connect the GCS.
  4. Set the mode to MANUAL. In MANUAL the sticks move the elevons directly.
  5. Find the middle of the right elevon, 506 mm from the centreline. Mark it with tape.
  6. With the sticks at centre, measure the height of the trailing edge above the bench at the mark. Record it as the neutral height.
  7. Pull the pitch stick fully back. Measure the trailing-edge height again. The difference is the up rise.
  8. Push the pitch stick fully forward. Measure again. The difference is the down rise.
  9. Do steps 5 to 8 on the left elevon.
  10. Convert each rise to degrees with the table, or with angle = asin(rise / 41 mm).
Rise at the 41 mm chord Throw
3.6 mm 5 degrees
7.1 mm 10 degrees
10.6 mm 15 degrees
14.0 mm 20 degrees
17.3 mm 25 degrees

If the two elevons differ by more than 2 degrees, adjust the linkage before you go on.

MIXING_GAIN limits each axis to that fraction of the servo travel, so a full pitch stick in MANUAL gives 0.75 of the mechanical throw with the build’s setting. The mechanical throw at full servo travel is the measured up rise in degrees divided by MIXING_GAIN.

  1. Open tools/sitl_model.py.
  2. Set ELEVON_MAX_DEG to the mechanical throw divided by 0.8. SITL treats 500 microseconds as full travel, and ArduPilot’s servo range is 400 microseconds each way. For the build’s 25 degrees this is 31.25, the current value.
  3. Run make check in sim/. The cruise trim in the table changes a little.
  4. Fly the Q_assist drill on the Fly it in SITL page. Note the speed at which the nose drops.
  5. Record the measured throw and that speed on the parameters page.

If the nose drops above 14 m/s, Q_ASSIST_ALT stays as the safety net. If it drops below 14 m/s, the speed assist works as the guide intends, and Q_ASSIST_ALT is a second layer.


Source: docs/elevon-throw.md in the repo. Edit it there; this page is generated.

Comments on

    Comments are reviewed before they appear. Please leave out places, addresses and other personal details.

    A Supported Systems Flight

    This build log is written and kept by Supported Systems, a small studio that makes thoughtful, user-first technology. The airframe, the hangar and the simulation are ours.

    Visit supported.systems