diff options
author | Johan Jansen <jnsn.johan@gmail.com> | 2015-01-15 11:09:31 +0100 |
---|---|---|
committer | Johan Jansen <jnsn.johan@gmail.com> | 2015-01-15 11:09:31 +0100 |
commit | ddf65bae049fe4e4b053dc0b53fd6fe840a92aea (patch) | |
tree | ff451341a51a5c51356e719f8060afefbbe078fc /src | |
parent | 78b603bb3532e927e617fe1946a1090b509e72ad (diff) | |
download | px4-firmware-ddf65bae049fe4e4b053dc0b53fd6fe840a92aea.tar.gz px4-firmware-ddf65bae049fe4e4b053dc0b53fd6fe840a92aea.tar.bz2 px4-firmware-ddf65bae049fe4e4b053dc0b53fd6fe840a92aea.zip |
Commander: Play tune on disarm and when safety switch is toggled
Diffstat (limited to 'src')
-rw-r--r-- | src/modules/commander/commander.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/modules/commander/commander.cpp b/src/modules/commander/commander.cpp index ee20f57a1..f511f3876 100644 --- a/src/modules/commander/commander.cpp +++ b/src/modules/commander/commander.cpp @@ -1243,6 +1243,7 @@ int commander_thread_main(int argc, char *argv[]) orb_check(safety_sub, &updated); if (updated) { + bool previous_safety_off = safety.safety_off; orb_copy(ORB_ID(safety), safety_sub, &safety); /* disarm if safety is now on and still armed */ @@ -1256,6 +1257,19 @@ int commander_thread_main(int argc, char *argv[]) arming_state_changed = true; } } + + //Notify the user if the status of the safety switch changes + if(safety.safety_switch_available && previous_safety_off != safety.safety_off) { + + if(safety.safety_off) { + set_tune(TONE_NOTIFY_POSITIVE_TUNE); + } + else { + tune_neutral(true); + } + + status_changed = true; + } } /* update vtol vehicle status*/ @@ -1949,6 +1963,12 @@ int commander_thread_main(int argc, char *argv[]) /* reset arm_tune_played when disarmed */ if (!armed.armed || (safety.safety_switch_available && !safety.safety_off)) { + + //Notify the user that it is safe to approach the vehicle + if(arm_tune_played) { + tune_neutral(true); + } + arm_tune_played = false; } |