Index: firmware/App/Modes/SelfTests.c =================================================================== diff -u -r8b5b59032b8edc0db91041b35dabc0a81f96ea04 -rb21e57679cc8eeb5b1110b5f45e103e89f0e7455 --- firmware/App/Modes/SelfTests.c (.../SelfTests.c) (revision 8b5b59032b8edc0db91041b35dabc0a81f96ea04) +++ firmware/App/Modes/SelfTests.c (.../SelfTests.c) (revision b21e57679cc8eeb5b1110b5f45e103e89f0e7455) @@ -1682,7 +1682,11 @@ setValvePosition( VDI, VALVE_POSITION_C_CLOSE ); setValvePosition( VDO, VALVE_POSITION_C_CLOSE ); - startHeparinBolus(); // Function will only start bolus if necessary + // if user set a Heparin bolus volume, request bolus to be initiated now + if ( bolusVol > 0.0F ) + { + startHeparinBolus(); // Function will only start bolus if necessary + } if ( TRUE == doesAlarmStatusIndicateStop() ) { @@ -2196,6 +2200,7 @@ static WET_SELF_TESTS_STATE_T handleWetSelfTestStoppedState( void ) { WET_SELF_TESTS_STATE_T state = WET_SELF_TESTS_STOPPED_STATE; + F32 bolusVol = getTreatmentParameterF32( TREATMENT_PARAM_HEPARIN_BOLUS_VOLUME ); setAlarmResumePerDoorAndLatch(); doorClosedRequired( FALSE, FALSE ); @@ -2213,8 +2218,13 @@ selfTestStartTime = getMSTimerCount(); doorClosedRequired( TRUE, TRUE ); selfTestsResumeRequested = FALSE; - startHeparinBolus(); // Function will only start bolus if necessary + // if user set a Heparin bolus volume, request bolus to be initiated now + if ( bolusVol > 0.0F ) + { + startHeparinBolus(); // Function will only start bolus if necessary + } + switch( checkpointWetSelfTestsState ) { case WET_SELF_TESTS_BUBBLE_CHECK_SETUP_STATE: