MAVLINKHUD

Overview

The STICK parameter group (specifically STICK_MIXING) configures the pilot's ability to "nudge" or override the autopilot's path while in Autonomous flight modes (Auto, Guided, RTL).

This is a critical safety feature that allows the pilot to steer around unexpected obstacles (like a person walking onto a landing pad) without needing to switch into a fully manual flight mode.

Key Concepts

1. Manual Nudging

When stick mixing is enabled, moving the RC transmitter sticks adds an offset to the autopilot's target position or attitude.

  • Action: If the drone is flying a straight line in Auto and you push the roll stick right, the drone will bank right and move off the line. When you release the stick, it will steer back to the original mission path.

2. Mixing Modes (STICK_MIXING)

  • 0 (Disabled): Sticks are completely ignored in Auto modes.
  • 1 (FBW): Recommended. The sticks provide a stabilized override.
  • 3 (VTOL Yaw): (QuadPlane) Allows the pilot to control heading during VTOL takeoff/landing while the autopilot handles position.

Developer Notes

  • Library: ArduPlane/Attitude.cpp, ArduCopter/control_auto.cpp.
  • Safety: Ensures the pilot always has "ultimate authority" over the vehicle's trajectory.

STICK_MIXING

Option
Default 1
Range 0 3

Stick Mixing (STICK_MIXING)

Description

This parameter enables "Manual Nudging" during autonomous flight modes (like AUTO, GUIDED, or RTL). It allows the pilot to use the transmitter sticks to temporarily override the autopilot's path without actually taking full manual control.

This is a vital safety and utility feature. For example, if a drone is landing autonomously but the pilot sees an obstacle on the ground, they can nudge the stick to shift the landing spot slightly while the autopilot continues to handle the descent and stabilization.

The Mathematics

The autopilot combines the navigation command ($Cmd\_{nav}$) with the pilot's stick input ($Input\_{pilot}$):

FBW Mixing (Mode 1):
The stick input is treated as a delta to the target attitude.
$$ \text{TargetAngle} = \text{TargetAngle}{nav} + (Input{pilot} \times \text{MaxAngle}) $$

VTOL Yaw (Mode 3):
Specifically applies only to the Yaw axis during QuadPlane VTOL phases.
$$ \text{YawRate} = \text{YawRate}{nav} + (Input{yaw\_stick} \times \text{MaxYawRate}) $$

The Engineer's View

In ArduPlane/Attitude.cpp, the function Plane::stick_mixing_enabled() checks this parameter.

  • Mode 0 (None): Sticks are ignored in Auto modes. Danger: If the GPS glitches, the pilot has no way to "steer" the plane without first flipping a switch to a manual mode.
  • Mode 1 (FBW): Uses "Fly-By-Wire" logic. This is the recommended setting. It ensures that the pilot can never command an unsafe bank or pitch angle, even while nudging.
  • Mode 3 (VTOL Yaw): Used for QuadPlanes to allow the pilot to point the nose of the aircraft during an automatic VTOL takeoff or landing while the autopilot maintains position.

Tuning & Behavior

  • Default Value: 1 (FBW).
  • Recommendation: Keep at 1 for most users. It provides the best balance of autonomous precision and pilot authority.
  • Rover: On Rovers, this allows the pilot to steer around obstacles on a mission path. The rover will return to the direct line to the waypoint once the pilot releases the stick.