MAVLINKHUD

Overview

The LAND parameter group configures the final stages of flight: Landing and Auto-Landing.

Effective landing parameters ensure the vehicle touches down softly, stays straight on the runway, and disarms promptly after contact.

Key Concepts

1. Vertical Speed (Copter)

  • LAND_SPEED: The slow descent rate (m/s) used during the final few meters of touchdown.
  • LAND_SPEED_HIGH: The faster descent rate used for the initial descent from altitude before slowing down for the final touchdown.

2. Plane Auto-Landing

  • LAND_FLARE_ALT: The altitude (meters) at which the plane begins to "Flare" (pitch up to stall onto the runway).
  • LAND_PITCH_DEG: The target pitch angle during the flare.
  • LAND_ABORT_DEG: If the pilot (or autopilot) decides to abort the landing, this is the pitch angle it will climb at.

3. Deep Stall Landing (LAND_DS_...)

(Advanced Plane feature) Used for landing in very tight spaces by intentionally stalling the wing at a high angle of attack.

Parameter Breakdown

  • LAND_TYPE: Selection of landing logic (e.g., standard vs deepstall).
  • LAND_DISARMDELAY: How long to wait after touchdown before automatically disarming.
  • LAND_OPTIONS: Bitmask for specific behaviors (e.g., allow repositioning with sticks during auto-land).

Integration Guide

  • Soft Landing: If your copter bounces on landing, reduce LAND_SPEED.
  • Landing Flare: If your plane hits the runway nose-first, increase LAND_FLARE_ALT or LAND_PITCH_DEG.

Developer Notes

  • Library: libraries/AP_Landing (Shared), ArduCopter/mode_land.cpp, ArduPlane/mode_landing.cpp.

LAND_ABORT_DEG

deg
Default 0
Range 0 90

Land Abort Angle (LAND_ABORT_DEG)

Description

LAND_ABORT_DEG prevents the drone from landing if it is pitching too violently.

If the drone is fighting strong wind and pitching up/down more than this angle, it assumes the landing is unsafe and will climb back up (Go Around).

Tuning & Behavior

  • Default Value: 0 (Disabled).
  • Recommendation: Set to 15 degrees for fixed-wing or quadplanes to prevent propeller strikes.

LAND_ABORT_THR

%
Default 0
Range 0 100

Land Abort Throttle (LAND_ABORT_THR)

Description

LAND_ABORT_THR triggers a Go-Around if the motor demand is too high.

If the drone is descending but needs 90% throttle to maintain the path (due to wind shear or a heavy payload), it's dangerous to continue. This parameter forces an abort.

Tuning & Behavior

  • Default Value: 0 (Disabled).
  • Recommendation: Set to 90% to ensure you always have headroom to climb out.

LAND_ALT_LOW

m
Default 10
Range 0 30

Land Altitude Low (LAND_ALT_LOW)

Description

LAND_ALT_LOW determines the "Slow Down Height" for automatic landings.

When a drone is landing automatically (e.g., during a Return-to-Launch), it usually descends quickly to save battery. However, descending fast into the ground would cause a crash. LAND_ALT_LOW sets the altitude where the drone transitions from a fast "Transit Descent" to a slow, gentle "Touchdown Descent."

The Mathematics

The autopilot manages the descent rate ($v\_z$) based on the current altitude ($h$):

  • If $h > \text{LAND\_ALT\_LOW}$, $v\_z = \text{WPNAV\_SPEED\_DN}$.
  • If $h \le \text{LAND\_ALT\_LOW}$, $v\_z$ is linearly ramped down until it reaches LAND_SPEED at the ground.

The Engineer's View

Defined in the vehicle-specific Parameters.cpp (e.g., ArduCopter).
This parameter is critical for preventing "ground effect" instability. If the drone descends too fast into its own propwash near the ground, it can wobble or lose control. By slowing down at a specific height, the flight controller has more time to stabilize the airframe before contact.

