Index: firmware/App/Controllers/Valves.c =================================================================== diff -u -r2c16de14d2acd2aa1e36943f95c3855da094dc97 -r3479c42f6bf13fb6c565cc48ba13936e1ec22be9 --- firmware/App/Controllers/Valves.c (.../Valves.c) (revision 2c16de14d2acd2aa1e36943f95c3855da094dc97) +++ firmware/App/Controllers/Valves.c (.../Valves.c) (revision 3479c42f6bf13fb6c565cc48ba13936e1ec22be9) @@ -37,7 +37,7 @@ #define VALVES_DATA_PUB_INTERVAL ( MS_PER_SECOND / TASK_GENERAL_INTERVAL ) ///< Valves data publish interval. #define DATA_PUBLISH_COUNTER_START_COUNT 13 ///< Valves data publish start counter. #define VALVE_TRANSITION_MIN_TGT_DELTA 50 ///< Minimum encoder position delta from target position to end transition state. -#define VALVE_TRANSITION_TIMEOUT_MS ( 3 * MS_PER_SECOND ) ///< Valves transition time out in ms. +#define VALVE_TRANSITION_TIMEOUT_MS ( 11 * MS_PER_SECOND ) ///< Valves transition time out in ms. #define VALVE_HOMING_TIMEOUT_MS ( 15 * MS_PER_SECOND ) ///< Valves homing time out in ms. /// Valve status structure @@ -193,6 +193,8 @@ { if ( ( TRUE == currentValveStates[ valve ].hasValveBeenHomed ) && ( FALSE == currentValveStates[ valve ].homingOperationActive ) && + ( FALSE == isPinchValveBusy( valve ) ) && + ( FALSE == currentValveStates[ valve ].hasTransitionBeenRequested ) && ( currentValveStates[ valve ].commandedPosition != position ) ) { pendingValvePositionChange[ valve ] = position;