diff --git a/simulator/mainSimulator.m b/simulator/mainSimulator.m
index fec14574cc185be8b2965778181290104c9f1f14..9ec8e265e0d02d4551475d4cc7ff3bb490e5f522 100644
--- a/simulator/mainSimulator.m
+++ b/simulator/mainSimulator.m
@@ -1,4 +1,4 @@
-function [ascent, descent] = mainSimulator(rocket, wind, environment, settings, options)
+function [ascent, descent, settings] = mainSimulator(rocket, wind, environment, settings, options)
 arguments
     rocket      = []    % Rocket      = Rocket.empty
     wind        = []    % Wind  = Wind.empty
diff --git a/unitTests/UnitTestConfig.m b/unitTests/UnitTestConfig.m
index fc571fa76bf5fd5aaa3c9a6c84683538d6b57b55..7df49312a5e502290b7f4e75b0f4114f73760c6d 100644
--- a/unitTests/UnitTestConfig.m
+++ b/unitTests/UnitTestConfig.m
@@ -5,7 +5,7 @@ mission = Mission(true);
 
 %% UNIT TESTS TO RUN
 % choose which folders to test
-opt.testSimulator = false;
+opt.testSimulator = true;
 % opt.testCommonFunction = true;
 opt.testApogeeAnalysis = false;
 opt.testOptimization = false;
diff --git a/unitTests/data/testSimulator/HRE/referenceState_HRE.mat b/unitTests/data/testSimulator/HRE/referenceState_HRE.mat
index 3331f3146784e614bf735c360f0af75f6d5acbba..2322be59ad08f5afc4866c6b4ab4bbd2deb53e79 100644
--- a/unitTests/data/testSimulator/HRE/referenceState_HRE.mat
+++ b/unitTests/data/testSimulator/HRE/referenceState_HRE.mat
@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:831092047758e774e5ef76b35b38e69da3d6bcb25860251f4ff66f410b1a8db6
-size 80954262
+oid sha256:b59a1ce9094c77e8b49372d2b7506618553c36ab066f54016de7bd1d427c58a5
+size 81007984
diff --git a/unitTests/data/testSimulator/HRE/referenceState_solid.mat b/unitTests/data/testSimulator/HRE/referenceState_solid.mat
deleted file mode 100644
index 308aec3a34cc6dd0da38f3f3360f96f99986fd9d..0000000000000000000000000000000000000000
--- a/unitTests/data/testSimulator/HRE/referenceState_solid.mat
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:4504a5538c66571b16d03ded9468a82653815d27162c39604395e9646e05a6bc
-size 80965569
diff --git a/unitTests/data/testSimulator/ballistic/referenceState_ballistic.mat b/unitTests/data/testSimulator/ballistic/referenceState_ballistic.mat
index 43b6deed84b18bbbf2d702f9ac6b76adb94c199c..a16d400206405170d162fa375813c25813411f87 100644
--- a/unitTests/data/testSimulator/ballistic/referenceState_ballistic.mat
+++ b/unitTests/data/testSimulator/ballistic/referenceState_ballistic.mat
@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:867d5140122460820a941efaddb3485ecfd4aae7731210e72e5c30d95a382aa9
-size 80216228
+oid sha256:da148d37baf11593053b5c4de858b92b2418caa024b77796a43dbb449b9c695e
+size 80282383
diff --git a/unitTests/data/testSimulator/engineCut/referenceState_engineCut.mat b/unitTests/data/testSimulator/engineCut/referenceState_engineCut.mat
index b0126fd0deb9be911e90562a4b1499743a89cf69..082b671ac1e49ce9e0507b47e6416b8f1b8216c3 100644
--- a/unitTests/data/testSimulator/engineCut/referenceState_engineCut.mat
+++ b/unitTests/data/testSimulator/engineCut/referenceState_engineCut.mat
@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:bd1b284dcf129621db80ddec20afe9970cfc571d0ed84e0debb410545bc6d1af
-size 80990432
+oid sha256:d73735a073e896c78191d5f45798181d28fbb8b51e6b9d79def178803ac2bb0e
+size 80930900
diff --git a/unitTests/data/testSimulator/multipleAB/referenceState_multipleAB.mat b/unitTests/data/testSimulator/multipleAB/referenceState_multipleAB.mat
index ddcd7da8858b99566e90922ed2edf1c0235d5010..b8a3fa07e94c0b206de682ff74511c87a51d7273 100644
--- a/unitTests/data/testSimulator/multipleAB/referenceState_multipleAB.mat
+++ b/unitTests/data/testSimulator/multipleAB/referenceState_multipleAB.mat
@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:669e170138f6ed0041481355b962cd9826fe85cfc50ed8065fb72e96978978ae
-size 80876361
+oid sha256:338e3960adae4e04ef9eee7a56b399674b27f23115dd1bcd914ac33c76a3f7b1
+size 80876038
diff --git a/unitTests/data/testSimulator/solid/referenceState_HRE.mat b/unitTests/data/testSimulator/solid/referenceState_HRE.mat
deleted file mode 100644
index 36d4c956514b7ef5c602e7ebf440ddfbc1418f38..0000000000000000000000000000000000000000
--- a/unitTests/data/testSimulator/solid/referenceState_HRE.mat
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:45e5372d29592a2fe1b0f4d3cd2f608b80bea68d364deabe14a53dca409fa977
-size 80927786
diff --git a/unitTests/data/testSimulator/solid/referenceState_solid.mat b/unitTests/data/testSimulator/solid/referenceState_solid.mat
index ae85f1285069da25ba6629448540dc72bf2d98a0..984ec936bc0dfdcb07f8091db645477154f28aaa 100644
--- a/unitTests/data/testSimulator/solid/referenceState_solid.mat
+++ b/unitTests/data/testSimulator/solid/referenceState_solid.mat
@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:b1265227aac6c42eaaa8b9deeb64a90e421966c7e46c3df54f713538d4dd8ed3
-size 80958071
+oid sha256:69a49aeddfad717fb4849a369866d1a3b782472568cfdbdf850d45a23df70ad7
+size 80976751
diff --git a/unitTests/mainUnitTest.m b/unitTests/mainUnitTest.m
index 9e85c331a5595be5506d6d2fbfc1fee477cfd668..13bd31f40b4109eab264291b5e60d7beb1587da4 100644
--- a/unitTests/mainUnitTest.m
+++ b/unitTests/mainUnitTest.m
@@ -6,9 +6,6 @@ arguments
     options.testOptimization logical = [];
     options.testSensitivity logical = [];
     options.testSimulator logical = [];
