diff --git a/LCU/StationTest/rspctlprobe.py b/LCU/StationTest/rspctlprobe.py
index 846c6bbf9fb7790e727c05cb942cf1894d31ad37..b9c5d2871153f0161ffecadc2cefa4d1138274db 100755
--- a/LCU/StationTest/rspctlprobe.py
+++ b/LCU/StationTest/rspctlprobe.py
@@ -762,7 +762,6 @@ def batch_produce_xcstatistics(integration_time,
 
         time.sleep(w)
 
-    set_mode(0) # SWITCH BACK TO MODE 0 AT THE END
 
 # ----------------------------------MAIN CODE LOGIC
 def setup_logging():
@@ -784,7 +783,8 @@ def init():
 
 def setup_command_argument_parser():
     parser = argparse.ArgumentParser(
-         description="Records the xcstatistics.\n NOTE that is best to use this script with swlevel=2 has it will not interfere with other software running on the station.\nex: python /opt/stationtest/rspctlprobe.py --mode 3 --xcsubband 150:250:50 --xcstatistics --integration 1 --duration 5 --wait 10 --loops 2 --directory /localhome/data")
+         formatter_class=argparse.RawDescriptionHelpFormatter,
+         description="Records the xcstatistics.\nNOTE that is best to use this script with swlevel=2 has it will not interfere with other software running on the station.\nex: python /opt/stationtest/rspctlprobe.py --mode 3 --xcsubband 150:250:50 --xcstatistics --integration 1 --duration 5 --wait 10 --loops 2 --directory /localhome/data")
 
     parser.add_argument('--xcstatistics', action='store_true')
     parser.add_argument('--integration', type=int, default=[1], nargs='+')
@@ -839,6 +839,7 @@ def parse_and_execute_command_arguments():
                                                mode=program_arguments.mode,
                                                add_options=options,
                                                output_directory=program_arguments.directory)
+            set_mode(0) # SWITCH BACK TO MODE 0 AT THE END
         except Exception as e:
             logger.error('error executing rspctl : %s', e)
             logger.error('traceback \n%s', traceback.format_exc())