Skip to main content

A lifeline for ArduPilot craft.

Project description

Parachute

Parachute is a swiss army knife for ArduPilot settings. It helps you quickly and easily back up all your parameters to a file (and restore them). It also lets you get/set them, filter them, diff them, restore them or convert them to parameter files compatible with Mission Planner/QGroundControl.

Installation

Installing Parachute is simple. You can use pipx (recommended):

$ pipx install parachute

Or pip (less recommended):

$ pip install parachute

You can also download pre-built binaries for Windows and Linux from the artifacts page.

Usage

Parachute is called like so:

$ parachute backup <craft name>

For example:

$ parachute backup Mini-Drak

To restore:

$ parachute restore backup.chute

Conversion

You can also convert a Parachute file to a file compatible with Mission Planner or QGroundControl:

$ parachute convert qgc Mini-Drak_2021-03-02_02-29.chute Mini-Drak.params

Filtering

You can filter parameters based on a regular expression:

$ parachute filter "serial[123]_" Mini-Drak_2021-03-02_02-29.chute filtered.chute

Since all parameter names are uppercase, the regex is case-insensitive, for convenience.

You can also filter when converting:

$ parachute convert --filter=yaw mp Mini-Drak_2021-03-02_02-29.chute -

Comparing

You can compare parameters in a backup with parameters on the craft:

$ parachute compare backup.chute

Getting/setting

You can get and set parameters:

$ parachute get BATT_AMP_OFFSET BATT_AMP_PERVLT
$ parachute set BATT_AMP_OFFSET=-0.0135 BATT_AMP_PERVLT=63.8826

You can get and set a single bit like so:

$ parachute get --binary FLIGHT_OPTIONS
$ parachute set FLIGHT_OPTIONS:5=1

Shell completions

Parachute includes shell completion for AP parameters for various shells. After you've enabled completions, you can get parameter completion for the get and set commands. For example, try typing parachute get acr<TAB>.

The way to enable it depends on your shell:

fish

Save the completion script to ~/.config/fish/completions/parachute.fish:

_PARACHUTE_COMPLETE=fish_source parachute > ~/.config/fish/completions/parachute.fish

bash

Save the completion script somewhere.

_PARACHUTE_COMPLETE=bash_source parachute > ~/.parachute-complete.bash

Source the file in ~/.bashrc.

. ~/.parachute-complete.bash

zsh

Save the completion script somewhere.

_PARACHUTE_COMPLETE=zsh_source parachute > ~/.parachute-complete.zsh

Source the file in ~/.zshrc.

. ~/.parachute-complete.zsh

Changelog

v0.4.1 (2022-11-05)

Features

  • Don't exit on missing parameters when restoring. [Stavros Korokithakis]

Fixes

  • Fix bug where negative numbers were erroneously not accepted. [Stavros Korokithakis]

v0.4.0 (2022-07-02)

Features

  • Add getting and setting bits directly. [Stavros Korokithakis]

  • Add the "--binary" parameter to display bit indexes. [Stavros Korokithakis]

Fixes

  • Remove unused code. [Stavros Korokithakis]

v0.3.11 (2022-02-26)

Features

  • Add "--compare" flag to "restore" [Stavros Korokithakis]

Fixes

  • Name files a bit better. [Stavros Korokithakis]

v0.3.10 (2021-12-17)

Fixes

  • Improve autodetection even more again. [Stavros Korokithakis]

  • Improve autodetection even more. [Stavros Korokithakis]

  • Improve autodetection default. [Stavros Korokithakis]

v0.3.9 (2021-11-02)

Fixes

  • Show the correct parameter name when diffing. [Stavros Korokithakis]

v0.3.8 (2021-10-29)

Features

  • Colorize tables. [Stavros Korokithakis]

  • Make table Markdown-compatible. [Stavros Korokithakis]

Fixes

  • Fix inverted compare display. [Stavros Korokithakis]

v0.3.7 (2021-10-23)

Features

  • Include parameter completions. [Stavros Korokithakis]

  • Add --baud-rate cli option` [Stavros Korokithakis]

Fixes

  • Display accurate names when diffing. [Stavros Korokithakis]

  • Fix port detection on Windows. [Stavros Korokithakis]

v0.3.6 (2021-08-29)

Features

  • Attempt socket autodetection. [Stavros Korokithakis]

Fixes

  • Make messages more consistent. [Stavros Korokithakis]

v0.3.5 (2021-05-24)

Features

  • Show old and new parameter values when setting. [Stavros Korokithakis]

v0.3.4 (2021-05-04)

Features

  • Add --only-backup and --only-craft options to "compare" [Stavros Korokithakis]

  • Add version command line parameter. [Stavros Korokithakis]

  • Allow the "compare" command to compare two backups. [Stavros Korokithakis]

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

parachute-0.4.1.tar.gz (36.6 kB view details)

Uploaded Source

Built Distribution

parachute-0.4.1-py3-none-any.whl (34.8 kB view details)

Uploaded Python 3

File details

Details for the file parachute-0.4.1.tar.gz.

File metadata

  • Download URL: parachute-0.4.1.tar.gz
  • Upload date:
  • Size: 36.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.15

File hashes

Hashes for parachute-0.4.1.tar.gz
Algorithm Hash digest
SHA256 d0e4f83d0a4eb0ab0e0f44c763955736357920930bcf652f98b28040e5023120
MD5 f88ad769335e4ca833b41508c29be0db
BLAKE2b-256 ef41609092d46cfb5cbbd89c89eea03a7bf2b22d95eb67dbf6e4c5494c26051e

See more details on using hashes here.

File details

Details for the file parachute-0.4.1-py3-none-any.whl.

File metadata

  • Download URL: parachute-0.4.1-py3-none-any.whl
  • Upload date:
  • Size: 34.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.15

File hashes

Hashes for parachute-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8897dfe81b9625dc4971c948f997e47ff94a2731892aab0f8da82d1ec49f02aa
MD5 90e09c411d31dc31f09fa746563cbe47
BLAKE2b-256 e11b74d1ad56fd6bd81bc9a4e9834945fbf278168a38d8355559f803d572c4d8

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page