Commit Graph

407 Commits

Author SHA1 Message Date
Andrew Tridgell 92a8964503 AP_Arming: display a warning if arming checks disabled when arming 2022-03-17 06:52:47 +11:00
Andrew Tridgell bd68dc6a51 AP_Arming: make mission checks virtual 2022-03-14 09:52:41 +11:00
Iampete1 ea442dae1e AP_Arming: don't arming check servo functions set to GPIO 2022-03-08 11:16:42 +11:00
Peter Barker 7f74714107 AP_Arming: include cleanups 2022-03-01 11:21:33 +11:00
Peter Barker e7e95f5990 AP_Arming: rename AP_AHRS::get_position to get_location 2022-01-25 10:47:22 +11:00
Josh Henderson f38c5d9c31 AP_Arming: add define AP_AIRSPEED_ENABLED 2022-01-19 18:21:32 +11:00
Peter Barker ee7e652367 AP_Arming: fix memory leak logging files at startup 2022-01-11 14:18:14 +11:00
Dr.-Ing. Amilcar do Carmo Lucas d7c2331664 AP_Arming: fix comment (NFC) 2022-01-06 09:15:54 +11:00
Shiv Tyagi 814e0f9cac AP_Arming: remove Driver_Type_MPPT_PacketDigital from CAN checks
we have removed AP_BattMonitor_MPPT_PacketDigital, hence this should be removed too
2021-12-17 20:24:25 +09:00
Andrew Tridgell 9e86629800 AP_Arming: log @SYS/storage.bin
this allows for reproduction of tricky issues involving the exact data
in storage
2021-12-15 08:01:38 +11:00
Andrew Tridgell a8eed76f61 AP_Arming: log @SYS/crash_dump.bin 2021-12-15 08:01:38 +11:00
Andrew Tridgell 5fe5d3a3d3 AP_Arming: support Benewake CAN 2021-11-30 09:49:20 +11:00
Peter Barker e1b32d16b7 AP_Arming: rename HAL_AP_FETTEC_ONEWIRE_ENABLED to AP_FETTEC_ONEWIRE_ENABLED 2021-11-24 12:01:22 +11:00
Peter Barker a729ba165e AP_Arming: move from ENABLE_SCRIPTING to AP_SCRIPTING_ENABLED 2021-11-15 20:27:40 +11:00
Peter Barker c153225ccf AP_Arming: ensure ENABLE_SCRIPTING is always defined 2021-11-15 20:27:40 +11:00
Iampete1 f7a788dc44 AP_Arming: add rc_in_calibration_check to manual_transmitter_checks and mandatory_checks 2021-11-02 10:05:07 +11:00
Andrew Tridgell 50f9d2601f AP_Arming: log key @SYS files on arming 2021-10-30 16:44:00 +11:00
Andy Piper 62825ee44f AP_Arming: convert APM_BUILD_COPTER_OR_HELI() to APM_BUILD_COPTER_OR_HELI 2021-10-26 11:42:12 +11:00
Peter Barker 2bffaef9ca AP_Arming: log whether disarm was forced 2021-10-20 19:45:58 +11:00
Andy Piper 73b0a212f7 AP_Arming: FFT prearm should not be dependent on INS prearm 2021-10-20 18:16:05 +11:00
Iampete1 55a6b731a8 AP_Arming: add min heater temp check 2021-10-19 11:16:45 +11:00
Gone4Dirt 4421e4a842 AP_Arming: Add APM_BUILD_Heli 2021-09-29 19:55:48 +10:00
Peter Barker d9844cc75a AP_Arming: rename GENERATOR_ENABLED to HAL_GENERATOR_ENABLED 2021-09-26 19:24:09 +10:00
Iampete1 1e5b9e487b AP_Arming: set force disarmed logging for all the nasty disarm reasons 2021-09-08 18:26:40 +10:00
Iampete1 7ada4a0d5a AP_Arming: logger: fail check if downloading logs 2021-09-08 17:38:48 +10:00
Iampete1 8d669f7616 AP_Arming: update primary GPS type 0 string 2021-09-01 17:51:31 +10:00
Iampete1 ce56bfe786 AP_Arming: check status and health of all GPS 2021-08-31 09:13:57 +10:00
Peter Barker 4ae3ad555d AP_Arming: add and use HAL_BUTTON_ENABLE 2021-08-25 19:03:42 +10:00
Peter Barker 5613610641 AP_Arming: remove redundant checks_to_perform check
This is identical to the check just above it
2021-08-23 08:51:38 +09:00
Iampete1 60e0f47918 AP_Arming: always check configured on copter and blimp 2021-08-18 18:30:51 +10:00
Peter Barker 2cf22112a2 AP_Arming: call fettec prearm checks 2021-08-13 16:22:37 +10:00
Iampete1 432793a18a AP_Arming: support scripting CAN driver 2021-07-27 09:04:17 +10:00
Andrew Tridgell d95f6c8c2f AP_Arming: added button arming check 2021-07-24 18:18:57 +10:00
Andrew Tridgell f91e995e98 AP_Arming: check pin arming_checks 2021-07-22 07:48:12 +10:00
Andrew Tridgell 587ce2fd62 AP_Arming: fixed arming checks for no baro 2021-07-08 07:56:51 +10:00
Michelle Rossouw c7e71874c3 AP_Arming: Add blimp param frame to rudder arming 2021-07-06 14:56:02 +10:00
Siddharth Purohit 8a062ab9a1 AP_Arming: place defines to omit parts that break HerePro build 2021-07-02 08:50:16 +10:00
Peter Barker d0dbfef2c2 AP_Arming: remove @Values from param metadata where @Bitmask exists 2021-06-23 18:37:34 +10:00
Tatsuya Yamaguchi fb682a61cb AP_Arming: add flight mode conflict check 2021-06-23 11:32:40 +10:00
Andy Piper 2e1368d8a7 AP_Arming: remove call to rcout->prepare_for_arming() 2021-06-22 09:55:27 +10:00
Siddharth Purohit 1d29619e51 Revert "AP_Arming: check for only first compass being disabled"
This reverts commit d343c569c2.
2021-06-02 17:10:19 +10:00
vierfuffzig 5e8e68344e AP_Arming: fix _CHECKS param description 2021-05-06 16:22:18 +10:00
Andy Piper 38ef81e9e9 AP_Arming: call rcout arming checks 2021-05-05 17:41:24 +10:00
Tom Pittenger fa14fd1cec AP_Arming: add MPPT PacketDigital driver 2021-04-28 19:22:53 -07:00
Randy Mackay d343c569c2 AP_Arming: check for only first compass being disabled
If only the first compass is disabled, users may expect other enabled compasses to be used but they won't be
2021-03-31 19:16:01 +11:00
Peter Barker f926c27470 AP_Arming: add LANDING arm/disarm method for Copter 2021-03-30 09:00:26 +09:00
Randy Mackay d53c8b1dd0 AP_Arming: skip checks if not HAL_PROXIMITY_ENABLED 2021-03-26 16:22:46 +09:00
bugobliterator 67be2ed4ba AP_Arming: add support for GPS_Backends to spew failure reasons 2021-03-12 16:32:36 +09:00
James O'Shannessy 0e73b7bce1 AP_Arming: Enable and Disable the fence when vehicle is armed/disarmed
AP_Arming: Use auto enable flag to arm fence only when armed (as per enum)

