Index: firmware/App/Controllers/RinsePump.c =================================================================== diff -u -r14998cd05a5b439a1e4a01ab11ad5e65c259ee3c -ra70a78cad6ecddf3a5bc84e77b24ebc123b54161 --- firmware/App/Controllers/RinsePump.c (.../RinsePump.c) (revision 14998cd05a5b439a1e4a01ab11ad5e65c259ee3c) +++ firmware/App/Controllers/RinsePump.c (.../RinsePump.c) (revision a70a78cad6ecddf3a5bc84e77b24ebc123b54161) @@ -48,7 +48,7 @@ #define RINSE_PUMP_PULSE_WIDTH_INVALID_MAX 0xFFFFU ///< Invalid pulse width maximum (sensor fault). //TODO: to be tested once the Beta 2 units are out #define RINSE_PUMP_SPD_OUT_OF_RANGE_TOL_PCT 0.10F ///< Rinse pump commanded vs measured speed tolerance (10%). -#define RINSE_PUMP_SPEED_OUT_PERSISTENCE_MS 500 ///< Persistence time (ms) before declaring speed-out-of-range alarm. +#define RINSE_PUMP_SPEED_OUT_PERSISTENCE_MS 3000 ///< Persistence time (ms) before declaring speed-out-of-range alarm. #define RINSE_PUMP_MAX_RPM_ESTIMATE 3000U ///< Estimated max rinse pump RPM (for PWM-to-target conversion). // ********** private data ********** @@ -79,7 +79,7 @@ { // Initialize controller variables rinsePumpDataPublicationTimerCounter = DATA_PUBLISH_COUNTER_START_COUNT; - currentRinsePumpState = RINSE_PUMP_STATE_INIT; + currentRinsePumpState = RINSE_PUMP_STATE_OFF; rinsePumpDataPublishInterval.data = RINSE_PUMP_DATA_PUB_INTERVAL; rinsePumpDataPublishInterval.ovData = RINSE_PUMP_DATA_PUB_INTERVAL; rinsePumpDataPublishInterval.ovInitData = RINSE_PUMP_DATA_PUB_INTERVAL; @@ -258,7 +258,8 @@ } //TODO: to be tested once the Beta 2 units are out - checkPersistentAlarm( ALARM_ID_DD_D79_RINSE_PUMP_SPEED_OUT_OF_RANGE, isRpSpeedOut, (F32)rinsePumpMeasuredSpeed, (F32)rinsePumpTargetSpeedRPM ); + //TODO: Needs more understanding/characterization from EE team, so uncomment after understanding. + //checkPersistentAlarm( ALARM_ID_DD_D79_RINSE_PUMP_SPEED_OUT_OF_RANGE, isRpSpeedOut, (F32)rinsePumpMeasuredSpeed, (F32)rinsePumpTargetSpeedRPM ); } /*********************************************************************//** @@ -274,8 +275,13 @@ rinsePumpTargetSpeedRPM = 0; - if ( TRUE == getTestConfigStatus( TEST_CONFIG_DD_FP_ENABLE_BETA_2_0_HW ) ) + if ( TRUE == getTestConfigStatus( TEST_CONFIG_DD_FP_ENABLE_BETA_1_9_HW ) ) { + // Current Beta 1.9 system uses on/off bit + setValveState( D88_79_VALV, VALVE_STATE_CLOSED ); + } + else + { F32 pwmPercent; // Set PWM to zero to stop the logical rinse pump @@ -284,11 +290,6 @@ pwmPercent = rinsePumpPwmPercentage.data; setRinsePumpPwm( D79_RINSE_PUMP, pwmPercent ); } - else - { - // Current Beta 1.9 system uses on/off bit - setValveState( D88_79_VALV, VALVE_STATE_CLOSED ); - } return state; } @@ -304,8 +305,13 @@ { RINSE_PUMP_STATE_T state = RINSE_PUMP_STATE_ON; - if ( TRUE == getTestConfigStatus( TEST_CONFIG_DD_FP_ENABLE_BETA_2_0_HW ) ) + if ( TRUE == getTestConfigStatus( TEST_CONFIG_DD_FP_ENABLE_BETA_1_9_HW ) ) { + // Current Beat 1.9 system uses on/off bit + setValveState( D88_79_VALV, VALVE_STATE_OPEN ); + } + else + { F32 pwmPercent; rinsePumpPwmPercentage.data = RINSE_PUMP_DEFAULT_PWM_PERCENT; @@ -314,11 +320,6 @@ // Turn on logical rinse pump with given PWM value setRinsePumpPwm( D79_RINSE_PUMP, pwmPercent ); } - else - { - // Current Beat 1.9 system uses on/off bit - setValveState( D88_79_VALV, VALVE_STATE_OPEN ); - } return state; }