Index: firmware/App/Controllers/Valves.c =================================================================== diff -u -rf31c92f93880dbe20596a727dd72f48813ffa88a -reaff654b897f641b874e3ba30a22cbda3779e4a7 --- firmware/App/Controllers/Valves.c (.../Valves.c) (revision f31c92f93880dbe20596a727dd72f48813ffa88a) +++ firmware/App/Controllers/Valves.c (.../Valves.c) (revision eaff654b897f641b874e3ba30a22cbda3779e4a7) @@ -33,7 +33,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 10 ///< Minimum encoder position delta from target position to end transition state. +#define VALVE_TRANSITION_MIN_TGT_DELTA 1000 //10 ///< Minimum encoder position delta from target position to end transition state. #define VALVE_HOME_MIN_POS_CHG 3 ///< Minimum encoder position change to indicate a home operation is still moving toward edge. #define VALVE_HOME_BACK_OFF_EDGE 3 ///< Encoder counts to back off of detected edge position. #define MAX_ALLOWED_FAILED_VALVE_HOMINGS 3U ///< Maximum allowed failed valve home attempts @@ -539,6 +539,7 @@ { currentValveStates[ valve ].currentPosition = currentValveStates[ valve ].commandedPosition; nextState = VALVE_STATE_IDLE; + SEND_EVENT_WITH_2_U32_DATA( TD_EVENT_VALVE_POSITION_DELTA_REMOVE_TEMP, (U32)abs( delta ), 0 ); } // is transition taking too long? else if ( ( TRUE == didTimeout( currentValveStates[ valve ].transitionStartTime, VALVE_TRANSITION_TIMEOUT_MS ) ) && @@ -547,7 +548,7 @@ // Go back to Idle state and set the valve position to not in position because it was not able to get to the target position currentValveStates[ valve ].currentPosition = VALVE_POSITION_NOT_IN_POSITION; nextState = VALVE_STATE_IDLE; - SET_ALARM_WITH_1_U32_DATA( ALARM_ID_TD_VALVE_TRANSITION_TIMEOUT, (U32)valve ); + SET_ALARM_WITH_2_U32_DATA( ALARM_ID_TD_VALVE_TRANSITION_TIMEOUT, (U32)valve, (U32)abs( delta ) ); // If the valve's commanded position is C, activate safety shutdown if ( VALVE_POSITION_C_CLOSE == currentValveStates[ valve ].commandedPosition )