Index: firmware/App/Modes/ModeTreatment.c =================================================================== diff -u -r04f72c18f15a3d7ab960fccea7b99cf93fd9a409 -rb0b3522f2bd0b5b20ecbfd53c8f55b0e646ffa11 --- firmware/App/Modes/ModeTreatment.c (.../ModeTreatment.c) (revision 04f72c18f15a3d7ab960fccea7b99cf93fd9a409) +++ firmware/App/Modes/ModeTreatment.c (.../ModeTreatment.c) (revision b0b3522f2bd0b5b20ecbfd53c8f55b0e646ffa11) @@ -298,13 +298,14 @@ } lastTreatmentTimeStamp = newTime; + // end treatment if treatment duration has been reached if ( CALC_ELAPSED_TREAT_TIME_IN_SECS() >= presTreatmentTimeSecs ) { result = TREATMENT_END_STATE; } + // otherwise, execute state machine for treatment dialysis sub-mode else { - // execute state machine for treatment dialysis sub-mode execDialysis(); } @@ -696,7 +697,7 @@ U32 timeRemaining = presTreatmentTimeSecs - elapsedTreatmentTimeInSecs; DIALYSIS_STATE_T dialysisState = getDialysisState(); UF_STATE_T uFState = getUltrafiltrationState(); - BOOL salineBolusInProgress = ( dialysisState == DIALYSIS_SALINE_BOLUS_STATE ? TRUE : FALSE ); + SALINE_BOLUS_STATE_T salineBolusInProgress = getSalineBolusState(); broadcastTreatmentTime( presTreatmentTimeSecs, elapsedTreatmentTimeInSecs, timeRemaining ); broadcastTreatmentState( currentTreatmentState, uFState, salineBolusInProgress );