PX4 Autopilot Software
Go to file
Jukka Laitinen 51ceb9a85e Add support for compiling modules into kernel side
Define __KERNEL__ macro during compilation and place the module in separate library

Remove default library linking to m or libc on NuttX. Add these in platform layer instead, since
they are different on kernel and user side

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2022-01-27 12:42:40 -05:00
.ci Jenkins: hardware tolerate irrelevant uorb status failure 2022-01-18 12:23:05 -05:00
.clusterfuzzlite Add clusterfuzzlite to fuzz in CI 2022-01-07 10:17:12 -05:00
.devcontainer ci: update container versions to 2021-09-08 2021-09-09 09:43:15 +02:00
.github boards: add holybro/kakuteh7 2022-01-17 10:41:33 -05:00
.vscode vscode: cmake variants add px4_fmu-v5_debug for convenient debugging 2021-11-22 11:27:45 -05:00
Documentation DriverFramework purge 2020-01-13 14:07:03 -05:00
ROMFS ROMFS: Holybro X500 v2 airframe addition 2022-01-18 15:11:41 -05:00
Tools uorb graph: fix the link problem for multi topics (#19062) 2022-01-24 09:18:21 +01:00
boards dshot: remove BOARD_DSHOT_MOTOR_ASSIGNMENT & handle timer channel gaps 2022-01-21 20:41:15 -05:00
cmake Add support for compiling modules into kernel side 2022-01-27 12:42:40 -05:00
integrationtests/python_src/px4_it Improve offboard failsafe (#18160) 2021-09-08 18:19:53 +02:00
launch Fix roslaunch multivehicle regression caused by #16497 2021-01-12 21:19:36 +01:00
msg msg: Add full_charge_capacity_wh 2022-01-26 13:44:48 -05:00
platforms Fix px4_impl_os for protected build 2022-01-27 12:42:40 -05:00
posix-configs boards: move default battery calibration defines to parameter defaults 2022-01-10 09:49:36 -05:00
src lib/version: Don't link to drivers_board 2022-01-27 12:42:40 -05:00
test mavsdk_tests: update catch2 to 2.13.8 2022-01-24 16:16:29 -05:00
test_data ghst: keep the previous values for channels that are not updated 2021-02-20 11:29:57 +01:00
validation actuator outputs: always add reverse range param 2022-01-14 12:18:29 -05:00
.ackrc
.clang-tidy clang-tidy ignore modernize-raw-string-literal for now 2021-10-20 08:10:05 +02:00
.gitattributes gitattributes eol=lf for nearly all file types 2020-08-05 11:32:26 -04:00
.github_changelog_generator
.gitignore dataman: add SYS_DM_BACKEND parameter 2021-12-10 09:10:02 -05:00
.gitmodules Remove ucannode_gps_demo since it's superseded by uavcan_v1 2021-12-01 09:29:15 -05:00
.travis.yml travis: change coverity to run on master 2020-01-16 13:31:41 -05:00
.ycm_extra_conf.py update C++ standard (c++11 -> c++14) 2020-01-21 21:49:10 -05:00
CMakeLists.txt Add support for compiling modules into kernel side 2022-01-27 12:42:40 -05:00
CODE_OF_CONDUCT.md
CONTRIBUTING.md Update CONTRIBUTING.md 2020-04-29 22:49:30 +01:00
CTestConfig.cmake
Firmware.sublime-project boards new split VENDOR_MODEL naming convention 2018-11-26 14:40:14 -08:00
Jenkinsfile Jenkins: always fully clean git workspace 2021-12-29 17:14:11 -05:00
Kconfig Add support for compiling modules into kernel side 2022-01-27 12:42:40 -05:00
LICENSE Update current year in LICENSE 2022-01-17 08:10:57 +01:00
Makefile Add clusterfuzzlite to fuzz in CI 2022-01-07 10:17:12 -05:00
PULL_REQUEST_TEMPLATE.md PULL_REQUEST_TEMPLATE: change order of titles (#13174) 2019-10-14 13:11:44 +02:00
README.md README: update slack invite and badge 2021-07-28 07:39:20 +02:00
appveyor.yml appveyor: switch to Cygwin toolchain v0.9 2020-03-24 13:31:41 +00:00
eclipse.cproject boards new split VENDOR_MODEL naming convention 2018-11-26 14:40:14 -08:00
eclipse.project boards new split VENDOR_MODEL naming convention 2018-11-26 14:40:14 -08:00
package.xml Remove eigen leftovers 2019-10-07 12:04:50 +02:00

README.md

PX4 Drone Autopilot

Releases DOI

Nuttx Targets SITL Tests

Slack

This repository holds the PX4 flight control solution for drones, with the main applications located in the src/modules directory. It also contains the PX4 Drone Middleware Platform, which provides drivers and middleware to run drones.

PX4 is highly portable, OS-independent and supports Linux, NuttX and MacOS out of the box.

Building a PX4 based drone, rover, boat or robot

The PX4 User Guide explains how to assemble supported vehicles and fly drones with PX4. See the forum and chat if you need help!

Changing code and contributing

This Developer Guide is for software developers who want to modify the flight stack and middleware (e.g. to add new flight modes), hardware integrators who want to support new flight controller boards and peripherals, and anyone who wants to get PX4 working on a new (unsupported) airframe/vehicle.

Developers should read the Guide for Contributions. See the forum and chat if you need help!

Weekly Dev Call

The PX4 Dev Team syncs up on a weekly dev call.

Note The dev call is open to all interested developers (not just the core dev team). This is a great opportunity to meet the team and contribute to the ongoing development of the platform. It includes a QA session for newcomers. All regular calls are listed in the Dronecode calendar.

Maintenance Team

See also maintainers list (px4.io) and the contributors list (Github).

Supported Hardware

This repository contains code supporting Pixhawk standard boards (best supported, best tested, recommended choice) and proprietary boards.

Pixhawk Standard Boards

Manufacturer and Community supported

Additional information about supported hardware can be found in PX4 user Guide > Autopilot Hardware.

Project Roadmap

A high level project roadmap is available here.