Tuning & Behavior

  • Default Value: 10 meters.
  • High Performance: For large industrial drones, you may want to increase this to 15 or 20 meters to ensure a very stable approach.
  • Small Quads: For racing or small freestyle quads, you can lower this to 5 meters for a faster recovery.

LAND_DISARMDELAY

s
Default 20
Range 0 127

Land Disarm Delay (LAND_DISARMDELAY)

Description

LAND_DISARMDELAY is the "settling time" for the Land Detector.

After the sensors think the drone has touched the ground (Velocity = 0, Throttle = Min), the autopilot waits this many seconds to be sure before killing the motors.

Tuning & Behavior

  • Default Value: 20 seconds (Fixed Wing). For Copter, this is usually DISARM_DELAY (default 2s).
  • Recommendation:
    • Fixed Wing: 20s allows for taxiing or stopping.
    • Copter: 2s prevents tip-overs.

LAND_DS_ABORTALT

m
Default 0
Range 0 50

Deepstall Abort Altitude (LAND_DS_ABORTALT)

Description

LAND_DS_ABORTALT defines the "Point of No Return" for deepstall landings.

Once the plane has stalled and is falling, it takes time and altitude to recover into forward flight. If you trigger an abort (Go Around) when the plane is too low, it will hit the ground before it can regain airspeed. This parameter prevents the autopilot from trying to recover if it is below this safety height.

Tuning & Behavior

  • Default Value: 0 (Always allowed to try).
  • Recommendation: Set to the altitude it takes your plane to recover from a full stall plus 10 meters buffer (e.g. 20m).

LAND_DS_AIL_SCL

Default 1.0
Range 0 2.0

Deepstall Aileron Gain Scaling (LAND_DS_AIL_SCL)

Description

LAND_DS_AIL_SCL adjusts how much the ailerons move to steer the plane while it is stalling.

In a deep stall, the wing is fully stalled, so ailerons might work differently (often reversed or less effective). This parameter allows you to tweak the steering aggression specifically for this flight phase without messing up your normal flight PID gains.

Tuning & Behavior

  • Default Value: 1.0 (No change).
  • Recommendation: If the plane oscillates in roll while falling, reduce to 0.5.

LAND_DS_APP_EXT

m
Default 50
Range 10 200

Deepstall Approach Extension (LAND_DS_APP_EXT)

Description

LAND_DS_APP_EXT adds a "Straightaway" to the deepstall landing path.

Before the plane enters a stall, it needs to be perfectly lined up with the target and flying level. This parameter ensures the plane flies in a straight line for at least this distance before pulling the elevator up to stall.

Tuning & Behavior

  • Default Value: 50 meters.
  • Recommendation: Increase to 100m if your plane has high inertia and needs more time to settle onto its final heading.

LAND_DS_ARSP_MAX

m/s
Default 15.0
Range 5 20

Deepstall Enabled Airspeed (LAND_DS_ARSP_MAX)

Description

LAND_DS_ARSP_MAX defines the "Entry Speed" for the deep stall maneuver.

When the plane slows down past this speed, the deep stall controller wakes up and starts blending in its own steering logic.

Tuning & Behavior

  • Default Value: 15.0 m/s.
  • Recommendation: Set slightly above your stall speed.

LAND_DS_ARSP_MIN

m/s
Default 10.0
Range 5 20

Deepstall Minimum Derating Airspeed (LAND_DS_ARSP_MIN)

Description

LAND_DS_ARSP_MIN defines the "Fully Stalled" speed.

Between ARSP_MAX and ARSP_MIN, the control authority is mixed. Below ARSP_MIN, the deep stall controller is in full command.

Tuning & Behavior

  • Default Value: 10.0 m/s.
  • Recommendation: Set to your deep-stall vertical descent speed converted to forward speed equivalent, or just below stall speed.

LAND_DS_D

Default 0
Range 0 0.5

Deepstall Steering D Gain (LAND_DS_D)

Description

LAND_DS_D dampens the steering response to prevent oscillations.

Tuning & Behavior

  • Default Value: 0.
  • Recommendation: Increase if you see rapid wobbling.

LAND_DS_ELEV_PWM

