From a3c7f2bb525ed0606834fcd90df5d679692130b9 Mon Sep 17 00:00:00 2001
From: Swooping-Evil <124680355+Swooping-Evil@users.noreply.github.com>
Date: Fri, 19 Jul 2024 11:05:55 +0300
Subject: [PATCH 1/2] adds statemachine logic
---
n4-flight-software/include/functions.h | 26 ++++++
n4-flight-software/include/states.h | 27 ++++++
n4-flight-software/src/states.cpp | 124 +++++++++++++++++++++++++
n4-flight-software/src/states.h | 0
4 files changed, 177 insertions(+)
create mode 100644 n4-flight-software/include/functions.h
create mode 100644 n4-flight-software/include/states.h
delete mode 100644 n4-flight-software/src/states.h
diff --git a/n4-flight-software/include/functions.h b/n4-flight-software/include/functions.h
new file mode 100644
index 0000000..1a5606b
--- /dev/null
+++ b/n4-flight-software/include/functions.h
@@ -0,0 +1,26 @@
+#ifndef FUNCTIONS_H
+#define FUNCTIONS_H
+
+#include "sensors.h"
+
+void ejection(int pin) {
+ // Set the pin as output
+ pinMode(pin, OUTPUT);
+
+ // Activating the parachute
+ digitalWrite(pin, HIGH);
+
+ //Deployment delay
+ delay(1000); // Delay for 1 second
+
+ // Deactivating the parachute
+ digitalWrite(pin, LOW);
+};
+
+float getAltitude();
+float getAcceleration();
+float getVelocity();
+
+
+
+#endif
\ No newline at end of file
diff --git a/n4-flight-software/include/states.h b/n4-flight-software/include/states.h
new file mode 100644
index 0000000..55b91f9
--- /dev/null
+++ b/n4-flight-software/include/states.h
@@ -0,0 +1,27 @@
+#ifndef STATES_H
+#define STATE_H
+#include "stdint.h"
+
+//we initialize functions that will be included in checkstate.cpp
+
+
+enum State {
+ PRE_FLIGHT_GROUND,
+ POWERED_FLIGHT,
+ COASTING,
+ DROGUE_DEPLOY,
+ DROGUE_DESCENT,
+ MAIN_CHUTE_DEPLOY,
+ MAIN_DESCENT,
+ POST_FLIGHT_GROUND
+};
+
+State isInPoweredFlight(float altitude);
+State isInCoasting(bool isDecelerating);
+State isInApogee(float velocity, float altitude);
+State isInDrogueDeploy(float altitude);
+State isInMainChuteDeploy(float altitude);
+State isInPostFlight(float acceleration);
+
+
+#endif
\ No newline at end of file
diff --git a/n4-flight-software/src/states.cpp b/n4-flight-software/src/states.cpp
index e69de29..fa0e665 100644
--- a/n4-flight-software/src/states.cpp
+++ b/n4-flight-software/src/states.cpp
@@ -0,0 +1,124 @@
+#include "states.h"
+#include "functions.h"
+#include "defs.h"
+#include "sensors.h"
+#include "elapsedMillis.h"
+
+const int DROGUE_PIN = 3;
+const int MAIN_PIN = 5;
+
+elapsedMillis decelerationTimer; // Timer to track deceleration duration
+
+bool isDeceleratingContinuously(){
+ static float previousAltitude = 0.0f; // Store previous altitude
+ float currentAltitude = getAltitude(); // Read current altitude
+ float verticalAccel = getAcceleration(MPU_SENSOR_Z_AXIS) - 9.81f; // Calculate vertical acceleration
+
+ // Check for deceleration event
+ bool isDecelerating = verticalAccel < 0
+
+ // Update deceleration timer
+ if (isDecelerating) {
+ if (!decelerationTimer.start()) {
+ decelerationTimer.operator unsigned long(); // Start timer if deceleration starts
+ }
+ } else {
+ decelerationTimer.stop(); // Reset timer if deceleration stops
+
+
+ // Check for continuous deceleration
+ return isDecelerating && decelerationTimer >= DECELERATION_DURATION;
+ }
+}
+
+//define default current state
+State currentState = State::PRE_FLIGHT_GROUND;
+
+//State machine transition conditions
+
+//checks if altitude is greater than 50m to determine powered flight
+State isInPoweredFlight(float altitude) {
+ if (altitude > 50.0f) {
+ return State::POWERED_FLIGHT;
+ }
+}
+// Checks for continuous deceleration to determine coasting
+State isInCoasting(bool isDecelerating) {
+ if (isDeceleratingContinuously() && millis() >= DECELERATION_CHECK_DURATION) {
+ return State::COASTING;
+ } else {}
+}
+//Checks for velocity is 0 or negative to determine apogee is reached and deploy drogue
+State isInApogee(float velocity, float altitude) {
+ if (velocity <= 0 && altitude >= APOGEE_ALTITUDE) {
+ return State::DROGUE_DEPLOY;
+ } else if (altitude < DROGUE_DEPLOY_MIN_ALTITUDE) {}
+ else {}
+}
+// Checks for an altitude of 450 meteres to deploy the main chute
+State isInMainChuteDeploy(float altitude) {
+ if (altitude <= MAIN_CHUTE_DEPLOY_ALTITUDE) {
+ return State::MAIN_CHUTE_DEPLOY;
+ } else {}
+}
+// Checks for an acceleration equal or greater to gravity to determine post flight
+State isInPostFlight(float acceleration) {
+ if (acceleration >= 9.81f) { // Assuming acceleration due to gravity
+ return State::POST_FLIGHT_GROUND;
+ } else {}
+}
+
+void loop() {
+
+ // Read sensor data
+ float currentAltitude = getAltitude();
+ float velocity = getVelocity();
+ bool isDecelerating = isDeceleratingContinuously();
+
+ if(modf == FLIGHT_MODE) {
+
+ // Call state transition functions
+ currentState = isInPoweredFlight(currentAltitude);
+ currentState = isInCoasting(isDecelerating);
+ currentState = isInApogee(velocity,currentAltitude);
+ currentState = isInMainChuteDeploy(currentAltitude);
+
+ } else {
+ currentState = PRE_FLIGHT_GROUND;
+ }
+
+
+ // State transitions
+ switch (currentState) {
+ case State::PRE_FLIGHT_GROUND:
+ Serial.println( "Pre-Flight State");
+ break;
+ case State::POWERED_FLIGHT:
+ Serial.println("Powered Flight state");
+ break;
+ case State::COASTING:
+ Serial.println("Coasting State");
+ break;
+ case State::DROGUE_DEPLOY:
+ Serial.println("Apogee reached");
+ // Call drogue eject function
+ ejection(DROGUE_PIN);
+ break;
+ case State::DROGUE_DESCENT:
+ Serial.println("Drogue Descent");
+ break;
+ case State::MAIN_CHUTE_DEPLOY:
+ Serial.println("Main Chute Deploy");
+ // Call main chute eject function
+ ejection(MAIN_PIN);
+ break;
+ case State::POST_FLIGHT_GROUND:
+ Serial.println("Post-Flight state");
+ break;
+ default:
+ break;
+ }
+
+ // Delay between loop iterations
+ delay(100); // will adjust as needed
+}
diff --git a/n4-flight-software/src/states.h b/n4-flight-software/src/states.h
deleted file mode 100644
index e69de29..0000000
From 6f5dd01ccfebd48ebeec13b171f32754a585bec2 Mon Sep 17 00:00:00 2001
From: Swooping-Evil <124680355+Swooping-Evil@users.noreply.github.com>
Date: Thu, 15 Aug 2024 11:07:04 +0300
Subject: [PATCH 2/2] Adds state machine changes
---
.../{main.yml => doxygen-gh-pages.yml} | 15 +-
.idea/.gitignore | 8 +
.idea/N4-Flight-Software.iml | 14 +
.idea/inspectionProfiles/Project_Default.xml | 6 +
.idea/modules.xml | 8 +
.idea/vcs.xml | 6 +
n4-flight-software/Doxyfile => Doxyfile | 17 +-
README.md | 2 +-
contributing.md | 195 ++
.../html/_system_log_levels_8h_source.html | 42 +-
.../html/_system_logger_8h_source.html | 42 +-
.../html/annotated.html | 33 +-
docs/html/annotated_dup.js | 16 +
{n4-flight-software => docs}/html/bc_s.png | Bin
{n4-flight-software => docs}/html/bc_sd.png | Bin
.../html/class_custom_g_p_s.html | 38 +-
.../html/class_custom_g_p_s.png | Bin
.../html/class_data_logger-members.html | 35 +-
.../html/class_data_logger.html | 42 +-
docs/html/class_data_logger.js | 12 +
.../html/class_logger_console-members.html | 35 +-
.../html/class_logger_console.html | 38 +-
.../html/class_logger_console.png | Bin
.../html/class_m_p_u6050-members.html | 35 +-
.../html/class_m_p_u6050.html | 42 +-
docs/html/class_m_p_u6050.js | 9 +
.../html/class_state__machine-members.html | 35 +-
.../html/class_state__machine.html | 42 +-
.../html/class_system_logger-members.html | 35 +-
.../html/class_system_logger.html | 40 +-
docs/html/class_system_logger.js | 4 +
.../html/class_system_logger.png | Bin
.../html/class_test-members.html | 35 +-
.../html/class_test.html | 38 +-
.../html/classes.html | 33 +-
.../html/clipboard.js | 0
{n4-flight-software => docs}/html/closed.png | Bin
{n4-flight-software => docs}/html/cookie.js | 0
.../html/custom-time_8h.html | 60 +-
docs/html/custom-time_8h.js | 4 +
.../html/custom-time_8h_source.html | 53 +-
.../html/data-types_8h_source.html | 42 +-
.../html/defs_8h_source.html | 176 +-
.../dir_223c149f86d1b3369d43d9ec6c6d367c.html | 126 ++
.../dir_223c149f86d1b3369d43d9ec6c6d367c.js | 7 +
.../dir_7e35c193691ab641d32e52b2b4a47995.html | 42 +-
.../dir_7e35c193691ab641d32e52b2b4a47995.js | 8 +
.../dir_c7dea9aec5351af29cf9782f17ca3e80.html | 42 +-
.../dir_c7dea9aec5351af29cf9782f17ca3e80.js | 6 +
.../dir_d09072d1c94fe000833aa47d92501a74.html | 44 +-
.../dir_d09072d1c94fe000833aa47d92501a74.js | 10 +
.../dir_f60075fce1cd53b9027038118d904c9d.html | 42 +-
.../dir_f60075fce1cd53b9027038118d904c9d.js | 5 +
{n4-flight-software => docs}/html/doc.svg | 0
{n4-flight-software => docs}/html/docd.svg | 0
{n4-flight-software => docs}/html/doxygen.css | 0
{n4-flight-software => docs}/html/doxygen.svg | 0
.../html/doxygen_crawl.html | 111 +-
.../html/dynsections.js | 0
docs/html/files.html | 139 ++
docs/html/files_dup.js | 4 +
.../html/folderclosed.svg | 0
.../html/folderclosedd.svg | 0
.../html/folderopen.svg | 0
.../html/folderopend.svg | 0
.../html/functions.html | 33 +-
.../html/functions_func.html | 33 +-
docs/html/globals.html | 243 +++
docs/html/globals_defs.html | 121 ++
.../index.html => docs/html/globals_enum.html | 42 +-
docs/html/globals_eval.html | 114 ++
.../html/globals_func.html | 48 +-
.../html/globals_vars.html | 45 +-
.../html/gps_8h_source.html | 42 +-
.../html/hierarchy.html | 33 +-
docs/html/hierarchy.js | 19 +
.../html/include_2state__machine_8cpp.html | 42 +-
.../include_2state__machine_8h_source.html | 42 +-
docs/html/index.html | 237 +++
{n4-flight-software => docs}/html/jquery.js | 0
.../html/kalman_8h_source.html | 42 +-
.../html/logger_8h_source.html | 49 +-
docs/html/logo.jpg | Bin 0 -> 7287 bytes
docs/html/md__r_e_a_d_m_e.html | 343 ++++
docs/html/md_contributing.html | 273 +++
.../md_n4-flight-software_2_r_e_a_d_m_e.html | 35 +-
...-flight-software_2src_2pin-assignment.html | 49 +-
{n4-flight-software => docs}/html/menu.js | 0
{n4-flight-software => docs}/html/menudata.js | 25 +-
{n4-flight-software => docs}/html/minus.svg | 0
{n4-flight-software => docs}/html/minusd.svg | 0
.../html/mpu_8h_source.html | 104 +-
{n4-flight-software => docs}/html/nav_f.png | Bin
{n4-flight-software => docs}/html/nav_fd.png | Bin
{n4-flight-software => docs}/html/nav_g.png | Bin
{n4-flight-software => docs}/html/nav_h.png | Bin
{n4-flight-software => docs}/html/nav_hd.png | Bin
{n4-flight-software => docs}/html/navtree.css | 0
docs/html/navtree.js | 483 +++++
docs/html/navtreedata.js | 77 +
docs/html/navtreeindex0.js | 150 ++
{n4-flight-software => docs}/html/open.png | Bin
{n4-flight-software => docs}/html/pages.html | 36 +-
{n4-flight-software => docs}/html/plus.svg | 0
{n4-flight-software => docs}/html/plusd.svg | 0
{n4-flight-software => docs}/html/resize.js | 0
docs/html/search/all_0.js | 13 +
docs/html/search/all_1.js | 8 +
docs/html/search/all_10.js | 12 +
docs/html/search/all_11.js | 4 +
docs/html/search/all_12.js | 4 +
docs/html/search/all_13.js | 4 +
docs/html/search/all_14.js | 23 +
docs/html/search/all_15.js | 13 +
docs/html/search/all_16.js | 8 +
docs/html/search/all_17.js | 14 +
docs/html/search/all_18.js | 9 +
docs/html/search/all_19.js | 5 +
docs/html/search/all_1a.js | 26 +
docs/html/search/all_1b.js | 30 +
docs/html/search/all_1c.js | 25 +
docs/html/search/all_1d.js | 5 +
docs/html/search/all_1e.js | 8 +
docs/html/search/all_1f.js | 6 +
docs/html/search/all_2.js | 16 +
docs/html/search/all_3.js | 11 +
docs/html/search/all_4.js | 6 +
docs/html/search/all_5.js | 17 +
.../all_5.js => docs/html/search/all_6.js | 3 +-
docs/html/search/all_7.js | 7 +
docs/html/search/all_8.js | 9 +
docs/html/search/all_9.js | 19 +
docs/html/search/all_a.js | 12 +
docs/html/search/all_b.js | 6 +
.../all_9.js => docs/html/search/all_c.js | 0
docs/html/search/all_d.js | 9 +
docs/html/search/all_e.js | 15 +
docs/html/search/all_f.js | 19 +
.../html/search/classes_0.js | 0
.../html/search/classes_1.js | 0
.../html/search/classes_2.js | 0
.../html/search/classes_3.js | 0
.../html/search/classes_4.js | 0
.../html/search/classes_5.js | 0
.../html/search/classes_6.js | 0
.../html/search/classes_7.js | 0
.../html/search/classes_8.js | 0
.../html/search/close.svg | 0
docs/html/search/defines_0.js | 4 +
docs/html/search/defines_1.js | 4 +
docs/html/search/defines_2.js | 4 +
docs/html/search/defines_3.js | 5 +
docs/html/search/defines_4.js | 5 +
docs/html/search/defines_5.js | 4 +
docs/html/search/defines_6.js | 4 +
docs/html/search/enums_0.js | 4 +
docs/html/search/enumvalues_0.js | 4 +
docs/html/search/enumvalues_1.js | 4 +
.../html/search/files_0.js | 0
.../html/search/files_1.js | 0
.../html/search/files_2.js | 3 +-
docs/html/search/functions_0.js | 6 +
docs/html/search/functions_1.js | 7 +
.../html/search/functions_2.js | 3 +-
docs/html/search/functions_3.js | 5 +
.../html/search/functions_4.js | 0
docs/html/search/functions_5.js | 4 +
docs/html/search/functions_6.js | 5 +
docs/html/search/functions_7.js | 14 +
docs/html/search/functions_8.js | 4 +
docs/html/search/functions_9.js | 4 +
.../html/search/functions_a.js | 3 +-
docs/html/search/functions_b.js | 5 +
.../html/search/mag.svg | 0
.../html/search/mag_d.svg | 0
.../html/search/mag_sel.svg | 0
.../html/search/mag_seld.svg | 0
docs/html/search/pages_0.js | 4 +
docs/html/search/pages_1.js | 4 +
docs/html/search/pages_2.js | 4 +
docs/html/search/pages_3.js | 4 +
docs/html/search/pages_4.js | 4 +
docs/html/search/pages_5.js | 4 +
docs/html/search/pages_6.js | 4 +
docs/html/search/pages_7.js | 4 +
docs/html/search/pages_8.js | 4 +
.../html/search/search.css | 0
.../html/search/search.js | 0
.../html/search/searchdata.js | 21 +-
.../html/search/variables_0.js | 0
docs/html/search/variables_1.js | 6 +
.../html/search/variables_2.js | 3 +-
docs/html/search/variables_3.js | 4 +
.../html/search/variables_4.js | 0
.../html/search/variables_5.js | 0
.../html/search/variables_6.js | 0
.../html/search/variables_7.js | 0
docs/html/search/variables_8.js | 5 +
docs/html/search/variables_9.js | 7 +
.../html/search/variables_a.js | 0
docs/html/search/variables_b.js | 4 +
.../html/sensors_8h_source.html | 42 +-
.../html/splitbar.png | Bin
.../html/splitbard.png | Bin
docs/html/src_2main_8cpp.html | 1573 +++++++++++++++++
docs/html/src_2main_8cpp.js | 65 +
docs/html/states_8h.html | 139 ++
docs/html/states_8h_source.html | 131 ++
.../struct_acceleration___data-members.html | 35 +-
.../html/struct_acceleration___data.html | 38 +-
.../html/struct_altimeter___data-members.html | 35 +-
.../html/struct_altimeter___data.html | 38 +-
.../html/struct_filtered___data-members.html | 35 +-
.../html/struct_filtered___data.html | 38 +-
.../html/struct_g_p_s___data-members.html | 35 +-
.../html/struct_g_p_s___data.html | 38 +-
.../html/struct_gyroscope___data-members.html | 35 +-
.../html/struct_gyroscope___data.html | 38 +-
.../html/struct_telemetry___data-members.html | 35 +-
.../html/struct_telemetry___data.html | 38 +-
.../html/sync_off.png | Bin
{n4-flight-software => docs}/html/sync_on.png | Bin
{n4-flight-software => docs}/html/tab_a.png | Bin
{n4-flight-software => docs}/html/tab_ad.png | Bin
{n4-flight-software => docs}/html/tab_b.png | Bin
{n4-flight-software => docs}/html/tab_bd.png | Bin
{n4-flight-software => docs}/html/tab_h.png | Bin
{n4-flight-software => docs}/html/tab_hd.png | Bin
{n4-flight-software => docs}/html/tab_s.png | Bin
{n4-flight-software => docs}/html/tab_sd.png | Bin
{n4-flight-software => docs}/html/tabs.css | 0
.../html/test_2state__machine_8cpp.html | 42 +-
.../html/test_2state__machine_8h_source.html | 42 +-
.../html/test__class_8h_source.html | 42 +-
flight-computer-pin-assignment-version-1.xlsx | Bin 0 -> 11690 bytes
logo.jpg | Bin 0 -> 7287 bytes
mainpage-backup | 0
mainpage.txt | 132 ++
n4-flight-software/data-logger.py | 2 -
n4-flight-software/html/files.html | 123 --
n4-flight-software/html/globals.html | 121 --
n4-flight-software/html/search/all_0.js | 6 -
n4-flight-software/html/search/all_1.js | 4 -
n4-flight-software/html/search/all_2.js | 8 -
n4-flight-software/html/search/all_3.js | 5 -
n4-flight-software/html/search/all_4.js | 11 -
n4-flight-software/html/search/all_7.js | 15 -
n4-flight-software/html/search/all_8.js | 5 -
n4-flight-software/html/search/all_b.js | 10 -
n4-flight-software/html/search/all_c.js | 7 -
n4-flight-software/html/search/all_d.js | 6 -
n4-flight-software/html/search/functions_0.js | 4 -
n4-flight-software/html/search/functions_1.js | 4 -
n4-flight-software/html/search/functions_3.js | 4 -
n4-flight-software/html/search/functions_5.js | 13 -
n4-flight-software/html/search/functions_7.js | 4 -
n4-flight-software/html/search/pages_0.js | 4 -
n4-flight-software/html/search/variables_1.js | 5 -
n4-flight-software/html/search/variables_3.js | 4 -
n4-flight-software/html/search/variables_6.js | 4 -
n4-flight-software/html/src_2main_8cpp.html | 692 --------
n4-flight-software/include/defs.h | 17 +-
n4-flight-software/include/functions.h | 2 +
n4-flight-software/src/.main.cpp.un~ | Bin 0 -> 18625 bytes
n4-flight-software/src/.states.cpp.un~ | Bin 0 -> 5715 bytes
n4-flight-software/src/custom_time.cpp | 23 +
n4-flight-software/src/custom_time.h | 15 +
.../src/{data-types.h => data_types.h} | 0
n4-flight-software/src/img_1.png | Bin 0 -> 35158 bytes
n4-flight-software/src/logger.cpp | 2 +-
n4-flight-software/src/logger.h | 2 +-
n4-flight-software/src/main.cpp | 962 ++++++++--
n4-flight-software/src/mpu.cpp | 5 +-
n4-flight-software/src/mpu.h | 50 +-
n4-flight-software/src/pin_assignment.MD | 2 +
n4-flight-software/src/states.cpp | 30 +-
n4-flight-software/src/states.cpp~ | 21 +
n4-flight-software/src/states.h | 21 +
.../system_log_levels.h} | 8 +-
n4-flight-software/src/system_logger.cpp | 124 ++
n4-flight-software/src/system_logger.h | 17 +
.../system-logger/SystemLogger.cpp | 45 -
.../system-logger/SystemLogger.h | 13 -
.../logger-arduino/logger-arduino.ino | 28 -
.../system-logger/logger-console.cpp | 48 -
.../log_time_fmt_test}/custom-time.h | 7 +-
.../log_time_fmt_test/log_time_fmt_test.ino} | 21 +-
287 files changed, 8141 insertions(+), 2219 deletions(-)
rename .github/workflows/{main.yml => doxygen-gh-pages.yml} (75%)
create mode 100644 .idea/.gitignore
create mode 100644 .idea/N4-Flight-Software.iml
create mode 100644 .idea/inspectionProfiles/Project_Default.xml
create mode 100644 .idea/modules.xml
create mode 100644 .idea/vcs.xml
rename n4-flight-software/Doxyfile => Doxyfile (99%)
create mode 100644 contributing.md
rename {n4-flight-software => docs}/html/_system_log_levels_8h_source.html (77%)
rename {n4-flight-software => docs}/html/_system_logger_8h_source.html (81%)
rename {n4-flight-software => docs}/html/annotated.html (87%)
create mode 100644 docs/html/annotated_dup.js
rename {n4-flight-software => docs}/html/bc_s.png (100%)
rename {n4-flight-software => docs}/html/bc_sd.png (100%)
rename {n4-flight-software => docs}/html/class_custom_g_p_s.html (75%)
rename {n4-flight-software => docs}/html/class_custom_g_p_s.png (100%)
rename {n4-flight-software => docs}/html/class_data_logger-members.html (84%)
rename {n4-flight-software => docs}/html/class_data_logger.html (91%)
create mode 100644 docs/html/class_data_logger.js
rename {n4-flight-software => docs}/html/class_logger_console-members.html (81%)
rename {n4-flight-software => docs}/html/class_logger_console.html (83%)
rename {n4-flight-software => docs}/html/class_logger_console.png (100%)
rename {n4-flight-software => docs}/html/class_m_p_u6050-members.html (91%)
rename {n4-flight-software => docs}/html/class_m_p_u6050.html (94%)
create mode 100644 docs/html/class_m_p_u6050.js
rename {n4-flight-software => docs}/html/class_state__machine-members.html (85%)
rename {n4-flight-software => docs}/html/class_state__machine.html (83%)
rename {n4-flight-software => docs}/html/class_system_logger-members.html (79%)
rename {n4-flight-software => docs}/html/class_system_logger.html (79%)
create mode 100644 docs/html/class_system_logger.js
rename {n4-flight-software => docs}/html/class_system_logger.png (100%)
rename {n4-flight-software => docs}/html/class_test-members.html (79%)
rename {n4-flight-software => docs}/html/class_test.html (79%)
rename {n4-flight-software => docs}/html/classes.html (84%)
rename {n4-flight-software => docs}/html/clipboard.js (100%)
rename {n4-flight-software => docs}/html/closed.png (100%)
rename {n4-flight-software => docs}/html/cookie.js (100%)
rename {n4-flight-software => docs}/html/custom-time_8h.html (67%)
create mode 100644 docs/html/custom-time_8h.js
rename {n4-flight-software => docs}/html/custom-time_8h_source.html (78%)
rename {n4-flight-software => docs}/html/data-types_8h_source.html (89%)
rename {n4-flight-software => docs}/html/defs_8h_source.html (64%)
create mode 100644 docs/html/dir_223c149f86d1b3369d43d9ec6c6d367c.html
create mode 100644 docs/html/dir_223c149f86d1b3369d43d9ec6c6d367c.js
rename n4-flight-software/html/dir_d44c64559bbebec7f509842c48db8b23.html => docs/html/dir_7e35c193691ab641d32e52b2b4a47995.html (78%)
create mode 100644 docs/html/dir_7e35c193691ab641d32e52b2b4a47995.js
rename n4-flight-software/html/dir_13e138d54eb8818da29c3992edef070a.html => docs/html/dir_c7dea9aec5351af29cf9782f17ca3e80.html (76%)
create mode 100644 docs/html/dir_c7dea9aec5351af29cf9782f17ca3e80.js
rename n4-flight-software/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html => docs/html/dir_d09072d1c94fe000833aa47d92501a74.html (79%)
create mode 100644 docs/html/dir_d09072d1c94fe000833aa47d92501a74.js
rename n4-flight-software/html/dir_cef54c92003fea6141f5cbd24377e67d.html => docs/html/dir_f60075fce1cd53b9027038118d904c9d.html (74%)
create mode 100644 docs/html/dir_f60075fce1cd53b9027038118d904c9d.js
rename {n4-flight-software => docs}/html/doc.svg (100%)
rename {n4-flight-software => docs}/html/docd.svg (100%)
rename {n4-flight-software => docs}/html/doxygen.css (100%)
rename {n4-flight-software => docs}/html/doxygen.svg (100%)
rename {n4-flight-software => docs}/html/doxygen_crawl.html (60%)
rename {n4-flight-software => docs}/html/dynsections.js (100%)
create mode 100644 docs/html/files.html
create mode 100644 docs/html/files_dup.js
rename {n4-flight-software => docs}/html/folderclosed.svg (100%)
rename {n4-flight-software => docs}/html/folderclosedd.svg (100%)
rename {n4-flight-software => docs}/html/folderopen.svg (100%)
rename {n4-flight-software => docs}/html/folderopend.svg (100%)
rename {n4-flight-software => docs}/html/functions.html (83%)
rename {n4-flight-software => docs}/html/functions_func.html (83%)
create mode 100644 docs/html/globals.html
create mode 100644 docs/html/globals_defs.html
rename n4-flight-software/html/index.html => docs/html/globals_enum.html (70%)
create mode 100644 docs/html/globals_eval.html
rename {n4-flight-software => docs}/html/globals_func.html (60%)
rename {n4-flight-software => docs}/html/globals_vars.html (67%)
rename {n4-flight-software => docs}/html/gps_8h_source.html (80%)
rename {n4-flight-software => docs}/html/hierarchy.html (87%)
create mode 100644 docs/html/hierarchy.js
rename {n4-flight-software => docs}/html/include_2state__machine_8cpp.html (86%)
rename {n4-flight-software => docs}/html/include_2state__machine_8h_source.html (80%)
create mode 100644 docs/html/index.html
rename {n4-flight-software => docs}/html/jquery.js (100%)
rename {n4-flight-software => docs}/html/kalman_8h_source.html (79%)
rename {n4-flight-software => docs}/html/logger_8h_source.html (88%)
create mode 100644 docs/html/logo.jpg
create mode 100644 docs/html/md__r_e_a_d_m_e.html
create mode 100644 docs/html/md_contributing.html
rename n4-flight-software/html/md__r_e_a_d_m_e.html => docs/html/md_n4-flight-software_2_r_e_a_d_m_e.html (75%)
rename n4-flight-software/html/states_8h_source.html => docs/html/md_n4-flight-software_2src_2pin-assignment.html (71%)
rename {n4-flight-software => docs}/html/menu.js (100%)
rename {n4-flight-software => docs}/html/menudata.js (67%)
rename {n4-flight-software => docs}/html/minus.svg (100%)
rename {n4-flight-software => docs}/html/minusd.svg (100%)
rename {n4-flight-software => docs}/html/mpu_8h_source.html (77%)
rename {n4-flight-software => docs}/html/nav_f.png (100%)
rename {n4-flight-software => docs}/html/nav_fd.png (100%)
rename {n4-flight-software => docs}/html/nav_g.png (100%)
rename {n4-flight-software => docs}/html/nav_h.png (100%)
rename {n4-flight-software => docs}/html/nav_hd.png (100%)
rename {n4-flight-software => docs}/html/navtree.css (100%)
create mode 100644 docs/html/navtree.js
create mode 100644 docs/html/navtreedata.js
create mode 100644 docs/html/navtreeindex0.js
rename {n4-flight-software => docs}/html/open.png (100%)
rename {n4-flight-software => docs}/html/pages.html (72%)
rename {n4-flight-software => docs}/html/plus.svg (100%)
rename {n4-flight-software => docs}/html/plusd.svg (100%)
rename {n4-flight-software => docs}/html/resize.js (100%)
create mode 100644 docs/html/search/all_0.js
create mode 100644 docs/html/search/all_1.js
create mode 100644 docs/html/search/all_10.js
create mode 100644 docs/html/search/all_11.js
create mode 100644 docs/html/search/all_12.js
create mode 100644 docs/html/search/all_13.js
create mode 100644 docs/html/search/all_14.js
create mode 100644 docs/html/search/all_15.js
create mode 100644 docs/html/search/all_16.js
create mode 100644 docs/html/search/all_17.js
create mode 100644 docs/html/search/all_18.js
create mode 100644 docs/html/search/all_19.js
create mode 100644 docs/html/search/all_1a.js
create mode 100644 docs/html/search/all_1b.js
create mode 100644 docs/html/search/all_1c.js
create mode 100644 docs/html/search/all_1d.js
create mode 100644 docs/html/search/all_1e.js
create mode 100644 docs/html/search/all_1f.js
create mode 100644 docs/html/search/all_2.js
create mode 100644 docs/html/search/all_3.js
create mode 100644 docs/html/search/all_4.js
create mode 100644 docs/html/search/all_5.js
rename n4-flight-software/html/search/all_5.js => docs/html/search/all_6.js (76%)
create mode 100644 docs/html/search/all_7.js
create mode 100644 docs/html/search/all_8.js
create mode 100644 docs/html/search/all_9.js
create mode 100644 docs/html/search/all_a.js
create mode 100644 docs/html/search/all_b.js
rename n4-flight-software/html/search/all_9.js => docs/html/search/all_c.js (100%)
create mode 100644 docs/html/search/all_d.js
create mode 100644 docs/html/search/all_e.js
create mode 100644 docs/html/search/all_f.js
rename {n4-flight-software => docs}/html/search/classes_0.js (100%)
rename {n4-flight-software => docs}/html/search/classes_1.js (100%)
rename {n4-flight-software => docs}/html/search/classes_2.js (100%)
rename {n4-flight-software => docs}/html/search/classes_3.js (100%)
rename {n4-flight-software => docs}/html/search/classes_4.js (100%)
rename {n4-flight-software => docs}/html/search/classes_5.js (100%)
rename {n4-flight-software => docs}/html/search/classes_6.js (100%)
rename {n4-flight-software => docs}/html/search/classes_7.js (100%)
rename {n4-flight-software => docs}/html/search/classes_8.js (100%)
rename {n4-flight-software => docs}/html/search/close.svg (100%)
create mode 100644 docs/html/search/defines_0.js
create mode 100644 docs/html/search/defines_1.js
create mode 100644 docs/html/search/defines_2.js
create mode 100644 docs/html/search/defines_3.js
create mode 100644 docs/html/search/defines_4.js
create mode 100644 docs/html/search/defines_5.js
create mode 100644 docs/html/search/defines_6.js
create mode 100644 docs/html/search/enums_0.js
create mode 100644 docs/html/search/enumvalues_0.js
create mode 100644 docs/html/search/enumvalues_1.js
rename {n4-flight-software => docs}/html/search/files_0.js (100%)
rename {n4-flight-software => docs}/html/search/files_1.js (100%)
rename {n4-flight-software => docs}/html/search/files_2.js (57%)
create mode 100644 docs/html/search/functions_0.js
create mode 100644 docs/html/search/functions_1.js
rename {n4-flight-software => docs}/html/search/functions_2.js (51%)
create mode 100644 docs/html/search/functions_3.js
rename {n4-flight-software => docs}/html/search/functions_4.js (100%)
create mode 100644 docs/html/search/functions_5.js
create mode 100644 docs/html/search/functions_6.js
create mode 100644 docs/html/search/functions_7.js
create mode 100644 docs/html/search/functions_8.js
create mode 100644 docs/html/search/functions_9.js
rename n4-flight-software/html/search/functions_6.js => docs/html/search/functions_a.js (77%)
create mode 100644 docs/html/search/functions_b.js
rename {n4-flight-software => docs}/html/search/mag.svg (100%)
rename {n4-flight-software => docs}/html/search/mag_d.svg (100%)
rename {n4-flight-software => docs}/html/search/mag_sel.svg (100%)
rename {n4-flight-software => docs}/html/search/mag_seld.svg (100%)
create mode 100644 docs/html/search/pages_0.js
create mode 100644 docs/html/search/pages_1.js
create mode 100644 docs/html/search/pages_2.js
create mode 100644 docs/html/search/pages_3.js
create mode 100644 docs/html/search/pages_4.js
create mode 100644 docs/html/search/pages_5.js
create mode 100644 docs/html/search/pages_6.js
create mode 100644 docs/html/search/pages_7.js
create mode 100644 docs/html/search/pages_8.js
rename {n4-flight-software => docs}/html/search/search.css (100%)
rename {n4-flight-software => docs}/html/search/search.js (100%)
rename {n4-flight-software => docs}/html/search/searchdata.js (52%)
rename {n4-flight-software => docs}/html/search/variables_0.js (100%)
create mode 100644 docs/html/search/variables_1.js
rename {n4-flight-software => docs}/html/search/variables_2.js (77%)
create mode 100644 docs/html/search/variables_3.js
rename n4-flight-software/html/search/all_6.js => docs/html/search/variables_4.js (100%)
rename n4-flight-software/html/search/variables_4.js => docs/html/search/variables_5.js (100%)
rename n4-flight-software/html/search/variables_5.js => docs/html/search/variables_6.js (100%)
rename n4-flight-software/html/search/all_a.js => docs/html/search/variables_7.js (100%)
create mode 100644 docs/html/search/variables_8.js
create mode 100644 docs/html/search/variables_9.js
rename n4-flight-software/html/search/variables_7.js => docs/html/search/variables_a.js (100%)
create mode 100644 docs/html/search/variables_b.js
rename {n4-flight-software => docs}/html/sensors_8h_source.html (77%)
rename {n4-flight-software => docs}/html/splitbar.png (100%)
rename {n4-flight-software => docs}/html/splitbard.png (100%)
create mode 100644 docs/html/src_2main_8cpp.html
create mode 100644 docs/html/src_2main_8cpp.js
create mode 100644 docs/html/states_8h.html
create mode 100644 docs/html/states_8h_source.html
rename {n4-flight-software => docs}/html/struct_acceleration___data-members.html (82%)
rename {n4-flight-software => docs}/html/struct_acceleration___data.html (83%)
rename {n4-flight-software => docs}/html/struct_altimeter___data-members.html (82%)
rename {n4-flight-software => docs}/html/struct_altimeter___data.html (82%)
rename {n4-flight-software => docs}/html/struct_filtered___data-members.html (78%)
rename {n4-flight-software => docs}/html/struct_filtered___data.html (77%)
rename {n4-flight-software => docs}/html/struct_g_p_s___data-members.html (81%)
rename {n4-flight-software => docs}/html/struct_g_p_s___data.html (81%)
rename {n4-flight-software => docs}/html/struct_gyroscope___data-members.html (80%)
rename {n4-flight-software => docs}/html/struct_gyroscope___data.html (80%)
rename {n4-flight-software => docs}/html/struct_telemetry___data-members.html (83%)
rename {n4-flight-software => docs}/html/struct_telemetry___data.html (84%)
rename {n4-flight-software => docs}/html/sync_off.png (100%)
rename {n4-flight-software => docs}/html/sync_on.png (100%)
rename {n4-flight-software => docs}/html/tab_a.png (100%)
rename {n4-flight-software => docs}/html/tab_ad.png (100%)
rename {n4-flight-software => docs}/html/tab_b.png (100%)
rename {n4-flight-software => docs}/html/tab_bd.png (100%)
rename {n4-flight-software => docs}/html/tab_h.png (100%)
rename {n4-flight-software => docs}/html/tab_hd.png (100%)
rename {n4-flight-software => docs}/html/tab_s.png (100%)
rename {n4-flight-software => docs}/html/tab_sd.png (100%)
rename {n4-flight-software => docs}/html/tabs.css (100%)
rename {n4-flight-software => docs}/html/test_2state__machine_8cpp.html (72%)
rename {n4-flight-software => docs}/html/test_2state__machine_8h_source.html (81%)
rename {n4-flight-software => docs}/html/test__class_8h_source.html (78%)
create mode 100644 flight-computer-pin-assignment-version-1.xlsx
create mode 100644 logo.jpg
create mode 100644 mainpage-backup
create mode 100644 mainpage.txt
delete mode 100644 n4-flight-software/html/files.html
delete mode 100644 n4-flight-software/html/globals.html
delete mode 100644 n4-flight-software/html/search/all_0.js
delete mode 100644 n4-flight-software/html/search/all_1.js
delete mode 100644 n4-flight-software/html/search/all_2.js
delete mode 100644 n4-flight-software/html/search/all_3.js
delete mode 100644 n4-flight-software/html/search/all_4.js
delete mode 100644 n4-flight-software/html/search/all_7.js
delete mode 100644 n4-flight-software/html/search/all_8.js
delete mode 100644 n4-flight-software/html/search/all_b.js
delete mode 100644 n4-flight-software/html/search/all_c.js
delete mode 100644 n4-flight-software/html/search/all_d.js
delete mode 100644 n4-flight-software/html/search/functions_0.js
delete mode 100644 n4-flight-software/html/search/functions_1.js
delete mode 100644 n4-flight-software/html/search/functions_3.js
delete mode 100644 n4-flight-software/html/search/functions_5.js
delete mode 100644 n4-flight-software/html/search/functions_7.js
delete mode 100644 n4-flight-software/html/search/pages_0.js
delete mode 100644 n4-flight-software/html/search/variables_1.js
delete mode 100644 n4-flight-software/html/search/variables_3.js
delete mode 100644 n4-flight-software/html/search/variables_6.js
delete mode 100644 n4-flight-software/html/src_2main_8cpp.html
create mode 100644 n4-flight-software/src/.main.cpp.un~
create mode 100644 n4-flight-software/src/.states.cpp.un~
create mode 100644 n4-flight-software/src/custom_time.cpp
create mode 100644 n4-flight-software/src/custom_time.h
rename n4-flight-software/src/{data-types.h => data_types.h} (100%)
create mode 100644 n4-flight-software/src/img_1.png
create mode 100644 n4-flight-software/src/pin_assignment.MD
create mode 100644 n4-flight-software/src/states.cpp~
create mode 100644 n4-flight-software/src/states.h
rename n4-flight-software/{system-logger/SystemLogLevels.h => src/system_log_levels.h} (77%)
create mode 100644 n4-flight-software/src/system_logger.cpp
create mode 100644 n4-flight-software/src/system_logger.h
delete mode 100644 n4-flight-software/system-logger/SystemLogger.cpp
delete mode 100644 n4-flight-software/system-logger/SystemLogger.h
delete mode 100644 n4-flight-software/system-logger/logger-arduino/logger-arduino.ino
delete mode 100644 n4-flight-software/system-logger/logger-console.cpp
rename n4-flight-software/{src => test/log_time_fmt_test}/custom-time.h (75%)
rename n4-flight-software/{src/custom-time.cpp => test/log_time_fmt_test/log_time_fmt_test.ino} (67%)
diff --git a/.github/workflows/main.yml b/.github/workflows/doxygen-gh-pages.yml
similarity index 75%
rename from .github/workflows/main.yml
rename to .github/workflows/doxygen-gh-pages.yml
index 27099c4..51f363f 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/doxygen-gh-pages.yml
@@ -1,9 +1,9 @@
# This is a basic workflow to help you get started with Actions
-name: Doxygen Action
+name: Doxygen-Documentation
# Controls when the action will run. Triggers the workflow on push or pull request
-# events but only for the main branch
+# events but only for the master branch
on:
push:
branches: [ main ]
@@ -19,19 +19,22 @@ jobs:
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v2
-
+
+ # build the doxygen documentation
- name: Doxygen Action
uses: mattnotmitt/doxygen-action@v1.1.0
with:
# Path to Doxyfile
- doxyfile-path: "./Doxyfile" # default is ./Doxyfile
+ doxyfile-path: ./Doxyfile # default is ./Doxyfile
# Working directory
- working-directory: "." # default is .
+ working-directory: . # default is .
+ # Deploy the HTML documentation to GitHub Pages
- name: Deploy
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
# Default Doxyfile build documentation to html directory.
# Change the directory if changes in Doxyfile
- publish_dir: ./html
\ No newline at end of file
+ publish_dir: ./docs/html/
+ publish_branch: gh-pages
\ No newline at end of file
diff --git a/.idea/.gitignore b/.idea/.gitignore
new file mode 100644
index 0000000..8fe0ea1
--- /dev/null
+++ b/.idea/.gitignore
@@ -0,0 +1,8 @@
+# Default ignored files
+/shelf/
+/workspace.xml
+# Datasource local storage ignored files
+/../../../../../:\5th-year\project\N4-Flight-Software\.idea/dataSources/
+/dataSources.local.xml
+# Editor-based HTTP Client requests
+/httpRequests/
diff --git a/.idea/N4-Flight-Software.iml b/.idea/N4-Flight-Software.iml
new file mode 100644
index 0000000..bc83c75
--- /dev/null
+++ b/.idea/N4-Flight-Software.iml
@@ -0,0 +1,14 @@
+
+