Index: firmware/App/Modes/ModeGenPermeate.c =================================================================== diff -u -ra0a4c6a3de76e9e2fae289fdc13be7145d79e1ee -rc6491e96503a221cd9524da289522afd3eb00b29 --- firmware/App/Modes/ModeGenPermeate.c (.../ModeGenPermeate.c) (revision a0a4c6a3de76e9e2fae289fdc13be7145d79e1ee) +++ firmware/App/Modes/ModeGenPermeate.c (.../ModeGenPermeate.c) (revision c6491e96503a221cd9524da289522afd3eb00b29) @@ -205,21 +205,16 @@ RO_GENP_MODE_STATE_T state = RO_GENP_WATER_LOW_STATE; LEVEL_STATE_T level = getLevelStatus(); - if (LEVEL_STATE_LOW == level ) + if ( LEVEL_STATE_HIGH == level ) { - // TODO: Trigger fault alarm. Turn off heater. - // TODO: We need to wait for tank to fill to medium. - } - - else if ( LEVEL_STATE_HIGH == level ) - { setModeGenPStateTransition( RO_GENP_WATER_FULL_STATE ); state = RO_GENP_WATER_FULL_STATE; } - else if ( LEVEL_STATE_MEDIUM == level ) + else if ( LEVEL_STATE_MEDIUM <= level ) { // expected state. No action required. + // If level is low we still want to fill. } return state; @@ -237,9 +232,9 @@ RO_GENP_MODE_STATE_T state = RO_GENP_WATER_FULL_STATE; LEVEL_STATE_T level = getLevelStatus(); - if (LEVEL_STATE_LOW == level ) + if ( LEVEL_STATE_LOW == level ) { - // TODO: Trigger fault alarm. Turn off heater. + // TODO: Turn off heater. } else if ( ( LEVEL_STATE_MEDIUM >= level ) && ( TRUE == didTimeout( stateDelayTime, GEN_PERMEATE_TIMEOUT_MS ) ) ) Index: firmware/App/Modes/ModeStandby.c =================================================================== diff -u -r709198d46039f3bd6e9fd62b291e6856e5ebd553 -rc6491e96503a221cd9524da289522afd3eb00b29 --- firmware/App/Modes/ModeStandby.c (.../ModeStandby.c) (revision 709198d46039f3bd6e9fd62b291e6856e5ebd553) +++ firmware/App/Modes/ModeStandby.c (.../ModeStandby.c) (revision c6491e96503a221cd9524da289522afd3eb00b29) @@ -74,7 +74,6 @@ *************************************************************************/ U32 execStandbyMode( void ) { - // execute current Standby state switch ( standbyState ) { Index: firmware/App/Monitors/Level.h =================================================================== diff -u -r72ae21d8343d3a2b07a47452ff48549e25f876df -rc6491e96503a221cd9524da289522afd3eb00b29 --- firmware/App/Monitors/Level.h (.../Level.h) (revision 72ae21d8343d3a2b07a47452ff48549e25f876df) +++ firmware/App/Monitors/Level.h (.../Level.h) (revision c6491e96503a221cd9524da289522afd3eb00b29) @@ -35,8 +35,8 @@ typedef enum level_States { LEVEL_STATE_LOW = 0, ///< Low level - LEVEL_STATE_HIGH, ///< High level LEVEL_STATE_MEDIUM, ///< Medium level + LEVEL_STATE_HIGH, ///< High level LEVEL_STATE_ILLEGAL, ///< Illegal level NUM_OF_LEVELS_STATES ///< Number of level states } LEVEL_STATE_T;