Index: firmware/App/Modes/ModeDrain.c =================================================================== diff -u -r300bdc1d729828fd4492bc905bb33faf5529cbda -rcc10d34b632240d97424531ac43dcf09c7ae94ed --- firmware/App/Modes/ModeDrain.c (.../ModeDrain.c) (revision 300bdc1d729828fd4492bc905bb33faf5529cbda) +++ firmware/App/Modes/ModeDrain.c (.../ModeDrain.c) (revision cc10d34b632240d97424531ac43dcf09c7ae94ed) @@ -272,7 +272,9 @@ DG_RESERVOIR_ID_T inactiveReservoir = getInactiveReservoir(); U32 targetVolumeML = getTargetDrainVolumeML(); BOOL drainStatus = FALSE; + HD_MODE_SUB_MODE_T mode; + getHDOperationMode( &mode ); if ( 0 == targetVolumeML ) { drainStatus = hasTargetDrainToZeroBeenReached( inactiveReservoir, DRAIN_WEIGHT_UNCHANGE_TIMEOUT_MS ); @@ -318,17 +320,29 @@ { resetChemicalUsedVolumeML( ACID ); setThisFirstFillFlag( TRUE ); // indicates bottles need prime - activateAlarmNoData( ALARM_ID_DG_ACID_BOTTLE_LOW_VOLUME ); - activateAlarmNoData ( ALARM_ID_DG_CREATING_DIALYSATE_PLEASE_WAIT ); + + // Alarm only valid in pre-treatment or treatment modes + if ( ( mode.hdMode == MODE_PRET ) || + ( mode.hdMode == MODE_TREA ) ) + { + activateAlarmNoData( ALARM_ID_DG_ACID_BOTTLE_LOW_VOLUME ); + activateAlarmNoData ( ALARM_ID_DG_CREATING_DIALYSATE_PLEASE_WAIT ); + } } if ( ( ( bicarbBottleVolML - getChemicalUsedVolumeML( BICARB ) ) <= CONCENTRATE_BOTTLE_BICARB_LOW_VOLUME_ML ) && // SRSDG 837 ( getTestConfigStatus( TEST_CONFIG_MIX_WITH_WATER ) != TRUE ) ) { resetChemicalUsedVolumeML( BICARB ); setThisFirstFillFlag( TRUE ); - activateAlarmNoData( ALARM_ID_DG_BICARB_BOTTLE_LOW_VOLUME ); - activateAlarmNoData ( ALARM_ID_DG_CREATING_DIALYSATE_PLEASE_WAIT ); + + // Alarm only valid in pre-treatment or treatment modes + if ( ( mode.hdMode == MODE_PRET ) || + ( mode.hdMode == MODE_TREA ) ) + { + activateAlarmNoData( ALARM_ID_DG_BICARB_BOTTLE_LOW_VOLUME ); + activateAlarmNoData ( ALARM_ID_DG_CREATING_DIALYSATE_PLEASE_WAIT ); + } } }