-    
-
-
 end
 %% PATH
 % main unit-test
@@ -17,7 +14,7 @@ currentPath = fileparts(mfilename('fullpath'));
 addpath(genpath(fullfile(currentPath, '..')));
 %% LOAD OPTIONS
 
-settings = Settings('UnitTest');
+settings = Settings('unitTest');
 if ~isempty(options), Settings.read(settings, options, 'opt'); end
 
 %% TESTS
@@ -60,4 +57,6 @@ end
 
 toc(beginTest)
 
+clear all
+
 end
\ No newline at end of file
diff --git a/unitTests/saveTests.m b/unitTests/saveTests.m
index c14e556f80fa49a6b28cc983c82111caaf0826ad..0e5cb83c218d883ea6ae70cd5adb3bfbcdd0713b 100644
--- a/unitTests/saveTests.m
+++ b/unitTests/saveTests.m
@@ -3,15 +3,13 @@
 currentPath = fileparts(mfilename('fullpath'));
 addpath(genpath(currentPath));
 
-configUnitTest;
-
-mission = Mission(true);
+unitTestConfig;
 
 totTime = tic;
 
 %% CREATING SIMULATOR TESTS
 if opt.createTestSimulator
-    verifiable = {'HRE', 'solid', 'multipleAB', 'engineCut', 'ballistic'};
+    verifiable = {'multipleAB', 'ballistic', 'engineCut', 'solid', 'HRE'};
     for k = 1:length(verifiable)
         TestSimulator.saveTest(verifiable{k}, mission);
     end
@@ -53,3 +51,5 @@ end
 totTimeF = toc(totTime);
 fprintf('\n\n All unit tests created in: %2.2f seconds\n\n', totTimeF)
 
+% clear all
+% clc
diff --git a/unitTests/tests/TestSimulator.m b/unitTests/tests/TestSimulator.m
index bb7bc61f4f990d21d5fbfe0e75b45fc2ca551ab4..5b80c568388368488d87c419a3ec6fefcf6d6c58 100644
--- a/unitTests/tests/TestSimulator.m
+++ b/unitTests/tests/TestSimulator.m
@@ -34,7 +34,29 @@ classdef TestSimulator < UnitTest
         end
     end
 
