Index: firmware/App/Controllers/SyringePump.c =================================================================== diff -u -r39c791d03f363ce2c684597080fc8c2f5515976f -rfc81a8aec8b013e2f8f6ee9022de0490d6428a4a --- firmware/App/Controllers/SyringePump.c (.../SyringePump.c) (revision 39c791d03f363ce2c684597080fc8c2f5515976f) +++ firmware/App/Controllers/SyringePump.c (.../SyringePump.c) (revision fc81a8aec8b013e2f8f6ee9022de0490d6428a4a) @@ -90,8 +90,9 @@ #define TEN_PCT_OVER_ALLOWANCE 1.1 ///< Allow 10 percent over target before alarming on over travel. #define FIVE_PCT_OVER_ALLOWANCE 1.05 ///< Allow 5 percent over target before alarming on over travel. -/// Expected position of empty in relation to home postion. -#define SYRINGE_PUMP_EMPTY_POS ( SYRINGE_ENCODER_COUNTS_PER_ML * 10.84 ) +/// Expected position of empty in relation to home position. +#define SYRINGE_PUMP_EMPTY_POS ( SYRINGE_ENCODER_COUNTS_PER_ML * 10.84 ) ///< get syringe volume from home to empty (11 mL is placeholder) + /// Margin of error for empty position determination. #define SYRINGE_PUMP_EMPTY_POS_MARGIN ( SYRINGE_ENCODER_COUNTS_PER_ML * 0.5 ) /// Minimum retract position. @@ -1164,6 +1165,9 @@ { SYRINGE_PUMP_STATE_T result = SYRINGE_PUMP_OFF_STATE; + isPersistentAlarmTriggered( ALARM_ID_HD_SYRINGE_PUMP_ENCODER_DIRECTION_ERROR, FALSE ); // reset direction alarm persistence when pump is off + isPersistentAlarmTriggered( ALARM_ID_HD_SYRINGE_PUMP_CONTROLLER_DIRECTION_ERROR, FALSE ); // reset direction alarm persistence when pump is off + #ifndef DISABLE_SYRINGE_PUMP_ALARMS // Check position is not changing while stopped if ( TRUE == isPersistentAlarmTriggered( ALARM_ID_HD_SYRINGE_PUMP_NOT_STOPPED_ERROR, ( syringePumpLastPosition != getSyringePumpPosition() ) ) )