AP_Arming: Config defines are not available in AP_Arming

Since config definitions are not available in AP_Arming, we can still rely on singleton access of the AC_Fence object.

AP_Arming: Perform fence checks for all vehicles
2021-03-05 14:52:46 +11:00
Pierre Kancir 68a27e3b41 AP_Arming: use RC_CALIB_MIN_LIMIT_PWM and RC_CALIB_MAX_LIMIT_PWM 2021-02-10 18:48:06 +11:00
Andrew Tridgell 68526262b7 AP_Arming: don't allow arming during IMU temp cal 2021-01-21 13:09:21 +11:00
Peter Barker b229c552e6 AP_Arming: add do_disarm_checks boolean to disarm call
this creates symmetry between arming and disarming, at least as far as
the top-level arm() and disarm() calls are concerned.
2021-01-12 08:48:44 +09:00
Andrew Tridgell 943918d511 AP_Arming: added USD1 CAN 2021-01-01 17:29:54 +11:00
Andrew Tridgell fb84baf8a5 AP_Arming: added EFI_NWPMU 2021-01-01 17:29:54 +11:00
Peter Barker 840c386a33 AP_Param: add _FLAG to AP_PARAM_NO_SHIFT
Just for consistency with the other flags
2020-12-16 19:30:29 +11:00
Gone4Dirt 2dc684622e AP_Arming: Add support for AP_Generator frontend 2020-11-24 12:54:52 +11:00
giacomo892 470c00b6b2 AP_Arming: Fix compilation with OSD_PARAM_ENABLED not defined 2020-11-18 18:56:09 +11:00
Iampete1 36eb605de5 AP_Arming: fix aux auth arming check 2020-11-11 18:24:55 +11:00
Tom Pittenger 37c6622b96 AP_Arming: add arming check for ADSB 2020-11-04 16:22:47 +11:00
Andre Kjellstrup e5ffc834e9 AP_Arming: Parameter check is not unused 2020-11-02 13:41:57 +11:00
Andy Piper 2c19152644 AP_Arming: arming check for osd menu 2020-09-09 20:36:42 +10:00
Siddharth Purohit 0fa6e2bbcc AP_Arming: move to using CANManager library 2020-08-19 17:31:09 +10:00
Peter Barker 6ab9089fff AP_Arming: add accessor to retrieve last disarm method 2020-08-05 16:26:19 +09:00
Mark Whitehorn 58463e67c5 AP_Arming: default throttle pre-arm check to enabled 2020-08-04 10:26:45 +10:00
murata dbb19dd402 AP_Arming: Shorten the distinguished name.
AP_Arming: AP_Arming: Shorten the distinguished name.
2020-07-28 09:09:27 +09:00
Mark Whitehorn 285f16e829 AP_Arming: add pre-arm check for VTOL manual forward throttle 2020-07-07 08:37:46 +10:00
Peter Barker fce9046dcf AP_Arming: add generator checks 2020-07-03 08:21:42 +09:00
Henry Wurzburg 9d86a3e2ef AP_Arming: fix parameters appearing in wiki param list erroneously 2020-06-30 16:24:19 +10:00
Michael du Breuil e02145efa0 AP_Arming: Use control_in rather then in_trim_dz() to cope with override only vehicles 2020-06-23 09:33:30 +10:00
Peter Barker 8fd50dd66e AP_Arming: rename 'enum aux_switch_pos_t' to 'enum class AuxSwitchPos' 2020-06-12 08:11:46 +10:00
mmk0102 22d052b711 AP_Arming: check for duplicate auxswitch options 2020-06-02 09:43:31 +10:00
Andy Piper fab8168f5c AP_Arming: allow FFT to report failure reason. allow FFT check to be disabled.
document FFT arming check and make sure the appropriate side effect happens regardless
2020-05-24 07:43:34 +10:00
Peter Barker 70a9abfaff AP_InternalError: emit stringification of internal errors 2020-05-06 13:23:15 +10:00
Peter Barker 75514dfdfe AP_Arming: emit stringification of internal errors 2020-05-06 13:23:15 +10:00
Peter Barker b38d2c6194 AP_Arming: regularise CAN pre-arm failure messages
AP_Arming tacks on the sub-system bit.

