Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/PX4/PX4-Autopilot/llms.txt

Use this file to discover all available pages before exploring further.

Position mode and Altitude mode are the two primary assisted flight modes for multicopters. Both stabilize the vehicle so it holds a fixed altitude or 3D position when you release the sticks — removing the need to constantly correct for wind and IMU drift. They differ in one critical way: Position mode requires GPS and holds horizontal position, while Altitude mode works without GPS and only holds altitude, leaving you responsible for countering horizontal drift. These are the recommended modes for pilots learning to fly PX4 vehicles. Position mode in particular is the safest manual mode available — releasing all sticks actively brakes the vehicle to a stop and locks it to its current coordinates in 3D space.

Position mode

Position mode provides the highest level of assisted flight short of a fully autonomous mode. When your sticks are centered (within the MAN_DEADZONE threshold), the autopilot holds the vehicle’s current latitude, longitude, and altitude against wind and other disturbances. When you move the sticks, you command acceleration over ground — not angle and not velocity directly.

How stick inputs work

This acceleration-based mapping (controlled by MPC_POS_MODE) makes the vehicle behave like a car accelerator pedal:
  • Roll/Pitch sticks centered → vehicle holds horizontal position; actively brakes if it was moving
  • Roll/Pitch sticks deflected → vehicle accelerates in the commanded direction; the further you push, the more acceleration up to MPC_ACC_HOR_MAX; speed ramps up until reaching the limit set by MPC_VEL_MANUAL
  • Throttle stick centered → vehicle holds current altitude
  • Throttle stick up → vehicle ascends at a rate up to MPC_Z_VEL_MAX_UP (default: 3 m/s)
  • Throttle stick down → vehicle descends at a rate up to MPC_Z_VEL_MAX_DN (default: 1 m/s)
  • Yaw stick → commands yaw rotation rate; autopilot stabilizes the rate
The moment you release the sticks to center, the autopilot applies braking forces to stop horizontal motion and re-locks the vehicle to its current 3D position. This is the key safety benefit over Altitude mode.

Landing in Position mode

1

Position over the landing spot

Use the roll and pitch sticks to move the vehicle directly above your intended landing location. Release the sticks and wait for the vehicle to come to a complete stop.
2

Descend slowly

Gently lower the throttle stick to begin descent. Keep descent rate slow enough to confirm you are over the correct spot.
3

Continue descent through touchdown

Continue lowering the throttle stick. The vehicle will slow automatically as it approaches the ground due to the MPC_LAND_ALT1 and MPC_LAND_ALT2 altitude-based descent limiting.
4

Pull throttle to minimum

Once the vehicle touches down, pull the throttle stick all the way down to facilitate ground detection and trigger auto-disarm.
If the vehicle does not stop horizontal drift after releasing the sticks, land in Altitude mode instead and check your GPS and magnetometer calibration afterward. In some cases, a GPS glitch during flight can cause position drift that the autopilot cannot correct.

Position loss behavior

Position mode depends on a valid global position estimate. If GPS quality degrades below the threshold (e.g., due to signal loss or too few satellites), PX4 triggers the Position Loss Failsafe. Depending on your failsafe configuration and whether RC control and altitude estimates are available, PX4 may switch to Altitude mode, Manual/Stabilized mode, Land mode, or terminate.

Altitude mode

Altitude mode stabilizes the vehicle’s altitude using the barometer (and rangefinder if available) while leaving horizontal position control entirely to you. When you center the throttle stick, the autopilot holds the current altitude. The roll and pitch sticks still control vehicle tilt angle (like Stabilized mode), so the vehicle will drift horizontally if wind is present.

How stick inputs work

  • Roll/Pitch sticks centered → vehicle levels to horizontal; altitude is held; horizontal position drifts with wind
  • Roll/Pitch sticks deflected → vehicle tilts and moves in the commanded direction
  • Throttle stick at ~50% → vehicle holds current altitude
  • Throttle stick above 50% → vehicle ascends at a rate up to MPC_Z_VEL_MAX_UP
  • Throttle stick below 50% → vehicle descends at a rate up to MPC_Z_VEL_MAX_DN
  • Yaw stick → commands yaw rotation rate
Unlike Position mode, releasing the roll and pitch sticks does not brake the vehicle. Any horizontal velocity you built up before releasing the sticks bleeds off only through aerodynamic drag, which is slow. You must actively fly the horizontal axis at all times.
Altitude mode is the best non-GPS mode for flying indoors or in GPS-denied environments where you still want altitude hold. Pair it with optical flow for better horizontal stability indoors.

Comparing Position mode and Altitude mode

BehaviorPosition modeAltitude mode
GPS requiredYesNo
Altitude held when sticks centeredYesYes
Altitude sensorGPS + barometerBarometer (or rangefinder)
Horizontal position held when sticks centeredYesNo
Actively brakes horizontal motionYesNo
Wind drift compensationAutomaticPilot must correct manually
Stick-to-motion mappingAcceleration (default)Tilt angle
Recommended for beginnersYes (with GPS)Yes (without GPS)

Key parameters

ParameterDescriptionDefault
MPC_XY_VEL_MAXMaximum horizontal velocity the position controller will command12 m/s
MPC_VEL_MANUALMaximum horizontal velocity in Position mode at full stick deflection10 m/s
MPC_ACC_HOR_MAXMaximum horizontal acceleration5 m/s²
MPC_Z_VEL_MAX_UPMaximum vertical ascent velocity3 m/s
MPC_Z_VEL_MAX_DNMaximum vertical descent velocity1 m/s
MPC_TILTMAX_AIRMaximum tilt angle allowed in flight (all assisted/auto modes)45°
MAN_DEADZONEStick deadzone within which position or altitude hold activates10%
MPC_POS_MODEStick-to-motion mapping strategy: acceleration-based (default) or direct velocityAcceleration
MPC_LAND_ALT1Altitude below which descent speed is limited during landing approach10 m
MPC_LAND_ALT2Altitude below which descent is limited to MPC_LAND_SPEED5 m
MPC_LAND_SPEEDFinal landing descent rate0.7 m/s

First Position mode flight

1

Verify GPS lock

Confirm that QGroundControl shows a solid GPS fix with at least 6 satellites and HDOP below 2.0. The status bar icon should be solid, not flashing.
2

Check sensor calibration

Ensure your accelerometer, gyroscope, magnetometer, and barometer are calibrated. Review QGroundControl’s pre-flight check indicators — all should be green.
3

Arm and take off in Position mode

With the flight mode switch set to Position, arm the vehicle and raise the throttle above 62.5% of its full range. The vehicle will take off vertically and stabilize at a low hover altitude. Release all sticks and confirm the vehicle holds its position.
4

Test stick response

Gently deflect the roll stick to one side and observe the vehicle accelerate slowly in that direction. Release the stick and confirm the vehicle brakes and returns to holding position. Repeat for pitch, yaw, and throttle.
5

Practice landing

Move to an open landing area, center the sticks until the vehicle is stationary, then slowly lower the throttle to descend. Pull throttle to minimum on touchdown.
If you switch to Position mode and the vehicle immediately drifts or oscillates, check for GPS multipath issues (flying near large structures) or magnetometer interference (flying near power lines or metal structures). Poor position estimates cause the position controller to overcorrect.

Build docs developers (and LLMs) love