Index: firmware/App/Controllers/SyringePump.c =================================================================== diff -u -r491bddb51ce331490567666795549c17f78a0e68 -rafd10bbb219cd03a69be08a38bd6f774eea3f17b --- firmware/App/Controllers/SyringePump.c (.../SyringePump.c) (revision 491bddb51ce331490567666795549c17f78a0e68) +++ firmware/App/Controllers/SyringePump.c (.../SyringePump.c) (revision afd10bbb219cd03a69be08a38bd6f774eea3f17b) @@ -492,6 +492,10 @@ heparinDeliveryState = HEPARIN_STATE_STOPPED; } #endif + if ( MODE_SERV == getCurrentOperationMode() ) // Allow syringe pump operations in Service Mode. + { + heparinDeliveryState = HEPARIN_STATE_STOPPED; + } if ( ( SYRINGE_PUMP_OFF_STATE == syringePumpState ) && ( heparinDeliveryState != HEPARIN_STATE_OFF ) ) { { @@ -522,6 +526,10 @@ syringePumpSetRate = SYRINGE_PUMP_SEEK_RATE; syringePumpSeekRequested = TRUE; } + if ( MODE_SERV == getCurrentOperationMode() ) // Allow syringe pump operations in Service Mode. + { + heparinDeliveryState = HEPARIN_STATE_STOPPED; + } return syringePumpSeekRequested; } @@ -543,6 +551,10 @@ syringePumpPrimeRequested = TRUE; resetHeparinVolumeDelivered(); } + if ( MODE_SERV == getCurrentOperationMode() ) // Allow syringe pump operations in Service Mode. + { + heparinDeliveryState = HEPARIN_STATE_STOPPED; + } return syringePumpPrimeRequested; } @@ -589,8 +601,13 @@ { SET_ALARM_WITH_2_F32_DATA( ALARM_ID_HD_SOFTWARE_FAULT, (F32)SW_FAULT_ID_HD_SYRINGE_INVALID_BOLUS_CMD, syringePumpSetRate ) } + if ( MODE_SERV == getCurrentOperationMode() ) // Allow syringe pump operations in Service Mode. + { + heparinDeliveryState = HEPARIN_STATE_STOPPED; + } } + return syringePumpBolusRequested; } @@ -622,6 +639,10 @@ { SET_ALARM_WITH_2_F32_DATA( ALARM_ID_HD_SOFTWARE_FAULT, (F32)SW_FAULT_ID_HD_SYRINGE_INVALID_CONT_CMD, flowRate ) } + if ( MODE_SERV == getCurrentOperationMode() ) // Allow syringe pump operations in Service Mode. + { + heparinDeliveryState = HEPARIN_STATE_STOPPED; + } } return syringePumpContinuousRequested;