Remove PiccoloCAN's silly nullptr check

Require the library to supply the failure message (no default message)

Remove default cases so authors know to think about places they should
add things.
2020-05-05 11:27:53 +10:00
Tatsuya Yamaguchi de854a2ffe AP_Arming: pre-arm check for disarm aux switch 2020-05-05 10:09:30 +09:00
Peter Barker 119eef9954 AP_Arming: create and use INTERNAL_ERROR macro so we get line numbers 2020-04-30 13:21:36 +10:00
Tatsuya Yamaguchi c4fe6fce1c AP_Arming: make RC check message clearer 2020-04-24 10:52:33 +09:00
murata 2af70f5e60 AP_Arming: Display mag field value 2020-04-21 10:51:48 +09:00
Randy Mackay 1b1687f43d AP_Arming: integrate visual odometry pre_arm_check 2020-04-09 19:41:08 +09:00
Michael du Breuil 73c5c2e1bb AP_Arming: Check that sticks are neutral 2020-04-07 14:01:12 -07:00
Siddharth Purohit 575ac9224e AP_Arming: fix error unannotated fall-through between switch labels 2020-04-01 17:10:36 +11:00
Peter Barker a32e54ea17 AP_Arming: correct toymode compilation for recent disarm-reason changes 2020-03-03 21:56:33 +09:00
Randy Mackay 05a8e34d5c AP_Arming: support auxiliary authorisation 2020-02-25 19:55:54 +09:00
Randy Mackay df8bf27a7f AP_Arming: get_enabled_checks returns uint32_t 2020-02-25 19:55:54 +09:00
Peter Barker 4d0c61970d ArduSub: log disarm method 2020-02-22 12:16:29 +11:00
Peter Barker 7b9cdd6d06 AP_Arming: log disarm method 2020-02-22 12:16:29 +11:00
Andy Piper 7663c67eec AP_Arming: gyrofft arming checks 2020-02-22 11:15:37 +11:00
Siddharth Purohit 7da331535c AP_Arming: add arming message for compass not detected but assigned 2020-02-19 13:59:53 +09:00
Siddharth Purohit 653fad44d4 AP_Arming: Primary Compass is always at serial# 0 2020-02-19 13:59:53 +09:00
Peter Barker 62c0078d5f AP_Arming: move logging of armed/disarm events into AP_Arming base class 2020-01-14 11:39:36 +11:00
Peter Barker 3b8a2fb262 AP_Arming: log arming 2020-01-14 11:39:36 +11:00
Andy Piper c16c60a761 AP_Arming: add camera arming checks 2019-12-30 13:02:04 +11:00
Oliver Walters 2e0d2e2db0 AP_Arming: added support for Piccolo CAN ESCs 2019-12-22 09:48:40 +11:00
Peter Barker b3f87768e2 AP_Arming: tpyo fix in parameter documentation 2019-12-05 12:17:06 +08:00
Randy Mackay 356ece6682 AP_Arming: add pre-arm system check that scripting init succeeded 2019-12-03 12:48:32 +08:00
Randy Mackay 4bcf66481f AP_Arming: add mandatory_checks
These are checks that can never be bypassed
2019-12-03 08:06:39 +08:00
Randy Mackay f71e55e368 AP_Arming: add mission and rangefinder to param desc 2019-11-19 10:16:25 +11:00
Randy Mackay b796ac93f0 AP_Arming: add terrain init check to system checks 2019-11-19 10:16:25 +11:00
Peter Barker 64281eee60 AC_Arming: adjust for proximity status namespace change 2019-10-31 11:58:15 +08:00
Peter Barker f4433773be AP_Arming: adjust for rename of AP_UAVCAN_Server to AP_UAVCAN_DNA_Server 2019-10-25 20:24:54 +11:00
Siddharth Purohit 9b2c060cc5 AP_Arming: add support for reporting UAVCAN Server errors 2019-10-19 09:55:38 +11:00
Peter Barker 5428d13502 AP_Arming: remove bogus ARMING_CHECK_NONE 'bitmask value'
This looks like a bitmask value, but if you treat it like one (and
people have in the past!) by using logical operations then you get the
incorrect result.

