From 367233573bb20ee881f5b2261a320669532e88f0 Mon Sep 17 00:00:00 2001
From: Davide Mor <davide.mor@skywarder.eu>
Date: Fri, 9 Feb 2024 17:45:55 +0100
Subject: [PATCH] [RIG] Adjusted servo timing

---
 .vscode/c_cpp_properties.json                 | 23 ++++++++++++++++++
 src/boards/RIG/Configs/ActuatorsConfig.h      |  8 +++----
 .../GroundModeManager/GroundModeManager.cpp   | 24 +++++++++----------
 3 files changed, 39 insertions(+), 16 deletions(-)

diff --git a/.vscode/c_cpp_properties.json b/.vscode/c_cpp_properties.json
index 8e174a4bb..936095b11 100755
--- a/.vscode/c_cpp_properties.json
+++ b/.vscode/c_cpp_properties.json
@@ -219,6 +219,29 @@
                 "${workspaceFolder}/skyward-boardcore/src/bsps/stm32f429zi_con_rig"
             ]
         },
+        {
+            "name": "stm32f429zi_skyward_con_rig",
+            "cStandard": "c11",
+            "cppStandard": "c++14",
+            "compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
+            "defines": [
+                "{defaultDefines}",
+                "_MIOSIX_BOARDNAME=stm32f429zi_skyward_con_rig",
+                "_BOARD_STM32F429ZI_SKYWARD_CON_RIG",
+                "_ARCH_CORTEXM4_STM32F4",
+                "STM32F429xx",
+                "HSE_VALUE=8000000",
+                "SYSCLK_FREQ_168MHz=168000000",
+                "__ENABLE_XRAM",
+                "V_DDA_VOLTAGE=3.0f"
+            ],
+            "includePath": [
+                "${defaultIncludePaths}",
+                "${workspaceFolder}/skyward-boardcore/libs/miosix-kernel/miosix/arch/cortexM4_stm32f4/common",
+                "${workspaceFolder}/skyward-boardcore/libs/miosix-kernel/miosix/arch/cortexM4_stm32f4/stm32f429zi_skyward_con_rig",
+                "${workspaceFolder}/skyward-boardcore/libs/miosix-kernel/miosix/config/arch/cortexM4_stm32f4/stm32f429zi_skyward_con_rig"
+            ]
+        },
         {
             "name": "stm32f429zi_stm32f4discovery",
             "cStandard": "c11",
diff --git a/src/boards/RIG/Configs/ActuatorsConfig.h b/src/boards/RIG/Configs/ActuatorsConfig.h
index 1236761a0..56f0feb85 100644
--- a/src/boards/RIG/Configs/ActuatorsConfig.h
+++ b/src/boards/RIG/Configs/ActuatorsConfig.h
@@ -46,8 +46,8 @@ constexpr Boardcore::TimerUtils::Channel SERVO4_PWM_CH =
 constexpr Boardcore::TimerUtils::Channel SERVO5_PWM_CH =
     Boardcore::TimerUtils::Channel::CHANNEL_1;
 
-constexpr uint16_t MIN_PULSE = 900;
-constexpr uint16_t MAX_PULSE = 2000;
+constexpr uint16_t MIN_PULSE = 500;
+constexpr uint16_t MAX_PULSE = 2500;
 
 constexpr uint16_t SERVO_TIMINGS_CHECK_PERIOD = 100;
 constexpr uint16_t SERVO_CONFIDENCE_TIME      = 500;       // 0.5s
@@ -59,10 +59,10 @@ constexpr uint32_t DEFAULT_MAIN_OPENING_TIME       = 6000;   // 6s
 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_FILLING_MAXIMUM_APERTURE    = 1.00f;
 constexpr float DEFAULT_VENTING_MAXIMUM_APERTURE    = 0.80f;
 constexpr float DEFAULT_MAIN_MAXIMUM_APERTURE       = 0.87f;
-constexpr float DEFAULT_RELEASE_MAXIMUM_APERTURE    = 0.80f;
+constexpr float DEFAULT_RELEASE_MAXIMUM_APERTURE    = 1.0f;
 constexpr float DEFAULT_DISCONNECT_MAXIMUM_APERTURE = 0.110f;
 }  // namespace Servos
 }  // namespace Config
diff --git a/src/boards/RIG/StateMachines/GroundModeManager/GroundModeManager.cpp b/src/boards/RIG/StateMachines/GroundModeManager/GroundModeManager.cpp
index 67bded4a9..bd6754712 100644
--- a/src/boards/RIG/StateMachines/GroundModeManager/GroundModeManager.cpp
+++ b/src/boards/RIG/StateMachines/GroundModeManager/GroundModeManager.cpp
@@ -153,18 +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;
-        }
+        // {
+        //     // 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
-- 
GitLab