 	//		Ensures timer has priority over pressure.
 	if ((millis() - startTime) > setTimeLimit) {
 		stateMachine.immediateTransitionTo(drin_state);
-	} else if (digitalRead(PRS_SEN) == HIGH) {
+	} else if ((digitalRead(PRS_SEN) == HIGH) && ((millis() - stateStartTime) > stateDebounceLimit)) {
 	    	//	If pressure is below set pressure threshold, return to 
 	    	//		Vacuum state to repressurize. 
 		stateMachine.immediateTransitionTo(vacu_state);

//                    break;
        
                case DRIN:
                    Serial.println("DRIN");
                    stateMachine.transitionTo(drin_state);
                    break;
            }
          }
        }

            Serial.println(buttonPresses);
            switch (buttonPresses){
                case IDLED:
                	Serial.println("IDLE");
               		stateMachine.transitionTo(idle_state);
                	break;
        
                case VACU:
                	Serial.println("VACU");
                   	//  Begin timer for total time between Vacuum and Dwell states
                   	startTime = millis(); 
					stateStartTime = millis();
		
                    stateMachine.transitionTo(vacu_state);
                    break;
        
