Index: firmware/App/Controllers/SyringePump.c =================================================================== diff -u -rbe91e8b27ab8b47fc9a05430284ff2072cc9ac3b -r93383819b0f9b7bb0be3acb95f368ee6b8d8080a --- firmware/App/Controllers/SyringePump.c (.../SyringePump.c) (revision be91e8b27ab8b47fc9a05430284ff2072cc9ac3b) +++ firmware/App/Controllers/SyringePump.c (.../SyringePump.c) (revision 93383819b0f9b7bb0be3acb95f368ee6b8d8080a) @@ -646,8 +646,8 @@ F32 vRef = forceSensorCalRecord.hdHeparinForceSensorDACVoltage; if ( ( vRef >= 0.0 ) && ( vRef <= SYRINGE_PUMP_ADC_REF_V ) ) - { - if ( SYRINGE_PUMP_OFF_STATE == syringePumpState ) + { // Cannot set DAC value if pump is busy or calibration values have not been provided yet + if ( ( SYRINGE_PUMP_OFF_STATE == syringePumpState ) && ( forceSensorCalRecord.calibrationTime != 0 ) ) { syringePumpDACVref = vRef; syringePumpDACVrefSetRequested = TRUE; @@ -692,6 +692,8 @@ if ( DACDeltaV > SYRINGE_PUMP_DAC_VOLTAGE_MAX_ERROR ) { SET_ALARM_WITH_1_F32_DATA( ALARM_ID_HD_SYRINGE_PUMP_SELF_TEST_FAILURE, DACDeltaV ) + // In case DAC not set yet, try to set DAC + setSyringePumpDACVref(); } }