PWM
Default 1500
Range 900 2100

Deepstall Elevator PWM (LAND_DS_ELEV_PWM)

Description

LAND_DS_ELEV_PWM is the "Stall Position."

This is the exact servo signal sent to the elevator to hold the nose up (or down, for inverted deep stall).

Tuning & Behavior

  • Default Value: 1500 (Neutral).
  • Recommendation: Set to your maximum up-elevator PWM (e.g., 1900 or 1100 depending on reversal). Ensure it is enough to keep the wing fully stalled.

LAND_DS_I

Default 0
Range 0 5

Deepstall Steering I Gain (LAND_DS_I)

Description

LAND_DS_I corrects for wind drift during the descent.

Tuning & Behavior

  • Default Value: 0.
  • Recommendation: Use sparingly to correct steady-state heading errors.

LAND_DS_L1

s
Default 30.0
Range 5 50

Deepstall L1 Period (LAND_DS_L1)

Description

LAND_DS_L1 defines how aggressively the plane tries to return to the path.

A shorter period means the plane will turn sharper to get back on track.

Tuning & Behavior

  • Default Value: 30.0 s.
  • Recommendation: Since deep stall happens slowly, a long period like 30s is usually appropriate.

LAND_DS_L1_I

Default 0
Range 0 1

Deepstall L1 Integrator Gain (LAND_DS_L1_I)

Description

LAND_DS_L1_I helps the plane stay on the line in a crosswind.

Tuning & Behavior

  • Default Value: 0.
  • Recommendation: Increase if the plane consistently lands downwind of the target point.

LAND_DS_L1_TCON

s
Default 0.4
Range 0.1 1.0

Deepstall L1 Time Constant (LAND_DS_L1_TCON)

Description

LAND_DS_L1_TCON defines how aggressively a fixed-wing aircraft should correct its course during a Deep Stall landing.

In a deep stall landing, the plane intentionally stalls its wings to drop vertically onto a target. Because the wings have very little lift and airflow is turbulent, standard steering is less effective. This parameter tunes the "L1" navigation controller's responsiveness in this specific state.

  • Lower Values (0.1 - 0.4): More aggressive corrections. The plane will try very hard to stay on the line, but might wobble.
  • Higher Values (0.5 - 1.0): Smoother, lazier corrections. The plane will wander more but flight will be more stable.

Tuning & Behavior

  • Default: 0.4.
  • Usage: Only relevant for planes configured for Deep Stall landings (e.g. some foam hobby planes and specialized UAVs).

LAND_DS_P

Default 0
Range 0 5

Deepstall Steering P Gain (LAND_DS_P)

Description

LAND_DS_P controls how aggressively the plane tries to steer towards the landing point while falling.

Tuning & Behavior

  • Default Value: 0.
  • Recommendation: Tune carefully. Too high, and the plane will rock violently. Too low, and it drifts with the wind.

LAND_DS_SLEW_SPD

s
Default 0.5
Range 0 2

Deepstall Slew Speed (LAND_DS_SLEW_SPD)

Description

LAND_DS_SLEW_SPD controls how fast the plane "pops up" into the stall.

  • Fast (0.1s): Violent entry. Good for precise spot landing but high stress on the airframe.
  • Slow (1.0s): Gentle entry. The plane will balloon up before falling.

Tuning & Behavior

  • Default Value: 0.5 s.
  • Recommendation: Adjust to get a clean break into the stall without zooming up too high.

LAND_DS_SLOPE_A

Default 1

LAND_DS_SLOPE_A: Deepstall Slope A

Description

The wind coefficient for the deepstall landing distance calculation (Distance = A * Wind + B).

Values

  • Default: 1

Description

This parameter is part of the DeepStall landing system. It helps predict how far the plane will travel horizontally during the deepstall descent based on the wind speed.

  • Formula: Travel Distance = (LAND_DS_SLOPE_A * Wind_Speed) + LAND_DS_SLOPE_B
  • Function: The autopilot uses this estimate to decide exactly when to trigger the stall so that the plane lands on the target point.
  • Tuning: Requires empirical testing. Measure the landing distance vs. wind speed over several flights to determine the slope.

