Index: firmware/App/Drivers/RotaryValve.c =================================================================== diff -u -r961784c895cb8f551a2623cd02dcbfe42d04b7c2 -r036a75d76ab01912646a480b935d97187a231a19 --- firmware/App/Drivers/RotaryValve.c (.../RotaryValve.c) (revision 961784c895cb8f551a2623cd02dcbfe42d04b7c2) +++ firmware/App/Drivers/RotaryValve.c (.../RotaryValve.c) (revision 036a75d76ab01912646a480b935d97187a231a19) @@ -160,11 +160,13 @@ ctrl = getH1Control(); if ( MOTOR_DIR_REVERSE == dir ) { - setH1Control( ( ctrl | FPGA_PINCH_VALVES_REVERSE ) ); +// setH1Control( ( ctrl | FPGA_PINCH_VALVES_NEW_POS_CMD | FPGA_PINCH_VALVES_REVERSE ) ); + setH1Control( ( ctrl | FPGA_PINCH_VALVES_NEW_POS_CMD & ~FPGA_PINCH_VALVES_REVERSE ) ); // TODO - reverse direction polarity when corrected } else { - setH1Control( ( ctrl & ~FPGA_PINCH_VALVES_REVERSE ) ); +// setH1Control( ( ctrl | FPGA_PINCH_VALVES_NEW_POS_CMD & ~FPGA_PINCH_VALVES_REVERSE ) ); + setH1Control( ( ctrl | FPGA_PINCH_VALVES_NEW_POS_CMD | FPGA_PINCH_VALVES_REVERSE ) ); } setH1Position( mag ); } @@ -173,11 +175,11 @@ ctrl = getH19Control(); if ( MOTOR_DIR_REVERSE == dir ) { - setH19Control( ( ctrl | FPGA_PINCH_VALVES_REVERSE ) ); + setH19Control( ( ctrl | FPGA_PINCH_VALVES_NEW_POS_CMD | FPGA_PINCH_VALVES_REVERSE ) ); } else { - setH19Control( ( ctrl & ~FPGA_PINCH_VALVES_REVERSE ) ); + setH19Control( ( ctrl | FPGA_PINCH_VALVES_NEW_POS_CMD & ~FPGA_PINCH_VALVES_REVERSE ) ); } setH19Position( mag ); } @@ -234,11 +236,7 @@ if ( valve < NUM_OF_VALVES ) { - result = (S16)(currentValveEncPosition[ valve ].data); - if ( OVERRIDE_KEY == currentValveEncPosition[ valve ].override ) - { - result = (S16)(currentValveEncPosition[ valve ].ovData); - } + result = (S16)getS32OverrideValue( ¤tValveEncPosition[ valve ] ); } else { @@ -268,11 +266,7 @@ if ( valve < NUM_OF_VALVES ) { - result = (U08)( valveStatus[ valve ].data & MASK_OFF_U32_MSBS ); - if ( OVERRIDE_KEY == valveStatus[ valve ].override ) - { - result = (U08)( valveStatus[ valve ].ovData & MASK_OFF_U32_MSBS ); - } + result = getU08OverrideValue( &valveStatus[ valve ] ); } else {