 
 FSM stateMachine = FSM(idle_state);		//	Initial SM with beginning state
 
-unsigned long startTime;				//	Used to track times for Vacuum/Dwell timer
+unsigned long startTime;			//	Used to track times for Vacuum/Dwell timer
 unsigned long setTimeLimit = 420000;		//	User defined time limit
 
+unsigned long stateStartTime;			//	Used to track times for entering Vacuum/Dwell states
+unsigned long stateDebounceLimit = 30000;	//	Used to define state debounce time limit
 
 int buttonState;             // the current reading from the input pin
 int lastButtonState = HIGH;   // the previous reading from the input pin

//                    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;
        
