Metadata-Version: 2.1
Name: parachute
Version: 0.2.2
Summary: A lifeline for ArduPilot craft.
Home-page: https://gitlab.com/stavros/parachute
License: AGPL-3.0-or-later
Author: Stavros Korokithakis
Author-email: hi@stavros.io
Requires-Python: >=3.6,<4.0
Classifier: License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Requires-Dist: click (>=7.1.2,<8.0.0)
Requires-Dist: json5 (>=0.9.5,<0.10.0)
Requires-Dist: pymavlink (>=2.4.14,<3.0.0)
Requires-Dist: pyserial (>=3.5,<4.0)
Project-URL: Repository, https://gitlab.com/stavros/parachute
Description-Content-Type: text/markdown

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
```


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
```

