PX4 Autopilot Software
Go to file
David Sidrane e90e8ae0ea Intial Commit PX4 FMUV6RT
nxp/rt117x:Fix Pin IRQ

nxp/rt117x:Support 4 i2c busses

nxp/rt117x:Add px4io_serial support

nxp/imxrt:Expand ToneAlarmInterface to GPT 3 & 4

px4_fmu-6xrt:Using imxrt_flexspi_nor_octal

px4_fmu-6xrt:Entry is start

px4_fmu-6xrt:Add Proper MTD

px4_fmu-6xrt:Set I2C Buses

px4_fmu-6xrt:Proper SPI usage

px4_fmu-6xrt:Adjust memory Map to use the 2 MB

px4_fmu-6xrt:Bring in ROMAPI

px4_fmu-6xrt:Push FLASH to 200Mhz

px4_fmu-6xrt:Use BOARD_I2C_LATEINIT

px4_fmu-6xrt:Clock Config remove unused devices

px4_fmu-6xrt:Remove EVK SDRAM IO

px4_fmu-6xrt:Enable SE550 using HW_VER_REV_DRIVE

px4_fmu-6xrt:Use MTD to mount FRAM on Flex SPI

px4_fmu-6xrt:Manifest

px4_fmu-6xrt:Restore board_peripheral_reset

px4_fmu-6xrt:Set I2C buss Interna/Externa and startup

nxp/rt117x:Set 6 I2C busses

px4_fmu-6xrt:Correct Clock Sources and Freqency Settings

px4_fmu-6xrt:Correct ADC Settings

px4_fmu-6xrt:Tune FlexSPI config and sync header with debug variant Linker prep for rodata ahb partitioning

px4_fmu-6xrt:FlexSPI prefetch partition split .text and .rodata

   Current config
     1KB Prefetch .rodata
     3KB Prefetch .text

px4_fmu-6xrt:Run imxrt_flash_setup_prefetch_partition from ram with barriers

px4_fmu-6xrt:Use All OCTL setting from FLASH g_flash_config SANS lookupTable

px4_fmu-6xrt:Octal spi boot/debug problem bypass

px4_fmu-6xrt:Add PWM test

px4_fmu-6xrt:Fix clockconfig and USB vbus sense

px4_fmu-6xrt: Use TCM

px4_fmu-6xrt: Ethernet bringup

imxrt: use unique_id register for board_identity

px4_fmu-6xrt: update ITCM mapping, todo proper trap on pc hitting 0x0

px4_fmu-6xrt:correct rotation icm42688p onboard imu

rt117x: Add SSARC HP RAM driver for memory dumps

px4_fmu-6xrt: Enable hardfault_log

px4_fmu-6xrt: Enable DMA pool

px4_fmu-6xrt: fix uart mapping

px4_fmu-6xrt: enable SocketCAN & DroneCAN

px4_fmu-6xrt:Command line history TAB completion

px4_fmu-6xrt:Fix pinning duplication

px4_fmu-6xrt:Support conditional PHY address based on selected PHY

px4_fmu-6xrt:Add Pull Downs on CTS, use GPIO for RTS

px4_fmu-6xrt:Set TelemN TX Slew rate and Drive Strenth to max

px4_fmu-6xrt::Set TELEM Buffers add HW HS

px4_fmu-6xrt:Turn off DMA poll

px4_fmu-6xrt:RC_SERIAL_PORT needed to be px4io to disable rc_input using TELEM2!

