Contact information for the core dev team and community can be found below. The PX4 project uses a three-branch Git branching model:
- master is by default unstable and sees rapid development.
- beta has been thoroughly tested. It's intended for flight testers.
- stable points to the last release.
To contribute new functionality, sign up for Github, then fork the repository, create a new branch, add your changes, and finally send a pull request. Changes will be merged when they pass our continuous integration tests.
All contributions have to be under the permissive BSD 3-clause license and all code must not impose any further constraints on the use.
Code style formatting
PX4 uses astyle for code formatting. Valid versions are
Once installed, formatting can be checked with
./Tools/check_code_style_all.sh. The output should be
Format checks passed on a clean master. If that worked,
make format can be used in the future to check and format all files automatically.
Commits and Commit Messages
Please use descriptive, multi-paragraph commit messages for all non-trivial changes. Structure them well so they make sense in the one-line summary but also provide full detail.
Component: Explain the change in one sentence. Fixes #1234 Prepend the software component to the start of the summary line, either by the module name or a description of it. (e.g. "mc_att_ctrl" or "multicopter attitude controller"). If the issue number is appended as <Fixes #1234>, Github will automatically close the issue when the commit is merged to the master branch. The body of the message can contain several paragraphs. Describe in detail what you changed. Link issues and flight logs either related to this fix or to the testing results of this commit. Describe the change and why you changed it, avoid to paraphrase the code change (Good: "Adds an additional safety check for vehicles with low quality GPS reception". Bad: "Add gps_reception_check() function"). Reported-by: Name <firstname.lastname@example.org>
git commit -s to sign off on all of your commits. This will add
signed-off-by: with your name and email as the last line.
This commit guide is based on best practices for the Linux Kernel and other projects maintained by Linus Torvalds.
Tests Flight Results
Forums and Chat
Weekly Dev Call
The PX4 Dev Team syncs up on its weekly dev call.