Parameter Configuration Management

Currently, there is not a great workflow for maintaining a record of parameter changes.

Companies wishing to integrate ArduPilot into their vehicles need a way to maintain a traceable record of their “golden” parameter set. Parameters will change many times over the development cycle of a vehicle, and it is prudent to keep a record of when and why parameters were changed.

Here are some basic requirements for such a tool:

  1. Ability to store and present a table of “golden” parameters, with a datestamped change history and commit messages/notes for each param. Ideally it would also present the full param docs.
  2. Ability to import a param file from a test flight where parameters were changed, diff these params on the current golden, and selectively commit new params. Ideally it would automatically ignore read only params and sensor offsets.
  3. Ability to export the golden params as a .param file (Ideally it would integrate with APJ tool to bake these in to a firmware image)
  4. Ability to cope gracefully with firmware updates and changes to default parameters (I believe @WickedShell had some opinions here)

Does anyone here have a workflow they like for this currently?
Most of this could be accomplished with a git repo and some scripts, but a standalone GUI tool or GCS plugin could be very nice to have for systems integrators that aren’t git savvy.


IAV has developed such a tool, and has been selling it via a distributor for a couple of years now.
The tool is called calguide and it is available from:

Take a look at it :slight_smile:

That looks like an interesting piece of software, especially because it integrates test data into the configuration management system.Do you have any experience with it?

We use it on a daily basis at our company. And many automotive companies do that as well.
I only wrote a tiny small part of it (the ardupilot integration). So I can only answer questions about that specific part.