Commit Graph
266 Commits
Author SHA1 Message Date
Peter BarkerandClaude Opus 5 4374aaa30a Blimp: remove EKF compass offset saving from disarm
This is now done for all vehicles by AP_Arming::disarm().

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-04 09:29:27 +10:00
Peter Barker f5ed5ffab0 Blimp: remove RCn_OPTION parameter conversion
Rewrote a stored RCn_OPTION of ARMDISARM_UNUSED (41) to ARMDISARM (153).
Added Sep-2021.

Blimp has no release tags, so unlike the other vehicles there is no
release which can be shown to contain the conversion, and a 4.3 migration
floor says nothing about a build made from master.  This removal takes
the floor to mean that a Blimp older than the whole 4.3 cycle is out of
scope for migration, the same as it is for every other vehicle.

A stored 41 which survives becomes an unhandled auxiliary function and
does nothing, which is the same outcome as any other option number this
firmware does not know.
2026-09-01 20:49:36 +10:00
Peter Barker 32af79d9ea Blimp: annotate RCn_OPTION parameter conversion
The ARMDISARM_UNUSED to ARMDISARM rewrite of stored RCn_OPTION values had
no annotation: it calls set_and_save() directly rather than going through
an AP_Param::convert_* helper, so an audit anchored on those helpers did
not see it.

Blimp has no release tags, so the release cannot be established by
content the way it is for the other vehicles.  The annotation names the
cycle it was added in instead: Sep-2021, which is 4.2.  No functional
change.
2026-08-31 08:18:26 +10:00
Iampete1 0ce983a9e2 Blimp: include 0 in param range for filter index 2026-08-22 21:38:02 +01:00
Peter Barker f1f46ebb56 Blimp: use bool-returning AP_AHRS::get_wind
Moves off the Vector3f-returning wind_estimate() method.  Blimp uses
the success of airspeed_vector_TAS() to decide whether it has a usable
wind estimate; that is left alone here, so no functional change.
2026-07-28 13:48:28 +10:00
Peter Barker 0f8fd2b137 Blimp: remove EKF-reset checks as AP_AHRS now does required logging 2026-07-15 08:07:55 +10:00
Peter Barker 04c613bc65 Blimp: remove special handling of primary core index change
this is now an attitude reset counter and handled internally in the AHRS
2026-06-30 15:50:15 +10:00
Michelle Rossouw 744d5e1378 Blimp: Add motor blimp support and waypoint navigation 2026-06-02 17:46:27 +10:00
Peter Barker ab778e9861 Blimp: call check_latlng in location_from_command_t
.... rather than in each caller to it
2026-05-20 18:50:29 +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 Barker ef2c4f55fc Blimp: adjust for EKF2 shim 2026-05-05 09:52:15 +10:00
Peter Barker 23433dc612 Blimp: adjust for AP_AHRS_NavEKF3 shim 2026-05-05 09:52:15 +10:00
Peter Barker 53d3f11aab Blimp: remove inertialnav instantiation
no longer required
2026-04-30 08:35:58 +10:00
Peter Barker 07bafbcfac Blimp: be consistent in our ignoring of -Wbitwise-instead-of-logical
makes this the same as Copter and the base AP_Arming library
2026-04-25 18:10:21 +10:00
Peter Barker a26c2b5e3a Blimp: always check result value of AP_AHRS::get_location 2026-04-15 16:43:45 +10:00
Thomas Watson 96e5a474f5 Blimp: make flight mode parameters into array
This removes the need for the pointer to the first flight mode, and
removes the undefined behavior resulting from indexing past that first
flight mode and hoping the others follow (though this is unlikely to
pose a problem in practice).

Saves a few bytes of RAM and flash as the pointer is no longer needed
and code is no longer necessary to set it up.

