diff --git a/src/boards/RIG/Actuators/Actuators.cpp b/src/boards/RIG/Actuators/Actuators.cpp index ba98cbee30202f3f049a09e23903ffe046cc6ff7..64412c66985afb06e3f1154c34b6f3c6c5cc41cd 100644 --- a/src/boards/RIG/Actuators/Actuators.cpp +++ b/src/boards/RIG/Actuators/Actuators.cpp @@ -46,7 +46,7 @@ Actuators::Actuators(TaskScheduler* sched) : scheduler(sched) Config::Servos::MAX_PULSE, Config::Servos::MIN_PULSE); servo4 = new Servo(Config::Servos::SERVO4_TIMER, Config::Servos::SERVO4_PWM_CH, - Config::Servos::MIN_PULSE, Config::Servos::MAX_PULSE); + Config::Servos::MAX_PULSE, Config::Servos::MIN_PULSE); servo5 = new Servo(Config::Servos::SERVO5_TIMER, Config::Servos::SERVO5_PWM_CH, Config::Servos::MAX_PULSE, Config::Servos::MIN_PULSE); diff --git a/src/boards/RIG/Configs/ActuatorsConfig.h b/src/boards/RIG/Configs/ActuatorsConfig.h index 78c7081d9f3a6f9afb8c063517130bc7f0c44460..52f1f0d69fd8497c7ae4ad4116b14bcd5c624f53 100644 --- a/src/boards/RIG/Configs/ActuatorsConfig.h +++ b/src/boards/RIG/Configs/ActuatorsConfig.h @@ -60,7 +60,7 @@ constexpr uint32_t DEFAULT_RELEASE_OPENING_TIME = 10000; // 10s constexpr uint32_t DEFAULT_DISCONNECT_OPENING_TIME = 10000; // 10s constexpr float DEFAULT_FILLING_MAXIMUM_APERTURE = 0.97f; -constexpr float DEFAULT_VENTING_MAXIMUM_APERTURE = 0.40f; +constexpr float DEFAULT_VENTING_MAXIMUM_APERTURE = 0.80f; constexpr float DEFAULT_MAIN_MAXIMUM_APERTURE = 0.87f; constexpr float DEFAULT_RELEASE_MAXIMUM_APERTURE = 0.97f; constexpr float DEFAULT_DISCONNECT_MAXIMUM_APERTURE = 0.110f; diff --git a/src/boards/RIG/StateMachines/GroundModeManager/GroundModeManager.cpp b/src/boards/RIG/StateMachines/GroundModeManager/GroundModeManager.cpp index 36e9140c3c8477ac11520e91d8d79c7ea382ab7b..67bded4a989d3c69648813a6b9ac27c18be275ec 100644 --- a/src/boards/RIG/StateMachines/GroundModeManager/GroundModeManager.cpp +++ b/src/boards/RIG/StateMachines/GroundModeManager/GroundModeManager.cpp @@ -141,7 +141,8 @@ void GroundModeManager::state_igniting(const Event& event) oxidantTimeoutEventId = EventBroker::getInstance().postDelayed( MOTOR_OPEN_OXIDANT, TOPIC_MOTOR, ignitionTime); - return logStatus(GroundModeManagerState::IGNITING); + logStatus(GroundModeManagerState::IGNITING); + break; } case MOTOR_OPEN_OXIDANT: { @@ -152,6 +153,18 @@ void GroundModeManager::state_igniting(const Event& event) break; } case MOTOR_CLOSE_FEED_VALVE: + { + // Shut down the igniter + miosix::relays::ignition::high(); + + // Close all the valves + modules.get<Actuators>()->closeAllServo(); + + EventBroker::getInstance().removeDelayed(oxidantTimeoutEventId); + + transition(&GroundModeManager::state_ready); + break; + } case TMTC_DISARM: { // Shut down the igniter @@ -173,7 +186,8 @@ void GroundModeManager::state_igniting(const Event& event) miosix::relays::nitrogen::high(); } - return transition(&GroundModeManager::state_ready); + transition(&GroundModeManager::state_ready); + break; } } }