From c7ecafe99b6c6c567d9bd8ac223d5e20592644bc Mon Sep 17 00:00:00 2001 From: Lorenz Meier Date: Sat, 25 Apr 2015 12:53:58 +0200 Subject: commander: Critical fix for arm state machine. Only auto-save if not stored already --- src/modules/commander/commander.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/modules/commander/commander.cpp b/src/modules/commander/commander.cpp index d67f184ce..5e0346155 100644 --- a/src/modules/commander/commander.cpp +++ b/src/modules/commander/commander.cpp @@ -2763,8 +2763,6 @@ void *commander_low_prio_loop(void *arg) // Update preflight check status status.condition_system_sensors_initialized = Commander::preflightCheck(mavlink_fd, true, true, true, true, checkAirspeed, true); - arming_state_transition(&status, &safety, vehicle_status_s::ARMING_STATE_STANDBY, &armed, true /* fRunPreArmChecks */, mavlink_fd); - if (((int)(cmd.param1)) == 0) { int ret = param_load_default(); @@ -2788,9 +2786,15 @@ void *commander_low_prio_loop(void *arg) } } else if (((int)(cmd.param1)) == 1) { + int ret = param_save_default(); if (ret == OK) { + if (need_param_autosave) { + need_param_autosave = false; + need_param_autosave_timeout = 0; + } + mavlink_log_info(mavlink_fd, "settings saved"); answer_command(cmd, VEHICLE_CMD_RESULT_ACCEPTED); -- cgit v1.2.3