Profile
Back to NewsBack
GitHub Trending 10 min
Reader Mode
ArduPilot/MethodicConfigurator: A clear ArduPilot configuration sequence

ArduPilot/MethodicConfigurator: A clear ArduPilot configuration sequence

11 hours ago

Correctly configure ArduPilot for your vehicles on your first attempt

| Lint | Quality | Test | Security | Deploy | Maintain | | ---- | ------- | ---- | -------- | ------ | -------- | | Pylint</a> | Codacy Badge</a> | pytest status</a> | Known Vulnerabilities</a> | pages-build-deployment</a> | Average time to resolve an issue</a> | | test Python cleanliness</a> | OpenSSF Best Practices</a> | Pytest tests</a> | CodeQL</a> | Upload MethodicConfigurator Package</a> | Percentage of issues still open</a> | | mypy</a> | REUSE status</a> | Coverage Status</a> | gitavscan</a> | pypi</a> | python versions</a> | | Pyright</a> | md-link-check</a> | Coverity Scan Build Status</a> | OpenSSF Scorecard</a> | PyPI - Downloads</a> | Code Climate</a> | | markdown-lint</a> | pre-commit</a> | Discord</a> | | Windows Build</a> | Update Flight Controller IDs</a> | ArduPilot Methodic Configurator is a software, developed by ArduPilot developers, that semi-automates a clear, proven and safe configuration sequence for ArduCopter drones. We are working on extending it to ArduPlane, Heli and Rover vehicles. But for those it is still very incomplete.
  • clear: the semi-automated sequence is linear, executed one step at the time with no hidden complex dependencies
  • proven: the software has been used by hundreds of ArduPilot developers and users. From beginners to advanced. On big and small vehicles.
  • safe: the sequence reduces trial-and-error by following established best practices and reduces the amount of flights required to configure the vehicle
  • Parameter management: Upload, download, and edit parameters with full documentation
  • Vehicle templates: Start from empty templates or from pre-configured settings for common vehicle types
  • Traceability: Documents every parameter change with reasons
Here are some YouTube video tutorials from the AMC YouTube Channel: YouTube tutorial - intro</a> YouTube tutorial - usecase</a> YouTube tutorial - beginners</a> YouTube tutorial - .bin analysis</a> And here is a presentation explaining it: ArduPilot methodic configurator power point presentation</a> Comparison with Ground Control Station (GCS) software, traditionally used to configure ArduPilot before AMC existed: | Feature | Mission Planner, QGroundControl, ... etc | ArduPilot Methodic Configurator | | ------- | ---------------------------------------- | ------------------------------- | | full automatic configuration | No | No | | configuration type | manual [^1] | semi-automated [^2] | | explains what to do | No | Yes | | explains when to do something | No | Yes, explains the path | | explains why do something | No | Yes | | configuration method | a different menu for each task, some tasks have no menu, so you need to dig into the 1200 parameters | each task only presents you a relevant subset of parameters | | parameter documentation | Yes, only on the full-parameter tree view | Yes | | displays relevant documentation | No | Yes | | makes sure you do not forget a step | No | Yes | | checks that parameters get correctly uploaded | No (MP), unsure (QGCS), yes (MAVProxy) | Yes | | reuse params in other vehicles | No, unless you hand edit files | Yes, out-of-the-box | | documents why you changed each parameter | No | Yes | | tutorials and learning resources | No, scattered and not integrated | Yes, context-aware help integrated | | auto. install lua scripts on the FC | No | Yes | | auto. backup of parameters before changing them | No | Yes | [^1]: you need to know what/when/why you are doing [^2]: it explains what you should do, when you should do it and why It's simple graphical user interface (GUI) manages and visualizes ArduPilot parameters, parameter files and documentation. !Application Screenshot No visible menus, no hidden menus, no complicated options, what you see is what gets changed.

Star History

Star History Chart</a>

Table of Contents

- What You'll Accomplish - Important Tips for Success - 1.1 Select the vehicle components - 1.2 Download and install software - 1.3 Input vehicle components and component connections into ArduPilot Methodic Configurator - 1.4 Perform IMU temperature calibration before assembling the autopilot into the vehicle (optional) - 1.5 Assemble all components except the propellers - 1.6 Basic mandatory configuration - 1.7 Assemble propellers and perform the first flight - 1.8 Minimalistic mandatory tuning - 1.9 Standard tuning (optional) - 1.10 Improve altitude under windy conditions (optional) - 1.11 System identification for analytical PID optimization (optional) - 1.12 Position controller tuning (optional) - 1.13 Everyday use

Quick Start

What You'll Accomplish

By the end of this process, your flight controller will be fully configured with:
  • ✅ All parameters optimized for your specific vehicle
  • ✅ Complete documentation of every change made
  • ✅ Backup files for easy restoration
  • ✅ Ready-to-fly configuration

Important Tips for Success

💡 Pro Tips:
  • Take your time: Read parameter descriptions - they contain valuable insights
  • Test incrementally: The step-by-step approach allows testing between changes
  • Keep backups: The software creates them automatically in the vehicle project directory
  • Document changes: Always fill in the "Change Reason" field - future you will thank you
