Index: firmware/App/Modes/FPModes/ModeGenPermeateDefeatured.c =================================================================== diff -u -r47a7b0fce13cf38919932a8662c378f4f6a8b9f3 -rcb8619fdf8690885708071d34b0e87e6657ecd62 --- firmware/App/Modes/FPModes/ModeGenPermeateDefeatured.c (.../ModeGenPermeateDefeatured.c) (revision 47a7b0fce13cf38919932a8662c378f4f6a8b9f3) +++ firmware/App/Modes/FPModes/ModeGenPermeateDefeatured.c (.../ModeGenPermeateDefeatured.c) (revision cb8619fdf8690885708071d34b0e87e6657ecd62) @@ -273,6 +273,43 @@ /*********************************************************************//** * @brief + * The signalNewGenPDefeaturedSubMode function requests transition to a new + * defeatured Gen Permeate sub mode. + * @details \b Alarm: ALARM_ID_FP_SOFTWARE_FAULT if given new sub mode is invalid. + * @details \b Inputs: none + * @details \b Outputs: none + * @return TRUE if request successful, FALSE if not + *************************************************************************/ +BOOL signalNewGenPDefeaturedSubMode( U32 newSubMode ) +{ + BOOL result = FALSE; + FP_GENP_DEF_MODE_STATE_T reqSubMode = (FP_GENP_DEF_MODE_STATE_T)newSubMode; + + if ( reqSubMode < NUM_OF_FP_GENP_DEF_MODE_STATES ) + { + switch ( reqSubMode ) + { + case FP_GENP_DEF_SUPPLY_WATER: + genPermeateDefState = FP_GENP_DEF_SUPPLY_WATER; + setModeGenPDefTransition( reqSubMode ); + break; + + case FP_GENP_DEF_PAUSED: + genPermeateDefState = FP_GENP_DEF_PAUSED; + setModeGenPDefTransition( reqSubMode ); + break; + + default: + break; + } + result = TRUE; // TODO can this be a void function + } + + return result; +} + +/*********************************************************************//** + * @brief * The getGenPermeateDataPublishInterval function gets the generate permeate * defeatured mode data publish interval. * @details \b Inputs: genPermeateDefDataPublishInterval