diff --git a/src/modules/commander/Commander.cpp b/src/modules/commander/Commander.cpp index 93b6bc2ade..84bf1f4ad2 100644 --- a/src/modules/commander/Commander.cpp +++ b/src/modules/commander/Commander.cpp @@ -1667,7 +1667,15 @@ Commander::run() } // Auto disarm after 5 seconds if kill switch is engaged - _auto_disarm_killed.set_state_and_update(armed.manual_lockdown || armed.lockdown, hrt_absolute_time()); + bool auto_disarm = armed.manual_lockdown; + + // auto disarm if locked down to avoid user confusion + // skipped in HITL where lockdown is enabled for safety + if (status.hil_state != vehicle_status_s::HIL_STATE_ON) { + auto_disarm |= armed.lockdown; + } + + _auto_disarm_killed.set_state_and_update(auto_disarm, hrt_absolute_time()); if (_auto_disarm_killed.get_state()) { if (armed.manual_lockdown) {