Commit Graph
72016 Commits
Author SHA1 Message Date
Andy Piper 622246c641 Tools: add autotest for EKF bootstrap reset aux function 2026-05-13 18:04:37 +01:00
Andy Piper 76999e2ea5 RC_Channel: add EKF_RESET aux function for bootstrap reset
Add RCx_OPTION=187 (EKF_RESET) aux function that triggers a full EKF
bootstrap reset on HIGH, gated to fire only on state transition.
Sends GCS status message indicating whether the reset succeeded or
failed. Available for all vehicle types.

Gated by AP_AHRS_EKF_RESET_ENABLED compile-time option.
2026-05-13 18:04:37 +01:00
Andy Piper 14a413ea8a AP_AHRS: add reset_configured_backedn method for external EKF reset
Expose EKF3 bootstrap reset through the AHRS interface. Returns bool to
indicate success. Calls InitialiseFilterBootstrap() unconditionally when
EKF3 is available, regardless of active EKF type — if we've fallen back
to DCM due to EKF failure, that's exactly when a bootstrap reset is most
needed to force re-convergence.

Gated by AP_AHRS_EKF_RESET_ENABLED
2026-05-13 18:04:37 +01:00
Paul Riseborough 41744c884d AP_NavEKF3: Add function to do externally commanded reset
Add InitialiseFilterBootstrap() public method that clears statesInitialised
and re-runs bootstrap alignment on all cores.

Uses statesInitialised to check success rather than the per-core return
value which is false when the IMU delay buffer is not yet full.
2026-05-13 18:04:37 +01:00
Andy Piper 1be84b6dde AP_InertialSensor: tier Invensensev3 gyro bias override by variant
The v3 driver covers eight chips with a wide spread in ZRO
temperature coefficient. ArduPilot's startup gyro cal removes the
static ZRO, so the EKF clamp must bound the in-flight drift driven
mostly by temperature swing times the temp coefficient.

  ICM-42688-P, ICM-45686:  0.005 deg/s/C -> ~0.3 deg/s over 60C
  ICM-40609-D:             0.01  deg/s/C
  ICM-42670-P:             0.015 deg/s/C
  ICM-42605, IIM-42652:    0.02  deg/s/C -> ~1.2 deg/s over 60C
  IIM-42653:               0.04  deg/s/C -> ~2.4 deg/s over 60C

Applying radians(2.0) across the whole family was too tight for
IIM-42653 and marginal for the mid-tier parts. Tier the override:
the two very-low-drift parts keep radians(2.0)/1.0 deg/s, the
mid-tier parts get radians(3.0)/1.5 deg/s, and ICM-40605 (no
datasheet checked) plus IIM-42653 fall back to the base default.

Datasheets consulted: DS-000347, DS-000489, DS-000292, DS-000330,
DS-000451, DS-000440, DS-000529.
2026-05-13 18:29:03 +10:00
Andy Piper 9b16c49a96 Replay: handle RISJ messages
Pair with the new RISJ DAL message that carries per-instance gyro
bias metadata, so replay feeds it back into the DAL.
2026-05-13 18:29:03 +10:00
Andy Piper 97b5b0448a AP_DAL: move gyro bias metadata to new RISJ message
These fields are constant per-instance, so logging them in RISI
inflated the replay log on every frame and broke replay of logs
captured before this PR landed (RISI gained two floats).

Restore RISI to its original layout and add RISJ, which carries
gyro_bias_limit and gyro_bias_init_dps plus the instance and is
written only when changed via WRITE_REPLAY_BLOCK_IFCHANGED.

Seed _RISJ[] with the legacy defaults (0.5 rad/s clamp,
2.5 deg/s init) in the DAL constructor so replays of older logs
that have no RISJ messages still feed sane values to the EKF.
2026-05-13 18:29:03 +10:00
Andy Piper 2af1c28f73 AP_InertialSensor: query gyro bias metadata from backend, not cache
Drop the per-instance _gyro_bias_limit_rads / _gyro_bias_init_dps
arrays and the set_gyro_bias_metadata() helper. The values are
constants set by each backend, so the frontend now walks _backends[]
and calls the virtual accessor on the owning backend.

