Commit Graph

49754 Commits

Author SHA1 Message Date
PX4 BuildBot 18364718c2 boards: update all NuttX defconfigs 2026-05-09 12:30:05 +00:00
PX4BuildBot 78abda4e9b docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-08 12:26:18 +00:00
Marco Hauswirth e6c7cb62c0 fix(ekf2): move constant_pos gating to common_condition 2026-05-08 14:18:58 +02:00
Marco Hauswirth bcbb529339 fix(ekf2): disable mag fusion while constant_pos is active 2026-05-08 14:18:58 +02:00
PX4BuildBot df05252c74 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-08 08:31:17 +00:00
Michael Fritsche b8ccde428c fix(commander): rename timeout for clarity, increase esc_telemetry_timeout (#27241) 2026-05-08 10:23:42 +02:00
PX4BuildBot 56588a5cd9 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-08 06:52:50 +00:00
Wang Jiayue 456faf6881 fix(ekf2): allow external position reset heading correction
This fixes the same class of bug as #27232. The external position
reset-by-fusion path explicitly intends to strongly correct correlated
states, including heading, as documented by the existing comment next to
the artificial Kalman gain increase.

However, when VEHICLE_CMD_EXTERNAL_POSITION_ESTIMATE is handled in
EKF2::Run(), it runs before _ekf.update(), so heading_observable can
still reflect the previous controlFusionModes() result. If it is false,
clearInhibitedStateKalmanGains() inhibits the intended heading
correction.

Set heading_observable before the external position fusion so the reset
can preserve the documented correction of correlated states. The normal
EKF update path recomputes the flag afterwards.
2026-05-08 08:45:41 +02:00
PX4BuildBot 2644109e2e docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-07 20:51:17 +00:00
Hamish Willee f1c59932ee docs(docs): Hide the sidebar on the failsafe simulation page (#27298) 2026-05-08 06:42:08 +10:00
PX4BuildBot 100b85bea3 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-07 17:24:47 +00:00
G. Amponis 7db998e017 fix(ekf2/commander): split no-heading-source from heading-innovation-failure (#27215)
* fix(ekf2,commander): split "no heading source" from heading-innovation-failure

The pre_flt_fail_innov_heading flag conflated two distinct conditions: bad
heading innovations and the absence of any heading source. Optical-flow-only
quad setups (no magnetometer, no GNSS yaw, no external-vision yaw) never set
yaw_align, so the flag latched true and produced a misleading
"Preflight Fail: heading estimate invalid" message in modes that don't
actually depend on heading.

EKF2: pre_flt_fail_innov_heading now reports innovation failures only.
Commander: a new branch consumes estimator_status_flags.cs_yaw_align (when
fresh) to block heading-required modes (POSCTL, AUTO_*, ORBIT, AUTO_LAND,
FW AUTO_TAKEOFF) when no source is present, with a new "no heading
reference" message. The branch only fires for fresh estimator_status_flags
data so external-INS drivers (MicroStrain, VectorNav, ILabs, sbgecom) that
don't publish the flags topic retain prior behaviour. PR #26778's
mode-scoping and PR #26596's silent-pass protection are both preserved.

Resolves #27107.

* style: trim source comments per review

* Apply suggestions from code review

Co-authored-by: Jacob Dahl <37091262+dakejahl@users.noreply.github.com>

* refactor(commander): move no-heading-source check into checkEstimatorStatusFlags

* Update src/modules/commander/HealthAndArmingChecks/checks/estimatorCheck.cpp

Co-authored-by: Jacob Dahl <37091262+dakejahl@users.noreply.github.com>

---------

Co-authored-by: Jacob Dahl <37091262+dakejahl@users.noreply.github.com>
2026-05-07 11:17:17 -06:00
PX4BuildBot 095f5a48c6 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-07 15:51:05 +00:00
Marco Hauswirth eabb60edc7 feat(uorb): add SOURCE_LEO to AGP-msg source-enum 2026-05-07 17:34:49 +02:00
PX4BuildBot 4822e0a821 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-07 15:28:55 +00:00
Nick 6d0de7379b feat(failure_detector): unite motorfailure offsets (#26990)
* feat(failure_detector): unite motorfailure offsets

* docs: update docs/en/config/safety.md

* docs: Update src/modules/commander/HealthAndArmingChecks/esc_check_params.yaml

---------

Co-authored-by: Hamish Willee <hamishwillee@gmail.com>
Co-authored-by: Silvan Fuhrer <silvan@auterion.com>
2026-05-07 17:20:32 +02:00
Apoorv Thapliyal a1726d316a fix(boards/modalai/voxl2): add shebang from #!/usr/bin/env bash to #!/bin/bash
Build all targets / Scan for Board Targets (push) Has been cancelled
Checks / Gate Checks [check_format] (push) Has been cancelled
Checks / Gate Checks [check_newlines] (push) Has been cancelled
Checks / Gate Checks [module_documentation] (push) Has been cancelled
Checks / Gate Checks [shellcheck_all] (push) Has been cancelled
Checks / Gate Checks [validate_module_configs] (push) Has been cancelled
Checks / Unit Tests (push) Has been cancelled
MacOS build / build (push) Has been cancelled
Ubuntu environment build / Build and Test (ubuntu:22.04) (push) Has been cancelled
Ubuntu environment build / Build and Test (ubuntu:24.04) (push) Has been cancelled
Container build / Set Tags and Variables (push) Has been cancelled
Docs - Orchestrator / T1: Detect Changes (push) Has been cancelled
Docs - Orchestrator / T2: Metadata Sync (push) Has been cancelled
Docs - Crowdin - Upload Guide sources (en) / upload-to-crowdin (push) Has been cancelled
Failsafe Simulator Build / build (failsafe_web) (push) Has been cancelled
FLASH usage analysis / Analyzing px4_fmu-v5x (push) Has been cancelled
FLASH usage analysis / Analyzing px4_fmu-v6x (push) Has been cancelled
ITCM check / Checking nxp_mr-tropic (push) Has been cancelled
ITCM check / Checking nxp_tropic-community (push) Has been cancelled
ITCM check / Checking px4_fmu-v5x (push) Has been cancelled
ITCM check / Checking px4_fmu-v6xrt (push) Has been cancelled
MAVROS Tests / MAVROS Mission (push) Has been cancelled
MAVROS Tests / MAVROS Offboard (push) Has been cancelled
Python CI Checks / build (push) Has been cancelled
ROS Integration Tests / build (push) Has been cancelled
ROS Translation Node Tests / Build and test [humble] (push) Has been cancelled
ROS Translation Node Tests / Build and test [jazzy] (push) Has been cancelled
SITL Tests / Testing PX4 iris (push) Has been cancelled
Build all targets / Seed [${{ matrix.chip_family }}] (push) Has been cancelled
Build all targets / Build [${{ matrix.runner }}][${{ matrix.group }}] (push) Has been cancelled
Build all targets / Upload Artifacts (push) Has been cancelled
Container build / Build Container (amd64) (push) Has been cancelled
Container build / Build Container (arm64) (push) Has been cancelled
Container build / Deploy To Registry (push) Has been cancelled
Docs - Orchestrator / T2: PR Metadata (push) Has been cancelled
Docs - Orchestrator / T2: Link Check (push) Has been cancelled
Docs - Orchestrator / T3: Build Site (push) Has been cancelled
Docs - Orchestrator / T4: Deploy (push) Has been cancelled
FLASH usage analysis / Publish Results (push) Has been cancelled
Static Analysis / Clang-Tidy (push) Has been cancelled
2026-05-06 08:29:37 -07:00
PX4BuildBot 72539dbadb docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-06 14:19:27 +00:00
Samuel Toledano 8e99bcf94d fix(sbgecom): improve GNSS fix publication and metadata (#27285)
* sbgecom: fill hdop & vdop filed in gps sensor

* sbgecom: improve time comparison handling

* sbgecom: publish GNSS fixes without requiring HDT

* sbgecom: compute ellipsoid altitude from MSL altitude and undulation

* sbgecom: normalize GNSS fix types and heading fields

---------

Co-authored-by: Samuel TOLEDANO <samuel.toledano@sbg-systems.com>
2026-05-06 10:11:48 -04:00
PX4BuildBot 466c70ec84 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-06 04:58:38 +00:00
Francesco P. Carmone 5bda4806fa docs(docs): sih quickstart environment variable use (#27276) 2026-05-06 14:51:14 +10:00
PX4BuildBot b6df5164ea docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-06 01:22:49 +00:00
PX4 Build Bot 4f261d7b30 docs(i18n): PX4 guide translations (Crowdin) - uk (#27268)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2026-05-06 11:15:45 +10:00
PX4 Build Bot 929be2bef4 docs(i18n): PX4 guide translations (Crowdin) - ko (#27267)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2026-05-06 11:15:31 +10:00
PX4 Build Bot 220a143a23 docs(i18n): PX4 guide translations (Crowdin) - zh-CN (#27269)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2026-05-06 11:15:04 +10:00
PX4BuildBot f33fb5185e docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-06 00:05:13 +00:00
Claudio Chies 7ee0c4061f feat(docs):Fix deep-link anchor offset and improve layout stability in Firefox (#27284) 2026-05-06 09:57:01 +10:00
PX4BuildBot a484e1b166 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-05 18:12:07 +00:00
av-remco 9d8af2fb4c fix(mavlink): preserve -1 marker in battery fields (#27142)
Build all targets / Scan for Board Targets (push) Has been cancelled
Build all targets / Seed [${{ matrix.chip_family }}] (push) Has been cancelled
Build all targets / Build [${{ matrix.runner }}][${{ matrix.group }}] (push) Has been cancelled
Build all targets / Upload Artifacts (push) Has been cancelled
Checks / Gate Checks [check_format] (push) Has been cancelled
Checks / Gate Checks [check_newlines] (push) Has been cancelled
Checks / Gate Checks [module_documentation] (push) Has been cancelled
Checks / Gate Checks [shellcheck_all] (push) Has been cancelled
Checks / Gate Checks [validate_module_configs] (push) Has been cancelled
Checks / Unit Tests (push) Has been cancelled
MacOS build / build (push) Has been cancelled
Ubuntu environment build / Build and Test (ubuntu:22.04) (push) Has been cancelled
Ubuntu environment build / Build and Test (ubuntu:24.04) (push) Has been cancelled
Container build / Set Tags and Variables (push) Has been cancelled
Container build / Build Container (amd64) (push) Has been cancelled
Container build / Build Container (arm64) (push) Has been cancelled
Container build / Deploy To Registry (push) Has been cancelled
Docs - Orchestrator / T1: Detect Changes (push) Has been cancelled
Docs - Orchestrator / T2: PR Metadata (push) Has been cancelled
Docs - Orchestrator / T2: Metadata Sync (push) Has been cancelled
Docs - Orchestrator / T2: Link Check (push) Has been cancelled
Docs - Orchestrator / T3: Build Site (push) Has been cancelled
Docs - Orchestrator / T4: Deploy (push) Has been cancelled
Failsafe Simulator Build / build (failsafe_web) (push) Has been cancelled
ITCM check / Checking nxp_mr-tropic (push) Has been cancelled
ITCM check / Checking nxp_tropic-community (push) Has been cancelled
ITCM check / Checking px4_fmu-v5x (push) Has been cancelled
ITCM check / Checking px4_fmu-v6xrt (push) Has been cancelled
MAVROS Tests / MAVROS Mission (push) Has been cancelled
MAVROS Tests / MAVROS Offboard (push) Has been cancelled
ROS Integration Tests / build (push) Has been cancelled
ROS Translation Node Tests / Build and test [humble] (push) Has been cancelled
ROS Translation Node Tests / Build and test [jazzy] (push) Has been cancelled
SITL Tests / Testing PX4 iris (push) Has been cancelled
Docs - Crowdin - Upload Guide sources (en) / upload-to-crowdin (push) Has been cancelled
FLASH usage analysis / Analyzing px4_fmu-v5x (push) Has been cancelled
FLASH usage analysis / Analyzing px4_fmu-v6x (push) Has been cancelled
Python CI Checks / build (push) Has been cancelled
FLASH usage analysis / Publish Results (push) Has been cancelled
Static Analysis / Clang-Tidy (push) Has been cancelled
2026-05-05 10:02:19 -08:00
PX4BuildBot b8f9d8a4f4 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-05 13:45:59 +00:00
Matthias Grob d5a9529592 refactor(ControlAllocator): remove unused rover ackermann allocatio 2026-05-05 15:34:17 +02:00
DrinkingHook c5f455f304 fix(control_allocator): Remove SPACECRAFT_3D 2026-05-05 15:34:17 +02:00
DrinkingHook 3eaede3197 fix(control_allocator): add ROVER_MECANUM actuator effectiveness type 2026-05-05 15:34:17 +02:00
PX4BuildBot 761447e12e docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-05 13:22:42 +00:00
Himanshu 9d07764969 fix(drivers/distance_sensor/vl53l0x): filter out invalid 8.19m distance readings (#27214) 2026-05-05 09:14:52 -04:00
PX4BuildBot 715837cd5a docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-04 15:08:24 +00:00
Matthias Grob 10476200a4 fix(commander): Allow arming via RC in autonomous modes
There's a check to disallow arming in modes that are not suite for takeoff. The allowed autonmous ones are:
Mission - desired
Loiter - does not make sense but needs to be kept for **** MAVLink MAVSDK workflow of first arming then switching mode
Offboard - acceptable advanced case even for RC
Takeoff - desired
VTOL Takeoff - desired
2026-05-04 16:55:48 +02:00
Matthias Grob 0c0be00046 fix(commander): Remove parameter COM_DISARM_MAN 2026-05-04 16:55:48 +02:00
Matthias Grob 66af778f7f refactor(modeCheck): inline checkArmingRequirement() function 2026-05-04 16:55:48 +02:00
bresch 2b97e2269b feat(mag_cal): disable internal mag before performing calibration
This avoids sending warning messages and failing the calibration for a
mag that we anyway disable at the end.
2026-05-04 16:50:11 +02:00
bresch e7e359a09d feat(mag_cal): print debug-level failures if sensor is disabled
Co-authored-by: Matthias Grob <maetugr@gmail.com>
2026-05-04 16:50:11 +02:00
PX4BuildBot 22a135d112 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-04 12:37:11 +00:00
Stolniceanu Iustin f1f0b14748 feat(drivers/imu): add Analog Devices ADIS1650x IMU Driver (#27240)
drivers/imu: add Analog Devices ADIS1650x IMU driver

Adds support for the ADIS16500/ADIS16501/ADIS16505/ADIS16507 family.
2026-05-04 08:29:45 -04:00
PX4BuildBot 307f707fad docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-04 02:43:47 +00:00
Jacob Dahl 6f6ead5661 fix(flight_mode_manager): fix terrain following position setpoint (#26975)
* fix(flight_mode_manager): fix terrain following position setpoint

In MPC_ALT_MODE=1 terrain following, the smoothing block was
overwriting the parent class's terrain-adjusted position setpoint.
Unify terrain hold and terrain following into a single terrain_position
flag that syncs the smoothing block to the parent's position, preventing
divergence and simplifying transition handling.

* refactor(flight_mode_manager): lift terrain-driven Z flag into base class

FlightTaskManualAltitudeSmoothVel re-derived the parent's terrain gate
in _setOutputState() to decide whether to keep the parent's position
setpoint or overwrite it with the smoothing block. Two problems with
that:

1. The condition was duplicated verbatim from the parent's gate in
   _updateAltitudeLock(), so any future change there would silently
   break the child.

2. The parent also invokes _terrainFollowing() from the min-altitude
   safety branch (MPC_ALT_MODE != 1 && !_terrain_hold but below
   hagl_min while braking). The child's open-coded condition did not
   cover that case, so the smoothing block still overwrote a valid
   terrain-adjusted setpoint there.

Move ownership of the decision into the parent: _terrainFollowing()
sets _z_setpoint_from_terrain iff it produced a finite setpoint, and
_updateAltitudeLock() resets the flag at the top of each iteration.
The child now reads the flag instead of re-deriving the condition,
which also fixes the min-altitude safety branch above.

_z_setpoint_from_terrain is named to stay semantically distinct from
_terrain_hold (an MPC_ALT_MODE=2 sub-state that gates the terrain
following logic).
2026-05-04 14:36:14 +12:00
PX4BuildBot 480c4dd33e docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-03 21:55:15 +00:00
Hamish Willee 801362b6f5 fix(mavlink): Remove legacy mavlink message requestors (#27252) 2026-05-04 09:49:03 +12:00
G. Amponis ef1853eec9 gimbal: handle NaN pitch/yaw in DO_GIMBAL_MANAGER_PITCHYAW (#27206)
NaN signals "unset" per the MAVLink spec. Without a guard,
math::radians(NaN) propagates through the Eulerf-to-Quatf conversion
and produces q=[nan,nan,nan,nan], freezing the gimbal. Substitute 0
for any non-finite axis with PX4_ISFINITE, matching the manual-control
pattern at input_mavlink.cpp:951.

Closes #26640.
2026-05-04 09:45:54 +12:00
PX4BuildBot f63b0d6b6f docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-01 19:36:01 +00:00
msl-dev 0f2b666813 fix(mavlink): preserve OpenDroneID system timestamp (#27244) 2026-05-01 22:23:52 +03:00