Also fixes the bounds check condition of that array to match its size so
there is no longer the possibility of indexing one past it.
2026-04-13 12:50:48 +01:00
Hunter McClelland 6e8878b384 Blimp: add unit suffix to crosstrack_error_m() 2026-03-31 20:22:23 +11:00
Peter BarkerandClaude Sonnet 4.6 888be3ba01 Blimp: use MAVLink PID_TUNING_AXIS enum values in send_pid_tuning
The PID_SEND enum values (1-8) were being passed directly as the
MAVLink axis field, conflicting with both the defined PID_TUNING_AXIS
range (1-6) and Rover's use of values 7-11.

Map each internal PID_SEND index to its proper wire value:
- VELX/VELY → PID_TUNING_VEL_NORTH/EAST (10-11)
- VELZ       → PID_TUNING_VEL_DOWN (12)
- VELYAW     → PID_TUNING_YAW (3), consistent with other vehicles
- POSX/POSY  → PID_TUNING_POS_NORTH/EAST (13-14)
- POSZ       → PID_TUNING_POS_DOWN (15)
- POSYAW     → PID_TUNING_YAW_ANGLE (16)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-25 18:33:47 +11:00
Peter Barker bd3f918857 Blimp: use 'static constexpr' in place of 'static const'
saves bytes.  Ram and flash
2026-03-21 10:32:55 +11:00
Peter Barker 967f678b45 Blimp: factor send_position_target_global_int up into GCS_MAVLink 2026-03-20 12:50:04 +11:00
Randy Mackay 6973c72490 Blimp: version to 4.8.0-dev 2026-03-08 09:01:21 +09:00
Peter BarkerandClaude Sonnet 4.6 6a784fd2f4 Blimp: fix WIND.speed to report ground-plane speed only
WIND.speed field specifies "Wind speed in ground plane" (horizontal
component only). Use wind.xy().length() instead of wind.length() to
exclude the vertical component. Same fix applied to high_latency_wind_speed().

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-01 08:30:34 +11:00
Randy Mackay d58cd21619 Blimp: integrate ANGLE_MAX move to ATC 2026-01-28 08:45:12 +11:00
Peter Barker bbbdb8463d Blimp: move terrain handling up into GCS_MAVLink common 2026-01-27 10:20:58 +11:00
Thomas Watson adbf16ff16 Blimp: use QGroundControl-like mode names
GroundControl now uses these names directly through MAVLink
AVAILABLE_MODES. Update them to match the other vehicles.

QGC does not have a hardcoded list so we just make them nicer for users
rather than matching that list.

They are also used in other status messages so those messages will
change slightly too.
2026-01-19 18:42:48 -05:00
Thomas Watson 41b46bf804 Blimp: turn ARMING_CHECK into ARMING_SKIPCHK
This lowers the effort required to turn off just one arming check.
Previously, a user had to disable the ALL bit and enable every check
except the undesired one. Now they can just disable that one directly.
Hopefully this will result in less vehicles with no arming checks
whatsoever, presuming only one check is giving the user grief.

This, as a side effect, removes the difference between the ALL bit set
and all non-ALL bits set (e.g. the latter disables IMU heater checks).
It also ensures the user will get any new arming checks even if they
have skipped one.

People who need to disable all current and future checks for e.g. bench
testing can still do this efficiently by setting the parameter to `-1`,
leveraging that this sets all bits in 2s complement arithmetic.

A parameter conversion is included that skips no checks if the old ALL
bit is set; otherwise it migrates the user's selected checks. If no
checks were enabled, it disables all current and future checks.
2025-12-04 11:52:13 -06:00
Peter Barker 00f06c653c Blimp: rename airspeed methods on AHRS to include EAS or TAS
mixing these up has caused confusion in the past.

"estimate" could also be confused as to mean "synthetic", when it will often come from a sensor.
2025-11-17 18:46:52 -06:00
Marek S. Łukasiewicz d1a5f5aa4e Blimp: Support RC_FS_TIMEOUT parameter
Copter and Sub were already using it.
This changes the default timeout for Blimp from 500ms to 1000ms like
other vehicle types using this parameter.