Move gyro_bias_limit_rads(), gyro_bias_init_dps(),
get_gyro_instance() and get_accel_instance() to the public section
of AP_InertialSensor_Backend so the frontend lookup can reach them.

Expand the Invensensev3 comment to name the eight v3 variants the
driver supports and explain why the 2 deg/s clamp and 1 deg/s init
uncertainty are conservative across all of them (they bound the
residual drift after ArduPilot's startup gyro calibration, not the
raw initial bias).
2026-05-13 18:29:03 +10:00
Andy Piper ca4f90798f AP_NavEKF3: read gyro bias limit and init uncertainty from DAL
getGyroBiasLimit() and InitialGyroBiasUncertainty() now read the
per-IMU values populated by AP_InertialSensor backends through the
DAL, instead of a hard-coded two-step switch on a low-drift boolean.
Drops the GYRO_BIAS_LIMIT and GYRO_BIAS_LIMIT_LOW_DRIFT defines from
AP_NavEKF3_core.h; the values now live in the backends.
2026-05-13 18:29:03 +10:00
Andy Piper cd1806c101 AP_DAL: add gyro bias metadata to INS DAL for EKF replay
Carry the per-IMU gyro bias state clamp (rad/s) and initial 1-sigma
bias uncertainty (deg/s) through the DAL so the EKF sees the same
per-IMU values during replay as it did in flight.  Replaces the
single boolean low-drift bit previously stored in RISI with the two
float values themselves, exposed as get_gyro_bias_limit() and
get_gyro_bias_init_dps() on AP_DAL_InertialSensor.
2026-05-13 18:29:03 +10:00
Andy Piper b55110ce2e AP_InertialSensor: store per-instance gyro bias metadata from backends
Some IMU families (e.g. Invensensev3) drift much more slowly than the
legacy default and can support both a tighter EKF gyro bias state clamp
and a smaller initial bias uncertainty.  Expose this via two virtuals
on the backend: gyro_bias_limit_rads() (rad/s, default 0.5) and
gyro_bias_init_dps() (deg/s, default 2.5), with Invensensev3 overriding
to radians(2.0) and 1.0 respectively.

Backends publish their values into per-instance frontend arrays via
set_gyro_bias_metadata() at registration time; the EKF reads them
through the DAL (see following commits).  The two values are kept
separate because they encode different beliefs: the limit is a
generous hardware-bounded clamp on the bias state, while the init
uncertainty is the realistic 1-sigma prior on the bias at filter
start, and the two are not derivable from each other for legacy IMUs.
2026-05-13 18:29:03 +10:00
Andy Piper 14c50614b6 AP_NavEKF3: add comment to GYRO_BIAS_LIMIT_LOW_DRIFT value 2026-05-13 18:29:03 +10:00
Andy Piper 1f302f2aae AP_NavEKF3: query low drift from DAL at runtime
Replace compile-time #if guards with runtime queries to
dal.ins().is_low_noise() for gyro bias limit and initial uncertainty.
Each EKF core now uses its own IMU's low noise flag, enabling
per-sensor behaviour and correct EKF replay.
2026-05-13 18:29:03 +10:00
Andy Piper 6c6fe7a536 AP_DAL: add low_drift flag to INS DAL for EKF replay
Add low_noise per-instance flag to log_RISI struct and expose
is_low_drift() on the DAL INS interface so the EKF can query it
through the DAL rather than directly from the sensor.
2026-05-13 18:29:03 +10:00
Andy Piper 9aa5fccd49 AP_InertialSensor: make low drift a per-instance runtime flag
Replace compile-time AP_INERTIALSENSOR_LOW_NOISE define with a runtime
per-instance bitmask set by IMU drivers. Add is_low_noise() accessor
on the frontend and set_low_noise() on the backend. Invensensev3
driver marks its instances as low noise during init.
2026-05-13 18:29:03 +10:00
Andy Piper 4ff1ff9292 AP_InertialSensor: move HAL_INS_LOW_NOISE to IMU config file 2026-05-13 18:29:03 +10:00
Andy Piper 89e27c8a69 AP_NavEKF3: reduce gyro bias learning limits when HAL_INS_LOW_NOISE 2026-05-13 18:29:03 +10:00
Andy Piper 6bb32d0ae8 AP_InertialSensor: add HAL_INS_LOW_NOISE 2026-05-13 18:29:03 +10:00
Andrew Tridgell 02f9d5b7dd Plane: match copter for logging periodic task rate
this allows much higher logging rates for the mavlink logging backend
2026-05-13 08:49:21 +10:00
Tatsuya Yamaguchi e2c1c24617 Rover: increase proximity update rate to 200Hz 2026-05-13 07:59:06 +10:00
Andrew Tridgell 4cae99d05d AP_Logger: change default LOG_MAV_RATEMAX to 10
this allows for operation (only just!) on a 1MBit link
2026-05-13 07:55:22 +10:00
Peter Barker eaf16b1870 AP_AHRS: SIM: derive matrix and eulers from rotated quaternion
.... also, the comment was *close* but misleading.  It was supposed to be "rotated by AP_AHRS::get_trim
2026-05-12 11:07:49 +10:00
Peter Barker bda3ea260f AP_AHRS: make retrieval of quaternion in AHRS consistent
this makes the estimator backends return the quaternion result in body frame, rather than having the AP_AHRS_Backend base class rotate it for only some of the backends.

