Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 43 additions & 0 deletions .github/workflows/build-stability.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
name: Liquids (ENGINE) Stability Check
run-name: ${{ github.actor }} is verifying build stability 🚀
on:
pull_request:
push:
branches:
- main
- development/**
- integration/**
- personal/ES/**
jobs:
Check-build-stability:
runs-on: ubuntu-latest
steps:
- run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!"
- run: echo "🔎 The name of your branch is ${{ github.ref }}."
- name: Check out dependencies
uses: fiam/arm-none-eabi-gcc@v1
with:
release: '9-2019-q4' # The arm-none-eabi-gcc release to use.
- name: Check out repository code
uses: actions/checkout@v4
with:
submodules: 'true'
- run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner."
- run: echo "🖥️ The workflow is now ready to test your code on the runner."
- name: List files in the repository
run: |
ls ${{ github.workspace }}
- name: Build hotfire application
run: |
cd app/hotfire/rev5
make
- name: Build terminal application
run: |
cd app/terminal/rev5
make
- name: Build ping application
run: |
cd app/ping/rev5
make
- run: echo "🍏 This job's status is ${{ job.status }}."
6 changes: 3 additions & 3 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
[submodule "Unity"]
path = Unity
url = https://github.com/ThrowTheSwitch/Unity.git
[submodule "mod"]
path = mod
url = git@github.com:SunDevilRocketry/mod.git
[submodule "lib"]
path = lib
url = git@github.com:SunDevilRocketry/lib.git
[submodule "test"]
path = test
url = git@github.com:SunDevilRocketry/test.git
1 change: 0 additions & 1 deletion Unity
Submodule Unity deleted from 385292
2 changes: 2 additions & 0 deletions app/hotfire/rev5/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,7 @@ terminal.c \
$(INIT_DIR)/init.c \
$(UTIL_DIR)/sdr_error.c \
$(MOD_DIR)/commands/commands.c \
$(MOD_DIR)/common/common.c \
$(MOD_DIR)/ignition/ignition.c \
$(MOD_DIR)/led/led.c \
$(MOD_DIR)/power/power.c \
Expand Down Expand Up @@ -175,6 +176,7 @@ C_INCLUDES = \
-I$(LIB_DIR)/Drivers/CMSIS/Device/ST/STM32H7xx/Include \
-I$(LIB_DIR)/Drivers/CMSIS/Include \
-I$(MOD_DIR)/commands \
-I$(MOD_DIR)/common \
-I$(MOD_DIR)/ignition \
-I$(MOD_DIR)/flash \
-I$(MOD_DIR)/led \
Expand Down
11 changes: 6 additions & 5 deletions app/hotfire/rev5/disarm.c
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
#include "pressure.h"
#include "sensor.h"
#include "sdr_error.h"

#include "led.h"

/*------------------------------------------------------------------------------
Global Variables
Expand Down Expand Up @@ -85,12 +85,13 @@ memset( &sensor_data, 0, sizeof( SENSOR_DATA ) );
DISARM Sequence
------------------------------------------------------------------------------*/

/* Open Vent solenoids */
vc_open_solenoids( SOLENOID_LOX_VENT | SOLENOID_FUEL_VENT );
// /* Open Vent solenoids */
// vc_open_solenoids( SOLENOID_LOX_VENT | SOLENOID_FUEL_VENT );

/* Close purge solenoids */
vc_close_solenoids( SOLENOID_LOX_PURGE | SOLENOID_FUEL_PURGE );
// /* Close purge solenoids */
// vc_close_solenoids( SOLENOID_LOX_PURGE | SOLENOID_FUEL_PURGE );

led_set_color(LED_YELLOW);

/* Wait for disarm command */
while ( !stop_purge_flag ){}
Expand Down
100 changes: 73 additions & 27 deletions app/hotfire/rev5/fire.c
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
*
* DESCRIPTION:
* Control the engine during hotfire
Update: This will execute a new proposed 2 second hot-fire
*
*******************************************************************************/

Expand Down Expand Up @@ -70,35 +71,33 @@ memset( &sensor_data, 0, sizeof( sensor_data ) );
------------------------------------------------------------------------------*/


