Eric Katzfey
d2011e99b2
commander: add Open Drone ID arming check ( #21652 )
2023-06-01 07:52:52 +02:00
Patrick José Pereira
ca1d32a29d
HealthAndArmingChecks: Use snprintf over sprintf
...
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com >
2023-05-22 07:46:54 +02:00
AlexKlimaj
e375e02974
Add GPS spoofing state
2023-03-14 20:28:32 -04:00
Matthias Grob
132e9d2439
modeCheck: add warning when RC enabled but not present
2023-03-08 09:32:56 +01:00
Matthias Grob
7fa8dfe2d2
rcAndDataLinkCheck: always update manual control availability
...
and remove duplicate manual control check
possibly it needs to be readded to give warning
about RC enabled but not present.
2023-03-08 09:32:56 +01:00
Matthias Grob
f498b90c41
mode_requirements: add manual control for manual modes
2023-03-08 09:32:56 +01:00
Eric Katzfey
daa302cdbe
Changes to allow the commander module to be built and run on Qurt ( #21186 )
...
* Changed exclusion to rely on the definition of PX4_STORAGEDIR
2023-03-06 09:49:07 -05:00
Tony Samaritano
2b73b6df70
commander: fixes valid mag count in HIL
2023-03-01 08:05:23 +01:00
Silvan Fuhrer
006321e278
Commander: remove unused param COM_POS_FS_EPV
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-02-24 13:32:38 +01:00
Silvan Fuhrer
526e066d9a
Commander: rework GPS invalid warning to use estimator feedback instead of separate GPS quality thresholds
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-02-24 13:32:38 +01:00
Silvan Fuhrer
d9a4d1d5c4
Commander: use FW_AIRSPD_MAX as threshold for airspeed preflight checks
...
Check fails if airspeed reading is above FW_AIRSPD_MAX.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-02-01 20:43:38 -05:00
Silvan Fuhrer
32cab66c44
Commander: hide hint to param in low position accuracy event for end users
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-02-01 16:47:11 +01:00
Silvan Fuhrer
9b3a28dff5
Commander: add local_position_accuracy_low flag, incl. warning and RTL
...
Set this flag to true if local position is valid but accuracy low, such that
the operator can be warned before system switches to position-failure failsafe.
Additionally, switch to RTL if currently in Mission or Loiter to try to reach home
or fly out of GNSS-denied area.
Set low accuracy threshold to 50m by default for FW and VTOL.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-02-01 16:47:11 +01:00
Silvan Fuhrer
6d84da5cf1
Commander: add max flight time warning (starting at 90%)
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-02-01 08:48:09 +01:00
Beat Küng
b1709743f7
commander: add wind or flight time limit exceeded mode requirement
...
This prevents switching into any of these modes once the condition is set.
2023-02-01 08:48:09 +01:00
Hamish Willee
f25abbc80a
Fix magnetometer typo
2023-01-30 10:24:16 +01:00
Daniel Agar
bd9d09663f
commander: avoid uint64 timestamp implicit float conversions
...
- 64 bit time in microseconds stored in a 32 bit float quickly becomes problematic
- fixes https://github.com/PX4/PX4-Autopilot/issues/20944
2023-01-19 17:48:40 -05:00
Silvan Fuhrer
623c1418bb
Commander: improve messaging for vtol fixed-wing system failure arming check
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-01-13 19:02:21 +03:00
Silvan Fuhrer
303b879748
VTOL/Commander: rename transition_failsafe to vtol_fixed_wing_system_failure
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-01-13 19:02:21 +03:00
Beat Küng
5217bedd4b
commander: make SYS_HAS_MAG a count param and ensure system has N calibrated + enabled mags
2022-12-14 07:55:04 +01:00
Beat Küng
640f9cc801
commander: fix initialization order of _failsafe_flags
...
In this case it did not cause any problems.
Fixes a compiler warning:
/src/modules/commander/HealthAndArmingChecks/HealthAndArmingChecks.cpp:39:21: error: member ‘HealthAndArmingChecks::_failsafe_flags’ is used uninitialized [-Werror=uninitialized]
39 | _reporter(_failsafe_flags)
| ^~~~~~~~~~~~~~~
2022-11-14 11:27:23 +01:00
Damien SIX
5910f8982a
fix warning (mavlink): connection to gcs
2022-11-08 13:02:23 +01:00
Beat Küng
6511866408
fix commander: check that offboard_control_mode data is recent
...
This is a regression from https://github.com/PX4/PX4-Autopilot/pull/20172
2022-11-02 10:11:29 -04:00
Beat Küng
0996e5319f
commander: add preflight check for hardfault files on SD card
2022-11-02 09:59:00 -04:00
Daniel Agar
c32cf21b63
commander: estimator check shorten messages
...
- otherwise these are awkwardly split in mavlink
2022-10-25 08:02:47 +02:00
Daniel Agar
a7b909234b
commander: estimator nav test is not an arming check
2022-10-25 08:01:30 +02:00
Daniel Agar
309465858a
commander: elapsed time checks avoid subtracting unsigned integers
...
- avoid the possibility of unsigned underflow from subtracting two HRT timestamps (uint64_t)
- most of these aren't problematic, but people tend to replicate the pattern, so it's better to be safe
- likely wasn't a problem when people were using hrt_absolute_time() in place, but if using an existing timestamp there's the possibility it's older than a more recent topic update
2022-10-19 20:21:36 -04:00
Daniel Agar
e211e0ca0e
commander: limit some estimator checks to prearm
2022-10-19 19:06:56 -04:00
Matthias Grob
5ca28dd6dc
Use isAllFinite() in all places that check finiteness on entire vectors or matrices
2022-10-19 19:09:20 +02:00
Beat Küng
d542ffc10c
refactor vehicle_status_flags: rename to failsafe_flags
2022-10-13 16:05:25 -04:00
Beat Küng
38d3739b6d
refactor commander: rename rc_signal_lost -> manual_control_signal_lost, data_link_lost -> gcs_connection_lost
2022-10-11 22:31:20 -04:00
Beat Küng
acaa50a448
geofence: add and report reason for violation
2022-10-11 22:31:20 -04:00
mcsauder
ebc88afe46
Apply Google Style to Commander Private methods, rename geofence message geofence_violation to primary_geofence_breached.
2022-10-11 22:31:20 -04:00
Beat Küng
693af897b3
commander: check if battery was already disconnected on arming
...
If so, don't report.
Happens e.g. with USB powered pixhawk.
2022-10-11 22:31:20 -04:00
Beat Küng
24142bc014
commander: RcCalibrationChecks: avoid param access on each cycle
...
reduces cpu usage a bit
2022-10-11 22:31:20 -04:00
Beat Küng
6fda555cba
commander: move ownership of vehicle_status_flags_s to HealthAndArmingChecks
2022-10-11 22:31:20 -04:00
Beat Küng
e4bb219d10
vehicle_status_flags: cleanup message, move non-failsafe flags to vehicle_status
2022-10-11 22:31:20 -04:00
Beat Küng
455b885f86
commander: use new failsafe state machine and add user intention class
2022-10-11 22:31:20 -04:00
Beat Küng
82911e48be
fix commander: check estimator type & avoid timestamp wrap-around
...
Before it was possible that the publication timestamp was never than 'now',
leading to wrap-around.
2022-10-11 22:31:20 -04:00
Beat Küng
e8ac9b266b
px4events: add @skip-file tag
2022-09-22 09:42:39 -04:00
Daniel Agar
b45daac0e8
commander: fix angular velocity validity
...
- vehicle_angular_velocity timestamp can be newer than saved now
2022-09-09 09:14:09 -04:00
Beat Küng
43c5f14aa0
commander: update arming & health protocol, add modes to event hash
2022-09-01 17:07:23 -04:00
Beat Küng
295caaea60
events/enums.json: remove redundant manual_control_input
2022-09-01 17:07:23 -04:00
Beat Küng
dcb9b712bb
refactor commander: move vehicle control mode to ModeUtil
2022-09-01 17:07:23 -04:00
Beat Küng
f197c8884d
commander: move esc checks to arming check
2022-09-01 17:07:23 -04:00
Beat Küng
f17f38197d
commander: move estimator checks to arming check
2022-09-01 17:07:23 -04:00
Beat Küng
cfe3d793bf
commander: move battery handling into arming checks
2022-09-01 17:07:23 -04:00
Beat Küng
4c41934bb4
commander: inline HealthComponentIndex::HealthComponentIndex
...
Saves around 1KB flash
2022-08-25 22:02:15 -04:00
Beat Küng
13c93db11a
commander: use circuit breaker params directly in arming checks
2022-08-25 22:02:15 -04:00
Beat Küng
dbb814ff24
HealthAndArmingChecks: CONSOLE_PRINT_ARMING_CHECK_EVENT & reduce flash usage
...
- print list of events whenever they change if
CONSOLE_PRINT_ARMING_CHECK_EVENT is set, instead of on each update call
- reduce flash usage by moving out templated code into non-template method
2022-08-25 22:02:15 -04:00