Index: firmware/App/Controllers/LoadCell.c =================================================================== diff -u -r5109bb981cab2025fcb9de33e303d046085efa18 -rb77808c306061c4ee874ddb6608a7da803d26ee4 --- firmware/App/Controllers/LoadCell.c (.../LoadCell.c) (revision 5109bb981cab2025fcb9de33e303d046085efa18) +++ firmware/App/Controllers/LoadCell.c (.../LoadCell.c) (revision b77808c306061c4ee874ddb6608a7da803d26ee4) @@ -359,7 +359,8 @@ { // For the first tare, the weight of the reservoir should be considered // The current weight of the load cell should not be greater than the weight of the reservoir + the extra weight - F32 deltaWeight = fabs( weight - EMPTY_RESERVOIR_WEIGHT_GRAMS ); + F32 deltaWeight = fabs( weight - EMPTY_RESERVOIR_WEIGHT_GRAMS ); + isWeightOutOfRange = ( deltaWeight > MAX_ALLOWED_EXTRA_WEIGHT_BEFORE_FIRST_TARE_GRAMS ? TRUE : FALSE ); } else Index: firmware/App/Modes/ModeFlush.c =================================================================== diff -u -r39c83612c7d83075cded8b7e1c8030898cdb5ad9 -rb77808c306061c4ee874ddb6608a7da803d26ee4 --- firmware/App/Modes/ModeFlush.c (.../ModeFlush.c) (revision 39c83612c7d83075cded8b7e1c8030898cdb5ad9) +++ firmware/App/Modes/ModeFlush.c (.../ModeFlush.c) (revision b77808c306061c4ee874ddb6608a7da803d26ee4) @@ -171,7 +171,7 @@ deenergizeActuators( NO_PARK_CONC_PUMPS ); initFlushMode(); - setCurrentSubState( NO_SUB_STATE ); + setCurrentSubState( flushState ); setCPLDCleanLEDColor( CPLD_CLEAN_LED_BLUE ); return flushState; Index: firmware/App/Modes/ModeHeatDisinfect.c =================================================================== diff -u -r39c83612c7d83075cded8b7e1c8030898cdb5ad9 -rb77808c306061c4ee874ddb6608a7da803d26ee4 --- firmware/App/Modes/ModeHeatDisinfect.c (.../ModeHeatDisinfect.c) (revision 39c83612c7d83075cded8b7e1c8030898cdb5ad9) +++ firmware/App/Modes/ModeHeatDisinfect.c (.../ModeHeatDisinfect.c) (revision b77808c306061c4ee874ddb6608a7da803d26ee4) @@ -318,7 +318,7 @@ deenergizeActuators( NO_PARK_CONC_PUMPS ); initHeatDisinfectMode(); - setCurrentSubState( NO_SUB_STATE ); + setCurrentSubState( heatDisinfectState ); setCPLDCleanLEDColor( CPLD_CLEAN_LED_ORANGE ); return heatDisinfectState; Index: firmware/App/Modes/ModeHeatDisinfectActiveCool.c =================================================================== diff -u -re2406180bf569fb495b709542c12da099c8e23ea -rb77808c306061c4ee874ddb6608a7da803d26ee4 --- firmware/App/Modes/ModeHeatDisinfectActiveCool.c (.../ModeHeatDisinfectActiveCool.c) (revision e2406180bf569fb495b709542c12da099c8e23ea) +++ firmware/App/Modes/ModeHeatDisinfectActiveCool.c (.../ModeHeatDisinfectActiveCool.c) (revision b77808c306061c4ee874ddb6608a7da803d26ee4) @@ -176,7 +176,7 @@ deenergizeActuators( NO_PARK_CONC_PUMPS ); initHeatDisinfectActiveCoolMode(); - setCurrentSubState( NO_SUB_STATE ); + setCurrentSubState( heatDisinfectActiveCoolState ); setCPLDCleanLEDColor( CPLD_CLEAN_LED_ORANGE ); return heatDisinfectActiveCoolState; Index: firmware/App/Modes/OperationModes.c =================================================================== diff -u -rd325999b7b3ea03b7e294cb8a0b97df93812fbe9 -rb77808c306061c4ee874ddb6608a7da803d26ee4 --- firmware/App/Modes/OperationModes.c (.../OperationModes.c) (revision d325999b7b3ea03b7e294cb8a0b97df93812fbe9) +++ firmware/App/Modes/OperationModes.c (.../OperationModes.c) (revision b77808c306061c4ee874ddb6608a7da803d26ee4) @@ -238,7 +238,7 @@ } // Send operation status event when appropriate - if ( priorOpMode != currentMode || priorSubMode != currentSubMode || priorSubState != currentSubState ) + if ( ( priorOpMode != currentMode ) || ( priorSubMode != currentSubMode ) || ( priorSubState != currentSubState ) ) { sendOperationStatusEvent(); SEND_EVENT_WITH_2_U32_DATA( DG_EVENT_SUB_MODE_CHANGE, priorSubMode, currentSubMode )