⚠️ Common Mistakes to Avoid:
  • Rushing through steps: Each parameter has a purpose - understand before changing
  • Skipping component validation: Incorrect component settings can cause crashes
  • Ignoring warnings: Red backgrounds and error messages are there for your safety
  • Forgetting calibrations: Some parameters require physical calibration procedures:
- IMU temperature, analog voltage and current measurement, gyro, accelerometers

1. Quick overview of the entire process

To methodically build, configure and tune ArduPilot vehicles follow this sequence of steps:

1.1 Select the vehicle components

other hardware components avoid these components

1.2 Download and install software

  • Install ArduPilot Methodic Configurator on MS windows,
Linux or macOS

1.3 Input vehicle components and component connections into ArduPilot Methodic Configurator

The software needs this information to automatically preselect configuration settings relevant to your specific vehicle and input vehicle components and component connections information into the ArduPilot Methodic Configurator component editor window

1.4 Perform IMU temperature calibration before assembling the autopilot into the vehicle (optional)

IMU temperature calibration reduces the probability of Accel inconsistent and Gyro inconsistent errors and reduces the time required to arm the vehicle. IMU temperature calibration requires lowering the temperature of the autopilot (flight controller) to circa -20°C. That is harder to do once the autopilot is assembled inside the vehicle, hence it is done now. Follow starting the software after having created a new vehicle instructions once the calibration procedure is finished.

1.5 Assemble all components except the propellers

Assemble and connect all components. Make sure you follow best practices

1.6 Basic mandatory configuration

Using the ArduPilot Methodic Configurator GUI, complete these steps in order: receiver connections and protocol handheld controller calibration ESC telemetry and communication battery monitor configuration motor electrical pole count (optional) initial attitude PID gains ESC outputs, thrust scaling and motor tests flight controller orientation accelerometer calibration level calibration compass calibration Before the first flight, check the ArduPilot Hardware Report.

1.7 Assemble propellers and perform the first flight

Now that all mandatory configuration steps are done you can perform the first flight

1.8 Minimalistic mandatory tuning

These are the very minimum tuning steps required for a stable flight: depends on the power-to-thrust ratio found in the first flight use the webtool information to configure the notch filter(s) the EKF3 needs a tune to maintain altitude PID notch filter logging configuration PID notch filter configuration 34_quick_tune_results.param, you need lua scripting support to do this if not available you can tune manually. That is it, if you are impatient and do not want an optimized vehicle you can skip to everyday use.

1.9 Standard tuning (optional)

These are the standard tuning steps required for an optimized flight: flight path or fly manually, store the results using 36_inflight_magnetometer_fit_results.param, use the magfit webtool to calculate a file that the ardupilot methodic configurator can use and 38_evaluate_the_aircraft_tune_ff_enable.param 40_autotune_roll_results.param tune roll axis rate and angle PIDs 42_autotune_pitch_results.param tune pitch axis rate and angle PIDs 44_autotune_yaw_results.param tune yaw axis rate and angle PIDs 46_autotune_yawd_results.param tune yawd axis rate and angle PIDs 48_autotune_roll_pitch_retune_results.param re-tune roll and pitch pitch axis rate and angle PIDs performance evaluation flight after autotune angle rate derivative feed-forward calculation Now the standard tuning is complete you can skip to everyday use

1.10 Improve altitude under windy conditions (optional)

estimates the wind speed Uses the estimated wind speed to improve altitude stability finish wind estimation and restore logging settings

1.11 System identification for analytical PID optimization (optional)

55_system_id_input_pitch.param, 56_system_id_input_yaw.param system identification input flights 58_system_id_mixer_pitch.param, 59_system_id_mixer_yaw.param system identification mixer flights thrust mathematical model identification

1.12 Position controller tuning (optional)

position controller tuning guided operation without RC transmitter precision landing configuration 68_optical_flow_results.param, 69_use_optical_flow_instead_of_gnss.param optical flow calibration and configuration (optional)

1.13 Everyday use

Now that tuning and configuration are done, some logging and tests can be disabled and some more safety features enabled: Congratulations your flight controller is now fully configured in the safest and fastest way publicly known. Enjoy your properly configured vehicle.

Documentation and Support

Need help or support There is also documentation on other use cases and a detailed but generic Usermanual. Additional Documentation: - recovery steps for AM32 ESCs that are stuck or no longer detected

Contributing

Want to help us and contribute?

Internationalization

The software is available in multiple languages. On MS Windows the language is selected during install and that selection is stored in the desktop icon. You can manually create multiple desktop icons, each will run the software in a different language. On Linux and macOS the language is selectable by the --language command line argument. See contributing page if you want to help us translate the software into your language.

Code of Conduct

To use and develop this software you must obey the ArduPilot Methodic Configurator Code of Conduct.

License

This software is cost free. This project is licensed under the GNU General Public License v3.0.

Credits

It builds upon other open-source software packages
Chat with me