Releases: PX4/PX4-Autopilot
Release list
v1.18.0-beta1
What's Changed
This is a pre-release for flight testing, full release notes can be found here.
Full Changelog: v1.17.0-alpha1...v1.18.0-beta1
v1.18.0-alpha1
What's Changed
This is a pre-release for flight testing, full release notes will be available soon.
Full Changelog: v1.17.0-alpha1...v1.18.0-alpha1
v1.17.0 - Stable Release
What's Changed
PX4 v1.17 builds on PX4 v1.16, with the changes below landing since v1.16.2. This release adds Altitude Cruise mode, improves Fixed Wing Takeoff behaviour on navigation loss, and exposes cleaner high-level fixed-wing and rover control interfaces for ROS 2 workflows. The in-tree Zenoh middleware matures to rmw_zenoh compatibility, simulation gains Gazebo Jetty support and Ackermann SIH, and three new INS drivers (MicroStrain, sbgECom, EULER-NAV) join the ecosystem alongside Septentrio GNSS resilience reporting and barometer auto-calibration against GNSS height. PX4 v1.17 also includes user-visible MAVLink, RC, logging, failsafe, and rover refinements across the stack.
Major Changes
- New multicopter flight mode: Altitude Cruise. Holds tilt and heading on stick release so the vehicle keeps cruising at a steady velocity instead of stopping like Altitude mode does.
- Fixed Wing Takeoff mode now keeps climbing with level wings on navigation loss and can use the takeoff waypoint latitude and longitude to define the loiter position. (PX4-Autopilot#25226)
- Fixed-wing vehicles (and VTOLs in fixed-wing mode) can now be controlled from ROS 2 via the new FwLateralLongitudinalSetpointType in the PX4 ROS 2 Control Interface, exposing direct lateral and longitudinal setpoints.
- Rovers can now be controlled from ROS 2 via the new RoverSetpointTypes in the PX4 ROS 2 Control Interface, with valid combinations of position, speed, throttle, attitude, rate, and steering setpoints exposed as guaranteed-valid setpoint types. See Rovers Apps & API.
- The in-tree Zenoh middleware matures to rmw_zenoh compatibility (CDRv1 serialization, ROS 2 graph liveliness, auto-generated config from dds_topics.yaml, Domain ID parameter, Zenoh CLI). Zenoh is built into the default firmware on FMU-v6xRT (make px4_fmu-v6xrt_default); on FMU-v6x and SITL it ships as a zenoh build variant (make px4_fmu-v6x_zenoh, make px4_sitl_zenoh).
- Initial MC Neural Network Control test path: PX4 v1.17 integrates TensorFlow Lite Micro on-device so an externally trained network (for example trained with reinforcement learning in Aerial Gym) can be loaded as a tflite model and substituted for the multicopter controller for research and bench testing. It is not a replacement for the production controller stack.(PX4-Autopilot#24366)
Release Notes
- Click here to view the full Release Notes
- Full Changelog v1.16.2...v1.17.0
New Contributors
- @ischollETH - first contribution: #25215
- @vololand - first contribution: #25362
- @czx-fly - first contribution: #25364
- @Sayshara - first contribution: #24991
- @accton-iot - first contribution: #25102
- @ljarvela - first contribution: #25454
- @fbaklanov - first contribution: #24534
- @renjieDLUT - first contribution: #25527
- @rmahoney-skai - first contribution: #25539
- @HTRamsey - first contribution: #25486
- @jyhminwang - first contribution: #25411
- @tolesam - first contribution: #24137
- @SolderSyntax - first contribution: #25441
- @alexespinoza28 - first contribution: #25525
- @Hs293Go - first contribution: #25444
- @tobias-auterion - first contribution: #25602
- @Luka-Filipovic - first contribution: #25618
- @Louis-max-H - first contribution: #25012
- @msberk - first contribution: #25587
- @Parkhb1106 - first contribution: #25619
- @radiolinkW - first contribution: #25562
- @Siri2K - first contribution: #25637
- @airpixel-cz - first contribution: #25651
- @JacopoPan - first contribution: #24040
- @annoybot - first contribution: #25649
- @asherikov - first contribution: #25742
- @ttechnick - first contribution: #25897
- @MDEAGEWT - first contribution: #25776
- @AkaiEurus - first contribution: #26199
v1.16.2 - Stable Release
What's Changed
- [Backport 1.16] fix(ekf2): allow optical flow to start when range finder is height reference by @dakejahl in #26961
- fix(ekf2): break unbounded recursion [BACKPORT v1.16] by @julianoes in #27166
Release Notes
- Click here to view the full Release Notes.
Full Changelog: v1.16.1...v1.16.2
v1.17.0-rc2
Security Fixes
- CVE-2026-32705 - BST device name buffer overflow (GHSA-79mp)
- CVE-2026-32706 - CRSF variable-length packet buffer overflow (GHSA-mqgj)
- CVE-2026-32707 - TattuCan CAN frame buffer overflow (GHSA-wxwm)
- CVE-2026-32708 - Zenoh uORB subscriber stack overflow (GHSA-69g4)
- CVE-2026-32709 - MAVLink FTP path traversal (GHSA-fh32)
- CVE-2026-32713 - MAVLink FTP session validation bypass (GHSA-pp2c)
What's Changed
Full Changelog: v1.17.0-rc1...v1.17.0-rc2
v1.17.0-rc1
What's Changed
- [BACKPORT 1.17] Include PWM Center PR by @ttechnick in #26317
- [Backport 1.17] Fix VTOL stuck after back-transition in Mission Fast RTL by @AkaiEurus in #26319
- [BACKPORT] failsafe: Prevent Offboard to Position without RC by @ttechnick in #26391
- [1.17] CI: replace all usage of addnab/docker-run-action by @mrpollo in #26480
- [1.17] ci: fix S3 upload so tags don't overwrite stable firmware by @mrpollo in #26479
Full Changelog: v1.17.0-beta1...v1.17.0-rc1
v1.17.0-beta1
What's Changed
- [BACKPORT 1.17] Zenoh docs and zenoh oom fixes by @PetervdPerk-NXP in #26053
- [BACKPORT 1.17] imxrt related fixes and mr-tropic support by @PetervdPerk-NXP in #26052
- [1.17] Bugfix: Let user take over from a degraded failsafe by @MaEtUgR in #26269
- FW Takeoff: fix loiter altitude not set in some cases by @sfuhrer in #26293
Full Changelog: v1.17.0-alpha1...v1.17.0-beta1
v1.16.1 - Stable Release
What's Changed
- [Backport 1.16] of fix: let UXRCE DDS agent IP to be set via parameter in SITL (#25231) by @sansha in #25299
- VOXL2 patch back port for release 1.16 by @katzfey in #25377
- [v1.16] Add relnote etc by @hamishwillee in #25384
- [BACKPORT] commander: accel cal rotate offsets and scales from body frame back into sensor frame before saving (#25626) by @dagar in #25639
- [Docs] PX4 v1.16 Add warning for RTL mode issues in return.md by @hamishwillee in #25623
- Docs deploy AWS to v1.16 branch by @hamishwillee in #25641
- Fix formatting to trigger v1.16 release build for testing by @hamishwillee in #25643
- [BACKPORT 1.16] boards: ark_fpv add vtol att control by @dakejahl in #25655
- [backport] macos ci fixes for v1.16 by @mrpollo in #25672
- AWS docs deploy workflow - modify release branch to same form by @hamishwillee in #25678
- Fix up v1.16 docs version by @hamishwillee in #25679
- Trigger v1.16 docs build by @hamishwillee in #25681
- Trigger v1.16 docs build 3 by @hamishwillee in #25682
- ci: docs deploy branchname for build step by @mrpollo in #25684
- docs: fix deploy variables by @mrpollo in #25685
- Change runner to ubuntu-latest for deployment by @hamishwillee in #25686
- Update GitHub Actions output setting syntax to use envfile by @hamishwillee in #25687
- AWS docs deployment - revert runs-on from ubuntu for test by @hamishwillee in #25689
- AWS docs deployment - add back paths revert runner by @hamishwillee in #25690
- [BACKPORT 1.16] uavcan: esc: init msg to avoid publishing random values by @dakejahl in #25656
- [BACKPORT 1.16] mavlink: add message spacing for AVAILABLE_MODES, for low bandwidth by @dakejahl in #25662
- [BACKPORT 1.16] cuav_7-nano:use new sensors (#25098) by @cuav-liu1 in #25546
- [v1.16 backport] Enable clean URLs in VitePress config by @hamishwillee in #25759
- [BACKPORT 1.16] V6X-RT Add sensor set V6XRT001 and V6XRT002 by @PetervdPerk-NXP in #25732
- [BACKPORT 1.16] ci: fix failsafe sim by @MaEtUgR in #25768
- [BACKPORT 1.16] flight task auto: fix offtrack mission landing bug by @dakejahl in #25726
- [BACKPORT 1.16] Loiter at the last mission waypoint on mission end by @dakejahl in #25727
- [BACKPORT 1.16] Correction of routing issue of mavlink parameter messages to CAN nodes by @dakejahl in #25658
- [BACKPORT 1.16] serial: nuttx: revert tcdrain back to fsync by @dakejahl in #25657
- [BACKPORT 1.16] mission: delay until: mark next setpoint invalid by @dakejahl in #25729
- [Backport 1.16] modules/navigator: Fix position setpoint update logic in Mission RTL by @msberk in #25861
- [Docs] [Backport 1.16] flight_modes_fw/return.md: remove warning about now-fixed RTL bug by @msberk in #25869
- [BACKPORT 1.16] drivers/gps: RTCM injection fixes by @dakejahl in #25862
Release Notes
- Click here to view the full Release Notes.
- Full Changelog: v1.16.0...v1.16.1
v1.16.1-rc2
What's Changed
- [BACKPORT 1.16] Correction of routing issue of mavlink parameter messages to CAN nodes by @dakejahl in #25658
- [BACKPORT 1.16] serial: nuttx: revert tcdrain back to fsync by @dakejahl in #25657
- [BACKPORT 1.16] mission: delay until: mark next setpoint invalid by @dakejahl in #25729
- [Backport 1.16] modules/navigator: Fix position setpoint update logic in Mission RTL by @msberk in #25861
- [Docs] [Backport 1.16] flight_modes_fw/return.md: remove warning about now-fixed RTL bug by @msberk in #25869
- [BACKPORT 1.16] drivers/gps: RTCM injection fixes by @dakejahl in #25862
Full Changelog: v1.16.1-rc1...v1.16.1-rc2
v1.16.1-rc1
What's Changed
- [Backport 1.16] of fix: let UXRCE DDS agent IP to be set via parameter in SITL (#25231) by @sansha in #25299
- VOXL2 patch back port for release 1.16 by @katzfey in #25377
- [v1.16] Add relnote etc by @hamishwillee in #25384
- [BACKPORT] commander: accel cal rotate offsets and scales from body frame back into sensor frame before saving (#25626) by @dagar in #25639
- [Docs] PX4 v1.16 Add warning for RTL mode issues in return.md by @hamishwillee in #25623
- Docs deploy AWS to v1.16 branch by @hamishwillee in #25641
- Fix formatting to trigger v1.16 release build for testing by @hamishwillee in #25643
- [BACKPORT 1.16] boards: ark_fpv add vtol att control by @dakejahl in #25655
- [backport] macos ci fixes for v1.16 by @mrpollo in #25672
- AWS docs deploy workflow - modify release branch to same form by @hamishwillee in #25678
- Fix up v1.16 docs version by @hamishwillee in #25679
- Trigger v1.16 docs build by @hamishwillee in #25681
- Trigger v1.16 docs build 3 by @hamishwillee in #25682
- ci: docs deploy branchname for build step by @mrpollo in #25684
- docs: fix deploy variables by @mrpollo in #25685
- Change runner to ubuntu-latest for deployment by @hamishwillee in #25686
- Update GitHub Actions output setting syntax to use envfile by @hamishwillee in #25687
- AWS docs deployment - revert runs-on from ubuntu for test by @hamishwillee in #25689
- AWS docs deployment - add back paths revert runner by @hamishwillee in #25690
- [BACKPORT 1.16] uavcan: esc: init msg to avoid publishing random values by @dakejahl in #25656
- [BACKPORT 1.16] mavlink: add message spacing for AVAILABLE_MODES, for low bandwidth by @dakejahl in #25662
- [BACKPORT 1.16] cuav_7-nano:use new sensors (#25098) by @cuav-liu1 in #25546
- [v1.16 backport] Enable clean URLs in VitePress config by @hamishwillee in #25759
- [BACKPORT 1.16] V6X-RT Add sensor set V6XRT001 and V6XRT002 by @PetervdPerk-NXP in #25732
- [BACKPORT 1.16] ci: fix failsafe sim by @MaEtUgR in #25768
- [BACKPORT 1.16] flight task auto: fix offtrack mission landing bug by @dakejahl in #25726
- [BACKPORT 1.16] Loiter at the last mission waypoint on mission end by @dakejahl in #25727
Full Changelog: v1.16.0...v1.16.1-rc1