Index: firmware/App/Modes/Dialysis.c =================================================================== diff -u -r1d07de4e970f54f2ae1786ef546cf5567df9ba8e -rab05daf4dc0398c516845da80c616181a6b62d16 --- firmware/App/Modes/Dialysis.c (.../Dialysis.c) (revision 1d07de4e970f54f2ae1786ef546cf5567df9ba8e) +++ firmware/App/Modes/Dialysis.c (.../Dialysis.c) (revision ab05daf4dc0398c516845da80c616181a6b62d16) @@ -231,6 +231,7 @@ autoResumeUF = FALSE; currentUFState = UF_RUNNING_STATE; } + currentDialysisState = DIALYSIS_UF_STATE; } /*********************************************************************//** Index: firmware/App/Modes/ModePreTreat.c =================================================================== diff -u -r1d07de4e970f54f2ae1786ef546cf5567df9ba8e -rab05daf4dc0398c516845da80c616181a6b62d16 --- firmware/App/Modes/ModePreTreat.c (.../ModePreTreat.c) (revision 1d07de4e970f54f2ae1786ef546cf5567df9ba8e) +++ firmware/App/Modes/ModePreTreat.c (.../ModePreTreat.c) (revision ab05daf4dc0398c516845da80c616181a6b62d16) @@ -383,10 +383,11 @@ /*********************************************************************//** * @brief - * The setUserSetUFVolumeStatus function sets the status for user sets UF - * volume operation. - * @details Inputs: set UF volume operation status + * The setUserSetUFVolumeStatus function sets the status of whether user + * has set UF volume. + * @details Inputs: none * @details Outputs: setUFVolStatus + * @param status TRUE if ultrafiltration volume set, FALSE if not * @return none *************************************************************************/ void setUserSetUFVolumeStatus( BOOL status ) Index: firmware/App/Modes/ModeTreatmentParams.c =================================================================== diff -u -r8e9aa2234cc1318c6465480785a0e4af75e7be48 -rab05daf4dc0398c516845da80c616181a6b62d16 --- firmware/App/Modes/ModeTreatmentParams.c (.../ModeTreatmentParams.c) (revision 8e9aa2234cc1318c6465480785a0e4af75e7be48) +++ firmware/App/Modes/ModeTreatmentParams.c (.../ModeTreatmentParams.c) (revision ab05daf4dc0398c516845da80c616181a6b62d16) @@ -424,11 +424,11 @@ if ( TRUE == accepted ) { + U32 treatmentDuration = getTreatmentParameterU32( TREATMENT_PARAM_TREATMENT_DURATION ); + // store the user set ultrafiltration volume in pre-treatment parameters setup, if it is validated, otherwise keep the initial 0.0 origTreatmentParams.uFVolume_L = uFVolumeL; - U32 treatmentDuration = getTreatmentParameterU32( TREATMENT_PARAM_TREATMENT_DURATION ); - if ( treatmentDuration > 0 ) { F32 uFRate = uFVolumeMl / (F32)treatmentDuration; @@ -454,6 +454,7 @@ uFVolumeL = getTreatmentParameterF32( TREATMENT_PARAM_UF_VOLUME ); uFVolumeMl = uFVolumeL * (F32)ML_PER_LITER; sendUFVolumeSetResponseMsg( accepted, rejReason, uFVolumeMl ); + setUserSetUFVolumeStatus( accepted ); return accepted; } Index: firmware/App/Services/SystemCommMessages.c =================================================================== diff -u -r8e9aa2234cc1318c6465480785a0e4af75e7be48 -rab05daf4dc0398c516845da80c616181a6b62d16 --- firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 8e9aa2234cc1318c6465480785a0e4af75e7be48) +++ firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision ab05daf4dc0398c516845da80c616181a6b62d16) @@ -2662,7 +2662,6 @@ memcpy( &uFVolumeMl, message->payload, sizeof(F32) ); result = validateAndSetUFVolume( uFVolumeMl ); - setUserSetUFVolumeStatus( result ); } sendAckResponseMsg( (MSG_ID_T)message->hdr.msgID, COMM_BUFFER_OUT_CAN_HD_2_UI, result );