Places which were checking for equivalence to ARMING_CHECK_NONE now
simply check the bitmask to see if it is all-empty.
2019-10-08 10:31:07 +11:00
Michael du Breuil d8bce8295e AP_Arming: Directly include needed headers 2019-08-28 13:13:03 +10:00
Randy Mackay 2bfc26621a AP_Arming: resolve check_failed compiler warning 2019-08-08 12:53:51 +09:00
Peter Barker 95b8c12454 AP_Arming: mark check_failed as taking a format string 2019-08-05 14:18:05 +10:00
Michael du Breuil 4396540a22 AP_Arming: Add rangefinder checks 2019-07-30 10:42:16 +10:00
Michael du Breuil 4b2cb45ac0 AP_Arming: Cope with new AP_GPS::first_unconfigured_gps 2019-07-30 10:12:43 +10:00
Michael du Breuil 5d3cfcb59c AP_Arming: Add scripting method 2019-07-23 10:05:29 +09:00
Peter Barker bca411b2c4 AP_Arming: reduce length of internal errors errorstring prefix
MissionPlanner's HUD requires a short string for this to be useful
2019-07-12 18:39:06 +10:00
Peter Barker 84eff51539 AP_Arming: remove stray comment on removed parameter
Almost certainly a rebase issue
2019-07-02 10:03:41 +10:00
Michael du Breuil eeca59d1ef AP_Arming: Include needed AP_Baro.h 2019-06-27 14:56:21 +10:00
Andrew Tridgell 8fc8bc4d84 AP_Arming: notify logging system of an arming failure 2019-06-21 11:40:53 +10:00
Michael du Breuil c70107cabb AP_Arming: Fix AP_GPS.h include 2019-06-18 10:02:05 +10:00
Peter Barker bb14ec1a2c AP_Arming: make proximity sensor checks common 2019-06-04 08:45:34 +09:00
Peter Barker 1c4b5b0d73 AP_Arming: move arm status statustext messages back into vehicles
Not all vehicle maintainers like having these emitted as part of normal
operations.
2019-05-30 07:37:30 +09:00
Peter Barker 61a2be1470 AP_Arming: change arm and disarm to account for Copter now using them 2019-05-30 07:37:30 +09:00
Peter Barker 84b16ea3dd AP_Arming: move check for ARMING_CHECK_NONE back into relevant vehicles
Plane and Rover allow all prearm and arm checks to be bypassed with
ARMING_CHECK_NONE.  Not all vehicles allow this, so move this bypass
back into Plane and Rover.
2019-05-30 07:37:30 +09:00
Peter Barker aff6cb424f AP_Arming: move Log_Write_Arm_Disarm in, make disarm virtual 2019-05-30 07:37:30 +09:00
Peter Barker d384827291 AP_Arming: add singleton 2019-05-30 07:37:30 +09:00
Peter Barker 776c111d3c AP_Arming: do not permit arming if any internal errors have occured 2019-04-25 13:05:18 +10:00
Peter Barker 45ebbf2877 AP_Arming: correct check against ARMING_CHECK_NONE
As opposed to all of the other ARMING_CHECK values this one isn't
actually a mask
2019-04-25 13:05:18 +10:00
Andrew Tridgell 9c6c4101c9 AP_Arming: make arm_checks() virtual
# Conflicts:
#	libraries/AP_Arming/AP_Arming.h
2019-04-22 16:53:35 +10:00
Pierre Kancir 6397cb0c0e AP_Arming: use get_distance instead of location_diff 2019-04-08 08:00:52 -07:00
Michael du Breuil 63fcd23f7b AP_Arming: Include AP_Logger directly 2019-04-05 20:12:53 +11:00
Tom Pittenger 4178ef98ba AP_Arming: rename dataflash to logger 2019-03-28 16:40:57 +11:00
Peter Barker 0dacf78c12 AP_Arming: use enum class for ArmingMethod and ArmingRequired 2019-03-12 19:48:14 +11:00
Peter Barker 7bdd2eb755 AP_Arming: move checking of fence up 2019-03-08 08:57:27 +09:00
Peter Barker 12981b1f07 AP_Arming: correct use of failure messages as format strings
This is important as if the returned string happens to contain
substitutions (%s in particular), we can attempt to pull random data
off the stack and incorporate it in the string.

