MAVLINKHUD

Overview

The MAN parameter group configures the "Exponential" (Expo) curves for ArduPlane when flying in manual and stabilized modes.

Expo softens the response of the control surfaces around the center of the sticks. This allows the pilot to make tiny, precise corrections for level flight while still having full control authority at the stick limits.

Key Concepts

1. Manual Expo (MAN_EXPO_...)

  • MAN_EXPO_ROLL / PITCH / RUDDER: Sets the amount of curve for each axis.
    • 0: Linear (direct mapping).
    • 100: Maximum softness at center, very aggressive at ends.
    • Typical: 30% to 50% is common for a smooth feel.

Parameter Breakdown

  • MAN_EXPO_ROLL: Roll stick expo (%).
  • MAN_EXPO_PITCH: Pitch stick expo (%).
  • MAN_EXPO_RUDDER: Rudder stick expo (%).

Developer Notes

  • Library: ArduPlane/servos.cpp.
  • Context: Only applies to Manual, Acro, and FBWA/B modes. Does not affect autonomous navigation.

MAN_EXPO_RUDDER

%
Default 0
Range 0 100

Manual input expo for rudder (MAN_EXPO_RUDDER)

Description

This parameter adds Exponential (Expo) to the Rudder stick input when flying in Manual, Acro, or Training modes. Expo softens the response around the center of the stick, allowing for precise small corrections, while maintaining full control authority at the stick limits.

The Mathematics

$$ \text{Input}\_{shaped} = (1 - k) \cdot \text{Input} + k \cdot \text{Input}^3 $$
Where $ k = \frac{\text{MAN\_EXPO\_RUDDER}}{100} $.

The Engineer's View

Defined in ArduPlane/Parameters.cpp. Used in Plane::read_radio() to pre-process the RC input before it is passed to the servo mixers. This applies only to the Rudder channel.

Tuning & Behavior

  • Default Value: 0% (Linear response)
  • Range: 0 - 100%
  • 30-40%: Typical value for smoother yaw control.
  • Higher Values: Very soft center, aggressive endpoint response.

MAN_EXPO_ROLL: Manual control expo for roll

Description

Percentage exponential for roll input in MANUAL, ACRO, and TRAINING modes.

Values

  • Range: 0 to 100
  • Units: %
  • Increment: 1
  • Default: 0

Description

This parameter adds exponential curvature ("expo") to the aileron stick input when flying in manual or semi-manual modes.

  • 0%: Linear response. 50% stick = 50% servo travel.
  • Higher %: Reduces sensitivity around the center stick position (neutral) while maintaining full throw at the extremes.
  • Benefit: Allows for smoother fine-control adjustments during level flight while still permitting aggressive maneuvers when the stick is pushed fully.

Source Code

ardupilot/ArduPlane/Parameters.cpp

MAN_EXPO_PITCH: Manual input expo for pitch

Description

Percentage exponential for pitch input in MANUAL, ACRO, and TRAINING modes.

Values

  • Range: 0 to 100
  • Units: %
  • Increment: 1
  • Default: 0

Description

This parameter adds exponential curvature ("expo") to the elevator stick input when flying in manual or semi-manual modes.

  • 0%: Linear response.
  • Higher %: Reduces sensitivity around the neutral pitch stick position.
  • Benefit: Helps prevent "porpoising" (pilot-induced oscillation in pitch) by making small elevator corrections less sensitive, while keeping full authority for loops and sharp turns.

Source Code

ardupilot/ArduPlane/Parameters.cpp