Index: firmware/App/Modes/ModeTreatment.c =================================================================== diff -u -r59ba490fab6349216bafef4c8438b1b97aaaddcd -r346e74cbf78fdf1ea7cd779103476e49c4ee190e --- firmware/App/Modes/ModeTreatment.c (.../ModeTreatment.c) (revision 59ba490fab6349216bafef4c8438b1b97aaaddcd) +++ firmware/App/Modes/ModeTreatment.c (.../ModeTreatment.c) (revision 346e74cbf78fdf1ea7cd779103476e49c4ee190e) @@ -8,7 +8,7 @@ * @file ModeTreatment.c * * @author (last) Sean Nash -* @date (last) 19-Jul-2023 +* @date (last) 17-Jul-2023 * * @author (original) Dara Navaei * @date (original) 05-Nov-2019 @@ -767,14 +767,7 @@ // Update treatment time (unless delivering a saline bolus) if ( dialysisState != DIALYSIS_SALINE_BOLUS_STATE ) { -#ifdef DIALYZER_REPRIME_ENABLED - if ( dialysisState != DIALYSIS_DIALYZER_REPRIME_STATE ) - { -#endif treatmentTimeMS += msSinceLast; -#ifdef DIALYZER_REPRIME_ENABLED - } -#endif } lastTreatmentTimeStamp = newTime; @@ -948,6 +941,7 @@ // Handle signals from treatment re-circ sub-mode if ( TRUE == rinsebackToStoppedRequest ) { + stopDialysis(); transitionToTreatmentStop(); result = TREATMENT_STOP_STATE; } @@ -1453,11 +1447,6 @@ payload.txEndState = getCurrentTreatmentEndState(); payload.heparinState = getHeparinState(); payload.dialysisState = getDialysisState(); -#ifdef DIALYZER_REPRIME_ENABLED - payload.dlzReprimeState = getDialyzerRePrimeState(); -#else - payload.dlzReprimeState = 0; -#endif broadcastData( MSG_ID_TREATMENT_STATE_DATA, COMM_BUFFER_OUT_CAN_HD_BROADCAST, (U08*)&payload, sizeof( TREATMENT_STATE_DATA_T ) ); treatmentStateBroadcastTimerCtr = 0; Index: firmware/App/Modes/Rinseback.c =================================================================== diff -u -r419f50d4fa102303441fab187512f0f7cb54bd05 -r346e74cbf78fdf1ea7cd779103476e49c4ee190e --- firmware/App/Modes/Rinseback.c (.../Rinseback.c) (revision 419f50d4fa102303441fab187512f0f7cb54bd05) +++ firmware/App/Modes/Rinseback.c (.../Rinseback.c) (revision 346e74cbf78fdf1ea7cd779103476e49c4ee190e) @@ -282,12 +282,6 @@ rinsebackTimerCtr++; - // Check for user confirmation of end treatment - if ( CONFIRMATION_REQUEST_STATUS_ACCEPTED == getConfirmationRequestStatus( GENERIC_CONFIRM_ID_TREATMENT_END ) ) - { - endTreatmentRequested = TRUE; - } - switch ( rinsebackState ) { case RINSEBACK_STOP_INIT_STATE: @@ -484,6 +478,10 @@ setupForRinsebackDelivery( rinsebackRate_mL_min ); result = RINSEBACK_RUN_STATE; } + else if ( TRUE == endTreatmentRequested ) + { + signalEndTreatment(); + } // Has user requested to end rinseback? else if ( TRUE == endRinsebackRequested ) { Index: firmware/App/Modes/TreatmentEnd.c =================================================================== diff -u -r3833c8a7a90288a6010a625a884048c775c598d3 -r346e74cbf78fdf1ea7cd779103476e49c4ee190e --- firmware/App/Modes/TreatmentEnd.c (.../TreatmentEnd.c) (revision 3833c8a7a90288a6010a625a884048c775c598d3) +++ firmware/App/Modes/TreatmentEnd.c (.../TreatmentEnd.c) (revision 346e74cbf78fdf1ea7cd779103476e49c4ee190e) @@ -189,12 +189,6 @@ txEndTimerCtr++; - // Check for user confirmation of end treatment - if ( CONFIRMATION_REQUEST_STATUS_ACCEPTED == getConfirmationRequestStatus( GENERIC_CONFIRM_ID_TREATMENT_END ) ) - { - txEndAlarmEndTreatmentRequested = TRUE; - } - switch ( treatmentEndState ) { case TREATMENT_END_WAIT_FOR_RINSEBACK_STATE: @@ -365,8 +359,7 @@ *************************************************************************/ void signalTreatmentEndAlarmEndTxUserAction( void ) { - // Send message to UI to get user confirmation to end treatment - action initiated only upon receipt of user confirmation from UI - addConfirmationRequest( GENERIC_CONFIRM_ID_TREATMENT_END, GENERIC_CONFIRM_CMD_REQUEST_OPEN, 0 ); + txEndAlarmEndTreatmentRequested = TRUE; } /*********************************************************************//**