Commit Graph

49078 Commits

Author SHA1 Message Date
Matthias Grob 4e2f3e7600 refactor(commander): remove unused parameter COM_HLDL_REG_T (#26809) 2026-03-19 11:01:32 -08:00
PX4BuildBot 65fdc6fecd docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-19 11:12:53 +00:00
bresch f5f3394b64 chore(ekf2): add ground position lock documentation 2026-03-19 11:48:09 +01:00
bresch f90b159401 feat(ekf2): generalize engine warmup mode
This is not only needed for engine warmup but in general, when the
vehicle is static on the ground, relying on fixed position to maintain a
valid global position estimate before takeoff, even when bumping it or
starting the engine.
2026-03-19 11:48:09 +01:00
PX4BuildBot 24bbf5efd9 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-19 04:46:04 +00:00
PX4 Build Bot db1b8d9ce6 docs(i18n): PX4 guide translations (Crowdin) - zh-CN (#26760)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2026-03-19 15:36:32 +11:00
PX4 Build Bot be0ee3d185 docs(i18n): PX4 guide translations (Crowdin) - ko (#26758)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2026-03-19 15:36:21 +11:00
PX4 Build Bot 7f3c08a200 docs(i18n): PX4 guide translations (Crowdin) - uk (#26759)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2026-03-19 15:36:04 +11:00
PX4BuildBot b6bbaa1c53 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-19 03:28:54 +00:00
Vincello 4cf95fdcb4 fix(boards): align LED indices and add docs for corvon 743v1 (#26699)
* boards: corvon 743v1 support (Docs and LED alignment)

This PR addresses #24769 by providing the required official documentation, while simultaneously aligning the board's LED semantics entirely with the PX4 standard.

Key Changes:

- Add complete corvon 743v1 hardware documentation and manufacturer link.

- Fix LED out-of-bounds bug and strictly align RGB states to Pixhawk standard (LED_BLUE=0, LED_RED=1, LED_GREEN=3).

- Update bootloader pin config (hw_config.h) to use red LED for boot/error, and update pre-built bootloader.bin.

* Prettier and file reduce

* docs: address reviewer feedback & board ID fix

* Apply suggestion from @hamishwillee

Co-authored-by: Hamish Willee <hamishwillee@gmail.com>

* docs: resolve final reviewer feedback (PPM, Debug Port, Manufacturer List)

---------

Co-authored-by: Hamish Willee <hamishwillee@gmail.com>
Co-authored-by: Ramon Roche <mrpollo@gmail.com>
2026-03-19 14:17:21 +11:00
PX4BuildBot 3358de3864 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-19 02:43:46 +00:00
Hamish Willee a91037705c docs(mavlink): MAVLink Profiles - separate topic (#26816) 2026-03-19 13:32:30 +11:00
Eric Katzfey 0f38a581d1 fix(voxl2): Added the px4 configuration script used by the VOXL SDK 2026-03-18 19:02:24 -07:00
PX4BuildBot c76c8f5518 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-18 23:57:31 +00:00
Jacob Dahl 05cc1687a5 fix(crsf_rc): guard against packet_size underflow in CRSF parser
When a CRSF frame arrives with packet_size < 2 (PACKET_SIZE_TYPE_SIZE),
the subtraction `packet_size - PACKET_SIZE_TYPE_SIZE` underflows the
uint32_t working_segment_size to 0xFFFFFFFF. The subsequent overflow
check also wraps and fails to catch it. Since working_segment_size is
static, the parser is permanently stalled — no further CRSF messages
can be processed until reboot.

Validate packet_size >= PACKET_SIZE_TYPE_SIZE early, before any
subtraction, protecting both the known variable-length and unknown
packet branches in a single check.

Supersedes #26782 which only guarded the unknown-packet branch.
2026-03-18 16:47:57 -07:00
PX4BuildBot 3038ac9b7d docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-18 23:04:11 +00:00
Jacob Dahl 6ee825f485 docs(optical_flow): clarify that integrated flow values are angular, not translational (#26811)
Handle stale issues and PRs / stale (push) Has been cancelled
Build all targets / Scan for Board Targets (push) Has been cancelled
Checks / build (NO_NINJA_BUILD=1 px4_fmu-v5_default) (push) Has been cancelled
Checks / build (NO_NINJA_BUILD=1 px4_sitl_default) (push) Has been cancelled
Checks / build (check_format) (push) Has been cancelled
Checks / build (check_newlines) (push) Has been cancelled
Checks / build (module_documentation) (push) Has been cancelled
Checks / build (px4_fmu-v2_default stack_check) (push) Has been cancelled
Checks / build (px4_sitl_allyes) (push) Has been cancelled
Checks / build (shellcheck_all) (push) Has been cancelled
Checks / build (tests) (push) Has been cancelled
Checks / build (tests_coverage) (push) Has been cancelled
Checks / build (validate_module_configs) (push) Has been cancelled
Static Analysis / Clang-Tidy (push) Has been cancelled
MacOS build / build (px4_fmu-v5_default) (push) Has been cancelled
MacOS build / build (px4_sitl) (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
EKF Update Change Indicator / unit_tests (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 Mission Tests / build (push) Has been cancelled
MAVROS Offboard Tests / build (push) Has been cancelled
Nuttx Target with extra env config / build (px4_fmu-v5_default) (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 (map[ros_version:humble ubuntu:jammy]) (push) Has been cancelled
ROS Translation Node Tests / Build and test (map[ros_version:jazzy ubuntu:noble]) (push) Has been cancelled
SITL Tests / Testing PX4 iris (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
Fuzzing / Fuzzing (push) Has been cancelled
The flow output table shows forward movement producing +Y flow and
rightward movement producing -X flow, which confuses users whose sensors
have X-forward/Y-right coordinate systems. Add an info note explaining
that integrated flow values are angular rotations (radians) about the
body axes using the right-hand convention, which is why the axes are
cross-coupled with translational motion.
2026-03-18 14:53:16 -08:00
Ramon Roche 547eb77a55 ci(claude): add GPG signing step to commit skill
Check for user.signingkey and use -S flag when available.

Signed-off-by: Ramon Roche <mrpollo@gmail.com>
2026-03-18 08:59:25 -07:00
Jacob Dahl 99aa88c175 ci(claude): defer commit conventions to CONTRIBUTING.md
Remove duplicated type/scope definitions from commit skill and
point to CONTRIBUTING.md as the single source of truth.
2026-03-18 08:59:25 -07:00
Jacob Dahl 8aa02078e9 ci(claude): link to CONTRIBUTING.md and add format step
Reference CONTRIBUTING.md from commit and PR skills so conventions
stay in sync. Add make format / astyle step to commit skill.
2026-03-18 08:59:25 -07:00
Jacob Dahl 2ea2bfcc15 ci(claude): add Claude Code skills for commit, pr, and rebase
Add reusable skill definitions for common contributor workflows:
- commit: creates conventional commits with proper type(scope) format
- pr: creates PRs with conventional commit titles
- rebase-onto-main: handles rebasing onto main when parent branches
  were squash-merged
2026-03-18 08:59:25 -07:00
Eric Katzfey 7258ddca29 fix(boards/modalai/voxl2): fix Debian packaging build and dependencies
Correct SLPI build directory path, CPack architecture variable name,
and package dependency list. Add modalai_voxl2_deb Makefile dependency
and unified build-pkg.sh script.
2026-03-18 08:51:27 -07:00
Ramon Roche 5c61892e96 fix(boards/modalai/voxl2): remove obsolete build-deps.sh from README
The script was previously removed but the reference in the build
instructions remained.

Signed-off-by: Ramon Roche <mrpollo@gmail.com>
2026-03-18 08:51:27 -07:00
Ramon Roche adb2df5ca7 feat(boards/modalai/voxl2): add Debian packaging framework
Add a scalable .deb packaging framework for VOXL2, built on the
existing cmake/package.cmake CPack infrastructure. The framework
handles multi-processor boards by having the POSIX (_default) build
own the .deb and pull in the companion SLPI build's artifacts.

Board-specific files:
- cmake/package.cmake: CPack variable overrides (name, deps, version)
- cmake/install.cmake: install() rules for all .deb contents
- debian/postinst: px4-* symlinks, DSP signature, directory setup
- debian/prerm: service stop, symlink cleanup
- debian/voxl-px4.service: systemd unit (after sscrpcd)

Infrastructure changes:
- cmake/package.cmake: hook for board-specific CPack overrides
- platforms/posix/CMakeLists.txt: hook for board install.cmake
- Makefile: %_deb pattern rule (build _default, then cpack -G DEB)
- CI: auto-discover _deb targets, collect .deb artifacts, upload
  to GitHub Releases

Future boards: add cmake/package.cmake + cmake/install.cmake and
CI discovers it automatically. No new file formats or tools needed.

Signed-off-by: Ramon Roche <mrpollo@gmail.com>
2026-03-18 08:51:27 -07:00
Ramon Roche 9901b3c156 ci(boards): filter companion targets from CI build groups
Read companion_targets files from board directories and exclude those
targets from CI grouped builds. The parent target builds them via
Make prerequisite, avoiding redundant CI jobs.

Signed-off-by: Ramon Roche <mrpollo@gmail.com>
2026-03-18 08:51:27 -07:00
Ramon Roche ef18ab735a build(boards/modalai/voxl2): chain SLPI build as prerequisite of default target
Add Makefile rules so that both `make modalai_voxl2` and
`make modalai_voxl2_default` build the SLPI DSP firmware first.
Add companion_targets file listing modalai_voxl2_slpi so CI knows
to exclude it from independent build groups.

Signed-off-by: Ramon Roche <mrpollo@gmail.com>
2026-03-18 08:51:27 -07:00
Ramon Roche 0cde8fda6f refactor(boards/modalai/voxl2): merge voxl2-slpi into voxl2 as board variant
Consolidate the VOXL2 SLPI (DSP) board from a separate directory into
the existing voxl2 board as a variant. Multi-processor SoCs like the
QRB5165 should use one board directory with multiple .px4board files
rather than separate directories per processor.

Changes:
- Add slpi.px4board (QURT/DSP) alongside default.px4board (POSIX/apps)
- Merge board_config.h with __PX4_QURT / __PX4_POSIX preprocessor guards
- Merge CMakeLists.txt with PX4_PLATFORM conditionals
- Split bus definitions into platform-specific files (i2c/spi_posix/qurt)
- Reorganize drivers into drivers/posix/ and drivers/qurt/ subdirectories
- Guard cmake/init.cmake and cmake/link_libraries.cmake for posix-only
- Update build and install scripts for new target names
- Delete boards/modalai/voxl2-slpi/ entirely

Build targets change:
- modalai_voxl2-slpi_default -> modalai_voxl2_slpi
- modalai_voxl2_default (unchanged)

Signed-off-by: Ramon Roche <mrpollo@gmail.com>
2026-03-18 08:51:27 -07:00
Ramon Roche 2a4d473ba4 ci(ros): use matching branch for px4-ros2-interface-lib (#26781)
Build all targets / Scan for Board Targets (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 / build (NO_NINJA_BUILD=1 px4_fmu-v5_default) (push) Has been cancelled
Checks / build (NO_NINJA_BUILD=1 px4_sitl_default) (push) Has been cancelled
Checks / build (check_format) (push) Has been cancelled
Checks / build (check_newlines) (push) Has been cancelled
Checks / build (module_documentation) (push) Has been cancelled
Checks / build (px4_fmu-v2_default stack_check) (push) Has been cancelled
Checks / build (px4_sitl_allyes) (push) Has been cancelled
Checks / build (shellcheck_all) (push) Has been cancelled
Checks / build (tests) (push) Has been cancelled
Checks / build (tests_coverage) (push) Has been cancelled
Checks / build (validate_module_configs) (push) Has been cancelled
Static Analysis / Clang-Tidy (push) Has been cancelled
MacOS build / build (px4_fmu-v5_default) (push) Has been cancelled
MacOS build / build (px4_sitl) (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
Docs - Crowdin - Upload Guide sources (en) / upload-to-crowdin (push) Has been cancelled
EKF Update Change Indicator / unit_tests (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
FLASH usage analysis / Publish Results (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 Mission Tests / build (push) Has been cancelled
MAVROS Offboard Tests / build (push) Has been cancelled
Nuttx Target with extra env config / build (px4_fmu-v5_default) (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 (map[ros_version:humble ubuntu:jammy]) (push) Has been cancelled
ROS Translation Node Tests / Build and test (map[ros_version:jazzy ubuntu:noble]) (push) Has been cancelled
SITL Tests / Testing PX4 iris (push) Has been cancelled
Sync ROS 2 messages to px4_msgs / sync_to_px4_msgs (push) Has been cancelled
* ci(ros): use matching branch for px4-ros2-interface-lib

When running on release branches, the ROS integration tests now
check if a matching branch exists in px4-ros2-interface-lib and
clone it instead of always using main. This prevents build failures
caused by uORB message divergence between main and release branches.

Fixes https://github.com/Auterion/px4-ros2-interface-lib/issues/184

Signed-off-by: Ramon Roche <mrpollo@gmail.com>

* ci(ros): dispatch release branch creation to px4-ros2-interface-lib

Add a standalone workflow triggered by the create event that fires a
repository_dispatch to Auterion/px4-ros2-interface-lib when a
release/X.Y branch is created. Also supports manual workflow_dispatch.

Signed-off-by: Ramon Roche <mrpollo@gmail.com>

* ci(ros): add empty permissions block to dispatch workflow

Fixes code scanning alert about missing GITHUB_TOKEN permissions.
This workflow only uses a PAT secret, not GITHUB_TOKEN, so no
permissions are needed.

Signed-off-by: Ramon Roche <mrpollo@gmail.com>

---------

Signed-off-by: Ramon Roche <mrpollo@gmail.com>
2026-03-18 07:49:36 -07:00
PX4BuildBot e7200d530b docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-18 12:44:01 +00:00
ttechnick e4fe5bbad5 chore(drivers): only start vtxtable when required 2026-03-18 13:36:44 +01:00
PX4BuildBot cdf26dd310 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-18 11:14:12 +00:00
ttechnick 177017e034 fix(drivers): do not accumulate invalid current 2026-03-18 12:05:58 +01:00
PX4BuildBot d91950ef10 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-18 10:46:09 +00:00
Silvan bb02ed9782 feat(rcS): do not exclude RC_* params from a reset
There are many settings falling into the RC_* category
that definitely should be reset when e.g. placing the autopilot
into a new airframe.
And even for RC calibration values: it's not the worst
if those are newly calibrated after a reset. Or if they
are not expected to change one can bake them into the
airframe file.

Signed-off-by: Silvan <silvan@auterion.com>
2026-03-18 11:38:32 +01:00
PX4BuildBot 35767730e4 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-18 10:07:02 +00:00
Jacob Dahl 8765275b5d refactor(msg): remove esc_address from EscReport 2026-03-18 10:52:59 +01:00
PX4BuildBot aeb71cc8b4 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-18 09:42:49 +00:00
Jacob Dahl f8f382a391 fix(control_allocator): add missing launch-lock rule items for servo types
PR #25799 added 'servo-launch-lock' to apply_identifiers (6 items) but
did not add a corresponding 6th entry to the 19 rule item arrays, causing
QGC to reject all servo-type rules with "unexpected num items expected: 6".
2026-03-18 10:34:08 +01:00
Jacob Dahl 0b956d9757 fix(airspeed_selector): remove @volatile from ASPD_SCALE params, add 3% save threshold
Remove the @volatile flag from ASPD_SCALE_1/2/3 so the estimated
airspeed scale persists across reboots and can be transferred between
vehicles of the same model. The scale is primarily determined by pitot
position on the airframe, not the individual sensor.

To avoid corrupting the param transfer hash with negligible changes
every flight, raise the save threshold from FLT_EPSILON to 3% relative
change, per dev-call consensus.

Supersedes #22760

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 10:30:12 +01:00
PX4BuildBot 298ea3ed60 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-18 09:07:39 +00:00
Jacob Dahl 7985d7e852 fix(cyphal): update public_regulated_data_types to fix deprecated .uavcan extension (#26756)
Update the opencyphal/public_regulated_data_types submodule to latest
master which renames all .uavcan files to .dsdl, eliminating ~456
Nunavut deprecation warnings per build.
2026-03-18 00:48:48 -08:00
PX4BuildBot 5ba00b0b43 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-18 08:45:43 +00:00
murata,katsutoshi 4ed7635abb fix(tunes): replace stray N command with trailing P in battery warning tunes(#20541)
The N after MB was parsed as "play note 0" (rest) rather than "Music Normal" mode, since M already consumed B. Replacing it with a trailing P matches the ERROR_TUNE pattern and provides an intentional inter-repetition pause at the correct tempo.
2026-03-18 00:39:03 -08:00
asimopunov dd7c47b7e3 fix(precland): use home position for precland altitude (#21260) 2026-03-18 00:32:35 -08:00
PX4BuildBot 0ac48b663c docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-18 08:11:31 +00:00
Eurus 305306ad1c fix(rtl_mission_fast_reverse): correct mission index assignment on activation (#26380)
After #25648, when performing RTL mission fast reverse, the vehicle would go to the waypoint before the previous one (i.e., two waypoints back). If the drone was already on its way to the first waypoint at that moment, it would even fly to the second waypoint first, and only then reverse back toward the takeoff point. This PR fixes that bug. #25648 was intended to address issues with NAV_CMD_CONDITION_GATE. The modification proposed in this PR also correctly bypasses NAV_CMD_CONDITION_GATE waypoints.
2026-03-18 00:04:44 -08:00
PX4BuildBot a8313ffb79 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-18 05:22:45 +00:00
Nick 5b1a0e7236 feat(drivers): silence TMP102 driver startup (#26776) 2026-03-17 21:15:30 -08:00
Jacob Dahl 45edfc1830 fix(docs): fix Python 3.8 SyntaxError in generate_msg_docs.py (#26788)
Line 319 used nested quotes inside f-strings, a feature only available
in Python 3.12+. The CI Docker image (px4-dev-base-focal:2021-08-18)
runs Python 3.8, causing the "msg file docs" Jenkins stage to fail on
every main build since 6bf73d9d89.

Extract the join expressions into local variables to restore
compatibility with Python 3.8+.
2026-03-17 21:07:42 -08:00
PX4BuildBot 6a238ef853 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-18 04:04:29 +00:00