August 10, 2026 PX4 Weekly Dev Update: v1.18.0-beta2 Stabilization and Advanced Autonomous Flight Feature Expansion
PX4 Weekly Integrated Briefing
Over the past week, the PX4 Autopilot project has accelerated its final efforts for the upcoming v1.18.0 stable release, deploying v1.18.0-beta2. This beta release focused on numerous critical bug fixes, including improvements to fixed-wing flight, QGroundControl (QGC) compatibility, SD card stability, and various board-specific optimizations, all part of PX4’s core commitment to enhancing reliability.
Concurrently, the development community is dedicated to expanding advanced functionalities in flight control and safety systems. Notably, features such as ETA-based altitude rate modulation for fixed-wing aircraft, parachute deployment capabilities, the addition of a motor failure detection library, and external avoidance setpoint fusion are laying the groundwork for more sophisticated and safer autonomous flight. These capabilities are expected to significantly enhance the complexity and safety of missions PX4 can support in the future.
Expanding hardware support and improving core infrastructure also form a crucial axis of development. The upgrade of NuttX OS to version 12.12.0 and discussions to separate uORB into an independent GitHub repository are strategic moves aimed at maximizing the flexibility, performance, and maintainability of the PX4 system in the long term. Discussions in community forums actively cover Pixhawk hardware integration and CAN bus-related challenges, indicating that real-world operational challenges are being reflected in development priorities.
PX4 Releases and Major Version-Specific Changes
This week, the PX4 Autopilot team deployed v1.18.0-beta2, a significant pre-release for the upcoming v1.18.0 stable version, on August 9, 2026. This beta release is intended for extensive flight testing, focusing on resolving various minor and major issues discovered since beta1 to improve overall system stability and user experience. Key changes include:
- Fixed-wing Improvements: Fixed NaN eas2tas error due to zero velocity division in fixed-wing LAT/LON control and prevented malfunction caused by incorrect attitude frame in tailsitters.
- Enhanced QGC Compatibility: Reworked QGC compatibility issues related to multicopter takeoff, camera mission items, and VTOL landing patterns, which were caused by stricter command validation. This significantly improved interoperability with QGC 5.x, resolving user inconvenience and enabling stable mission planning and execution.
- Hardware and Driver Stability:
- Resolved SD card read corruption issues on STM32H7 boards by improving NuttX SDMMC cache coherency.
- Fixed FMUv6X-RT FRAM multi-page write functionality and moved flashparams compression to boot time to enhance parameter storage stability.
- Resolved load-dependent hardfault issues on FMUv6X-RT boards by applying FlexSPI DLL calibration at boot time.
- GPS: Separated RTCM correction and moving-baseline data into separate uORB topics, increasing data processing efficiency and flexibility.
- Boards: Updated CUAV X25-mega to use renamed heater sensor ID parameters.
- Estimator and Navigation Improvements:
- Fixed hard reset issues when external position estimation is enabled.
- Prevented out-of-range measurements from DroneCAN rangefinders from being fused into terrain altitude, improving estimation accuracy.
- Fixed DO_JUMP to correctly resolve to the target when set as the current mission item.
- Battery Management Enhancements: Modified RTL (Return-To-Land) to not trigger if time-remaining information is uncertain, and used unclamped dt for coulomb counting.
- Commander Functionality Improvements: Added a warning-only mode to COM_PARACHUTE, and improved multicopter autotune to allow re-triggering without a reboot.
- MAVLink Optimizations: Adjusted MAVLink receive thread stack size and excluded UAVCAN, uXRCE-DDS, mag bias estimator, and SIH from the default build for FMUv4 (Pixracer) boards to account for flash capacity limitations.
- Enhanced VOXL2 / Qurt Platform Support: Fixed platform-specific bugs including px4_task_join implementation, Hexagon NaN comparison correction, startup stdout TLS contention resolution, and keepalive file directory modification.
These changes are crucial steps to ensure that v1.18.0 is released as a more stable and reliable firmware version. Developers are encouraged to use this beta version to test new features and contribute to the early discovery of potential issues.
Core GitHub Updates (PX4-Autopilot)
Over the past 7 days, the PX4-Autopilot GitHub repository has seen active development, including backports related to the v1.18.0-beta2 release, various feature enhancements, and bug fixes. Particularly noteworthy PRs and Issues include:
Key Merged (Closed) PRs:
- fix(release): backport 9 bugfixes for v1.18.0-beta2 and fix(release): backport 7 bugfixes for v1.18.0-beta2: These bug fixes are central to the v1.18.0-beta2 release and significantly contributed to its stabilization. These PRs address a wide range of bugs, including QGC compatibility, SD card stability, and estimator accuracy.
- feat(control_allocator): reversible-motor failure recovery for hexarotors: Added a recovery feature for hexarotor motor failures using reversible motors, significantly improving vehicle safety.
- fix(boards/modalai/voxl2): validate SLPI dynamic imports: A critical bug fix specific to ModalAI VOXL2 boards, ensuring platform stability through SLPI dynamic import validation.
- fix(cdcacm_autostart): start MAVLink without holding the USB port: Modified MAVLink to start without occupying the USB port, improving user convenience and MAVLink connection stability.
- feat(clock_source): Add system clock source parameter for main clock selection: Added a system clock source parameter for main clock selection, increasing timing flexibility and robustness.
- feat(gps): frame UBX AssistNow MGA and harden the correction injection path: Supported UBX AssistNow MGA framing and strengthened the correction injection path, improving GPS reliability and accuracy.
- feat(param): add bitset and bitclear commands: Added
bitsetandbitclearcommands for parameter control, enhancing the efficiency of parameter management. - feat(reboot): new param to reset also CAL_* params with reboot: Added a new parameter to reset
CAL_*parameters along with a reboot, streamlining the calibration initialization process.
Analysis of Key Open PRs and Issues:
Currently active PRs and issues under discussion or in development indicate the future direction of PX4:
- feat(fw_mode_manager): add ETA-based height-rate modulation: An effort to add ETA (Estimated Time of Arrival)-based altitude rate modulation for fixed-wing aircraft, crucial for precise flight path control. This has the potential to elevate fixed-wing autonomy to the next level.
- feat(gimbal): support forwarding to an external gimbal manager: Supports forwarding to an external gimbal manager, providing flexibility for complex payload integration. This is expected to have a significant impact as it involves extensive changes across MAVLink and Offboard systems.
- fix(mavlink_command): allow QGC 5 takeoff command (again): This PR aims to resolve QGC 5 takeoff command compatibility issues, with active discussions including 13 comments. This is an essential fix for QGC users.
- feat(avoidance): fuse external avoidance setpoints in Position/Mission: A feature to fuse setpoints from external avoidance systems into Position/Mission modes, enhancing the drone’s collision avoidance capabilities and enabling autonomous flight in complex environments. This is considered important, evidenced by 5 comments.
- feat(motor_failure_detector): add current-residual detection library and feat(commander): wire current-residual motor-failure detector + offline replay tool: The current-residual based motor failure detection library and its integration into the Commander will play a critical role in safe drone flight. This is important for early detection of motor anomalies to prevent in-flight safety issues.
- feat(navigator): Support terrain following for MAV_CMD_DO_REPOSITION: Added support for terrain following for the MAV_CMD_DO_REPOSITION command, allowing drones to maintain altitude relative to terrain. This is a
risk:safety-criticalfeature applicable to various missions like reconnaissance and mapping. - feat(failure_injection): add ADS-B traffic failure injection and battery severity levels and feat(failure_injection): add CAN bus failure injection: ADS-B traffic failure injection and CAN bus failure injection features are essential tools for testing the robustness of the PX4 system and validating safety mechanisms. This enhances the completeness of simulation and testing environments.
- feat(platforms): upgrade NuttX to 12.12.0: A major version upgrade PR for the core operating system, NuttX, with active discussions indicated by 59 comments. This will significantly impact PX4’s hardware abstraction layer and form a crucial foundation for long-term performance and feature expansion.
- feat(uorb): (WIP) Rebase TII’s SHM-based uORB on pr-nuttx-nuttx-12-12-0: Work to rebase the shared memory (SHM)-based uORB onto the NuttX 12.12.0 branch, an attempt to maximize uORB’s performance and efficiency. This signifies a core improvement in the real-time communication middleware.
- separate UORB and make it a standalone GitHub repository: A proposal to separate uORB from the PX4-Autopilot repository and make it a standalone GitHub repository. This could be a significant strategic decision to enhance PX4 architecture’s modularity and reusability.
- Tracking issue for the current mavlink implementation: A tracking issue for the current MAVLink implementation, indicating a move to comprehensively manage MAVLink-related improvements and refactoring efforts.
- [Feature Request] Mission Mode: Terrain Follow based on rangefinder data: A long-discussed feature request for terrain following, where precise altitude maintenance based on rangefinder data is essential for specific missions. A related PR (#27280) is open, and progress toward a solution is anticipated.
- [Bug] Memory leak in the gz_x500_depth simulation.: A memory leak bug in the Gazebo simulation environment, which is a significant issue that can hinder simulation-based development and testing.
- [Bug] UXRCE-DDS namespace mismatch between SITL and hardware: The UXRCE-DDS namespace mismatch bug can cause serious problems for ROS 2 integration users and is crucial for ensuring consistent behavior between SITL and actual hardware.
The recent closure of several stale PRs and Issues appears to be part of repository management, reflecting a clear intent to focus on new core feature development and bug fixes.
Weekly Dev Call & Community Trends
The PX4 Dev Call held on August 5 proceeded primarily with team synchronization and community Q&A, with no specific hot issues reported in the data. This suggests it operated in a standard format for sharing regular development progress and answering general community questions.
In the Discourse forums, various users actively participated in the community by sharing questions and issues regarding PX4 development and operation. The following topics, in particular, received attention:
- Pixhawk Hardware Integration and Management:
- Questions regarding 4in1 ESCs for Holybro Pixhawk 6x demonstrate ongoing interest in compatibility and configuration for specific hardware setups.
- Discussions on high-temperature magnet loss in heavy-lift PX4 multirotor motors and measurement points for validating a conduction-cooled Pixhawk power enclosure reflect developers’ deep concerns about thermal management and stability issues encountered when building high-performance/heavy-lift drone systems. These are critical considerations in real-world industrial drone development.
- PX4 Autopilot Related Inquiries:
- Inquiries about PX4 on fixed-wing aircraft without ailerons demonstrate user demand for exploring PX4’s flexibility and applicability to specific airframe configurations.
- The issue of system crashes when enabling the CAN BUS is a serious bug report encountered during CAN protocol integration, indicating that ensuring CAN system stability is a critical ongoing issue, alongside the development of CAN bus failure injection features on GitHub.
- Questions related to the Gazebo simulator reflect ongoing demand for simulation environment setup and utilization.
Overall, the community shows deep interest in hardware-software integration challenges, specific flight mode requirements, and core system stability issues that arise when applying PX4 in real-world environments. These discussions will serve as important feedback for the PX4 development roadmap.
Sub-System Trends (MAVLink, MAVSDK, QGC)
Weekly data revealed significant activity in MAVLink and QGroundControl (QGC), while MAVSDK, though not directly discussed, is impacted by MAVLink changes.
MAVLink
MAVLink, as the core protocol responsible for communication between PX4, Ground Control Stations (GCS), external payloads, and other components, saw various improvements and bug fixes this week.
- Key Updates:
- fix(mavlink): synchronize radio status access: Resolved radio status access synchronization issues, enhancing MAVLink communication robustness.
- fix(mavlink_command): allow QGC 5 takeoff command (again): A critical fix PR enabling takeoff commands in QGC 5.x to work correctly again, significantly improving compatibility with QGC.
- feat(gimbal): support forwarding to an external gimbal manager: Added functionality to forward commands to an external gimbal manager, expanding gimbal control flexibility.
- feat(avoidance): fuse external avoidance setpoints in Position/Mission: The ability to receive setpoints generated by external avoidance systems via MAVLink and integrate them into flight modes is essential for autonomous flight safety.
- feat(manual_control): Publish source of manual control setpoint via mavlink: Published the source of manual control setpoints via MAVLink, providing useful information for remote monitoring and debugging.
- The v1.18.0-beta2 release optimized the MAVLink receive thread stack size and excluded UAVCAN and uXRCE-DDS from the default build for resource-constrained boards like Pixracer to free up flash memory.
- Long-term Improvements: Tracking issue for the current mavlink implementation demonstrates ongoing efforts for continuous improvement, feature additions, and refactoring of the MAVLink implementation.
MAVSDK
No activity was reported in the MAVSDK Discourse forum last week. However, continuous feature additions and protocol improvements at the MAVLink layer potentially impact MAVSDK client libraries. Specifically, with the introduction of new MAVLink messages or command patterns such as external gimbal manager integration, avoidance setpoint fusion, and manual control setpoint source publication, MAVSDK developers will need to prepare for API updates or extensions to leverage these new functionalities.
QGroundControl (QGC)
QGC is the primary Ground Control Station (GCS) for PX4 drones, and last week’s focus was on improving user experience and compatibility.
- Key Updates:
- The
QGC compatibility regressions from stricter command validationfix included in the v1.18.0-beta2 release resolved major inconveniences for QGC 5.x users by ensuring commonly used QGC features, such as multicopter takeoff, camera mission items, and VTOL landing patterns, are correctly recognized by PX4 firmware again. - The fix(mavlink_command): allow QGC 5 takeoff command (again) PR is an extension of these QGC compatibility improvement efforts.
- The
- Community Trends:
- The QGroundControl 5.1.0 log download failure issue is a bug observed in the latest QGC version, highlighting problems faced by users struggling with data logging and analysis.
- Connection issues and errors after selecting Holybro X650 V2 airframe and rebooting suggest ongoing problems users may encounter during initial connection and setup between QGC and PX4.
Overall, QGC is continuously being improved for stable interaction with PX4 firmware, but quick responses to new issues arising in the latest QGC versions and robust user support remain crucial.