Putting the result into vehicle body frame makes sense as the external hardware device may need to apply its own trim to its result if it is mounted at an angle.
2026-05-12 11:07:49 +10:00
Peter BarkerandClaude Sonnet 4.6 3a92dded1e AP_Mount: factor send_camera_information into base class
Move the common mavlink_msg_camera_information_send call into
AP_Mount_Backend::send_camera_information(), following the same pattern as
send_gimbal_device_attitude_status(). Backends supply their specific data
via virtual getter overrides: get_camera_vendor_name(), get_camera_model_name(),
get_camera_firmware_version(), get_camera_focal_length_mm(), get_camera_lens_id(),
and get_camera_cap_flags(). Backends suppress sending by leaving
has_camera_information() returning false (the base class default); backends
with a known camera override it to return true. Siyi's previous
!_fw_version.received guard is dropped — the message now sends with
fw_version=0 until the version is received.

Also fixes the misaligned parameter comments in Viewpro's send call (focal_length
was labelled as sensor_size_h), since there is now only one copy of those comments.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-12 08:46:03 +09:00
rishabsingh3003 b7272c3ebe Tools/Replay: include XKF5 and XKFA in EKF3 replay check 2026-05-12 09:44:27 +10:00
rishabsingh3003 c1111d31a2 AP_NavEKF3: decay AGL KF velocity to zero during rangefinder outage 2026-05-12 09:44:27 +10:00
rishabsingh3003 306d55abad AP_NavEKF3: add 2-state IMU-aided AGL Kalman filter for optical flow 2026-05-12 09:44:27 +10:00
Thomas Watson 7695157232 AP_NavEKF3: zero del vel bias states after covariance update
Avoids any risk of leaking state from the position variance reset, which
was formerly after this zeroing and would restore some non-zero states.
2026-05-12 09:37:00 +10:00
rishabsingh3003 ef884af3f1 AP_Arming: guard IMU consistency window so the macro can be set to 0 2026-05-12 09:34:22 +10:00
rishabsingh3003 32feaac515 AP_Arming: make accel and gyro consistency check happen together 2026-05-12 09:34:22 +10:00
Leonard Hall feb84ea854 Copter: fix altitude handling for Land and Payload Place
colcon build/test / build-test (push) Has been cancelled
Cygwin Build / build (push) Has been cancelled
ESP32 Build / build (esp32buzz, 10) (push) Has been cancelled
ESP32 Build / build (esp32s3empty, 10) (push) Has been cancelled
Macos Build / build (CubeOrange) (push) Has been cancelled
Macos Build / build (sitl) (push) Has been cancelled
pre-commit / ci (push) Has been cancelled
QURT Build / build (push) Has been cancelled
test ccache / build (10, chibios) (push) Has been cancelled
test chibios / build (CubeOrange-EKF2, 10, chibios) (push) Has been cancelled
test chibios / build (CubeOrange-ODID, 10, chibios) (push) Has been cancelled
test chibios / build (CubeOrange-PPP, 10, chibios) (push) Has been cancelled
test chibios / build (CubeOrange-bootloader, 10, chibios) (push) Has been cancelled
test chibios / build (CubeRedPrimary-bootloader, 10, chibios) (push) Has been cancelled
test chibios / build (MatekF405-Wing, 10, chibios) (push) Has been cancelled
test chibios / build (Pixhawk6X-PPPGW, 10, chibios) (push) Has been cancelled
test chibios / build (SOHW, 10, chibios) (push) Has been cancelled
test chibios / build (build-options-defaults-test, 10, chibios) (push) Has been cancelled
test chibios / build (configure-all, 10, chibios) (push) Has been cancelled
test chibios / build (fmuv2-plane, 10, chibios) (push) Has been cancelled
test chibios / build (fmuv3, 10, chibios) (push) Has been cancelled
test chibios / build (fmuv3-bootloader, 10, chibios) (push) Has been cancelled
test chibios / build (iofirmware, 10, chibios) (push) Has been cancelled
test chibios / build (new-check, 10, chibios) (push) Has been cancelled
test chibios / build (periph-build, 10, chibios) (push) Has been cancelled
test chibios / build (revo-bootloader, 10, chibios) (push) Has been cancelled
test chibios / build (revo-mini, 10, chibios) (push) Has been cancelled
test chibios / build (signing, 10, chibios) (push) Has been cancelled
test chibios / build (stm32f7, 10, chibios) (push) Has been cancelled
test chibios / build (stm32h7, 10, chibios) (push) Has been cancelled
test chibios / build (stm32h7-debug, 10, chibios) (push) Has been cancelled
test dds / build (sitl) (push) Has been cancelled
test dds / build (stm32h7) (push) Has been cancelled
test Linux SBC / build (bbbmini, armhf) (push) Has been cancelled
test Linux SBC / build (bebop, armhf) (push) Has been cancelled
test Linux SBC / build (bhat, armhf) (push) Has been cancelled
test Linux SBC / build (canzero, armhf) (push) Has been cancelled
test Linux SBC / build (erlebrain2, armhf) (push) Has been cancelled
test Linux SBC / build (navigator, armhf-musl) (push) Has been cancelled
test Linux SBC / build (navigator64, aarch64) (push) Has been cancelled
test Linux SBC / build (navio, armhf) (push) Has been cancelled
test Linux SBC / build (navio2, armhf) (push) Has been cancelled
test Linux SBC / build (pxf, armhf) (push) Has been cancelled
test Linux SBC / build (pxfmini, armhf) (push) Has been cancelled
test Linux SBC / build (t3-gem-o1, aarch64) (push) Has been cancelled
test replay / build (replay, base) (push) Has been cancelled
test replay / build (replay, clang) (push) Has been cancelled
test scripts / build (astyle-cleanliness) (push) Has been cancelled
test scripts / build (check_autotest_options) (push) Has been cancelled
test scripts / build (logger_metadata) (push) Has been cancelled
test scripts / build (param-file-validation) (push) Has been cancelled
test scripts / build (param_parse) (push) Has been cancelled
test scripts / build (python-cleanliness) (push) Has been cancelled
test scripts / build (shellcheck) (push) Has been cancelled
test scripts / build (validate_board_list) (push) Has been cancelled
test blimp / build (base) (push) Has been cancelled
test blimp / build (clang) (push) Has been cancelled
test copter / build (base) (push) Has been cancelled
test copter / build (clang) (push) Has been cancelled
test copter / build-gcc-heli (push) Has been cancelled
test ap_periph / build-gcc-ap_periph (push) Has been cancelled
test plane / build (base) (push) Has been cancelled
test plane / build (clang) (push) Has been cancelled
test rover / build (base) (push) Has been cancelled
test rover / build (clang) (push) Has been cancelled
test sub / build (base) (push) Has been cancelled
test sub / build (clang) (push) Has been cancelled
test tracker / build (base) (push) Has been cancelled
test tracker / build (clang) (push) Has been cancelled
test unit tests and sitl building / build (examples, base) (push) Has been cancelled
test unit tests and sitl building / build (examples, clang) (push) Has been cancelled
test unit tests and sitl building / build (sitl, base) (push) Has been cancelled
test unit tests and sitl building / build (sitl, clang) (push) Has been cancelled
test unit tests and sitl building / build (unit-tests, base) (push) Has been cancelled
test unit tests and sitl building / build (unit-tests, clang) (push) Has been cancelled
test blimp / autotest (sitltest-blimp) (push) Has been cancelled
test copter / autotest (sitltest-copter-tests1a) (push) Has been cancelled
test copter / autotest (sitltest-copter-tests1b) (push) Has been cancelled
test copter / autotest (sitltest-copter-tests1c) (push) Has been cancelled
test copter / autotest (sitltest-copter-tests1d) (push) Has been cancelled
test copter / autotest (sitltest-copter-tests1e) (push) Has been cancelled
test copter / autotest (sitltest-copter-tests2a) (push) Has been cancelled
test copter / autotest (sitltest-copter-tests2b) (push) Has been cancelled
test copter / autotest-heli (sitltest-heli) (push) Has been cancelled
test ap_periph / autotest-can (sitltest-can) (push) Has been cancelled
test plane / autotest (sitltest-plane-tests1a) (push) Has been cancelled
test plane / autotest (sitltest-plane-tests1b) (push) Has been cancelled
test plane / autotest (sitltest-plane-tests1c) (push) Has been cancelled
test plane / autotest (sitltest-quadplane) (push) Has been cancelled
test rover / autotest (sitltest-balancebot) (push) Has been cancelled
test rover / autotest (sitltest-rover) (push) Has been cancelled
test rover / autotest (sitltest-sailboat) (push) Has been cancelled
test sub / autotest (sitltest-sub) (push) Has been cancelled
test tracker / autotest (sitltest-tracker) (push) Has been cancelled
test Linux SBC / build (linux, base) (push) Has been cancelled
2026-05-11 20:11:10 +10:00
Hunter McClelland 1f6a2f8bb0 SITL: Use Celsius units for battery temperature 2026-05-11 13:11:56 +10:00
Hunter McClelland bfe6bbecd9 SITL: Battery to reuse computed delta-time in temperature calc 2026-05-11 13:11:56 +10:00
Iampete1 fbc77bc454 Copter: AutoYaw: ensure weathervane exit code path is always hit
colcon build/test / build-test (push) Has been cancelled
Cygwin Build / build (push) Has been cancelled
ESP32 Build / build (esp32buzz, 10) (push) Has been cancelled
ESP32 Build / build (esp32s3empty, 10) (push) Has been cancelled
Macos Build / build (CubeOrange) (push) Has been cancelled
Macos Build / build (sitl) (push) Has been cancelled
pre-commit / ci (push) Has been cancelled
QURT Build / build (push) Has been cancelled
test ccache / build (10, chibios) (push) Has been cancelled
test chibios / build (CubeOrange-EKF2, 10, chibios) (push) Has been cancelled
test chibios / build (CubeOrange-ODID, 10, chibios) (push) Has been cancelled
test chibios / build (CubeOrange-PPP, 10, chibios) (push) Has been cancelled
test chibios / build (CubeOrange-bootloader, 10, chibios) (push) Has been cancelled
test chibios / build (CubeRedPrimary-bootloader, 10, chibios) (push) Has been cancelled
test chibios / build (MatekF405-Wing, 10, chibios) (push) Has been cancelled
test chibios / build (Pixhawk6X-PPPGW, 10, chibios) (push) Has been cancelled
test chibios / build (SOHW, 10, chibios) (push) Has been cancelled
test chibios / build (build-options-defaults-test, 10, chibios) (push) Has been cancelled
test chibios / build (configure-all, 10, chibios) (push) Has been cancelled
test chibios / build (fmuv2-plane, 10, chibios) (push) Has been cancelled
test chibios / build (fmuv3, 10, chibios) (push) Has been cancelled
test chibios / build (fmuv3-bootloader, 10, chibios) (push) Has been cancelled
test chibios / build (iofirmware, 10, chibios) (push) Has been cancelled
test chibios / build (new-check, 10, chibios) (push) Has been cancelled
test chibios / build (periph-build, 10, chibios) (push) Has been cancelled
test chibios / build (revo-bootloader, 10, chibios) (push) Has been cancelled
test chibios / build (revo-mini, 10, chibios) (push) Has been cancelled
test chibios / build (signing, 10, chibios) (push) Has been cancelled
test chibios / build (stm32f7, 10, chibios) (push) Has been cancelled
test chibios / build (stm32h7, 10, chibios) (push) Has been cancelled
test chibios / build (stm32h7-debug, 10, chibios) (push) Has been cancelled
test dds / build (sitl) (push) Has been cancelled
test dds / build (stm32h7) (push) Has been cancelled
test Linux SBC / build (bbbmini, armhf) (push) Has been cancelled
test Linux SBC / build (bebop, armhf) (push) Has been cancelled
test Linux SBC / build (bhat, armhf) (push) Has been cancelled
test Linux SBC / build (canzero, armhf) (push) Has been cancelled
test Linux SBC / build (erlebrain2, armhf) (push) Has been cancelled
test Linux SBC / build (linux, base) (push) Has been cancelled
test Linux SBC / build (navigator, armhf-musl) (push) Has been cancelled
test Linux SBC / build (navigator64, aarch64) (push) Has been cancelled
test Linux SBC / build (navio, armhf) (push) Has been cancelled
test Linux SBC / build (navio2, armhf) (push) Has been cancelled
test Linux SBC / build (pxf, armhf) (push) Has been cancelled
test Linux SBC / build (pxfmini, armhf) (push) Has been cancelled
test Linux SBC / build (t3-gem-o1, aarch64) (push) Has been cancelled
test scripts / build (astyle-cleanliness) (push) Has been cancelled
test scripts / build (check_autotest_options) (push) Has been cancelled
test scripts / build (logger_metadata) (push) Has been cancelled
test scripts / build (param-file-validation) (push) Has been cancelled
test scripts / build (param_parse) (push) Has been cancelled
test scripts / build (python-cleanliness) (push) Has been cancelled
test scripts / build (shellcheck) (push) Has been cancelled
test scripts / build (validate_board_list) (push) Has been cancelled
test copter / build (base) (push) Has been cancelled
test copter / build (clang) (push) Has been cancelled
test copter / autotest (sitltest-copter-tests1a) (push) Has been cancelled
test copter / autotest (sitltest-copter-tests1b) (push) Has been cancelled
test copter / autotest (sitltest-copter-tests1c) (push) Has been cancelled
test copter / autotest (sitltest-copter-tests1d) (push) Has been cancelled
test copter / autotest (sitltest-copter-tests1e) (push) Has been cancelled
test copter / autotest (sitltest-copter-tests2a) (push) Has been cancelled
test copter / autotest (sitltest-copter-tests2b) (push) Has been cancelled
test copter / build-gcc-heli (push) Has been cancelled
test copter / autotest-heli (sitltest-heli) (push) Has been cancelled
test ap_periph / build-gcc-ap_periph (push) Has been cancelled
test ap_periph / autotest-can (sitltest-can) (push) Has been cancelled
test unit tests and sitl building / build (examples, base) (push) Has been cancelled
test unit tests and sitl building / build (examples, clang) (push) Has been cancelled
test unit tests and sitl building / build (sitl, base) (push) Has been cancelled
test unit tests and sitl building / build (sitl, clang) (push) Has been cancelled
test unit tests and sitl building / build (unit-tests, base) (push) Has been cancelled
test unit tests and sitl building / build (unit-tests, clang) (push) Has been cancelled
2026-05-11 08:20:39 +09:00
Eric Katzfey faa316a07b AP_HAL_QURT: Change scheduler DEV_PRINTF to HAP_PRINTF
The scheduler has a nice diagnostic print for each task it creates. But that is
only needed on the DSP diagnostic display, not the console, so changing output
to only DSP diagnostic display.
2026-05-10 12:13:33 -05:00
Peter BarkerandClaude Haiku 4.5 c1170033f4 ArduSub: Remove inertial_nav
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-05-09 21:41:19 +10:00
Leonard HallandClaude Opus 4.7 c7dd43444b Tools: rename Callisto/freestyle model param files to .parm
These two model parameter files were the only ones in
Tools/autotest/models using the .param extension; every other model
parameter file in the tree uses .parm. Aligning their extension makes
them match the existing *.parm ROMFS embed glob without having to
extend it, and keeps the convention consistent across the directory.