The definition for FS_RADIO_TIMEOUT_MS in Blimp/config.h was removed
because it was its only usage in the codebase.
2025-11-11 15:07:29 +09:00
Peter Barker c65bfd2139 Blimp: has_valid_input is only true if we have ever seen RC input 2025-11-04 11:31:02 +11:00
Bob Long 9ff7b9c346 global: add Range to EKF failsafe param doc 2025-10-23 08:13:22 +11:00
Randy Mackay be53b5fde1 Blimp: removed unimplemented function headers 2025-09-24 07:12:15 +10:00
Peter Barker 522d6bd3e4 Blimp: avoid use of Location .alt field
various changes to avoid use of the Location .alt field, which should be private.

Introduces several new helper functions on Location to help with this
2025-07-22 17:46:53 +10:00
Peter Barker 3708936c62 global: correct shebang lines to refernce python3
also remove the odd encoding line which is not required in Py3
2025-07-22 10:45:57 +10:00
Peter Barker 0a9a0a7097 Blimp: move rudder arming up to RC_Channel 2025-07-08 08:28:31 +10:00
Peter Barker 1188fe2d38 Blimp: rename AHRS get_roll etc accessors to include _rad 2025-06-05 17:28:41 +10:00
Peter Barker a43049d7fb Blimp: remove get_filter_status from AP_InertialNav
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
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 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_parse) (push) Has been cancelled
test scripts / build (python-cleanliness) (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 blimp / autotest (sitltest-blimp) (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 plane / build (base) (push) Has been cancelled
test plane / build (clang) (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-quadplane) (push) Has been cancelled
test rover / build (base) (push) Has been cancelled
test rover / build (clang) (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 / build (base) (push) Has been cancelled
test sub / build (clang) (push) Has been cancelled
test sub / autotest (sitltest-sub) (push) Has been cancelled
test tracker / build (base) (push) Has been cancelled
test tracker / build (clang) (push) Has been cancelled
test tracker / autotest (sitltest-tracker) (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
2025-05-29 15:14:42 +10:00
Peter Barker 17fa089649 Blimp: add prearm check that system is initialised
not so much that we want the system to be initialised inasmuch that if we run the rest of the prearms when not initialised the system is likely to fall over
2025-05-28 18:10:34 +10:00
Peter Barker 26c15001cf Blimp: rename get_relative_position_NED_origin methods to include 'float'
can't have both postype and these methods, something has to shift names
2025-05-24 09:23:35 +09:00
Peter Barker 3f30092ad8 Blimp: remove pointless set of CH_6 RC deadzone
this was for Copter's transmitter-based-tuning code, which wasn't brought over in Blimp.
2025-05-22 17:52:00 +10:00
muramura 924e21f850 Blimp: Add units to the method that calculates the distance meter between WAYPOINTs 2025-05-12 11:37:04 +09:00
Peter Barker 100c089b5e Blimp: avoid compiler warnings from clang++ 2025-05-07 17:45:45 +10:00
Henry Wurzburg aa9370a219 Blimp: clear RC failsafe state if disables occurs while in RC failsafe 2025-05-06 10:03:06 +10:00
co63oc 5d1f504d24 Blimp: correct typos and mis-spellings 2025-05-04 23:36:45 +10:00
Peter Barker 1b166b8c85 Blimp: make ArmingChecks enum class AP_Arming::Check 2025-04-22 12:19:37 +10:00
Peter Barker 953457d5b8 Blimp: remove unused EKF_ORIGIN_MAX_DIST_M define
was part of some sanity checks that were removed as no-longer-required
2025-04-14 17:35:07 +10:00
Peter Barker 59e79a70ae Blimp: tweak MAV parameter names 2025-04-07 10:58:41 +10:00
Peter Barker b534d383ff Blimp: add parameter conversion for MAV parameters 2025-04-07 10:58:41 +10:00
Peter Barker 0525b0d73f Blimp: move telem_delay up into MAV_TELEM_DELAY 2025-04-07 10:58:41 +10:00
Peter Barker 198227090e Blimp: SYSID_MYGCS and enforce move up to GCS, change to MAV_MYGCS_ENFRCE 2025-04-07 10:58:41 +10:00
Peter Barker 38b7b063ae Blimp: move streamrate parameters to GCS_MAVLINK base class 2025-04-07 10:58:41 +10:00