Index: firmware/App/Modes/Rinseback.c =================================================================== diff -u -r98cc51d12256e9e9d63632d0206e9cd6e5b92429 -r4d0c621f5994e1de8bf7d3337678f7835292ce73 --- firmware/App/Modes/Rinseback.c (.../Rinseback.c) (revision 98cc51d12256e9e9d63632d0206e9cd6e5b92429) +++ firmware/App/Modes/Rinseback.c (.../Rinseback.c) (revision 4d0c621f5994e1de8bf7d3337678f7835292ce73) @@ -7,8 +7,8 @@ * * @file Rinseback.c * -* @author (last) Dara Navaei -* @date (last) 24-Jul-2023 +* @author (last) James Walter Taylor +* @date (last) 16-Aug-2023 * * @author (original) Sean Nash * @date (original) 20-Jan-2021 @@ -864,15 +864,8 @@ if ( RINSEBACK_PAUSED_STATE == rinsebackState ) { - if ( getNoRetriggerFlag() != TRUE ) - { - result = TRUE; - resumeRinsebackRequested = TRUE; - } - else - { - *rejReason = REQUEST_REJECT_REASON_TREATMENT_CANNOT_BE_RESUMED; - } + result = TRUE; + resumeRinsebackRequested = TRUE; } else if ( RINSEBACK_RECONNECT_PATIENT_STATE == rinsebackState ) { @@ -1051,19 +1044,26 @@ data.targetRinsebackVolumeMl = rinsebackTargetVolume_mL; rinsebackPublishTimerCtr = 0; // If we have completed rinseback, timeout is no longer in force - indicate by zeroing timeout. Also include any additionals to target. + data.timeout = 0; + data.countdown = 0; if ( ( rinsebackState > RINSEBACK_PAUSED_STATE ) && ( getRinsebackVolume() >= rinsebackTargetVolume_mL ) ) { data.targetRinsebackVolumeMl = targetRinsebackVolumePlusAdditional_mL; - timeout = 0; } data.deliveredRinsebackVolumeMl = getRinsebackVolume(); data.rinsebackFlowRateMlMin = rinsebackRate_mL_min; if ( RINSEBACK_RUN_ADDITIONAL_STATE == rinsebackState ) { data.rinsebackFlowRateMlMin = DEFAULT_RINSEBACK_FLOW_RATE_ML_MIN; } - data.timeout = timeout; - data.countdown = countdown; + if ( getRinsebackCompleted() != TRUE ) + { + if ( rinsebackTimerCtr > 0 ) // Timer set to zero when BP is running + { + data.timeout = timeout; + data.countdown = countdown; + } + } if ( data.deliveredRinsebackVolumeMl >= rinsebackTargetVolume_mL ) { data.isCompleted = TRUE;