LAND_DS_SLOPE_B

m
Default 1

LAND_DS_SLOPE_B: Deepstall Slope B

Description

The offset coefficient for the deepstall landing distance calculation (Distance = A * Wind + B).

Values

  • Default: 1
  • Units: m

Description

This parameter represents the base horizontal distance the aircraft travels during a deepstall descent in zero wind conditions.

  • Formula: Travel Distance = (LAND_DS_SLOPE_A * Wind_Speed) + LAND_DS_SLOPE_B
  • Function: It accounts for the forward travel due to the plane's drag profile and entry speed.
  • Tuning: Perform test deepstalls in calm conditions to determine this baseline distance.

LAND_DS_V_DWN

m/s
Default 2
Range 0 20

Deepstall Sink Rate (LAND_DS_V_DWN)

Description

LAND_DS_V_DWN defines how fast the plane falls once it has stalled.

Tuning & Behavior

  • Default Value: 2.0 m/s.
  • Recommendation: High-drag planes (large wings) will fall slower. High-weight planes will fall faster.

LAND_DS_V_FWD

m/s
Default 1
Range 0 20

Deepstall Forward Velocity (LAND_DS_V_FWD)

Description

LAND_DS_V_FWD is a prediction parameter for Deepstall landings (where the plane purposefully stalls to drop vertically).

Because the aircraft has no lift and very little control, the autopilot needs to "guess" how much it will drift forward while falling. This allows it to calculate the exact point in the air to trigger the stall so that the drone lands on the target.

The Mathematics

The predicted travel distance $D$ is calculated using the ratio of forward speed $V\_{fwd}$ to sink rate $V\_{dwn}$:

$$ D\_{drift} = \frac{V\_{fwd} \times \text{Height}}{V\_{dwn}} + \text{Stall Entry Distance} $$

Tuning & Behavior

  • Default Value: 1.0 m/s.
  • Tuning: If the plane consistently lands Short of the target, decrease this value. If it lands Long, increase it.

LAND_DS_YAW_LIM

deg/s
Default 10
Range 0 90

Deepstall Yaw Rate Limit (LAND_DS_YAW_LIM)

Description

LAND_DS_YAW_LIM prevents the plane from spinning like a top while falling.

In a deepstall, the rudder is often less effective or can cause roll coupling. This parameter limits how hard the L1 controller tries to steer the heading.

Tuning & Behavior

  • Default Value: 10 $deg/s$.

LAND_FLAP_PERCNT

%
Default 0
Range 0 100

Landing Flap Percentage (LAND_FLAP_PERCNT)

Description

LAND_FLAP_PERCNT sets the flap position for the final approach.

  • 0: Use the standard FLAP_1_PERCENT or automatic flap logic.
  • 1-100: Override with a specific landing setting (e.g. Full Flaps).

Tuning & Behavior

  • Default Value: 0.

LAND_FLARE_AIM

m
Default 0
Range -1 1

Land Flare Aim Altitude (LAND_FLARE_AIM)

Description

LAND_FLARE_AIM aims the flare path slightly underground.

By aiming for an altitude of -0.5 meters (half a meter below the runway), you ensure that the plane positively touches down rather than floating indefinitely just a few inches above the ground.

Tuning & Behavior

  • Default Value: 0 m.
  • Recommendation: Set to -0.5 or -1.0 to reduce "Float" and force a touchdown.

LAND_FLARE_ALT

m
Default 3
Range 0 10

Land Flare Altitude (LAND_FLARE_ALT)

Description

LAND_FLARE_ALT sets the "Pull Up" height for a fixed-wing autonomous landing.

As the plane approaches the runway, it flies a descending path. At this altitude, it stops following the path and starts the "Flare" (pulling the nose up to bleed off speed and descend very slowly until touchdown).

Tuning & Behavior

  • Default Value: 3 meters.
  • Recommendation: Set to 2-4 meters for most small UAVs.
  • Too Low: The plane will hit the ground before it can slow down (Hard landing).
  • Too High: The plane will "Float" above the runway for too long and might stall and drop.

