Index: firmware/App/Controllers/Ejector.c =================================================================== diff -u -re24a98a344ba13ceb0663b415268a7e1dd5ce99e -r470fde672305348c9a4f5002af814737fcfa00db --- firmware/App/Controllers/Ejector.c (.../Ejector.c) (revision e24a98a344ba13ceb0663b415268a7e1dd5ce99e) +++ firmware/App/Controllers/Ejector.c (.../Ejector.c) (revision 470fde672305348c9a4f5002af814737fcfa00db) @@ -30,7 +30,7 @@ // ********** private definitions ********** -#define EJECTOR_RETRACT_OP_TIME ( ( MS_PER_SECOND * 5 ) / TASK_GENERAL_INTERVAL ) ///< Ejector retract operation interval. +#define EJECTOR_RETRACT_OP_TIME ( ( MS_PER_SECOND * 10 ) / TASK_GENERAL_INTERVAL ) ///< Ejector retract operation interval. #define EJECTOR_EXTEND_OP_TIME ( ( MS_PER_SECOND * 10 ) / TASK_GENERAL_INTERVAL ) ///< Ejector extend operation interval. #define EJECTOR_BACKOFF_OP_TIME ( 50 / TASK_GENERAL_INTERVAL ) ///< Ejector back-off operation interval. #define EJECTOR_DATA_PUB_INTERVAL ( MS_PER_SECOND / TASK_GENERAL_INTERVAL ) ///< Ejector data publish interval. @@ -336,7 +336,7 @@ { EJECTOR_STATE_T state = EJECTOR_STATE_HOMING; - if ( ++ejectorOperationTimerCounter >= EJECTOR_RETRACT_OP_TIME ) + if ( ( ++ejectorOperationTimerCounter >= EJECTOR_RETRACT_OP_TIME ) || ( TRUE == isEjectorOpticalSensorActive( EJECTOR_OPT_SENSOR_RETRACT ) ) ) { ejectorOperationTimerCounter = 0; setEjectorSpeed( EJECTOR_OFF_MOTOR_SPEED_RPM );