Index: firmware/App/Modes/ModeFill.c =================================================================== diff -u -r59b7b1cd099ab5a5e943fb5307aec264cbadb51a -reca8d3222a8fbcda268c8ea1c004dfe0a7ed30db --- firmware/App/Modes/ModeFill.c (.../ModeFill.c) (revision 59b7b1cd099ab5a5e943fb5307aec264cbadb51a) +++ firmware/App/Modes/ModeFill.c (.../ModeFill.c) (revision eca8d3222a8fbcda268c8ea1c004dfe0a7ed30db) @@ -941,6 +941,14 @@ } } + if ( TRUE == getEmpytBottleDetectedFlag() ) + { + // If the alarm was triggered due to the empty bottle alarm, clear the alarm since we are at the end of the fill + // Set the empty bottle flag to false since we are done + clearAlarm( ALARM_ID_DG_CREATING_DIALYSATE_PLEASE_WAIT ); + setEmptyBottleDetectedFlag( FALSE ); + } + // SRSDG 400 if ( ( FALSE == isValueWithinPercentRange( avgBicarbConduSPerCM, bicarbNormalConduSPerCM, FIVE_PERCENT_FACTOR ) ) && ( getTargetFillVolumeML() > MIN_FILL_TARGET_TO_CHECK_RO_AND_CPO_ML ) && ( getTestConfigStatus( TEST_CONFIG_MIX_WITH_WATER ) != TRUE ) ) Index: firmware/App/Modes/ModeGenIdle.c =================================================================== diff -u -r728c213b3958b98a416772d3857f08e390fd04fe -reca8d3222a8fbcda268c8ea1c004dfe0a7ed30db --- firmware/App/Modes/ModeGenIdle.c (.../ModeGenIdle.c) (revision 728c213b3958b98a416772d3857f08e390fd04fe) +++ firmware/App/Modes/ModeGenIdle.c (.../ModeGenIdle.c) (revision eca8d3222a8fbcda268c8ea1c004dfe0a7ed30db) @@ -212,6 +212,19 @@ /*********************************************************************//** * @brief + * The getEmpytBottleDetectedFlag function returns the status of the empty + * bottle detected flag. + * @details Inputs: handleEmptyBottleFlag + * @details Outputs: none + * @return the status of the empty bottle flag + *************************************************************************/ +BOOL getEmpytBottleDetectedFlag( void ) +{ + return handleEmptyBottleFlag; +} + +/*********************************************************************//** + * @brief * The execGenIdleMode function executes the generation idle mode state machine. * @details Inputs: genIdleState * @details Outputs: Check water quality, generation idle mode state machine executed @@ -304,7 +317,6 @@ { // Empty bottle flag is TRUE and HD is on pause. So HD will not request a fill and it is // commanded to fill. - handleEmptyBottleFlag = FALSE; requestNewOperationMode( DG_MODE_FILL ); } Index: firmware/App/Modes/ModeGenIdle.h =================================================================== diff -u -r728c213b3958b98a416772d3857f08e390fd04fe -reca8d3222a8fbcda268c8ea1c004dfe0a7ed30db --- firmware/App/Modes/ModeGenIdle.h (.../ModeGenIdle.h) (revision 728c213b3958b98a416772d3857f08e390fd04fe) +++ firmware/App/Modes/ModeGenIdle.h (.../ModeGenIdle.h) (revision eca8d3222a8fbcda268c8ea1c004dfe0a7ed30db) @@ -47,6 +47,7 @@ U32 execGenIdleMode( void ); // execute the generation idle mode state machine (call from OperationModes) void setBadAvgConductivityDetectedFlag( BOOL badAvgConducitivyflag ); // used by fill mode to signal idle mode of bad average conductivity void setEmptyBottleDetectedFlag( BOOL emptyBottleFlag ); +BOOL getEmpytBottleDetectedFlag( void ); DG_GEN_IDLE_MODE_STATE_T getCurrentGenIdleState( void ); // get the current state of generation idle mode DG_GEN_IDLE_MODE_BAD_FILL_STATE_T getCurrentGenIdleBadFillState( void ); // get the current bad fill state