Update the corresponding default_params_filename entries in
vehicleinfo.json to match the new filenames.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-09 21:15:32 +10:00
rishabsingh3003 d3a32025cd autotest: wait for home in Replay body-odom before takeoff
wait_ready_to_arm(require_absolute=False) returns as soon as the EKF
reports relative aiding, before the origin (and thus home) is set.
The GUIDED takeoff that follows needs an ABOVE_HOME -> ABOVE_ORIGIN
alt frame conversion, which silently fails when home is unset, so
MAV_CMD_NAV_TAKEOFF returns MAV_RESULT_FAILED.
2026-05-09 08:44:19 +10:00
rishabsingh3003 e080acb225 autotest: check TerrainLoiterToCircle altitude in terrain frame, not home 2026-05-08 08:45:28 +10:00
Peter Barker 472a668643 hwdef: regularise markdown headings
consistent headings across markdown files will allow us to make wide-spread mechanical changes to these as desired
2026-05-07 13:30:03 +10:00
Peter Barker a6419e502c autotest: ensure original mode restored after flip 2026-05-07 13:25:57 +10:00
Peter Barker 0e0a802e7a AP_DDS: fixes for static RC_Channel methods going away 2026-05-07 09:33:15 +10:00
Peter Barker be625b7d7a ArduCopter: adjust toymode for static methods going away 2026-05-07 09:33:15 +10:00
Peter Barker 6e9c6b263b AP_RCProtocol: adjust toymode for static methods going away 2026-05-07 09:33:15 +10:00
Peter Barker 6643254d1e AC_PID: adjust toymode for static methods going away 2026-05-07 09:33:15 +10:00
Peter BarkerandClaude Haiku 4.5 6ea8cfcef8 AntennaTracker: fixes for static RC_Channel methods going away
going via the static methods threw away the const-correctness so we need a bunch of non-const equivalents of several const methods

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-05-07 09:33:15 +10:00
Peter BarkerandClaude Haiku 4.5 fe1507714c ArduSub: fixes for static RC_Channel methods going away
going via the static methods threw away the const-correctness so we need a bunch of non-const equivalents of several const methods

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-05-07 09:33:15 +10:00
Peter BarkerandClaude Haiku 4.5 26894df8c2 ArduCopter: fixes for static RC_Channel methods going away
going via the static methods threw away the const-correctness so we need a bunch of non-const equivalents of several const methods

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-05-07 09:33:15 +10:00
Peter BarkerandClaude Haiku 4.5 8f112cb18a Blimp: fixes for static RC_Channel methods going away
going via the static methods threw away the const-correctness so we need a bunch of non-const equivalents of several const methods

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-05-07 09:33:15 +10:00
Peter BarkerandClaude Haiku 4.5 1a1898f51a Rover: fixes for static RC_Channel methods going away
going via the static methods threw away the const-correctness so we need a bunch of non-const equivalents of several const methods

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-05-07 09:33:15 +10:00