Index: firmware/App/Controllers/RinsePump.c =================================================================== diff -u -r9ed40798a5f4779db8a07bb6e256f7de99660108 -r97324225f3a465c46b9cbfe4083814b0eb5576a6 --- firmware/App/Controllers/RinsePump.c (.../RinsePump.c) (revision 9ed40798a5f4779db8a07bb6e256f7de99660108) +++ firmware/App/Controllers/RinsePump.c (.../RinsePump.c) (revision 97324225f3a465c46b9cbfe4083814b0eb5576a6) @@ -200,8 +200,15 @@ { RINSE_PUMP_STATE_T state = RINSE_PUMP_STATE_OFF; - // Set PWM count zero to stop the logical rinse pump - setRinsePumpPwmCount( D79_RINSE_PUMP, RINSE_PUMP_OFF_COUNT ); + if ( TRUE == getTestConfigStatus( TEST_CONFIG_DD_FP_ENABLE_BETA_2_0_HW ) ) + { + // Set PWM count zero to stop the logical rinse pump + setRinsePumpPwmCount( D79_RINSE_PUMP, RINSE_PUMP_OFF_COUNT ); + } + else + { + setValveState( D88_79_VALV, VALVE_STATE_CLOSED ); + } return state; } @@ -217,11 +224,18 @@ { RINSE_PUMP_STATE_T state = RINSE_PUMP_STATE_ON; - F32 pwmPercent = getF32OverrideValue( &rinsePumpPwmPercentage ); - U32 pwmInCount = (U32)( ( pwmPercent / RINSE_PUMP_MAX_PWM_PERCENT ) * RINSE_PUMP_PWM_IN_COUNT_MAX ); + if ( TRUE == getTestConfigStatus( TEST_CONFIG_DD_FP_ENABLE_BETA_2_0_HW ) ) + { + F32 pwmPercent = getF32OverrideValue( &rinsePumpPwmPercentage ); + U32 pwmInCount = (U32)( ( pwmPercent / RINSE_PUMP_MAX_PWM_PERCENT ) * RINSE_PUMP_PWM_IN_COUNT_MAX ); - // Turn on logical rinse pump with given PWM value - setRinsePumpPwmCount( D79_RINSE_PUMP, pwmInCount ); + // Turn on logical rinse pump with given PWM value + setRinsePumpPwmCount( D79_RINSE_PUMP, pwmInCount ); + } + else + { + setValveState( D88_79_VALV, VALVE_STATE_OPEN ); + } return state; } Index: firmware/App/Controllers/Valves.c =================================================================== diff -u -r9ed40798a5f4779db8a07bb6e256f7de99660108 -r97324225f3a465c46b9cbfe4083814b0eb5576a6 --- firmware/App/Controllers/Valves.c (.../Valves.c) (revision 9ed40798a5f4779db8a07bb6e256f7de99660108) +++ firmware/App/Controllers/Valves.c (.../Valves.c) (revision 97324225f3a465c46b9cbfe4083814b0eb5576a6) @@ -330,7 +330,7 @@ ( D65_VALV == valveID ) || ( D64_VALV == valveID ) || ( D31_VALV == valveID ) || ( D34_VALV == valveID ) || ( D35_VALV == valveID ) || ( D40_VALV == valveID ) || ( D47_VALV == valveID ) || ( D3_VALV == valveID ) || ( M4_VALV == valveID ) || ( D23_VALV == valveID ) || ( D19_VALV == valveID ) || ( D25_VALV == valveID ) || ( D21_VALV == valveID ) || ( D24_VALV == valveID ) || ( D20_VALV == valveID ) || - ( D26_VALV == valveID ) || ( D22_VALV == valveID ) || ( D80_VALV == valveID ) || ( D81_VALV == valveID ) || ( D88_VALV == valveID ) || + ( D26_VALV == valveID ) || ( D22_VALV == valveID ) || ( D80_VALV == valveID ) || ( D81_VALV == valveID ) || ( D88_79_VALV == valveID ) || ( P11_VALV == valveID ) || ( P33_VALV == valveID ) || ( P34_VALV == valveID ) || ( P37_VALV == valveID ) || ( P6_VALV == valveID ) || ( M12_VALV == valveID ) || ( P39_VALV == valveID ) || ( D83_VALV == valveID ) || ( D91_VALV == valveID ) || ( D100_VALV == valveID ) || ( D85_VALV == valveID ) ) { Index: firmware/App/Monitors/Level.c =================================================================== diff -u -r9ed40798a5f4779db8a07bb6e256f7de99660108 -r97324225f3a465c46b9cbfe4083814b0eb5576a6 --- firmware/App/Monitors/Level.c (.../Level.c) (revision 9ed40798a5f4779db8a07bb6e256f7de99660108) +++ firmware/App/Monitors/Level.c (.../Level.c) (revision 97324225f3a465c46b9cbfe4083814b0eb5576a6) @@ -71,6 +71,9 @@ static void publishLevelsData( void ); static BOOL processLevelCount( U16 count ); static LEVEL_STATE_T readFloaterLevelstatus( LEVEL_T levelId ); +static LEVEL_STATE_T getLevelState( U32 levelStatus ); +static LEVEL_STATE_T getLevelStateBeta19( U32 levelStatus ); +static LEVEL_STATE_T getLevelStateBeta10( U32 levelStatus ); /*********************************************************************//** * @brief @@ -319,14 +322,14 @@ /*********************************************************************//** * @brief - * The getLevelStateBeta20 function maps the raw floater/level status reported + * The getLevelState function maps the raw floater/level status reported * by FPGA to the corresponding LEVEL_STATE_T for Beta 2.0 hardware. * @details \b Inputs: levelStatus * @details \b Outputs: none * @param levelStatus Raw FPGA level status value * @return mapped level state *************************************************************************/ -static LEVEL_STATE_T getLevelStateBeta20( U32 levelStatus ) +static LEVEL_STATE_T getLevelState( U32 levelStatus ) { LEVEL_STATE_T currentLevelStatus = LEVEL_STATE_ILLEGAL; @@ -415,7 +418,7 @@ else if ( getTestConfigStatus( TEST_CONFIG_DD_FP_ENABLE_BETA_2_0_HW ) == TRUE ) { // Beta 2.0 behavior - currentLevelStatus = getLevelStateBeta20( levelStatus ); + currentLevelStatus = getLevelState( levelStatus ); } else { @@ -437,7 +440,7 @@ else if ( getTestConfigStatus( TEST_CONFIG_DD_FP_ENABLE_BETA_2_0_HW ) == TRUE ) { // Beta 2.0 behavior - currentLevelStatus = getLevelStateBeta20( levelStatus ); + currentLevelStatus = getLevelState( levelStatus ); } else { Index: firmware/App/Services/FpgaDD.c =================================================================== diff -u -r9ed40798a5f4779db8a07bb6e256f7de99660108 -r97324225f3a465c46b9cbfe4083814b0eb5576a6 --- firmware/App/Services/FpgaDD.c (.../FpgaDD.c) (revision 9ed40798a5f4779db8a07bb6e256f7de99660108) +++ firmware/App/Services/FpgaDD.c (.../FpgaDD.c) (revision 97324225f3a465c46b9cbfe4083814b0eb5576a6) @@ -448,7 +448,7 @@ U08 fpgaP18CalMemCounter; ///< Reg 820. TBD } DD_FPGA_SENSORS_T; -#if 1 // Remove when Beta 1.9 is obsolete +// Remove when Beta 1.9 is obsolete typedef struct { U16 fpgaValveControl; ///< Reg 04. Valve control register @@ -527,7 +527,6 @@ U16 fpgaConSensD43_Addrs; ///< Reg 119. D43 Initialization Address register U32 fpgaConSensD43_Data_In; ///< Reg 121. D43 Initialization data register } FPGA_ACTUATORS_BETA_1_9_T; -#endif typedef struct {