Index: firmware/App/Controllers/BloodLeak.c =================================================================== diff -u -rca8a4a4cf6d2c59d9296c3abdf314765550a2624 -rda8a230122d868cadb2513ac418017ade0dfddf5 --- firmware/App/Controllers/BloodLeak.c (.../BloodLeak.c) (revision ca8a4a4cf6d2c59d9296c3abdf314765550a2624) +++ firmware/App/Controllers/BloodLeak.c (.../BloodLeak.c) (revision da8a230122d868cadb2513ac418017ade0dfddf5) @@ -21,6 +21,7 @@ #include "AlarmMgmt.h" #include "BloodLeak.h" +#include "DialInFlow.h" #include "FPGA.h" #include "NVDataMgmtHDRecords.h" #include "OperationModes.h" @@ -930,7 +931,10 @@ bloodLeakStatus.data = getFPGABloodDetectProcessedStatus(); - if ( BLOOD_LEAK_NOT_DETECTED == getBloodLeakStatus() ) + // Check if the blood is not detected but at the same time the Dialin pump should be running to make sure we are in the + // blood recovery state of the treatment stop so the blood detection recovery is not done on the stagnant fluid + // NOTE: should we check of the measured flow is about 600 mL/min? + if ( ( BLOOD_LEAK_NOT_DETECTED == getBloodLeakStatus() ) && ( TRUE == isDialInPumpRunning() ) ) { if ( TRUE == didTimeout( bloodLeakRecoveryStartTimeMS, BLOOD_LEAK_DETECT_RECOVERY_MIN_TIME_MS ) ) { Index: firmware/App/Modes/Dialysis.c =================================================================== diff -u -rca8a4a4cf6d2c59d9296c3abdf314765550a2624 -rda8a230122d868cadb2513ac418017ade0dfddf5 --- firmware/App/Modes/Dialysis.c (.../Dialysis.c) (revision ca8a4a4cf6d2c59d9296c3abdf314765550a2624) +++ firmware/App/Modes/Dialysis.c (.../Dialysis.c) (revision da8a230122d868cadb2513ac418017ade0dfddf5) @@ -1596,6 +1596,9 @@ if ( FALSE == isRequestFromTreatmentStop ) { + // The pressure window is widened to prevent pressure alarm in bypassing the dialysate. + // The spike occurs due to flipping VDi valve would result in all of the blood flow going through + // the dialyzer and pressure cannot go across the dialyzer. signalInitiatePressureStabilization( USE_NORMAL_STABILIZATION_PERIOD ); } Index: firmware/App/Modes/Rinseback.c =================================================================== diff -u -r6922a0d2392c1f0f0c5a8b3cec732f717d462830 -rda8a230122d868cadb2513ac418017ade0dfddf5 --- firmware/App/Modes/Rinseback.c (.../Rinseback.c) (revision 6922a0d2392c1f0f0c5a8b3cec732f717d462830) +++ firmware/App/Modes/Rinseback.c (.../Rinseback.c) (revision da8a230122d868cadb2513ac418017ade0dfddf5) @@ -38,7 +38,7 @@ // ********** private definitions ********** -#define DEFAULT_RINSEBACK_VOLUME_ML 350.0F ///< Default rinseback volume (in mL). +#define DEFAULT_RINSEBACK_VOLUME_ML 400.0F ///< Default rinseback volume (in mL). #define MAX_TOTAL_ADDITIONAL_RINSEBACK_VOLUME_ML 300.0F ///< Maximum total additional rinseback volume allowed : all additionals (in mL). #define TARGET_ADDITIONAL_RINSEBACK_VOLUME_ML 50.0F ///< Target rinseback volume for an additional volume request (in mL). #define RINSEBACK_FLOW_RATE_ADJ_ML_MIN 25 ///< Adjustment amount (in mL/min) to apply when user requests increase/decrease in flow rate.