Index: firmware/App/Controllers/PresOccl.c =================================================================== diff -u -r7e8e3d1fb7a6a01ff42d21e52d9cfb765044bc19 -rc1f0ee088a6d3e24a6920470ccda9e000c26dbed --- firmware/App/Controllers/PresOccl.c (.../PresOccl.c) (revision 7e8e3d1fb7a6a01ff42d21e52d9cfb765044bc19) +++ firmware/App/Controllers/PresOccl.c (.../PresOccl.c) (revision c1f0ee088a6d3e24a6920470ccda9e000c26dbed) @@ -83,9 +83,9 @@ /// Venous pressure low exemption period (in task intervals) conversion factor (from Qb in mL/min) following an air trap fill. static const U32 VENOUS_PRES_AT_FILL_DELAY_FACTOR = (U32)( VENOUS_PRES_AT_FILL_DELAY_MAX_BLOOD_VOL_ML * (F32)SEC_PER_MIN * ( (F32)MS_PER_SECOND / (F32)TASK_GENERAL_INTERVAL ) ); -#define LOW_VENOUS_PRES_MONITOR_TIME ( 1200 ) ///< Time in millisecond to monitor low Venous pressure -#define LOW_VENOUS_PRES_MONITOR_WINDOW ( LOW_VENOUS_PRES_MONITOR_TIME / \ - TASK_GENERAL_INTERVAL ) ///< Low Venous pressure monitoring window +#define MIN_TIME_BETWEEN_AIR_TRAP_FILL_EXEMPTIONS_MS ( 1200 ) ///< To monitor low Venous pressure in the defined interval in a case where continuous air fill event happens followed by exemption period to stabilize the pressure +#define MIN_TIME_BETWEEN_AIR_TRAP_FILL_EXEMPTIONS_WINDOW ( MIN_TIME_BETWEEN_AIR_TRAP_FILL_EXEMPTIONS_MS / \ + TASK_GENERAL_INTERVAL ) ///< Low Venous pressure monitoring window between air fill events based on the task interval time #define PSI_TO_MMHG ( 51.7149F ) ///< Conversion factor for converting PSI to mmHg. @@ -857,7 +857,8 @@ // compute exemption period (in general task intervals) for low venous pressure alarms after air trap fills U32 exemptPeriod = VENOUS_PRES_AT_FILL_DELAY_FACTOR / qBx; // minimumMonitoring Window helps to check and raise low venous pressure alarm on a case where repeated fill events occurrence. - U32 minimumMonitoringWindow = exemptPeriod + LOW_VENOUS_PRES_MONITOR_WINDOW ; + // During this interval, if another airtrap fill occurs, there is no exemptions provided to stabilize the pressure and low venous pressure being raised when it goes below threshold value. + U32 minimumMonitoringWindow = exemptPeriod + MIN_TIME_BETWEEN_AIR_TRAP_FILL_EXEMPTIONS_WINDOW ; venPresLow = ( venPres < (F32)currentVenousMinLimit ? TRUE : FALSE ); venPresHigh = ( venPres > (F32)currentVenousMaxLimit ? TRUE : FALSE );