diff --git a/docs/en/releases/1.17.md b/docs/en/releases/1.17.md index 85643647da..16e3e11b21 100644 --- a/docs/en/releases/1.17.md +++ b/docs/en/releases/1.17.md @@ -13,122 +13,336 @@ const { site } = useData(); -This contains changes in PX4 v1.17 (since the last major release [PX v1.16](../releases/1.16.md)). +PX4 v1.17 builds on [PX4 v1.16](../releases/1.16.md), 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. ::: warning -PX4 v1.17 is in alpha/beta testing. -Update these notes with features that are going to be in PX4 v1.17 release. -New features that are not expected to go into the v1.17 release are in [PX4-Autopilot `main` Release Notes](../releases/main.md). +PX4 v1.17 is documented on an alpha/beta release branch. +See [PX4-Autopilot `main` Release Notes](../releases/main.md) for newer changes on `main`. ::: ## Read Before Upgrading -TBD … - Please continue reading for [upgrade instructions](#upgrade-guide). ## Major Changes -- TBD +- [MC Neural Network Control](../neural_networks/mc_neural_network_control.md): PX4 gains first-class on-device neural-network inference. + With [TensorFlow Lite Micro](../neural_networks/tflm.md) now integrated into the firmware, you can take a network you trained externally (e.g. via reinforcement learning in [Aerial Gym](https://ntnu-arl.github.io/aerial_gym_simulator/)), convert it to tflite, and run it on the autopilot as a full replacement for the multicopter controller stack. + ([PX4-Autopilot#24366](https://github.com/PX4/PX4-Autopilot/pull/24366)) +- New multicopter flight mode: [Altitude Cruise](../flight_modes_mc/altitude_cruise.md). + 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](../flight_modes_fw/takeoff.md) 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](https://github.com/PX4/PX4-Autopilot/pull/25226)) +- Fixed-wing vehicles (and VTOLs in fixed-wing mode) can now be controlled from ROS 2 via the new [`FwLateralLongitudinalSetpointType`](../ros2/px4_ros2_control_interface.md#fw-lateral-longitudinal-setpoint) 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`](../ros2/px4_ros2_control_interface.md#rover-setpoints) 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](../flight_modes_rover/api.md). +- The in-tree [Zenoh middleware](../middleware/zenoh.md) 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 an opt-in `zenoh` build variant (`make px4_fmu-v6x_zenoh`, `make px4_sitl_zenoh`). ## Upgrade Guide +- Removed `MPC_XY_MAN_EXPO`, `MPC_Z_MAN_EXPO`, and `MPC_YAW_MAN_EXPO`. + Renamed `MPC_HOLD_DZ` to [`MAN_DEADZONE`](../advanced_config/parameter_reference.md#MAN_DEADZONE) and made it globally available across modes that allow a deadzone. +- Added [`SENS_BAR_AUTOCAL`](../advanced_config/parameter_reference.md#SENS_BAR_AUTOCAL) for barometer auto-calibration against GNSS height; enabled by default in v1.17. + ([PX4-Autopilot#24859](https://github.com/PX4/PX4-Autopilot/pull/24859)) +- [`MAV_PROTO_VER`](../advanced_config/parameter_reference.md#MAV_PROTO_VER) now defaults to `2`, making MAVLink v1 opt-in instead of the default fallback. + ([PX4-Autopilot#25583](https://github.com/PX4/PX4-Autopilot/pull/25583)) +- Removed `EKF2_RNG_A_IGATE` from range-aid tuning during the EKF2 parameter-naming consistency refactor. + ([PX4-Autopilot#25137](https://github.com/PX4/PX4-Autopilot/pull/25137)) +- Reduced [`EKF2_MIN_RNG`](../advanced_config/parameter_reference.md#EKF2_MIN_RNG) default from 0.1 m to 0.01 m. + ([PX4-Autopilot#25574](https://github.com/PX4/PX4-Autopilot/pull/25574)) +- Servo trim parameters `PWM_*_TRIM` are replaced by `PWM_*_CENTER` with asymmetric deflection. + ([PX4-Autopilot#25897](https://github.com/PX4/PX4-Autopilot/pull/25897)) +- The default 1 percent deadzone on RC channels 1 to 8 has been removed; configure deadzone explicitly per channel if required. + ([PX4-Autopilot#25502](https://github.com/PX4/PX4-Autopilot/pull/25502)) +- Magnetometer calibration is only allowed when at least one mag is available and enabled (priority not 0). + ([PX4-Autopilot#25714](https://github.com/PX4/PX4-Autopilot/pull/25714)) +- `SYS_AUTOSTART=0` is now treated the same as no valid airframe. + ([PX4-Autopilot#25645](https://github.com/PX4/PX4-Autopilot/pull/25645)) +- `commander lockdown on` shell command renamed to `commander termination`; `FORCE_FAILSAFE` renamed to `TERMINATION` and `manual_lockdown` renamed to `kill` for clarity. +- The `serial_number` field has moved from `battery_status` to a new `battery_info` uORB message; consumers reading the serial number must migrate. +- `parameters_injected.xml` removed from the build system. + ([PX4-Autopilot#25549](https://github.com/PX4/PX4-Autopilot/pull/25549)) + ## Other changes ### Hardware Support -- **[New Hardware]** boards: [MicoAir743-Lite FC](../flight_controller/micoair743-lite.md) -- **[New Hardware]** boards: [RadiolinkPIX6 FC](../flight_controller/radiolink_pix6.md) -- **[New Hardware]** boards: [AP-H743-R1 FC](../flight_controller/x-mav_ap-h743r1.md) +#### New Flight Controllers - +- [QGC Bootloader Update](../advanced_config/bootloader_update.md#qgc-bootloader-update-sys-bl-update) via the [`SYS_BL_UPDATE`](../advanced_config/parameter_reference.md#SYS_BL_UPDATE) parameter has been re-enabled after being broken for several releases. + ([PX4-Autopilot#25032](https://github.com/PX4/PX4-Autopilot/pull/25032)) +- Failsafe handling now lets the pilot take over from a degraded failsafe state. + ([PX4-Autopilot#26269](https://github.com/PX4/PX4-Autopilot/pull/26269)) +- Offboard to Position (hold) mode change is no longer entered without RC. + ([PX4-Autopilot#26391](https://github.com/PX4/PX4-Autopilot/pull/26391)) +- Motor failure detection uses more robust timeout checks. + ([PX4-Autopilot#25757](https://github.com/PX4/PX4-Autopilot/pull/25757)) +- New `battery_info` uORB message with serial number compatible with UAVCAN, MAVLink, and battery drivers; `battery_status.serial_number` is removed. +- UAVCAN battery: better remaining-time calculation ([PX4-Autopilot#25500](https://github.com/PX4/PX4-Autopilot/pull/25500)) and filter sample interval increased to 500 ms ([PX4-Autopilot#25454](https://github.com/PX4/PX4-Autopilot/pull/25454)). +- Battery instances are capped at 3 (loggable batteries also raised to 3). +- Remaining-flight-time failsafe disabled by default. ### Control - - -- [MC Neural Network Module](../advanced/neural_networks.md) +- Servo PWM gains center setting and asymmetric deflection (`PWM_*_CENTER`). + ([PX4-Autopilot#25897](https://github.com/PX4/PX4-Autopilot/pull/25897)) +- PWM center support extended to wheel and gimbal actuators. + ([PX4-Autopilot#26211](https://github.com/PX4/PX4-Autopilot/pull/26211)) +- Configurable board PWM frequency from Kconfig. + ([PX4-Autopilot#24787](https://github.com/PX4/PX4-Autopilot/pull/24787)) +- DShot telemetry refactored to the platform serial abstraction with RX/TX pin-swap support. +- UAVCAN ESC initialization no longer publishes random values when stopped. + ([PX4-Autopilot#25485](https://github.com/PX4/PX4-Autopilot/pull/25485)) +- UAVCAN bootloader watchdog pet during long flashes. + ([PX4-Autopilot#25523](https://github.com/PX4/PX4-Autopilot/pull/25523)) +- Control allocator enabled for spacecraft on v6x. + ([PX4-Autopilot#25276](https://github.com/PX4/PX4-Autopilot/pull/25276)) ### Estimation -- TBD - - +- Added [MicroStrain Inertial Sensors](../sensor/microstrain.md) driver support. + ([PX4-Autopilot#23858](https://github.com/PX4/PX4-Autopilot/pull/23858)) +- [MicroStrain Inertial Sensors](../sensor/microstrain.md) gain expanded aiding support. + ([PX4-Autopilot#25673](https://github.com/PX4/PX4-Autopilot/pull/25673)) +- Added [sbgECom INS driver](../sensor/sbgecom.md). + ([PX4-Autopilot#24137](https://github.com/PX4/PX4-Autopilot/pull/24137)) +- Added EULER-NAV Baro-Inertial AHRS driver. + ([PX4-Autopilot#24534](https://github.com/PX4/PX4-Autopilot/pull/24534)) +- Added QMC5883P compass driver. + ([PX4-Autopilot#25115](https://github.com/PX4/PX4-Autopilot/pull/25115)) +- Added ICM42688P IMU support on the Mamba F405 MK2 V2. + ([PX4-Autopilot#25047](https://github.com/PX4/PX4-Autopilot/pull/25047)) +- Added LightWare SF30/d binary protocol. + ([PX4-Autopilot#25570](https://github.com/PX4/PX4-Autopilot/pull/25570)) +- Airspeed calibration only saves the offset when the full procedure succeeds. + ([PX4-Autopilot#25412](https://github.com/PX4/PX4-Autopilot/pull/25412)) +- AirspeedSelector adds a synthetic airspeed option. +- IMU gyro: default angular-acceleration filter lowered from 30 Hz to 20 Hz. ### Simulation -- Overhaul rover simulation: - - Add synthetic differential rover model: [PX4-gazebo-models#107](https://github.com/PX4/PX4-gazebo-models/pull/107) - - Add synthetic mecanum rover model: [PX4-gazebo-models#113](https://github.com/PX4/PX4-gazebo-models/pull/113) - - Update synthetic ackermann rover model: [PX4-gazebo-models#117](https://github.com/PX4/PX4-gazebo-models/pull/117) +#### Gazebo -- [Simulation-in-Hardware (SIH)](../sim_sih/index.md#supported-vehicle-types) - - New simulation: MC Hexacopter X - - New simulation: Ackermann Rover +- Gazebo CMake linking is now version-agnostic across `gz-transport`, `gz-sim`, `gz-sensors`, and `gz-plugin`, removing the hard pin to Harmonic in the build glue. Harmonic remains the supported, CI-tested version; building against newer Gazebo releases (e.g. Jetty / v15) is up to the developer to install and verify locally. + ([PX4-Autopilot#25521](https://github.com/PX4/PX4-Autopilot/pull/25521)) +- [Rover simulation](../frames_rover/index.md#simulation) updated to match the current rover-control architecture. + ([PX4-Autopilot#25644](https://github.com/PX4/PX4-Autopilot/pull/25644)) +- Gazebo bridge sensors can be selectively disabled. + ([PX4-Autopilot#25484](https://github.com/PX4/PX4-Autopilot/pull/25484)) +- Gimbal yaw fix and DDS attitude publisher in the Gazebo bridge. + ([PX4-Autopilot#25754](https://github.com/PX4/PX4-Autopilot/pull/25754)) +- `PX4_GZ_MODEL_POSE` for custom spawn pose. + ([PX4-Autopilot#24956](https://github.com/PX4/PX4-Autopilot/pull/24956)) +- Updated Gazebo 24.04 documentation. + ([PX4-Autopilot#25586](https://github.com/PX4/PX4-Autopilot/pull/25586)) + +#### Simulation-in-Hardware (SIH) + +- [SIH](../sim_sih/index.md#supported-vehicle-types) now supports Hexacopter X and Ackermann rovers. + ([PX4-Autopilot#25194](https://github.com/PX4/PX4-Autopilot/pull/25194), [PX4-Autopilot#25405](https://github.com/PX4/PX4-Autopilot/pull/25405)) +- HITL/SIH battery status now driven by battery configuration parameters. + ([PX4-Autopilot#24103](https://github.com/PX4/PX4-Autopilot/pull/24103)) ### Debug & Logging -- TBD +- `AirspeedValidated` promoted to a standard uORB topic. + ([PX4-Autopilot#25579](https://github.com/PX4/PX4-Autopilot/pull/25579)) +- `upload_log.py` can target a custom upload server via CLI argument. + ([PX4-Autopilot#25702](https://github.com/PX4/PX4-Autopilot/pull/25702)) +- ULog tooling can recover UTC timestamps even when `sensor_gps` is not present. + ([PX4-Autopilot#25534](https://github.com/PX4/PX4-Autopilot/pull/25534)) +- UAVCAN node status is now logged to uORB for debugging. + ([PX4-Autopilot#23890](https://github.com/PX4/PX4-Autopilot/pull/23890)) +- ULog file format documentation expanded. + ([PX4-Autopilot#25624](https://github.com/PX4/PX4-Autopilot/pull/25624)) -### Ethernet +### ROS 2 / uXRCE-DDS -- TBD +- [PX4 ROS 2 Control Interface](../ros2/px4_ros2_control_interface.md) support for [Fixed Wing lateral and longitudinal setpoint](../ros2/px4_ros2_control_interface.md#fw-lateral-longitudinal-setpoint) and [VTOL transitions](../ros2/px4_ros2_control_interface.md#controlling-a-vtol). +- [Simple index-based namespace (`UXRCE_DDS_NS_IDX`)](../middleware/uxrce_dds.md#customizing-the-namespace) for uXRCE-DDS. + ([PX4-Autopilot#25444](https://github.com/PX4/PX4-Autopilot/pull/25444)) +- Namespace support for the uXRCE-DDS client during firmware upload. + ([PX4-Autopilot#25291](https://github.com/PX4/PX4-Autopilot/pull/25291)) +- New DDS topics: `TransponderReport` (ADS-B) ([PX4-Autopilot#25652](https://github.com/PX4/PX4-Autopilot/pull/25652)), `landing_gear` command from external modes ([PX4-Autopilot#25496](https://github.com/PX4/PX4-Autopilot/pull/25496)), `Wind` topic with 1 Hz rate limit, gimbal device attitude status, and FW high-level setpoint/configuration interfaces. -### uXRCE-DDS / Zenoh / ROS2 +### ROS 2 / Zenoh -- [PX4 ROS 2 Interface Library](../ros2/px4_ros2_control_interface.md) support for [Fixed Wing lateral/longitudinal setpoint](../ros2/px4_ros2_control_interface.md#fixed-wing-lateral-and-longitudinal-setpoint-fwlaterallongitudinalsetpointtype) (`FwLateralLongitudinalSetpointType`) and [VTOL transitions](../ros2/px4_ros2_control_interface.md#controlling-a-vtol). ([PX4-Autopilot#24056](https://github.com/PX4/PX4-Autopilot/pull/24056)). -- [UXRCE_DDS: Simple index based namespace (UXRCE_DDS_NS_IDX)](../middleware/uxrce_dds.md#customizing-the-namespace) -- [Zenoh (PX4 ROS 2 rmw_zenoh)](../middleware/zenoh.md) + + +The in-tree [Zenoh middleware](../middleware/zenoh.md) (added in v1.16) matures toward `rmw_zenoh` compatibility in v1.17. Most of this work landed as direct commits without PR numbers; the following list groups it by area: + +- **rmw_zenoh compatibility**: implement `rmw_zenoh` features in the Zenoh module, move ROS 2 Rmw attachment code to `rmw_attachment.h`, switch to CDRv1 to match ROS 2, set transport lease to 60 s to match ROS 2, omit timestamp attachment, experimental liveliness so the ROS 2 graph works. +- **Configuration and CLI**: auto-generate default Zenoh config from `dds_topics.yaml`, new Domain ID parameter (and move `gid` into Zenoh), Zenoh CLI improvements, instance selection and pub/sub deletion, copy the uXRCE config layout for Zenoh. +- **Boards**: Zenoh is now built into the default firmware on `px4/fmu-v6xrt` (`make px4_fmu-v6xrt_default`). On `px4/fmu-v6x` and SITL it ships as an opt-in `zenoh` build variant (`make px4_fmu-v6x_zenoh`, `make px4_sitl_zenoh`); the same opt-in `zenoh.px4board` is also provided for `auterion/fmu-v6s` and `auterion/fmu-v6x`. Zenoh is additionally compiled in by default on `nxp/mr-canhubk3`, `nxp/mr-tropic`, and `nxp/tropic-community`. +- **NuttX support**: update NuttX config for use with Zenoh; backport NuttX FMU-v6x config for Zenoh ([PX4-Autopilot#26213](https://github.com/PX4/PX4-Autopilot/pull/26213)). +- **SITL**: new `px4_sitl_zenoh` cmake variant, default to `127.0.0.1` on SITL/POSIX, autostart Zenoh in SITL when enabled, friendlier error message when scouting finds nothing, GCC/SITL compile fixes. +- **Robustness**: validate payload size before stack allocation, increase CDR safety margin, handle parsing errors and non-existing types in config, fix topic-name and datatype mapping, pubsub-factory datatype-naming fix, fix status `keyexpr` printf, prevent integer-conversion warnings in zenoh-pico, optimize memory usage with optional publish-on-matching. +- **Docs and OOM fixes (backport)**: [PX4-Autopilot#26053](https://github.com/PX4/PX4-Autopilot/pull/26053). +- **Submodule**: `zenoh-pico` updated. ### MAVLink -- TBD - - +- New multicopter flight mode: [Altitude Cruise](../flight_modes_mc/altitude_cruise.md). Like Altitude mode, but when the roll/pitch/yaw sticks are released the vehicle holds the current tilt and heading (rather than returning to level), letting it cruise at a steady velocity without constant stick input. Intended for long-distance flights where the same tilt is held for an extended period. The manual-control-loss failsafe can optionally be disabled for this mode by setting the corresponding bit in [`COM_RCL_EXCEPT`](../advanced_config/parameter_reference.md#COM_RCL_EXCEPT); when doing so, configure the data-link-loss failsafe via [`NAV_DLL_ACT`](../advanced_config/parameter_reference.md#NAV_DLL_ACT) to avoid fly-aways. +- Stick library refactored: globally available, getter-based, expo computed on getter call; `FixedWingModeManager` now uses the Sticks library. +- Orbit mode: configurable max speed replaces the 10 m/s hardcode ([PX4-Autopilot#25192](https://github.com/PX4/PX4-Autopilot/pull/25192)) and `HeadingSmoothing` is applied to avoid step changes during the approach; documentation clarified ([PX4-Autopilot#25208](https://github.com/PX4/PX4-Autopilot/pull/25208)). +- MC PositionControl: switch out of goto setpoint immediately when receiving `trajectory_setpoint`. +- Hexarotor X added to SIH and to `ActuatorEffectivenessRotorsTest`. +- `MC_RATE*` parameter metadata unified. + ([PX4-Autopilot#25133](https://github.com/PX4/PX4-Autopilot/pull/25133)) ### VTOL -- TBD +- Fixed VTOL stuck after back-transition in Mission Fast RTL. +- VTOL takeoff requires relaxed position only during the fixed-wing phase; on completion of takeoff, the state is forced to Loiter. +- VTOL airspeed measurement handling centralized. +- [PX4 ROS 2 Control Interface](../ros2/px4_ros2_control_interface.md#controlling-a-vtol) can command VTOL transitions from external modes. ### Fixed-wing -- [Fixed Wing Takeoff mode](../flight_modes_fw/takeoff.md) will now keep climbing with level wings on position loss. - A target takeoff waypoint can be set to control takeoff course and loiter altitude. ([PX4-Autopilot#25083](https://github.com/PX4/PX4-Autopilot/pull/25083)). -- Automatically suppress angular rate oscillations using [Gain compression](../features_fw/gain_compression.md). ([PX4-Autopilot#25840: FW rate control: add gain compression algorithm](https://github.com/PX4/PX4-Autopilot/pull/25840)) +- [Fixed Wing Takeoff mode](../flight_modes_fw/takeoff.md) 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](https://github.com/PX4/PX4-Autopilot/pull/25226)) +- Reworked fixed-wing high-level control exposes clean lateral and longitudinal control interfaces for external integrations. +- FW Attitude Controller wheel controller rework. +- FW Autotune: identification maneuver auto-ramps the 1 Hz amplitude until R/P/Y rates of 0.8/0.5/0.5 rad/s are reached, then scales the identification signal accordingly. +- TECS hardening: NaN protection on airspeed and altitude inputs. ### Rover -- Removed deprecated rover module ([PX4-Autopilot#25054](https://github.com/PX4/PX4-Autopilot/pull/25054)). -- Add support for [Apps & API](../flight_modes_rover/api.md) including [Rover Setpoints](../ros2/px4_ros2_control_interface.md#rover-setpoints) ([PX4-Autopilot#25074](https://github.com/PX4/PX4-Autopilot/pull/25074), [PX4-ROS2-Interface-Lib#140](https://github.com/Auterion/px4-ros2-interface-lib/pull/140)). -- Update [rover simulation](../frames_rover/index.md#simulation) ([PX4-Autopilot#25644](https://github.com/PX4/PX4-Autopilot/pull/25644)) (see [Simulation](#simulation) release note for details). +- Removed deprecated rover module. +- Added [Apps & API](../flight_modes_rover/api.md) support including [Rover Setpoints](../ros2/px4_ros2_control_interface.md#rover-setpoints). +- [Rover simulation](../frames_rover/index.md#simulation) updated to match the reworked rover architecture. + ([PX4-Autopilot#25644](https://github.com/PX4/PX4-Autopilot/pull/25644)) +- Continued per-vehicle (Ackermann/differential/mecanum) restructuring with separated actuator control, position-control updates, mode-management centralization, and module split into folders. +- New stick-input scaling parameters. + ([PX4-Autopilot#25427](https://github.com/PX4/PX4-Autopilot/pull/25427)) +- Improved rover hold-position logic. + ([PX4-Autopilot#25466](https://github.com/PX4/PX4-Autopilot/pull/25466)) +- `RX_MAX_THR_YAW_R` replaced by `RO_YAW_RATE_CORR`. +- Manual yaw-rate input: exponential scaling. +- Comprehensive [Rover API documentation](../flight_modes_rover/api.md). + ([PX4-Autopilot#25499](https://github.com/PX4/PX4-Autopilot/pull/25499)) +- MR-CANHUBK344 NXP B3RB rover platform. + ([PX4-Autopilot#23897](https://github.com/PX4/PX4-Autopilot/pull/23897)) +- Aion Robotics R1 Rover airframe (`50001`) marked discontinued. -### ROS 2 +### Safety / Commander -- TBD +- Pilot can take over from a degraded failsafe action. + ([PX4-Autopilot#26269](https://github.com/PX4/PX4-Autopilot/pull/26269)) +- Offboard to Position (hold) is no longer entered without RC. + ([PX4-Autopilot#26391](https://github.com/PX4/PX4-Autopilot/pull/26391)) +- Motor-failure detector uses robust timeout checks. + ([PX4-Autopilot#25757](https://github.com/PX4/PX4-Autopilot/pull/25757)) +- Failure injection refactored into its own class; `failure motor off -i ` now requires `CA_FAILURE_MODE` to be set. See [motor failure injection and detection](../debug/failure_injection.md). + ([PX4-Autopilot#25756](https://github.com/PX4/PX4-Autopilot/pull/25756)) +- Naming for clarity: `FORCE_FAILSAFE` renamed to `TERMINATION`; `commander lockdown on` renamed to `commander termination`; `manual_lockdown` renamed to `kill`; `ACTION_TERMINATE` renamed to `ACTION_TERMINATION`. +- New RC termination switch with PWM-input default for ATS-based flight termination. + ([PX4-Autopilot#25209](https://github.com/PX4/PX4-Autopilot/pull/25209)) +- Commander never overrides a user-intended termination (with unit test). +- Remaining-flight-time failsafe disabled by default. +- Home position is not reset if landed during an uncompleted mission. + ([PX4-Autopilot#24902](https://github.com/PX4/PX4-Autopilot/pull/24902)) +- Off-track mission landing fix. + ([PX4-Autopilot#25725](https://github.com/PX4/PX4-Autopilot/pull/25725)) + +### Infrastructure + +- `parameters_injected.xml` removed from the build system. + ([PX4-Autopilot#25549](https://github.com/PX4/PX4-Autopilot/pull/25549)) +- [QGC Bootloader Update](../advanced_config/bootloader_update.md#qgc-bootloader-update-sys-bl-update) via `SYS_BL_UPDATE` restored. + ([PX4-Autopilot#25032](https://github.com/PX4/PX4-Autopilot/pull/25032)) +- NuttX submodule updates: dcache fix and semaphore-holder-list fix. +- ITCM checker added in CI; ITCM mapping updated for v6xRT and Tropic-Community. +- Flash savings on KakuteH7 encrypted-logs variants and on selected ARK targets. +- Spacecraft tooling for Commander and `VehicleStatus`. + ([PX4-Autopilot#24716](https://github.com/PX4/PX4-Autopilot/pull/24716)) diff --git a/docs/en/releases/main.md b/docs/en/releases/main.md index 5aff2f6310..e22eb05669 100644 --- a/docs/en/releases/main.md +++ b/docs/en/releases/main.md @@ -96,7 +96,7 @@ Please continue reading for [upgrade instructions](#upgrade-guide). diff --git a/docs/en/ros2/px4_ros2_control_interface.md b/docs/en/ros2/px4_ros2_control_interface.md index 6032e6d2d5..8a74983a6b 100644 --- a/docs/en/ros2/px4_ros2_control_interface.md +++ b/docs/en/ros2/px4_ros2_control_interface.md @@ -347,7 +347,7 @@ The used types also define the compatibility with different vehicle types. The following sections provide a list of supported setpoint types: - [MulticopterGotoSetpointType](#go-to-setpoint-multicoptergotosetpointtype): Smooth position and (optionally) heading control -- [FwLateralLongitudinalSetpointType](#fixed-wing-lateral-and-longitudinal-setpoint-fwlaterallongitudinalsetpointtype): Direct control of lateral and longitudinal fixed wing dynamics +- [FwLateralLongitudinalSetpointType](#fw-lateral-longitudinal-setpoint): Direct control of lateral and longitudinal fixed wing dynamics - [DirectActuatorsSetpointType](#direct-actuator-control-setpoint-directactuatorssetpointtype): Direct control of motors and flight surface servo setpoints - [Rover Setpoints](#rover-setpoints): Direct access to rover control setpoints (Position, Speed, Attitude, Rate, Throttle and Steering). @@ -414,7 +414,7 @@ _goto_setpoint->update( max_heading_rate_rad_s); ``` -#### Fixed-Wing Lateral and Longitudinal Setpoint (FwLateralLongitudinalSetpointType) +#### Fixed-Wing Lateral and Longitudinal Setpoint (FwLateralLongitudinalSetpointType) {#fw-lateral-longitudinal-setpoint} @@ -597,7 +597,7 @@ An example for a rover specific drive mode using the `RoverSpeedAttitudeSetpoint To control a VTOL in an external flight mode, ensure you're returning the correct setpoint type based on the current flight configuration: - Multicopter mode: use a setpoint type that is compatible with multicopter control. For example: either the [`MulticopterGotoSetpointType`](#go-to-setpoint-multicoptergotosetpointtype) or the [`TrajectorySetpointType`](https://auterion.github.io/px4-ros2-interface-lib/classpx4__ros2_1_1TrajectorySetpointType.html). -- Fixed-wing mode: Use the [`FwLateralLongitudinalSetpointType`](#fixed-wing-lateral-and-longitudinal-setpoint-fwlaterallongitudinalsetpointtype). +- Fixed-wing mode: Use the [`FwLateralLongitudinalSetpointType`](#fw-lateral-longitudinal-setpoint). As long as the VTOL remains in either multicopter or fixed-wing mode throughout the external mode, no additional handling is required.