Recently I’m working on a plugin for MP which can store baseline configurations for different vehicles and track any parameter changes. I’m interested to see what are the opinion/requirements/recommendations for such a function.
My ideas so far:
-
Mission Planner is configured for a specific task via a custom configuration xml file, which is set in the command line with ‘ - config <configname.xml>’ option. The user then creates a shortcut for MP with the necessary command line option.
-
Each vehicle has a unique id, set in the BRD_SERIAL parameter. This identifies the given vehicle in the fleet.
-
Parameter values are stored in a “VAULT” and each set of parameters are identified by the config plus the unique vehicle id. The baseline values are stored into the vault when a vehicle is first connected.
-
When a vehicle is connected to Mission Planner, but not armed, a plugin checks parameter values against the vault regularly. When a change is detected the changed values are presented to the operator to describe the reason for change and “sign” it. Operator can either save changes into the vault or discard changes and replace changed values on the vehicle from ones in the VAULT.
-
All changes in the vault or on the vehicle are saved in a changelog for further reference.
-
In a first implementation the VAULT will be a simple text file, named according the config and board id. Later this can stored in the cloud and can be synchronized between different computers.
Ideas, recommendations and critics are welcome.