PX4 Maintainer Meeting – Atlanta 2025
Meeting Minutes Draft
Related GitHub Issue: [Maintainer Meeting] Atlanta 2025 · Issue #25877 · PX4/PX4-Autopilot · GitHub
Meeting Coordination
This meeting brings together PX4 maintainers during the PX4 Developer Summit to discuss key topics and priorities. The agenda was compiled from community recommendations submitted by Friday, November 8th.
Topic Submission Requirements:
- Provide topic name and brief description
- Lead the discussion (solution not required)
- Highlight the topic and gather feedback
Meeting Team
Proposed Agenda
General Topics (in no particular order)
- Releases
- Release cadence
- Release fixes, backports, and branching
- Artifact delivery
- Release testing
- Project Boards and Coordination
- Issue Tracking
- Community Support
- Maintainer Team Structure and Coordination
Specific Discussion Topics
Better QGC Support – @HTRamsey
QGC developers often don’t know who to reach out to for help. There’s a deeper level of integration we should reach — discussion on how to coordinate better.
Additional QGC Considerations:
- PX4 Version Support:
Define minimum/oldest supported version. Handling changes across revisions can be cumbersome.
Examples: - Common Libraries:
Libraries likeulog_cppandPX4-GPSDriversimprove verification and speed for QGC feature support. Ideally, QGC should connect these libraries to the UI rather than re-implement protocols. - Hardware Support:
Camera and joystick updates require hardware access, which is now more limited.
Build Variants and Removing Default Builds – @rroche
- Discussion on splitting builds by vehicle type.
- Alignment needed on implementation plan to manage ripple effects across the project.
Dronecode Coordinating Feature Development – @AlexKlimaj
- Coordinate feature work through contractors.
- Encourage member companies to fund cooperative development.
FLASH Memory Management – @alexcekay
- Protecting free FLASH memory.
- GCC update early 2025 gained ~120 KB, but usage is rising again.
- Need a sustainable strategy to prevent recurring memory pressure.
- Hardware Testing Proposal:
Develop a tracing-based hardware test suite to measure startup times and scheduling. Find a safe way to share this data upstream.
CI Overhaul – @sfuhrer
- Technical Pain Point: CI overhaul is overdue.
- Goals:
- Enforce all checks
- Move away from Gazebo Classic
- Clarify responsibility for broken CI
Maintenance Strategy & CI Improvements – @dakejahl
- Better Maintenance Strategy:
Define clearer communication, task ownership, and collaboration expectations for reviews. - CI Enhancements:
Migrate SITL tests to SIH or Gazebo (whichever best represents real systems). Prefer Gazebo for testing:- 3D trajectory following
- Failure injection
- Mission logic
- Takeoff/landing behaviors
- Split Builds by Vehicle Type:
Discuss MVP approach and long-term navigator cleanup. - MAVLink Overhaul:
- Split TX/RX into dedicated threads
- Implement rate limiting to avoid parameter download failures
- Route all TX messages through a scheduler to stay below
MAV_RATE
Roadmap Topics:
- Multi-vehicle Gazebo simulation (issues past 3 vehicles)
- Replace
libuavcanwithlibcanard(SLCAN, CAN over MAVLink) - QGC peripheral configuration interface for easier device setup
- Split GPS drivers by protocol (e.g., Septentrio)
- Robust sensor fusion (GPS + Flow + Baro + Rangefinder switching)
- Fix Gazebo plugin architecture and migrate missing Classic plugins
- CI SITL failure injection coverage
- Purge outdated/unused airframes, modules, and scripts
Meeting Regularity – @Pedro-Roque
- Proposal: Hold maintainers-only meetings on a monthly or bi-weekly basis.
- Meetings can be canceled if no significant agenda items exist.
- Boat module support
Simulation – @Jaeyoung-Lim
- Add string support for PX4 parameters.
Fixed-Wing Topics:
- Extend air data to include airflow angles (angle of attack).
- Implement 3D wind estimation.
@dirksavage88
Multicopter
- Fix conflict between downward rangefinder (height estimate) and outward sensors (collision prevention). Likely requires updates to the
sensorsmodule. - Address navigator issues for GPS-less multicopters — mission logic overly depends on global position.
- Improve EKF2 VIO loss handling to avoid flyaways (commonly observed on ModalAI platforms).
Rover
- Fix 3D mode throttle arming issues (WIP, open PR).
- Improve user guide and add a tuning/setup video.
- Provide links to off-the-shelf reference designs (e.g., NXP B3RB).
Cross-Platform
- Complete SITL Gazebo migration (e.g., camera manager protocol).
- Create new platform layer for reading/writing EEPROM devices — increasingly common for OEMs.
- Add platform layer support for TCA9548A I²C multiplexer to allow multiple identical sensors (e.g., 3x airspeed sensors).
Community Support and ROS 2 CI – @Benja
Community Support and Interaction
- Discussion: Should Discord be made accessible only to contributors and maintainers?
- Motivation: Streamline communication and reduce fragmentation across Discord, PX4 Forum, and GitHub Issues.
- Goal: Clarify which channels are for user support vs. development coordination.
CI for ROS 2 (DDS and Zenoh)
- Add CI support for ROS 2, including both DDS and Zenoh transports.
- Develop SITL tests similar to the MAVROS tests.
- Explore adding hardware-in-the-loop (HIL) tests for more realistic system validation.
Discussion Notes
Attendee Introductions
- Julian Oes: MAVSDK, SITL, drivers
- Matthias: First PR with PX4 in 2015; core GNC, battery, RC
- Silvan Fuhrer: Fixed-wing VTOL maintenance; improving both Auterion and PX4 tech
- Ben: ROS2 Interface (2 years ago)
- Seppe: More of a user than a maintainer
- Mike Pehel: Content director
- Jake: Miscellaneous PX4 contributions in every possible way; helps with core maintenance
- Ryan: Mostly supporting fixed-wing
- Jaime: Blue Robotics; MAVLink camera manager
- Patrick: Maintained QGC for a couple of years; mavlink2rust; proposed MAVLink Rust
- Eric Katzfey: Modal AI; recent maintainer, involved since 2018; serial implementation, POSIX, uORB
- Alex: Joined PX4 in 2017; contracting hardware at Ark Electronics; GPS work
- Ramon: Worked with PX4 since 2014
- Andrew Brahim: Ascend Engineering; SF45 driver
- Andrew Wilkins: Flight testing with PX4 and contributions; delta fixed-wing
- Holden Ramsey: Tether Drones; recently joined Ascend Engineering; QGC maintainer
- Nicholas: Good quality STM32 work
- Alex: Auterion low-level drivers
- Marcho: State estimation
- Mahima: Working with Auterion; navigator, mission, commander; focus is more on fixed-wing
Maintainer Team
This list is incomplete, please send a comment if you are missing, or would like to help
Infra Team
- Ramon
- Farhang
Architecture
- Beat
- Daniel
- Jake
- Erik
- Ramon - Lead
CI / CD
- Ramon - Lead
- Ben
- Marco
State Estimation
- Mathieu - Lead
- Marco
RTOS
- Alex - Lead
- Nikklas
- Jake
- Erik
- Julian
Simulation
- Jaey - Lead
- Jake
ROS
- Ben - Lead
- Beat
- Peter
- PatrickPordi
Multirotor
- Mathias - Lead
- Jake
Fixed-Wing
- Silvan - Lead
- Ryan
- Mahima
VTOL
- Silvan - Lead
- Ryan
Rover
- Dirk Savage - Lead
Spacecraft
- Pedro - Lead
Boat - Experimental
- no one
Flight Testing
- Andrew Wilkins
- Ryan Johnston
Documentation
- Hamish - Lead
- Ryan
Drivers / Sensors
- Alex - Lead
- Niklas
- Dirk Savage
- Jake
QGC Maintainers
- Don - Lead
- Holden - Lead
- Jon
- Jake
- Julian
Communication Platforms Discussion
Discord vs. Forum:
- Ben: Dispersed threads and searching are not accessible on Discord; forum is more interesting. Maybe maintainers follow on Discord and generally keep forums.
- Jake: Discord has forum-style channels available.
- Mike: Active pinning topic; either pin or create a channel.
- Alex: Downside on forums is content becomes outdated as PX4 evolves.
- Matthias: Threads are not intuitive.
- Julian: Discord is way too noisy. Maybe auto-close threads.
- Ramon: Maybe delete channels and clean them up. It is a good repository of data.
Cross-Project Coordination
The best way to reach out to Don and Holden for QGC, drivers, GPS libraries will help contributors jump in and accelerate development.
- Jake: Maybe a submodule for QGC integration?
- Julian: Good suggestion to have MAVSDK inside QGC. Maybe a unified way between QGC and MAVLink (MAVSDK) has its own pros and cons.
Coordinators and Contractors:
- Ramon: If managers and coordinators decide where to distribute funding, then tasks can be accomplished based on priorities.
- Jake: Partner programs work on other platforms; maybe Dronecode can benefit as well.
- Andrew: Can connect to possible developers for this kind of work.
- Eric: Maybe a monthly or recurring payment is a good idea, like ArduPilot, to have features added and/or current ones fixed.
Technical Steering Committee (TSC):
- Ramon: Planning to revive the TSC. Once we meet, we elect the leader of each specific dev group so that technical groups and members can be connected.
- Jake: Maybe structure it so small groups can have their own sessions. Assigning tasks just doesn’t work since we are always busy. The time could also be dedicated in advance not to interfere.
- Alex: Maybe Dronecode can get more funding to align company membership fees and also support developers.
- Ryan: Maybe have hired maintainers?
- Ramon: The structure is needed for bringing developers and maintainers into contribution.
- Seppe: Open source side kept in addition to maintainers’ level of the community.
- Ryan: Subgroups on releases maybe?
Maintainer Requirements:
- Ramon: What would make someone a maintainer? Any requirements?
- Seppe: How do I get involved? Maybe documentation for that?
- Matthias: How do you determine if someone is a maintainer? Maybe document the highest needs?
Long-Term Support (LTS) Version: Discussion on whether to have an LTS version of PX4/QGC. Consensus: You cannot expect to have an LTS since this is not a product but an open-source project.
Release Cycle Discussion
The idea is to have a robust decision-making process.
QGC:
- More people needed to help Don and Holden for QGC (subgroup of QGC maintainers).
PX4:
- The current method is appreciated for having faster releases and fewer backports unless it actually grounds vehicles.
- There should be a window to accept PRs for each specific release.
- There are dedicated test cards which the flight test team is using.
Release Window Proposal:
- No sneaking in PRs after the release window closes.
- Be sure to test within that window.
- Jake: Maybe have an announcement on Discord for the release window and add it to the project board.
- Maybe figure out a way to attach specific issues or PRs to flight tests.
Release Types:
- Point releases contain bug fixes.
- Major releases have boards/hardware included usually.
- Test cards may need to be updated to add more missing test cases.
CI Tests on Simulation:
- CI tests on simulation need a noticeable amount of fixes for moving to the new simulation environment.
- Should SIH be forced to be used more?
- Gazebo is less preferred on the dev side, but customizing Gazebo deep down is less straightforward than SIH. Basically adding features → SIH-SITL integration tests by mbjd · Pull Request #24237 · PX4/PX4-Autopilot · GitHub
Containers:
- Planning to replace containers here and there with a more focused one in one place.
- Missing one container with Gazebo.
- Ryan has a CI with Gazebo.
Branch Stabilization:
- Branch freezing/stabilization period quarterly + flight testing.
- Any reviews afterward on a PR not submitted means that work is not considered done and will not be in the next release.
Next Release (1.17) Discussion:
- If there is a requirement for 1.17 to be added, add them (soft release).
- We give a month for the flight test team to jump in.
- If an issue pops up, we will look into it.
- Updates will be shared through the maintainers channel/dev calls.
Separate Vehicle Builds
- Separate different vehicle types (manifest and QGC work needed to be done).
- All previous builds need to have backward compatibility with QGC (all fallback to main multicopter variant).
- Maybe add a check to decide on merging PRs with a max flash use limit.
- Possible investment into having custom-based build platforms (GUI-based/web-based).
Action Items
- Clean up Discord channels: Archive current messy and unnecessary channels. Keep Discord active.
- Start threads on replies to prevent hijacking discussions.
- Farhang, Ramon, and Ryan to handle infrastructure setup.
- Make maintainer meetings quarterly: January will be the first meeting, then follow up from there.
- Julian: Increase bot threshold on the forum to close stale topics.
- Holden and Don will be part of quarterly dev meetings.
- Dronecode can pay developers to bring in fixes.
- Ramon will share the financial distribution with all maintainers and Dronecode members.
- Quarterly meetings will also discuss how to get help financially/through contributions and come up with a list of problems to address at the next meeting.
- Ramon needs to look at the possibility of hiring contractors for maintenance.
- Create subgroups for specialized areas.
- TODO: Update GitHub maintainers’ table (subgroups are decided).
- TODO: Create a group of maintainers and create documentation on how to choose a maintainer.
- Dedicated maintainers channel specifically for QGC and coordinated maintainers’ meetings.
- Branch freezing/stabilization period quarterly + flight testing (any reviews afterward on a PR not submitted means that work is not considered done and will not be in the next release).
- A PR started on fixing SIH CI: SIH-SITL integration tests by mbjd · Pull Request #24237 · PX4/PX4-Autopilot · GitHub
- Separate different vehicle types (manifest and QGC work needed to be done).
- TODO: Flash size and variants need to be added (would need someone to add them).
- All previous builds need to have backward compatibility with QGC (all fallback to main multicopter variant).
- Maybe add a check to decide on merging PRs with a max flash use limit.
- TODO: Dashboard for weekly monitoring of specific boards for now (5x and 6x).
Decisions Made
- Recurring meetings for maintainers: Quarterly maintainer meetings starting in January.
- Unifying maintainers’ meetings on one platform: Keep Discord; clean up and archive unnecessary channels.
- Release cycle improvements: Implement release windows with branch freezing/stabilization periods quarterly, followed by flight testing