Commit Graph

49883 Commits

Author SHA1 Message Date
Matthias Grob
c6702ab176 docs(rover): fix rover simulation command 2026-05-21 13:47:04 +02:00
PX4BuildBot
e1befdea29 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-21 06:00:07 +00:00
sbenchabane
0eb14d64d5 fix(commander): refuse stale config_control_setpoints cache on activation
ModeManagement caches the most recent config_control_setpoints entry per
source_id (one per external mode) and reads it on every nav_state change
to decide which flight controllers to enable. The cache was read verbatim
regardless of when the entry was written, so a contract authored during
an earlier activation of the same mode -- e.g. a ground configuration that
disables all controllers, followed by re-entering the same mode in the
air -- briefly forced the new activation onto a controller configuration
intended for the previous one.

Stamp every cache write with the PX4-local receive time. On the first
updateControlMode() call for a new nav_state, refuse any cached entry
whose receive time predates the activation and publish the safe default
contract (every control loop enabled) instead, until a fresh entry arrives.
A single warning is emitted per activation when the fallback engages.
2026-05-21 07:53:03 +02:00
PX4BuildBot
9dd97c7c57 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-21 04:36:17 +00:00
Hamish Willee
54f262feaa docs(docs): Remove docs for ROS1 integration tests (#27421) 2026-05-21 14:28:31 +10:00
PX4BuildBot
1512a552f9 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-21 02:00:42 +00:00
Voltafield
2cea093fdb fix(sensors): af9838 minor code style and architecture updates (#27370)
* drivers: af9838 minor fixes and code style updates

* Update af9838_main.cpp

* Update af9838.cpp

* Update af9838.hpp
2026-05-20 19:53:20 -06:00
Jacob Dahl
ee002b1db6 fix(tools/uploader): handle USB CDC reconnect race during reboot (#27419)
After sending reboot-to-bootloader, the PX4 USB CDC node briefly
disappears while the bootloader re-enumerates. Reopening the serial
port can land on a half-broken descriptor and the next tcdrain()
raises termios.error (5, 'Input/output error'). That bare OSError
escaped every retry layer and crashed the uploader, even though a
manual re-run would succeed once enumeration settled.

Convert OSError/SerialException from flush() and reset_buffers() into
the module's ConnectionError, matching how send()/recv() already
behave, and let the identify retry loops in _try_identify also catch
ConnectionError so a single transient I/O hiccup doesn't abort the
upload.

Signed-off-by: Jacob Dahl <dahl.jakejacob@gmail.com>
2026-05-20 19:08:53 -06:00
PX4BuildBot
f094358bf0 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-20 21:33:24 +00:00
Eurus
72136d0b47 fix(mavlink): guard mission download completion (#27412)
Only apply the missing-ACK recovery while in SENDLIST.
2026-05-21 09:25:42 +12:00
PX4BuildBot
54cf213c7e docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-20 20:23:38 +00:00
Jorge Rios
31ebf1a681 Fix typo in Multi Vehicle Simulation description (#27417) 2026-05-20 14:16:00 -06:00
pmjnt
58b0009415 docs(compass): remove redundant CAL_MAGx_PRIO clarification (#27414)
The line "Priority is assigned automatically during calibration..."
added in #27393 duplicates information already conveyed by the
surrounding paragraph. Hamish flagged the redundancy in code review.

This PR was AI-assisted (Claude Code) and reviewed by a human
before submission.

Co-authored-by: _pmjn_ <pcminh170701@gmail.com>
2026-05-20 14:09:56 -06:00
Julian Oes
110be82e7d fix(Tools): add clarifying comment (#27403)
It wasn't clear to me why this merge_config.py was required. It is now
clear, so let me leave a comment.
2026-05-20 14:06:11 -06:00
PX4BuildBot
cfa3d6a3b9 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-20 17:39:57 +00:00
Hamish Willee
bf1e591aab fix(mavlink): Ensure COMMAND_INT handler (only) scales locations (#27335) 2026-05-21 05:24:56 +12:00
PX4BuildBot
3f6b663ed2 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-20 17:12:26 +00:00
Alexis Guijarro
25724b5244 fix(boards/3dr/ctrl-n1): board port fixes and driver corrections (#27405)
* fix(drivers/ak09940a): fix probe retry, devtype collision, and register naming

* fix(drivers/neopixel): check init return value and fix module name typo

* fix(boards/3dr/ctrl-n1): correct magnetometer i2c bus, LED indexing, chip variant for bootloader, and TIM3 conflict with srgbled_dma

* fix(boards/3dr/ctrl-n1): update bootloader for STM32H743VI
2026-05-20 11:04:29 -06:00
alexcekay
e3595fedf3 feat(manifest): add auterion CAN products 2026-05-20 14:19:23 +02:00
PX4BuildBot
79c164cf37 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-20 11:46:05 +00:00
Marco Hauswirth
6e9c71b036 fix(ekf2): reset gyro-bias-z-covariance on tryYawEmergencyReset to make recovering from wrong bias-estimate possible (#27327) 2026-05-20 13:39:00 +02:00
PX4BuildBot
ce23467822 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-20 09:22:05 +00:00
Alexander Lerach
c55e6677c0 feat(drivers): VectorNav option to select IMU rate and output port (#27318)
* feat: VectorNav option to select IMU rate and output port

* feat(docs): Clarify VectorNav wiring param

* Apply suggestion from @hamishwillee

* Apply suggestion from @hamishwillee

---------

Co-authored-by: Hamish Willee <hamishwillee@gmail.com>
2026-05-20 11:15:15 +02:00
PX4BuildBot
59cb543825 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-20 01:16:39 +00:00
Claudio Chies
ad0bce0bec Open feat(docs): remove old info on micro-xrce-dds-agent release snap version (#27394) 2026-05-20 11:09:21 +10:00
PX4 Build Bot
b102916009 docs(i18n): PX4 guide translations (Crowdin) - ko (#27309)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2026-05-20 11:01:56 +10:00
PX4 Build Bot
8abbb7cc1c docs(i18n): PX4 guide translations (Crowdin) - uk (#27310)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2026-05-20 11:01:40 +10:00
PX4 Build Bot
96a18c320e docs(i18n): PX4 guide translations (Crowdin) - zh-CN (#27311)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2026-05-20 11:01:30 +10:00
PX4BuildBot
8836bd6d3f docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-19 22:56:14 +00:00
pmjnt
bbb7fdc2d2 docs: clarify compass priority is set automatically (#27393)
Fixes Algora bounty: https://github.com/PX4/PX4-Autopilot/issues/19970

This PR was AI-assisted (Claude Code) and reviewed by a human
before submission.

Co-authored-by: pcminh <pham.cao.minh@talentnet.vn>
2026-05-19 16:48:26 -06:00
PX4BuildBot
9598f9f04b docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-19 18:24:57 +00:00
Alexis Guijarro
c59f208cc7 feat(boards): add support for 3DR Control N1 flight controller (#27395)
* fix(srgbled_dma): stm32_dmasetup now works with H7 boards

* feat(drivers/ak09940a): add AKM AK09940A magnetometer driver

* feat(boards/3dr/ctrl-n1)!: add 3DR Control-N1 flight controller

* fix(boards/3dr/ctrl-n1): macro replacement list is now enclosed in parentheses

* fix(boards/3dr/ctrl-n1): applying copyright changes

* fix(boards/3dr/ctrl-n1): removing serial console
2026-05-19 13:13:54 -05:00
PX4BuildBot
7a9642fe75 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-19 15:35:34 +00:00
alexcekay
a9862ce3e1 fix(driver): use correct device id for sht3x 2026-05-19 17:24:11 +02:00
PX4BuildBot
e2eef1e102 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-19 12:53:52 +00:00
Claudio Chies
228be72244 fix(build): enable gz sim 10 LTS(jetty) (#27391) 2026-05-19 14:46:58 +02:00
PX4BuildBot
e6b6e10f09 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-19 06:55:52 +00:00
Dimitris
d0439ebef8 fix(simulation): correct apparent wind sign and fixed-wing pitot model in SIH (#27376)
* fix(simulation): correct apparent wind sign and fixed-wing pitot model in SIH

* fix(simulation): simplify pitot model to always use body-x airspeed

---------

Co-authored-by: 0xDI <0xDI@users.noreply.github.com>
2026-05-19 08:48:36 +02:00
PX4BuildBot
9ca5cf388f docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-18 22:19:03 +00:00
Dimitris
edd44e21d6 fix(mavlink): check protocol timeout before GETLIST retry (#27377)
Co-authored-by: 0xDI <0xDI@users.noreply.github.com>
2026-05-19 10:11:39 +12:00
Dimitris
3cd7c3694a fix(build): add cubeorangeplus to px4io_update (#27375)
Co-authored-by: 0xDI <0xDI@users.noreply.github.com>
2026-05-19 10:03:00 +12:00
Jacob Dahl
0e573ec8d6 feat(afbrs50): add SENS_AFBR_ROT orientation parameter (#27385)
Add SENS_AFBR_ROT as the single source of truth for the AFBR-S50
mounting orientation and drop the -r CLI flag.

The -r flag was already non-functional: the getopt string declared
it without a trailing ':', so the case body called atoi(nullptr).
Removing it is harmless and avoids ambiguity between "user did not
pass -r" and "user explicitly passed -r 25".

The driver now reads orientation from SENS_AFBR_ROT in the
constructor. distance_sensor_s::ROTATION_* is a discontinuous enum
(0-7, 24, 25), and the param schema can't express that natively, so
the driver validates at start and falls back to ROTATION_DOWNWARD_FACING
on out-of-set values.
2026-05-18 15:56:28 -06:00
PX4BuildBot
cce1f8644d docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-18 21:45:51 +00:00
Himanshu
ccedd9d87e fix(drivers/distance_sensor/vl53l1x): map rangestatus to quality (#27308)
* fix(drivers/distance_sensor/vl53l1x): added median filtering and hysteresis based quality

* fix(drivers/distance_sensor/vl53l1x): revert back to 100/0 quality
2026-05-18 15:38:17 -06:00
Jacob Dahl
2d321addec feat(boards/ark): whitelist generic airframes on ARK FMU boards (#27384)
Vendor-specific airframes (Holybro, UVify, ATL, COEX, Bitcraze,
ThunderFly, Applied Aeronautics) are not relevant on the ARK FMU
boards and only consume flash. Add an rc.board_airframes whitelist
to ark_fmu-v6x and ark_fmu-v6s that keeps only the generic
multirotor, fixed-wing, VTOL, and rover frame types.

Flash savings (default variant):
  ark_fmu-v6x:  1965708 -> 1957772 B  (-7936 B,  free 372 -> 8308 B)
  ark_fmu-v6s:  1960212 -> 1945748 B  (-14464 B, free 8108 -> 22572 B)

Signed-off-by: Jacob Dahl <dahl.jakejacob@gmail.com>
2026-05-18 15:06:04 -06:00
PX4BuildBot
99c3b60566 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-18 20:02:48 +00:00
Eurus
68ba1e487a fix(navigator): check geofence dataman update failures (#27353)
* navigator: check geofence dataman update failures

* navigator: fix geofence import state handling

- Move the import success log after the dataman state write succeeds
- Store the active fence dataman id in the stats entry
- Add error logs before geofence import failure exits
2026-05-18 13:55:41 -06:00
PX4BuildBot
727e0cf5be docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-18 16:16:05 +00:00
Marco Hauswirth
5c7cc9b88e fix(commander): Only require a heading reference when a global origin is set (#27371) 2026-05-18 09:51:55 -06:00
PX4BuildBot
562bdda896 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-05-18 15:48:30 +00:00