/* Close the vent solenoids */
vc_close_solenoids( SOLENOID_LOX_VENT | SOLENOID_FUEL_VENT );
HAL_Delay( VENT_PRESS_DELAY );

/* Pressurize the LOX tank */
/* Close LOx Vent and Open LOx Pressurization Valve */
vc_close_solenoids( SOLENOID_LOX_VENT );
HAL_Delay( 500 );
vc_open_solenoids( SOLENOID_LOX_PRESS );
HAL_Delay( TANK_PRESS_DELAY );
HAL_Delay( 8000 );

/* Pressurize the fuel tank */
/* Close Fuel Vent and Open Fuel Press Valve */
vc_close_solenoids( SOLENOID_FUEL_VENT );
vc_open_solenoids( SOLENOID_FUEL_PRESS );
HAL_Delay( TANK_PRESS_DELAY );

/* Crack the main LOX valve */
vc_crack_main_valves( MAIN_VALVE_LOX_MAIN );
HAL_Delay( LOX_CRACK_DURATION );
vc_close_main_valves( MAIN_VALVE_LOX_MAIN );
HAL_Delay( LOX_POSTCRACK_DELAY );
HAL_Delay( 12000 );

/* Ignite the engine */
/* Ignite the solid propellant Ignitor */
ign_ignite();
HAL_Delay( ENGINE_IGNITION_DELAY );
HAL_Delay( 500 );

/* Open the main valves */
vc_open_main_valves( MAIN_VALVE_BOTH_MAINS );
/* Full Speed Open LOx Main Valve */
vc_open_main_valves( MAIN_VALVE_LOX_MAIN );
HAL_Delay( 500 );

/* Gradually Open Fuel Main Valve */
// TODO
vc_open_main_valves( MAIN_VALVE_FUEL_MAIN );
// HAL_Delay( 2250 );
/* Engine Burn */
data_logger_init_timer();
burn_time = data_logger_get_time();
while ( burn_time < ENGINE_BURN_DURATION )
while ( burn_time < 2000 )
{
/* Poll for abort */
if ( fsm_state == FSM_ABORT_STATE )
Expand All @@ -121,17 +120,64 @@ while ( burn_time < ENGINE_BURN_DURATION )
burn_time = data_logger_get_time();
}

/* Close the main valves */
vc_close_main_valves( MAIN_VALVE_BOTH_MAINS );
/* Close LOx Main Valve and Open LOx Purge*/
vc_close_main_valves( MAIN_VALVE_LOX_MAIN );
vc_open_solenoids( SOLENOID_LOX_PURGE );
HAL_Delay( 150 );

/* Close Fuel Main Valve and Open Fuel Purge*/
vc_close_main_valves( MAIN_VALVE_FUEL_MAIN );
HAL_Delay( 1500 );
vc_open_solenoids( SOLENOID_FUEL_PURGE );
/* Close Fuel and LOx Press */
vc_close_solenoids( SOLENOID_FUEL_PRESS | SOLENOID_LOX_PRESS );
/* Open Fuel and LOx Vent */
vc_open_solenoids( SOLENOID_FUEL_VENT | SOLENOID_LOX_VENT );
/* Purge Duration*/
HAL_Delay( 5000 );


/* Close Fuel and LOx Purge */
vc_close_solenoids( SOLENOID_FUEL_PURGE | SOLENOID_LOX_PURGE );


// /* Engine Burn */
// data_logger_init_timer();
// burn_time = data_logger_get_time();
// while ( burn_time < ENGINE_BURN_DURATION )
// {
// /* Poll for abort */
// if ( fsm_state == FSM_ABORT_STATE )
// {
// return FSM_ABORT_STATE;
// }

// /* Poll for stop fire command */
// if ( stop_hotfire_flag )
// {
// break;
// }

// /* Log Data */
// data_logger_get_data( &sensor_data );
// data_logger_log_data( sensor_data );


// /* Update timer */
// burn_time = data_logger_get_time();
// }

// /* Close the main valves */
// vc_close_main_valves( MAIN_VALVE_BOTH_MAINS );

