Beat Küng
e018bd09da
WIP commander+mavlink: implement MAVLink standard modes
...
# Conflicts:
# src/modules/mavlink/mavlink
2023-05-10 11:29:30 +02:00
Beat Küng
66d5315e8f
commander: add config overrides
2023-05-10 11:29:30 +02:00
Beat Küng
c99330e6db
commander: add VEHICLE_CMD_SET_NAV_STATE internal command
2023-05-10 11:29:30 +02:00
Beat Küng
af62227a83
commander: implement external modes and mode executors
2023-05-10 11:29:29 +02:00
murata,katsutoshi
4bb4bc185b
commander: level calibration delete unused SENS_BOARD_ROT param access
2023-04-30 21:36:43 -04:00
Eric Katzfey
018ca6b49d
VOXL2 board support updates ( #21426 )
2023-04-19 11:21:02 -04:00
Beat Küng
aa5b9ae638
fix failsafe: correctly handle Hold RC loss action
...
Otherwise the additional mode check triggers an RTL which takes precedence
over Hold.
Introduced in 132e9d2439
2023-04-04 07:03:42 +02:00
Silvan Fuhrer
07531d29b7
FailureDetector: fix attitude check for tailsitter
...
-set roll/pitch used for failure detection during transition to 0
-rotate estimated attitude 90° in FW flight
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-03-22 10:05:32 +01:00
Silvan Fuhrer
b16f16598b
VTOL: remove virtual actuator_controls and instead use virtual torque/thrust topics
...
MC/FW rate controller and auto tuner: remove actuator_controls
AirshipAttControl: remove actuator_controls
MulticopterLandDetector: remove actuator_controls
mavlink streams vfr_hud and high_latency2: remove actuator_controls
RoverPositionController: remove actuator_controls
UUVAttitudeController: remove actuator_controls
battery: use length of thrust_setpoint for throttle compensation
VehicleMagnetometer: use length of thrust_setpoint for throttle compensation
Signed-off-by: Silvan Fuhrer
2023-03-16 11:55:45 +01: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
898c0ae5a8
mode_requirements: refactor order of setting flags
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
Tahsincan Köse
8737099a33
commander: failsafe framework fix missing return in actionStr function ( #21245 )
...
- there needs to be a default statement for the compiler to work when this function is called.
2023-03-06 09:21:20 -05:00
Tony Samaritano
2b73b6df70
commander: fixes valid mag count in HIL
2023-03-01 08:05:23 +01:00
Silvan Fuhrer
4259b5adac
Commander: copy sensor_gps in HomePosition::update() and store relevant fields in separate variables
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-02-24 13:32:38 +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
e6af8b9aa6
Commander: Home Position: move gps checks on when to allow setting home pos inside HomePosition class
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-02-24 13:32:38 +01:00
Beat Küng
83c8c79af5
commander failsafe: add API to defer failsafes
2023-02-07 19:27:51 -05:00
Jukka Laitinen
deb6053d56
Update status leds every time when prearm check status changes
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2023-02-07 08:02:32 +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
3ca126cc46
Commander: improve description of COM_FS EPH, EPV, VEL_EVH params and increase FW and VTOL defaults
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-02-01 16:47:11 +01:00
Silvan Fuhrer
cbc4c35bcf
Commander params: improve meta data for max flight time and wind
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-02-01 08:48:09 +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
Beat Küng
a8628c9d9c
fix commander: clear takeoff_time only on disarm
...
Otherwise the flight time restriction flag gets cleared too early, before
disarming (which puts the vehicle into the previous mode and it might
take off again).
2023-02-01 08:48:09 +01:00
Beat Küng
8e4c5884ec
fix commander: need to check for valid mode change even if already the same
...
Fixes the following case:
- user intention set to X
- failsafe triggers, mode = Y
- can_run for X becomes false
- user tries to switch to X
-> need to re-evaluate can_run
2023-02-01 08:48:09 +01:00
Beat Küng
7988491e37
failsafe simulator: improve spacing for multi-line checkboxes
...
Reduces line-height to 100% in that case.
2023-02-01 08:48:09 +01:00
Hamish Willee
f25abbc80a
Fix magnetometer typo
2023-01-30 10:24:16 +01:00
Silvan Fuhrer
a210c96aa9
Commander: ssimplify error messages for LOITER rejection
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-01-25 16:40:27 +01:00
Silvan Fuhrer
148ffe4e25
add support for DO_CHANGE_ALTITUDE
...
Do the same as DO_REPOSITION wit only the altitude field populated
and MAV_DO_REPOSITION_FLAGS set, which means:
- switch to Loiter mode if not already in it
- set the current altitude to what is specified in the altitdue field,
keep current altitude setpoint otherwise
- keep current position setpoint
- fall back to current estimated position in case a position setpoint
is not finite
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-01-25 16:40:27 +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
bresch
3d50a7ce44
CAL_MAG_SIDES: do not save with factory cal
2023-01-13 10:48:01 -05:00
Mathieu Bresciani
767fcb2774
sensors: prefix mag config param SENS instead of CAL ( #20723 )
...
* sensors: prefix mag config param SENS instead of CAL
* mag sides: keep CAL_MAG_SIDES required by QGC
2023-01-12 09:42:36 -05:00
Silvan Fuhrer
bc9abf8c36
Commander: always update parameters, not just if disarmed
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-01-11 10:01:08 +01:00
murata,katsutoshi
d821404e4f
commander: failsafe define enums for actions ( #20880 )
2023-01-07 10:10:57 -05: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
Thomas Stastny and Daniel Agar
c5dc1221b6
failure detector: use multiplication instead of division
...
Co-authored-by: Daniel Agar <daniel@agar.ca >
2022-11-30 14:51:07 -05:00
Thomas Stastny
4e8381e8cf
failure detector: negative guard sqrt in std dev calc
2022-11-30 14:51:07 -05:00
Thomas Stastny
eb80e0410c
failure detector: fix imbalanced prop metric time interval
2022-11-30 14:51:07 -05:00
Matthias Grob
331cb21dee
manual_control_setpoint: change stick axes naming
...
In review it was requested to have a different name for
manual_control_setpoint.z because of the adjusted range.
I started to investigate what naming is most intuitive and found
that most people recognize the stick axes as roll, pitch, yaw, throttle.
It comes at no surprise because other autopilots
and APIs seem to share this convention.
While changing the code I realized that even within the code base
the axes are usually assigned to a variable with that name or
have comments next to the assignment clarifying the axes
using these names.
2022-11-28 19:25:55 +01:00
Matthias Grob
83246c84cf
Switch manual_control_setpoint.z scaling from [0,1] to [-1,1]
...
To be consistent with all other axes of stick input and avoid future
rescaling confusion.
Note: for the MAVLink message 69 MANUAL_CONTROL it's using the full range
according to the message specs now [-1000,1000].
2022-11-28 19:25:55 +01:00
Matthias Grob
fbe5024fa8
commander_params: remove deprecated COM_RCL_ACT_T
...
It's now covered with COM_FAIL_ACT_T
2022-11-16 08:11:09 +01:00