LAND_FLARE_SEC

s
Default 2.0
Range 0 5

Land Flare Time (LAND_FLARE_SEC)

Description

LAND_FLARE_SEC is a time-based backup for starting the landing flare.

The autopilot calculates when it expects to hit the ground based on its current sink rate. If that time becomes less than this value, it will start the flare even if it hasn't reached LAND_FLARE_ALT yet. This helps in high-sink-rate situations where the plane might otherwise hit the ground before the altitude-based trigger can react.

Tuning & Behavior

  • Default Value: 2.0 seconds.

LAND_OPTIONS

Default 0
Range 0 7

Landing Options (LAND_OPTIONS)

Description

LAND_OPTIONS tweaks the landing logic.

  • Bit 0: Use Rangefinder for Flare. Requires a Lidar. Much more precise than Baro.
  • Bit 1: Idle throttle during Pre-Flare.

Tuning & Behavior

  • Default Value: 0.

LAND_PF_ALT

m
Default 0
Range 0 30

Land Pre-Flare Altitude (LAND_PF_ALT)

Description

LAND_PF_ALT adds a "Slow Down" zone before the flare.

At this altitude, the plane will reduce its airspeed target to LAND_PF_ARSPD. This allows high-speed aircraft to bleed off energy safely before they are right on top of the runway.

Tuning & Behavior

  • Default Value: 0 (Disabled).
  • Recommendation: Set to 10-15m for fast jets or slippery gliders.

LAND_PF_ARSPD

m/s
Default 0
Range 0 30

Land Pre-Flare Airspeed (LAND_PF_ARSPD)

Description

LAND_PF_ARSPD sets the speed limit for the "Final Approach."

This is typically slower than cruise but faster than stall speed. It bridges the gap between flying speed and landing speed.

Tuning & Behavior

  • Default Value: 0 (Disabled).

LAND_PF_SEC

s
Default 0
Range 0 10

Land Pre-Flare Time (LAND_PF_SEC)

Description

LAND_PF_SEC triggers the pre-flare based on time-to-impact.

Tuning & Behavior

  • Default Value: 0 (Disabled).

LAND_PITCH_DEG

deg
Default 0
Range 0 15

Land Flare Pitch Angle (LAND_PITCH_DEG)

Description

LAND_PITCH_DEG sets the minimum nose-up attitude for touchdown.

This ensures the plane lands on its main wheels (for tricycle gear) or in a 3-point attitude (for taildraggers), protecting the propeller from striking the runway.

Tuning & Behavior

  • Default Value: 0.
  • Recommendation: Set to 3-5 degrees for most airframes.

LAND_REPOSITION

Default 1
Range 0 1

Pilot Land Reposition Enable (LAND_REPOSITION)

Description

LAND_REPOSITION allows you to steer the drone while it is landing itself.

If the drone is performing an automatic land (e.g. at the end of a Return-to-Launch), it might head toward a patch of long grass or a small puddle. If this parameter is Enabled (1), you can use your transmitter sticks to "nudge" the drone left, right, forward, or backward without cancelling the landing sequence. The drone will continue its vertical descent while moving horizontally based on your inputs.

  • 1: Enabled (Default). Active pilot steering allowed during LAND.
  • 0: Disabled. The drone will land exactly where it is, ignoring pilot sticks.

Tuning & Behavior

  • Safety: This is a vital safety feature. It allows you to avoid last-second obstacles on the ground that the GPS might not be precise enough to miss.

LAND_SLOPE_RCALC

m
Default 2.0
Range 0 5

Land Slope Recalculate Altitude (LAND_SLOPE_RCALC)

Description

LAND_SLOPE_RCALC is a correction threshold.

If the plane is too high or too low on the approach, the autopilot will try to fly back to the ideal line. However, once the plane gets very close to the ground (below this altitude), it stops trying to correct the slope and commits to the current path to avoid erratic pitch changes just before touchdown.