+    methods (Test)
+        function mainSimulatorTest(testCase, verifiable)
+            
+            testCase.createTest(verifiable);
+            
+            verifiable         %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+            mainSimPath = fullfile('..', '..', 'simulator');
+            addpath(genpath(mainSimPath));
+
+            testCase.rocket.airbrakes.enabled  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+            % Run main simulator
+            [postp.stateA, postp.stateF] = mainSimulator(testCase.rocket, testCase.wind, testCase.environment, testCase.simulatorSettings);
+            
+            max(abs(postp.stateA.state.Y(3,:)))      %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+            % Verify results
+            testCase.verifyEqual(postp, testCase.refSimulator, 'AbsTol', testCase.absToll, 'RelTol', testCase.relToll);
 
+            clear all, close all
+        end
+    end
 
     methods (Static)
         function saveTest(verifiable,  mission)
@@ -44,8 +66,28 @@ classdef TestSimulator < UnitTest
 
             currentPath = fileparts(mfilename('fullpath'));
             addpath(genpath(currentPath));
-            mainSimPath = fullfile(currentPath, '..', '..', 'simulator', 'simulatorConfig.m');            
-            mainOdePath = fullfile(currentPath, '..', '..', 'common', 'settings', 'odeConfig.m');
+            % simPath = fullfile(fileparts(mfilename('fullpath')), '..', '..', 'simulator', 'simulatorConfig.m');
+            % odePath = fullfile(fileparts(mfilename('fullpath')), '..', '..', 'common', 'settings', 'odeConfig.m');
+            % simulatorSettings = Settings(simPath, odePath);
+            
+            simulatorSettings = Settings('ode');
+
+            simConfigPath = fullfile(currentPath, '..', '..', 'simulator', 'simulatorConfig.m');
+
+            run(simConfigPath);
+
+            if strcmp(verifiable, 'ballistic')
+                simulator.ballistic = 1;
+                simulator.parafoil = 0;
+            end
+            simulator.SMonly = 0;
+            simulator.prints = 0;
+            simulator.plots = 0;
+            simulator.landingMap = 0;
+            simulator.satellite3D = 0;
+            
+            simulatorSettings.addprop('simulator');
+            simulatorSettings.simulator = simulator;
 
             rocket = Rocket(mission);
             environment = Environment(mission, rocket.motor);
@@ -54,59 +96,27 @@ classdef TestSimulator < UnitTest
             if verifiable == "multipleAB"
                 rocket.airbrakes.enabled = 1;
             end
-
-            simulatorSettings = Settings(mainSimPath, mainOdePath);
-            simulatorSettings.simulator.SMonly = 0;
-            if strcmp(verifiable, 'ballistic')
-                simulatorSettings.simulator.ballistic = 1;
-                simulatorSettings.simulator.parafoil = 0;
-            end
            
             % simulator
-            [stateA, stateF] = mainSimulator(rocket, wind, environment, simulatorSettings);
-
-            % mainSimPath = fullfile('..', '..', 'simulator', 'simulatorConfig.m');
-            % mainOdePath = fullfile('..', '..', 'common', 'settings', 'odeConfig.m');
-            % simulatorSettings = Settings(mainSimPath, mainOdePath);
-            % simulatorSettings.simulator.SMonly = 0;
-            % if strcmp(verifiable, 'ballistic')
-            %     simulatorSettings.simulator.ballistic = 1;
-            %     simulatorSettings.simulator.parafoil = 0;
-            % end
+            [stateA, stateF, simulatorSettings] = mainSimulator(rocket, wind, environment, simulatorSettings);
 
             % Save final state
             fileName = sprintf("referenceState_%s.mat", verifiable);
-            folderPath = fullfile(currentPath,'..',  'data', 'testSimulator', verifiable);
+            folderPath = fullfile(currentPath, '..',  'data', 'testSimulator', verifiable);
             filePath = fullfile(folderPath, fileName);
 
             if ~exist(folderPath, "dir")
                 mkdir(folderPath)
             end
+
             save(filePath,'stateA','stateF', 'simulatorSettings',...
              'mission', 'rocket', 'environment', 'wind');
-
-            close all; 
             
             Time = toc(Time);
             fprintf('\t %s test created in: %2.2f seconds\n',verifiable, Time)
+            
+            clear all, close all
          end
     end
 
-    methods (Test)
-        function mainSimulatorTest(testCase, verifiable)
-            
-            testCase.createTest(verifiable);
-
-            mainSimPath = fullfile('..', '..', 'simulator');
-            addpath(genpath(mainSimPath));
-
-            % Run main simulator
-            [postp.stateA, postp.stateF] = mainSimulator(testCase.rocket, testCase.wind, testCase.environment, testCase.simulatorSettings);
-            
-            close all;
-
-            % Verify results
-            testCase.verifyEqual(postp, testCase.refSimulator, 'AbsTol', testCase.absToll, 'RelTol', testCase.relToll);
-        end
-    end
 end