Balduin c28d015d9c preflight check: replace uOrb msg with argument
Previously, the approach to modify collective tilt control was to send
the corresponding tiltrotor_extra_control uOrb message from
ControlAllocator, which then influences
ActuatorEffectivenessTiltrotorVTOL with minimal changes.

This was a bit hacky and introduced potentially conflicting uOrb
messages. So, with this new approach we pass the same information via
argument.

Specifically, the class ActuatorEffectiveness now declares
updateSetpoint with an extra argument, preflight_check_running. It is
only used in ActuatorEffectivenessTiltrotorVTOL, but has to be included
as a "dummy" in all other classes inheriting from ActuatorEffectiveness.

The argument can be used to bypass the collective tilt/thrust setpoints,
instead replacing them with values from public class member variables
which can be set from outside just before calling updateSetpoints.

Also, slight refactor in ControlAllocator by splitting up the functions
related to the preflight check into smaller parts
2025-02-18 15:57:56 +01:00
2025-01-14 13:10:56 -05:00
2025-02-14 09:45:53 +01:00
2022-07-20 01:14:04 -04:00
2022-09-09 09:14:09 -04:00
2023-01-21 12:57:27 -05:00
2024-11-27 17:41:43 -05:00
2023-11-06 09:32:16 +01:00

PX4 Drone Autopilot

Releases DOI

Build 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
Rover Christian Friedrich
Boat 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 not 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

 
Description
a mirror of official PX4-Autopilot
Readme BSD-3-Clause 587 MiB
Languages
C++ 51.2%
C 38.5%
CMake 4.7%
Python 3.9%
Shell 1.3%
Other 0.1%