px4_fmu-6xrt: bootloader (#22228)

* imxrt:Add bootloader support
* bootloader:imxrt clear BOOT_RTC_SIGNATURE
* px4_fmu-6xrt:Add bootloader
* px4_fmu-6xrt:bootloader removed ADC
* px4_fmu-6xrt:bootloader base bootloader script off of script.ld
* px4_fmu-6xrt:add _bootdelay_signature & change entry from 0x30000000 to 0x30040000
* px4_fmu-6xrt:hw_config Bootloader has to have 12 bytes

px4_fmu-6xrt:Default to use LAN8742A PHY

px4_fmu-v6xrt:VID Set to Drone Code

board_reset:Enable ability to write RTC GP regs

px4_fmu-6xrt:Fix CMP0079 error

rt117x:micro_hal Add a PX4_MAKE_GPIO_PULLED_INPUT

px4_fmu-v6xrt:Set CTS High before VDD_5V applided to ports to avoid radios fro entering bootloaders

fmu-v6xrt: increase 5v down time

fmu-v6xrt:Ready for Release DEBUGASSERTS off and Console 57600,
Bootloder updated.

imxrt:board_hw_rev_ver Rework for 3.893V Ref

px4_fmu-v6xrt:Move ADC to Port3
2023-11-15 11:10:47 -05:00
.ci Intial Commit PX4 FMUV6RT 2023-11-15 11:10:47 -05:00
.clusterfuzzlite Add clusterfuzzlite to fuzz in CI 2022-01-07 10:17:12 -05:00
.devcontainer vscode add Makefile extension to recommended and devcontainer.json 2023-09-25 12:26:29 -04:00
.github Intial Commit PX4 FMUV6RT 2023-11-15 11:10:47 -05:00
.vscode Intial Commit PX4 FMUV6RT 2023-11-15 11:10:47 -05:00
Documentation msg ROS2 compatibility, microdds_client improvements (timesync, reduced code size, added topics, etc), fastrtps purge 2022-10-19 19:36:47 -04:00
ROMFS Intial Commit PX4 FMUV6RT 2023-11-15 11:10:47 -05:00
Tools ucdr/msg.h.em: static inline the (de-)serialization methods 2023-11-15 13:18:58 +01:00
boards Intial Commit PX4 FMUV6RT 2023-11-15 11:10:47 -05:00
cmake cmake: fix kconfig cache when setting to 0 or n 2023-10-18 15:30:36 -04:00
integrationtests/python_src/px4_it integrationtests: MAVROS mission_test.py relax yaw estimate STD check for now (#22061) 2023-09-08 15:27:39 -04:00
launch rename 'gazebo' simulation to 'gazebo-classic' (#20936) 2023-01-15 11:36:12 -05:00
msg uorb: add message format compatibility check 2023-11-15 13:18:58 +01:00
platforms Intial Commit PX4 FMUV6RT 2023-11-15 11:10:47 -05:00
posix-configs fw pos control: revert name until we delineate this module a bit more (#21442) 2023-04-13 17:00:04 +02:00
src px4 hardfault_log: Add SSARC dump backend support 2023-11-15 11:10:47 -05:00
srv Add srv/ folder and srv/VehicleCommand.srv 2023-11-14 11:29:17 -05:00
test mavsdk_tests: add two new tests for VTOLs 2023-11-09 09:42:43 +01:00
test_data lib/rc: Fix DSM2/DSMX guessing routine and DSM range checking (#18270) 2022-04-13 17:29:08 -04:00
validation module_config: support custom actuators_metadata backed by module-level params 2023-05-02 10:09:52 +02:00
.ackrc
.clang-tidy .clang-tidy: exclude some warnings 2022-07-20 01:14:04 -04:00
.gitattributes delete systemcmds/mixer 2022-09-09 09:14:09 -04:00
.github_changelog_generator Changelog generator default params 2017-12-30 11:27:57 +01:00
.gitignore .gitignore: ignore generate top level log/ folder (colcon) 2023-03-20 11:06:12 -04:00
.gitmodules gitmodules add heatshrink branch 2023-11-10 17:45:47 -05:00
.travis.yml Update CI to use the main branches. 2022-09-07 20:03:19 -04:00
.ycm_extra_conf.py update C++ standard (c++11 -> c++14) 2020-01-21 21:49:10 -05:00
CMakeLists.txt events: Move implementation of events::send() to lib/events 2023-09-25 09:54:11 +02:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2017-07-30 19:18:49 +02:00
CONTRIBUTING.md Docs are now in user guide and main (#19977) 2022-08-01 11:39:39 +10:00
CTestConfig.cmake
Firmware.sublime-project boards new split VENDOR_MODEL naming convention 2018-11-26 14:40:14 -08:00
Jenkinsfile Jenkinsfile: add 'git fetch' to failsafe target 2023-11-15 14:23:06 +01:00
Kconfig Add Zenoh pico support 2023-10-18 15:30:36 -04:00
LICENSE Update current year in LICENSE 2023-01-21 12:57:27 -05:00
Makefile Makefile: exclude submodules for 'make validate_module_configs' 2023-11-03 11:09:57 -04:00
README.md README.md spelling mistake corrected 2023-10-19 10:01:47 -04:00
SECURITY.md Security Vulnerability Reporting 2023-11-06 09:32:16 +01:00
_last_entry mavlink_log_handler: handle _next_entry (#21784) 2023-07-03 10:30:07 +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 initial minimal PX4_ROS2 platform and px4_ros2_default build (#20689) 2022-12-08 23:03:44 -05:00

README.md

PX4 Drone Autopilot

Releases DOI

Nuttx Targets SITL Tests

Discord Shield

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

Note: This is the source of truth for the active maintainers of PX4 ecosystem.

Sector Maintainer
Founder Lorenz Meier
Architecture Daniel Agar / Beat Küng
State Estimation Mathieu Bresciani / Paul Riseborough
OS/NuttX David Sidrane
Drivers Daniel Agar
Simulation Jaeyoung Lim
ROS2 Beniamino Pozzan
Community QnA Call Ramon Roche
Documentation Hamish Willee
Vehicle Type Maintainer
Multirotor Matthias Grob
Fixed Wing Thomas Stastny
Hybrid VTOL Silvan Fuhrer
Boat x
Rover x

See also maintainers list (px4.io) and the contributors list (Github). However it may be not up to date.

Supported Hardware

Pixhawk standard boards and proprietary boards are shown below (discontinued boards aren't listed).

For the most up to date information, please visit PX4 user Guide > Autopilot Hardware.

Pixhawk Standard Boards

These boards fully comply with Pixhawk Standard, and are maintained by the PX4-Autopilot maintainers and Dronecode team

Manufacturer supported

These boards are maintained to be compatible with PX4-Autopilot by the Manufacturers.

Community supported

These boards don't fully comply industry standards, and thus is solely maintained by the PX4 public community members.

Experimental

These boards are nor maintained by PX4 team nor Manufacturer, and is not guaranteed to be compatible with up to date PX4 releases.

Project Roadmap

Note: Outdated

A high level project roadmap is available here.

Project Governance

The PX4 Autopilot project including all of its trademarks is hosted under Dronecode, part of the Linux Foundation.

Dronecode Logo Linux Foundation Logo