This sort of bug is rather famous for serious explots in sendmail.

This could be bad if your stack is relatively full and the memory after
it is inaccessible.
2019-03-07 14:44:26 +11:00
Randy Mackay 26fd334882 AP_Arming: provide better feedback on attitude check 2019-03-07 09:34:39 +09:00
Randy Mackay b805c40bf7 AP_Arming: add ahrs attitude check 2019-02-22 13:00:07 +09:00
Randy Mackay 72fabb5cd3 AP_Arming: always run compass calibration checks 2019-02-22 13:00:07 +09:00
Tom Pittenger 13f0ad8a1c AP_Arming: unify singleton naming to _singleton and get_singleton() 2019-02-10 19:09:58 -07:00
Nigel Williams b2c5d7f04a AP_Arming: Make logging check consider "turned off" as valid
When ARMING_CHECKS has ARMING_CHECK_LOGGING, consider having no
logging backend to be valid.
2019-01-30 19:12:01 +11:00
Michael du Breuil 1b2b7385a2 AP_Arming: Reduce header scope, remove width specifier 2019-01-25 09:47:17 +09:00
Peter Barker 6fc76a32af GLOBAL: use AP::logger() and strip redundant Log_ from methods 2019-01-18 18:08:20 +11:00
Peter Barker b47733142f GLOBAL: rename DataFlash_Class to AP_Logger 2019-01-18 18:08:20 +11:00
Francisco Ferreira de1d02d697
AP_Arming: support KDECAN 2019-01-18 00:57:33 +00:00
Michael du Breuil c4ff1f4307 AP_Arming: Allow disarming to force the safety switch 2019-01-15 08:59:25 +11:00
Pierre Kancir 1bd9b61bf6 AP_Arming: const correctness 2019-01-11 08:38:53 +09:00
Pierre Kancir dd2798d099 AP_Arming: remove unused parameter and variable 2019-01-11 08:38:53 +09:00
Pierre Kancir 0800f72377 AP_Arming: untangle header inclusion 2019-01-11 08:38:53 +09:00
Michael du Breuil c3de3cc923 AP_Arming: Add checks that the mission contains expected items 2019-01-08 10:39:50 +11:00
Michael du Breuil ad01d345d1 AP_Arming: Fix badly formatter airspeed message 2018-12-18 10:11:22 +11:00
Randy Mackay e702ca7202 AP_Arming: resolve compiler warning 2018-11-14 20:40:46 +09:00
Michael du Breuil e56f12b68e AP_Arming: Add servo voltage check, paramertise the Vcc check 2018-11-12 23:29:04 +00:00
Andrew Tridgell 8d5b9521ad AP_Arming: added IOMCU health check 2018-11-07 07:35:45 +11:00
Peter Barker 21eacc5e31 AP_Arming: account for snprintf now null-terminating strings 2018-10-21 07:54:30 +11:00
Andrew Tridgell b1928d959b AP_Arming: fixed build warnings 2018-10-17 12:54:22 +11:00
Michael du Breuil a8741f62f9 AP_Arming: Use AP_BattMonitor's arming checks for the battery 2018-10-09 00:44:46 +01:00