Index: firmware/App/Services/Reservoirs.c =================================================================== diff -u -r6f0304ba16597df68b05fb2af2d1a45b6c43b0ca -re12f811f0ee96b19d869acee5352778d260e1ac3 --- firmware/App/Services/Reservoirs.c (.../Reservoirs.c) (revision 6f0304ba16597df68b05fb2af2d1a45b6c43b0ca) +++ firmware/App/Services/Reservoirs.c (.../Reservoirs.c) (revision e12f811f0ee96b19d869acee5352778d260e1ac3) @@ -50,7 +50,6 @@ #define MAX_RESERVOIR_DEPLETION_TIME_MS ( 30 * SEC_PER_MIN * MS_PER_SECOND ) ///< Maximum allowed depletion time in milliseconds. #define RESERVOIR_DATA_PUB_INTERVAL ( MS_PER_SECOND / TASK_GENERAL_INTERVAL ) ///< Interval (ms/task time) at which the reservoir data is published on the CAN bus. -#define RESERVOIR_DEPLETION_INTERVAL ( MAX_RESERVOIR_DEPLETION_TIME_MS / TASK_GENERAL_INTERVAL ) ///< Interval (ms/task time) for maximum allowed depletion time. #define DIALYSATE_FLOW_RATE_350_ML_PER_MIN 0.35F ///< Dialysate flow rate 350 mL/min. #define DIALYSATE_FLOW_RATE_550_ML_PER_MIN 0.55F ///< Dialysate flow rate 550 mL/min. @@ -104,7 +103,6 @@ // ********** private function prototypes ********** // Reservoir management functions -static void checkReservoirDepletionTime( void ); static void checkReservoirMaxVolume( void ); static F32 getTargetFillFlowRateLPM( void ); static U32 getFillTimeMS( void ); @@ -190,7 +188,6 @@ dgSubMode = getDGSubMode(); ratios = getDGMixingRatios(); - checkReservoirDepletionTime(); checkReservoirMaxVolume(); calculateActiveReservoirCycleTime(); @@ -292,28 +289,6 @@ /*********************************************************************//** * @brief - * The checkReservoirDepletionTime function checks whether the active reservoir's - * depletion time has elapsed or not. If it has elapsed, it raises an alarm. - * @details Inputs: timeStartMS - * @details Outputs: none - * @return none - *************************************************************************/ -static void checkReservoirDepletionTime( void ) -{ - // Check if the time that the reservoir has been use has exceeded the limit - if ( timeReservoirInUse >= RESERVOIR_DEPLETION_INTERVAL ) - { -#ifndef _RELEASE_ - if ( getSoftwareConfigStatus( SW_CONFIG_DISABLE_RESERVOIRS_ALARMS ) != SW_CONFIG_ENABLE_VALUE ) -#endif - { - SET_ALARM_WITH_1_U32_DATA( ALARM_ID_HD_ACTIVE_RESERVOIR_DEPLETION_TIME_OUT, (timeReservoirInUse * TASK_GENERAL_INTERVAL) ) - } - } -} - -/*********************************************************************//** - * @brief * The checkReservoirMaxVolume function checks whether the active reservoir's * filled volume has exceeded maximum allowed value in milliliters. If it has * exceeded, it raises an alarm. @@ -653,7 +628,6 @@ { // Clear any of the recoverable conditions in case they were raised during the fill or wait to fill clearAlarmCondition( ALARM_ID_HD_ACTIVE_RESERVOIR_RECIRCULATION_OUT_OF_RANGE ); - clearAlarmCondition( ALARM_ID_HD_ACTIVE_RESERVOIR_DEPLETION_TIME_OUT ); clearAlarmCondition( ALARM_ID_HD_ACTIVE_RESERVOIR_WEIGHT_OUT_OF_RANGE ); reservoirSwitchStartTimeMS = getMSTimerCount(); @@ -726,14 +700,14 @@ if ( TRUE == didTimeout( reservoirSwitchStartTimeMS, RESERVOIR_USED_SETTLE_TIME_MS ) ) { - // Signal dialysis sub-mode to capture final volume of prior reservoir after settling. - setFinalReservoirVolume(); - - // Switched the active reservoir so reset the reservoir in use timer + // Switching the active reservoir so reset the reservoir in use timer lastTimeReservoirInUF = timeReservoirInUF; timeReservoirInUF = 0; timeReservoirInUse = 0; + // Signal dialysis sub-mode to capture final volume of prior reservoir after settling. + setFinalReservoirVolume(); + // Reset to start state to restart drain, fill, switch process. state = TREATMENT_RESERVOIR_MGMT_START_STATE; }