Tuning & Behavior

  • Default Value: 2.0 m.
  • Recommendation: Keep low. Recalculating the slope at 20m is fine; recalculating at 0.5m might cause a crash.

LAND_SPEED

cm/s
Default 50
Range 30 200

Land Descent Speed (LAND_SPEED)

Description

LAND_SPEED is the "Final Contact Speed" for the drone. It is the vertical velocity used from LAND_ALT_LOW until the drone detects it has touched the ground.

The Engineer's View

In the ArduCopter control loop, once the LAND_ALT_LOW threshold is crossed, the position controller switches to a target velocity equal to this parameter. The "Land Detector" state machine then waits for:

  1. Vertical Velocity to be near zero.
  2. Throttle to be at minimum.
    Once these are met for a specific duration (LAND_DISARMDELAY), the drone disarms.

Tuning & Behavior

  • Default Value: 50 cm/s (0.5 m/s).
  • The "Bounce" Issue: If your drone bounces back into the air upon touching down, your LAND_SPEED is likely too high, or your landing gear is too springy. Reduce to 30-40 cm/s.
  • Surface Consistency: If landing on tall grass or soft sand, you may need a slightly higher speed to ensure the land detector triggers reliably.

LAND_SPEED_HIGH

cm/s
Default 0
Range 0 500

Land Descent Speed High (LAND_SPEED_HIGH)

Description

LAND_SPEED_HIGH allows the drone to descend faster from high altitudes during an RTL or LAND mission, then slow down once it gets closer to the ground.

  • 0 (Default): The drone uses the standard WPNAV_SPEED_DN for the entire descent until LAND_ALT_LOW.
  • Value (e.g., 200): The drone will descend at 2 m/s until it hits the low altitude threshold.

Tuning & Behavior

  • Default Value: 0
  • Recommendation: If you frequently fly at high altitudes (e.g., 100m+), set this to 200 or 300 to save battery during RTL.

LAND_THEN_NEUTRL

Default 0
Range 0 1

Land Then Neutralize Servos (LAND_THEN_NEUTRL)

Description

LAND_THEN_NEUTRL protects your servos after the flight.

Once the plane has landed and disarmed, the autopilot usually holds the last known control positions (e.g., elevator up). This parameter forces all surfaces to their center (neutral) position.

Tuning & Behavior

  • 0: Disabled (Hold last position).
  • 1: Enabled (Center all surfaces).
  • Recommendation: Enable this to prevent servo buzz on the ground.

LAND_THR_SLEW

%/s
Default 0
Range 0 100

Landing Throttle Slew Rate (LAND_THR_SLEW)

Description

LAND_THR_SLEW prevents the throttle from "pumping" during the approach.

If TECS is fighting turbulence, it might command rapid throttle changes. This parameter forces the throttle to change smoothly, which is better for scale aircraft and passenger comfort.

Tuning & Behavior

  • Default Value: 0 (Disabled/Use THR_SLEW).
  • Recommendation: Set to 20-30% if you hear the motor surging on final approach.

LAND_TYPE

Default 0
Range 0 1

Default Landing Type (LAND_TYPE)

Description

LAND_TYPE sets the default behavior for the LAND flight mode.

  • 0: Standard fixed-wing landing (Glide slope -> Flare).
  • 1: Deep Stall landing (Pop up -> Vertical descent).

Tuning & Behavior

  • Default Value: 0.
  • Deep Stall: Requires LAND_DS_* parameters to be configured first.

LAND_WIND_COMP

%
Default 0
Range 0 100

Land Wind Compensation (LAND_WIND_COMP)

Description

LAND_WIND_COMP adds a safety margin for windy days.

If you are landing into a 20 m/s headwind, the ground speed will be very low. If the wind suddenly stops (wind shear), the plane might stall. This parameter tells the autopilot to fly faster than normal when it detects strong wind.

Tuning & Behavior

  • Default Value: 0 (Disabled).
  • 50%: If wind is 10 m/s, add 5 m/s to the landing speed.
  • Recommendation: Set to 30-50% for reliable all-weather operation.