 	digitalWrite(VALV_PUMP, LOW);
 	digitalWrite(VALV_ATM, HIGH);
 
-	ledStat.setPixelColor(0, ledStat.Color(0, 255,0));
-	ledStat.show();
-}
-
-
+	ledStat.setPixelColor(0, ledStat.Color(238, 130, 238));
+	ledStat.show();
+	stateStartTime = millis();	
+}
+
+
+void drainUpdate() {
+	if((millis() - stateStartTime) < drainTimeout) {
+		stateMachine.transitionTo(done_state);
+	}
+}
+
+void done() {
+	digitalWrite(PUMP, LOW);
+	digitalWrite(VALV_PUMP, LOW);
+	digitalWrite(VALV_ATM, LOW);
+
+	ledStat.setPixelColor(0, ledStat.Color(0, 255, 0));
+	ledStat.show();
+}
+

extern void drain();
extern void vacuumUpdate();
extern void dwellUpdate();

////	Define the states within the SM


					stateStartTime = millis();
                	stateMachine.transitionTo(drin_state);
                	break;

				case DONE:
					Serial.println("DONE");
					stateMachine.transitionTo(done_state);
					break;
            }
          }
        }