/* Close the pressuriztion solenoids */
vc_close_solenoids( SOLENOID_LOX_PRESS | SOLENOID_FUEL_PRESS );
// /* Close the pressuriztion solenoids */
// vc_close_solenoids( SOLENOID_LOX_PRESS | SOLENOID_FUEL_PRESS );

/* Open the purge solenoids */
vc_open_solenoids( SOLENOID_LOX_PURGE | SOLENOID_FUEL_PURGE );
// /* Open the purge solenoids */
// vc_open_solenoids( SOLENOID_LOX_PURGE | SOLENOID_FUEL_PURGE );

/* Wait for stop purge command or timeout */
HAL_Delay( POSTFIRE_PURGE_DURATION );
// /* Wait for stop purge command or timeout */
// HAL_Delay( POSTFIRE_PURGE_DURATION );

/* Transition to disarm state */
return FSM_DISARM_STATE;
Expand Down
4 changes: 4 additions & 0 deletions app/hotfire/rev5/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,10 @@ volatile bool telreq_wait_flag = false; /* Controller busy */
/* Sensor data */
SENSOR_DATA_PING_PONG sensor_ping_pong_buffer = {0};

/* Timing */
volatile uint32_t previous_time;
volatile uint32_t tdelta;


/*------------------------------------------------------------------------------
Application entry point
Expand Down
2 changes: 2 additions & 0 deletions app/ping/rev5/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,7 @@ $(LIB_DIR)/Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_tim.c \
$(LIB_DIR)/Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_tim_ex.c \
$(LIB_DIR)/Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_uart.c \
$(LIB_DIR)/Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_uart_ex.c \
$(MOD_DIR)/common/common.c \
$(MOD_DIR)/led/led.c \
$(MOD_DIR)/rs485/rs485.c \
$(MOD_DIR)/usb/usb.c \
Expand Down Expand Up @@ -145,6 +146,7 @@ C_INCLUDES = \
-I$(INIT_DIR)/config/Inc \
-I$(LIB_DIR) \
-I$(MOD_DIR)/commands \
-I$(MOD_DIR)/common \
-I$(MOD_DIR)/led \
-I$(MOD_DIR)/rs485 \
-I$(MOD_DIR)/usb \
Expand Down
4 changes: 4 additions & 0 deletions app/ping/rev5/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,10 @@ UART_HandleTypeDef huart1; /* USB UART handler struct */
UART_HandleTypeDef huart2; /* Valve controller UART handle */
UART_HandleTypeDef huart4; /* Wireless interface UART handle */

/* Timing */
volatile uint32_t previous_time;
volatile uint32_t tdelta;


/*------------------------------------------------------------------------------
Application entry point
Expand Down
2 changes: 2 additions & 0 deletions app/terminal/rev5/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ main.c \
$(INIT_DIR)/init.c \
$(UTIL_DIR)/sdr_error.c \
$(MOD_DIR)/commands/commands.c \
$(MOD_DIR)/common/common.c \
$(MOD_DIR)/ignition/ignition.c \
$(MOD_DIR)/led/led.c \
$(MOD_DIR)/power/power.c \
Expand Down Expand Up @@ -160,6 +161,7 @@ C_INCLUDES = \
-I$(LIB_DIR)/Drivers/CMSIS/Device/ST/STM32H7xx/Include \
-I$(LIB_DIR)/Drivers/CMSIS/Include \
-I$(MOD_DIR)/commands \
-I$(MOD_DIR)/common \
-I$(MOD_DIR)/ignition \
-I$(MOD_DIR)/flash \
-I$(MOD_DIR)/led \
Expand Down
9 changes: 9 additions & 0 deletions app/terminal/rev5/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,15 @@ UART_HandleTypeDef huart2; /* Valve controller UART handle */
UART_HandleTypeDef huart4; /* Wireless interface UART handle */


/*------------------------------------------------------------------------------
Global Variables
------------------------------------------------------------------------------*/

/* Timing */
volatile uint32_t previous_time;
volatile uint32_t tdelta;


/*------------------------------------------------------------------------------
Application entry point
------------------------------------------------------------------------------*/
Expand Down
2 changes: 1 addition & 1 deletion lib
1 change: 1 addition & 0 deletions test
Submodule test added at 1bba74

This file was deleted.

Loading