Index: firmware/App/Modes/OperationModes.c =================================================================== diff -u -rbf3ba65cafc8cbfb34e03d9fb2fc248069a8addb -r9ad496e4c3a54e96402afd66955be575bdaa3f57 --- firmware/App/Modes/OperationModes.c (.../OperationModes.c) (revision bf3ba65cafc8cbfb34e03d9fb2fc248069a8addb) +++ firmware/App/Modes/OperationModes.c (.../OperationModes.c) (revision 9ad496e4c3a54e96402afd66955be575bdaa3f57) @@ -18,6 +18,7 @@ #include "Messaging.h" #include "ModeInitPOST.h" #include "ModeFault.h" +#include "ModeGenPermeate.h" #include "ModeStandby.h" #include "OperationModes.h" #include "TaskGeneral.h" @@ -51,7 +52,8 @@ /* FAUL */{ RO_MODE_FAUL, RO_MODE_SERV, RO_MODE_NLEG, RO_MODE_NLEG }, /* SERV */{ RO_MODE_FAUL, RO_MODE_SERV, RO_MODE_NLEG, RO_MODE_NLEG }, /* INIT */{ RO_MODE_FAUL, RO_MODE_NLEG, RO_MODE_INIT, RO_MODE_STAN }, -/* STAN */{ RO_MODE_FAUL, RO_MODE_SERV, RO_MODE_NLEG, RO_MODE_STAN } }; +/* STAN */{ RO_MODE_FAUL, RO_MODE_SERV, RO_MODE_NLEG, RO_MODE_STAN }, +/* GEN_PERM */{ RO_MODE_FAUL, RO_MODE_SERV, RO_MODE_NLEG, RO_MODE_STAN } }; // ********** private function prototypes ********** @@ -91,6 +93,7 @@ // initServiceMode(); initInitAndPOSTMode(); initStandbyMode(); + initGenPermeateMode(); } /*********************************************************************//** @@ -148,6 +151,9 @@ currentSubMode = execStandbyMode(); break; + case RO_MODE_GEN_PERM: + currentSubMode = execGenPermeateMode(); + default: SET_ALARM_WITH_2_U32_DATA( ALARM_ID_RO_SOFTWARE_FAULT, SW_FAULT_ID_OP_MODES_INVALID_MODE_STATE, currentMode ) currentMode = RO_MODE_FAUL; @@ -285,15 +291,23 @@ case RO_MODE_FAUL: currentSubMode = transitionToFaultMode(); break; + case RO_MODE_SERV: // currentSubMode = transitionToServiceMode(); break; + case RO_MODE_INIT: currentSubMode = transitionToInitAndPOSTMode(); break; + case RO_MODE_STAN: currentSubMode = transitionToStandbyMode(); break; + + case RO_MODE_GEN_PERM: + currentSubMode = transitionToGenPermeateMode(); + break; + default: SET_ALARM_WITH_2_U32_DATA( ALARM_ID_RO_SOFTWARE_FAULT, SW_FAULT_ID_OP_MODES_INVALID_MODE_TO_TRANSITION_TO, newMode ) break;