fix(rc): warn and deny invalid Spektrum bind sub-type

Previously, an unrecognized param2 sub-type would silently leave
dsm_bind_pulses at 0 and return the generic UNSUPPORTED ACK. Add an
explicit else-branch that logs a PX4_WARN and returns DENIED so users
get clear feedback in QGC.
This commit is contained in:
Jacob Dahl
2026-03-19 16:56:36 -08:00
parent c47fcf7390
commit d4bf6216e3
2 changed files with 8 additions and 0 deletions
+4
View File
@@ -180,6 +180,10 @@ void DsmRc::Run()
} else if (dsm_bind_mode == vehicle_command_s::RC_SUB_TYPE_SPEKTRUM_DSMX8) {
dsm_bind_pulses = DSMX8_BIND_PULSES;
} else {
PX4_WARN("invalid Spektrum bind sub-type: %d", dsm_bind_mode);
cmd_ret = vehicle_command_ack_s::VEHICLE_CMD_RESULT_DENIED;
}
if (dsm_bind_pulses > 0 && bind_spektrum(dsm_bind_pulses)) {
+4
View File
@@ -402,6 +402,10 @@ void RCInput::Run()
} else if (dsm_bind_mode == vehicle_command_s::RC_SUB_TYPE_SPEKTRUM_DSMX8) {
dsm_bind_pulses = DSMX8_BIND_PULSES;
} else {
PX4_WARN("invalid Spektrum bind sub-type: %d", dsm_bind_mode);
cmd_ret = vehicle_command_ack_s::VEHICLE_CMD_RESULT_DENIED;
}
if (dsm_bind_pulses > 0 && bind_spektrum(dsm_bind_pulses)) {