Index: firmware/App/Controllers/PresOccl.c =================================================================== diff -u -r8d44b80febc4574ce8f9adf91d04a6056c9de42e -r68e6a5f41d4e9decee2658b3421f34892c9b9ac7 --- firmware/App/Controllers/PresOccl.c (.../PresOccl.c) (revision 8d44b80febc4574ce8f9adf91d04a6056c9de42e) +++ firmware/App/Controllers/PresOccl.c (.../PresOccl.c) (revision 68e6a5f41d4e9decee2658b3421f34892c9b9ac7) @@ -42,7 +42,7 @@ /// Default publication interval for pressure and occlusion data. #define PRES_OCCL_DATA_PUB_INTERVAL ( MS_PER_SECOND / TASK_GENERAL_INTERVAL ) ///< Interval (ms/task time) at which the pressure/occlusion data is published on the CAN bus. -#define PRES_LIMIT_STABILIZATION_TIME_MS ( SEC_PER_MIN * MS_PER_SECOND ) ///< Duration of pressure limit stabilization period (in ms). +#define PRES_LIMIT_STABILIZATION_TIME_MS ( 30 * MS_PER_SECOND ) ///< Duration of pressure limit stabilization period (in ms). #define PRES_LIMIT_RESTABILIZE_TIME_MS ( 30 * SEC_PER_MIN * MS_PER_SECOND ) ///< Duration of pressure limit re-stabilize period (in ms). #define ARTERIAL_PRESSURE_CONVERSION_OFFSET 0x800000 ///< Arterial pressure conversion coefficient. @@ -74,7 +74,7 @@ #define VENOUS_PRESSURE_SELF_TEST_MAX ( 100.0F ) ///< Maximum self-test value for venous pressure sensor reading (in mmHg). #define VENOUS_PRESSURE_MAX_MMHG ( 2000.0F ) ///< Maximum venous pressure reading (in mmHg) for range check. #define VENOUS_PRESSURE_MIN_MMHG ( -1500.0F ) ///< Minimum venous pressure reading (in mmHg) for range check. -#define VENOUS_PRESSURE_LIMIT_MAX_MMHG ( 300.0F ) ///< Maximum venous pressure limit (in mmHg). +#define VENOUS_PRESSURE_LIMIT_MAX_MMHG ( 400.0F ) ///< Maximum venous pressure limit (in mmHg). #define VENOUS_PRESSURE_LIMIT_MIN_MMHG ( 20.0F ) ///< Minimum venous pressure limit (in mmHg). #define VENOUS_PRESSURE_OCCL_OFFSET_MMHG ( 50.0F ) ///< Venous pressure occlusion threshold offset from max alarm limit (in mmHg). #define VENOUS_PRESSURE_LIMIT_DELAY_MS ( SEC_PER_MIN * MS_PER_SECOND ) ///< Venous pressure limit delay period following dialysis start/resume (use wider limits during this period). Index: firmware/App/Modes/Prime.c =================================================================== diff -u -refe47320b1747341b059a4d6e00f3b2b6c364025 -r68e6a5f41d4e9decee2658b3421f34892c9b9ac7 --- firmware/App/Modes/Prime.c (.../Prime.c) (revision efe47320b1747341b059a4d6e00f3b2b6c364025) +++ firmware/App/Modes/Prime.c (.../Prime.c) (revision 68e6a5f41d4e9decee2658b3421f34892c9b9ac7) @@ -829,10 +829,10 @@ signalDialOutPumpHardStop(); signalDialInPumpHardStop(); -// setBloodPumpTargetFlowRate( BLOOD_PUMP_FLOW_RATE_SALINE_DIALYZER_ML_MIN, MOTOR_DIR_FORWARD, PUMP_CONTROL_MODE_OPEN_LOOP ); // TODO - restore or remove + setBloodPumpTargetFlowRate( BLOOD_PUMP_FLOW_RATE_SALINE_DIALYZER_ML_MIN, MOTOR_DIR_FORWARD, PUMP_CONTROL_MODE_OPEN_LOOP ); setBloodPumpTargetFlowRate( 100, MOTOR_DIR_FORWARD, PUMP_CONTROL_MODE_OPEN_LOOP ); -// primeSalineDialyzerTimeLimit = (U32)( ( ( dialyzerDialysateVolume * DIALYZER_VOLUME_SCALE_FACTOR + DIALYZER_DVI_PATH_VOLUME_ML ) * SEC_PER_MIN * MS_PER_SECOND ) / BLOOD_PUMP_FLOW_RATE_SALINE_DIALYZER_ML_MIN ); + primeSalineDialyzerTimeLimit = (U32)( ( ( dialyzerDialysateVolume * DIALYZER_VOLUME_SCALE_FACTOR + DIALYZER_DVI_PATH_VOLUME_ML ) * SEC_PER_MIN * MS_PER_SECOND ) / BLOOD_PUMP_FLOW_RATE_SALINE_DIALYZER_ML_MIN ); primeSalineDialyzerTimeLimit = (U32)( ( ( dialyzerDialysateVolume * DIALYZER_VOLUME_SCALE_FACTOR + DIALYZER_DVI_PATH_VOLUME_ML ) * SEC_PER_MIN * MS_PER_SECOND ) / 100.0F ); primeSalineDialyzerStartTime = getMSTimerCount(); @@ -863,10 +863,10 @@ state = HD_PRIME_RESERVOIR_TWO_FILL_COMPLETE_STATE; } // TODO: Rework alarm and timeout logic here. PRIME_SALINE_DIALYZER_TIME_OUT_COUNT may not be reached. -// if ( TRUE == didTimeout( primeSalineDialyzerStartTime, PRIME_SALINE_DIALYZER_TIME_OUT_COUNT ) ) -// { -// SET_ALARM_WITH_1_U32_DATA( ALARM_ID_HD_PRIME_SALINE_DIALYZER_TIME_OUT, PRIME_SALINE_DIALYZER_TIME_OUT_COUNT ); // Trigger HD prime saline dialyzer time out alarm. -// } + if ( TRUE == didTimeout( primeSalineDialyzerStartTime, PRIME_SALINE_DIALYZER_TIME_OUT_COUNT ) ) + { + SET_ALARM_WITH_1_U32_DATA( ALARM_ID_HD_PRIME_SALINE_DIALYZER_TIME_OUT, PRIME_SALINE_DIALYZER_TIME_OUT_COUNT ); // Trigger HD prime saline dialyzer time out alarm. + } if ( TRUE == doesAlarmStatusIndicateStop() ) {