Index: firmware/App/Controllers/Ejector.c =================================================================== diff -u -rcf22584fb68bb29311d81d1e5ad79f8cf064b8fb -r96705d0c0b74ba93ad687f3c559988fceac442ed --- firmware/App/Controllers/Ejector.c (.../Ejector.c) (revision cf22584fb68bb29311d81d1e5ad79f8cf064b8fb) +++ firmware/App/Controllers/Ejector.c (.../Ejector.c) (revision 96705d0c0b74ba93ad687f3c559988fceac442ed) @@ -410,6 +410,7 @@ { EJECTOR_STATE_T state = EJECTOR_STATE_RETRACTING; + // If the optical sensor is active it means the ejector has reached to the full retract position if ( ( ++ejectorOperationTimerCounter >= EJECTOR_RETRACT_OP_TIME ) || ( TRUE == isEjectorOpticalSensorActive( EJECTOR_OPT_SENSOR_RETRACT ) ) ) { ejectorOperationTimerCounter = 0; @@ -476,6 +477,7 @@ { EJECTOR_STATE_T state = EJECTOR_STATE_EXTENDING; + // If the optical sensor is active it means the ejector has reached to the full extended (engage) position if ( ( ++ejectorOperationTimerCounter >= EJECTOR_EXTEND_OP_TIME ) || ( TRUE == isEjectorOpticalSensorActive( EJECTOR_OPT_SENSOR_ENGAGE ) ) ) { ejectorOperationTimerCounter = 0;