Skip to content

Parachute Configuration ​

When a multirotor loses control in the air and starts to fall, an automatic parachute deployment brings the descent rate under 5 m/s and saves the airframe and payload.

ArduPilot's parachute feature is not limited to multirotors — helicopters, fixed-wing aircraft and VTOLs use it too, with the same parameters. Motor failure, a jammed control surface, a violent spin, a flat battery: once the pilot can no longer fly it out with attitude control, the parachute is the last line of defence.

There are three ways to trigger it: automatic on loss of control, manual from a transmitter switch, and a command from the ground station or a mission.

Hardware requirements ​

Parachute unit ​

  • The release mechanism must be electrically driven: a servo, a solenoid valve or a pyro cutter all work
  • A ready-made chute built for PWM servo or relay triggering is the easiest to wire and configure — Fruity Chutes, Mars Mini and SkyCat, for example
  • The canopy has to be big enough: once fitted it must hold the whole aircraft below 5 m/s descent. A home-made setup is simply "a servo pulling a pin, plus a chute bag"
Parachute mechanism

▲ Left: door, release spring, servo and the wiring to the controller; right: deployed

Controller interface ​

Two options, pick one:

MethodConnects toParameters
Servo (preferred)Any free PWM outputSERVOx_FUNCTION = 27 (Parachute Release)
RelayA free GPIORELAYX_PIN + RELAYX_FUNCTION = 3

Pins and wiring are covered in the next section.

Power ​

Give the servo (or the pyro igniter) its own BEC or battery. If the main pack comes loose or a wire is torn out, the chute still has to open — that is the whole point of the separate supply. Sharing the main pack hands the last line of defence to the system that has already failed.

Mechanical installation ​

  • The bay door opens outward — otherwise prop wash can suck it shut
  • Fire the chute upward, clear of the blades and arms, so the lines cannot tangle
  • Put the bridle attachment slightly below the aircraft's centre of gravity so it does not hang upside down after deployment

Wiring ​

The servo signal wire goes to one of the controller's PWM outputs. Which pin SERVO9 lands on depends on whether the controller has an IOMCU:

Controller typePin for SERVO9
With IOMCU (outputs split into MAIN and AUX)A1 (AUX OUT 1)
Without IOMCU (a single bank of M outputs)M9

Check the silkscreen on the controller before wiring, and confirm which number SERVO9 maps to.

Servo wiring on X25 EVO

▲ X25 EVO as the example: the servo's three wires go to M9 (colour coding is in the legend), and the servo pulls the pin to release the chute

Two things to watch when triggering with a relay:

  • GPIO output current is tiny — never drive a heavy load from it directly
  • GPIO is low by default while the bootloader runs, so choose a mechanism that triggers on a high level and set RELAYx_DEFAULT to OFF or No Change, so powering up cannot fire the chute by accident

WARNING

Deployment is violent. Take the propellers and the chute off before any bench or ground test.

Parameters ​

ParameterWhat it doesValues
CHUTE_ENABLEDMaster switch for the parachute0 off
1 on
CHUTE_TYPERelease mechanism type10 servo
0 relay
CHUTE_SERVO_ONServo PWM on deployment1000 ~ 2000 µs
CHUTE_SERVO_OFFServo PWM at rest (not deployed)1000 ~ 2000 µs
CHUTE_CRT_SINKSink rate that triggers deployment0 ~ 15 m/s
CHUTE_ALT_MINMinimum height above the takeoff point for automatic deployment0 ~ 32000 m; 0 disables the check, default 10 m
CHUTE_DELAY_MSDelay from motor stop to deployment0 ~ 5000 ms
CHUTE_OPTIONSExtra behaviours, see belowbitmask

Setup steps ​

1. Turn it on ​

Set CHUTE_ENABLED to 1, then refresh parameters or reboot — the other CHUTE_ parameters only appear after that.

2. Choose the release method ​

Servo release

ParameterSet to
CHUTE_TYPE10
CHUTE_SERVO_ONPWM that pulls the pin
CHUTE_SERVO_OFFPWM at rest
SERVO9_FUNCTION27 (Parachute), which is A1 or M9; for another output just shift the number, so A2 or M10 uses SERVO10_FUNCTION

Relay release

ParameterSet to
CHUTE_TYPE0
RELAY1_PINGPIO pin number for that relay
RELAY1_FUNCTION3 (Parachute)
Setting output function to 27

▲ Set the output that drives the servo to function 27 (Parachute)

3. Set the trigger conditions ​

  • CHUTE_CRT_SINK: deploy once the sink rate reaches this value, in m/s
  • CHUTE_ALT_MIN: minimum height above the takeoff point — below it there is no automatic deployment; 0 disables the height check

4. Manual deployment (optional) ​

Give the transmitter a switch and set that channel's RCx_OPTION to:

ValueMeaning
22Switch high deploys the chute
23Three-position: low = deployment disabled, middle = enabled, high = forced deployment
21Enable/disable only: high = deployment allowed, anything else = blocked

5. Ground station or mission deployment (optional) ​

Use MAV_CMD_DO_PARACHUTE (command 208); parameter 1 sets the action — 0 disable, 1 enable, 2 release now. It also works as a DO_PARACHUTE waypoint in a mission.

CHUTE parameters in the full parameter list

▲ Search for CHUTE_ in the full parameter list to find these (the screenshot is an older interface; trust what you see)

When it deploys automatically ​

All of these must hold for a full second before it deploys:

  • Armed, and not landed
  • Not in FLIP or ACRO
  • Roll or pitch more than 30° away from the target attitude
  • The barometer shows the aircraft is not climbing
  • At the moment the loss of control is first detected, higher than CHUTE_ALT_MIN (in a fast fall, the actual deployment may already be below that height)

NOTE

Too much barometer noise can make the check fail; the other way round, a false detection deploys the chute for nothing. Set the sink rate and minimum height for your own airframe — do not copy the defaults.

The two CHUTE_OPTIONS bits ​

BitMeaning
0Hold the released state until reboot. For cold high-altitude work, where the servo or relay may be frozen and only moves once it warms up lower down
1Do not disarm the aircraft before deploying (by default the motors are stopped and the aircraft disarmed first)

Testing deployment ​

Take the propellers and the chute off first; watch only the servo or relay and the ground station messages.

Manual test

  1. Set CHUTE_ALT_MIN to 0 to skip the height check
  2. Arm in Stabilize and raise the throttle past minimum (motors disconnected or props off)
  3. Flip the transmitter switch set up above, or trigger it from the Servo / Relay screen in the ground station
  4. The motors stop, the release fires and the HUD shows Parachute: Released!

Automatic test

  1. Set CHUTE_ALT_MIN to 0
  2. Arm and raise the throttle
  3. Tilt the aircraft more than 30° while lowering it, so the barometer reading keeps falling

After about a second the motors stop, the release fires and the HUD shows Parachute: Released.

TIP

Put CHUTE_ALT_MIN back to the value you need afterwards — the factory default is 10 m.

References ​