From acf5766f9cb569d6638283e43753736419ae6bfa Mon Sep 17 00:00:00 2001 From: Matthias Grob Date: Wed, 1 Oct 2025 14:24:45 +0200 Subject: [PATCH] commander_params: rewrite COM_RC_IN_MODE documentation --- src/modules/commander/commander_params.c | 43 +++++++++++++----------- 1 file changed, 24 insertions(+), 19 deletions(-) diff --git a/src/modules/commander/commander_params.c b/src/modules/commander/commander_params.c index ed3a98fe18..2c53e36c66 100644 --- a/src/modules/commander/commander_params.c +++ b/src/modules/commander/commander_params.c @@ -166,30 +166,35 @@ PARAM_DEFINE_INT32(COM_HOME_EN, 1); PARAM_DEFINE_INT32(COM_HOME_IN_AIR, 0); /** - * RC control input mode + * Manual control input source configuration * - * A value of 0 enables RC transmitter control (only). A valid RC transmitter calibration is required. - * A value of 1 allows joystick control only. RC input handling and the associated checks are disabled. - * A value of 2 allows either RC Transmitter or Joystick input. The first valid input is used, will fallback to other sources if the input stream becomes invalid. - * A value of 3 allows either input from RC or joystick. The first available source is selected and used until reboot. - * A value of 4 ignores any stick input. - * A value of 5 allows either RC Transmitter or Joystick input, giving an RC transmitter priority over MAVLink joysticks, and lower MAVLink instance numbers priority over higher ones. - * A value of 6 allows either RC Transmitter or Joystick input, giving MAVLink joysticks priority over an RC transmitter, and lower MAVLink instance numbers priority over higher ones. - * A value of 7 allows either RC Transmitter or Joystick input, giving an RC transmitter priority over MAVLink joysticks, and higher MAVLink instance numbers priority over lower ones. - * A value of 8 allows either RC Transmitter or Joystick input, giving MAVLink joysticks priority over an RC transmitter, and higher MAVLink instance numbers priority over lower ones. + * Selects stick input selection behavior: + * either a traditional remote control receiver (RC) or a MAVLink joystick (MANUAL_CONTROL message) + * + * Priority sources are immediately switched to whenever they get valid. + * + * 0 RC only. Requires valid RC calibration. + * 1 MAVLink only. RC and related checks are disabled. + * 2 Switches only if current source becomes invalid. + * 3 Locks to the first valid source until reboot. + * 4 Ignores all sources. + * 5 RC priority, then MAVLink (lower instance before higher) + * 6 MAVLink priority (lower instance before higher), then RC + * 7 RC priority, then MAVLink (higher instance before lower) + * 8 MAVLink priority (higher instance before lower), then RC * * @group Commander * @min 0 * @max 8 - * @value 0 RC Transmitter only - * @value 1 Joystick only - * @value 2 RC and Joystick with fallback - * @value 3 RC or Joystick keep first - * @value 4 Stick input disabled - * @value 5 RC, then Joystick ascending prio - * @value 6 Joystick ascending prio, then RC - * @value 7 RC, then Joystick descending prio - * @value 8 Joystick descending prio, then RC + * @value 0 RC only + * @value 1 MAVLink only + * @value 2 RC or MAVLink with fallback + * @value 3 RC or MAVLink keep first + * @value 4 Disable manual control + * @value 5 Prio: RC > MAVL 1 > MAVL 2 + * @value 6 Prio: MAVL 1 > MAVL 2 > RC + * @value 7 Prio: RC > MAVL 2 > MAVL 1 + * @value 8 Prio: MAVL 2 > MAVL 1 > RC */ PARAM_DEFINE_INT32(COM_RC_IN_MODE, 3);