diff --git a/src/main.ino b/src/main.ino
new file mode 100644
index 0000000000000000000000000000000000000000..f19bbb9b2fa7ef7ca621e64acb501137621cdd50
--- /dev/null
+++ b/src/main.ino
@@ -0,0 +1,54 @@
+const int ledPin = 2;
+const int buttonPin = 4;
+int buttonState = 0;
+int val = 0;
+int soilPin = A0;
+int soilPower = 7;
+int statusLED = 0;
+int buzzer = 9;
+int buzzerHigh = false;
+  
+void setup() {
+  // put your setup code here, to run once:
+  Serial.begin(9600);
+
+  pinMode(buttonPin, INPUT);
+  
+  pinMode(ledPin, OUTPUT);
+  pinMode(soilPower, OUTPUT);
+  pinMode(buzzer, OUTPUT);
+  digitalWrite(soilPower, LOW);
+}
+
+void loop() {
+  // put your main code here, to run repeatedly:
+  buttonState = digitalRead(buttonPin);
+
+  if(buttonState == HIGH) {
+      digitalWrite(buzzer, LOW);
+  }
+
+  Serial.print("Soil Moisture = ");
+  Serial.println(readSoil());
+  if (readSoil() < 900) {
+    Serial.println("wet soil");
+    digitalWrite(ledPin, LOW);
+  } else {
+    Serial.println("dry soil");
+    digitalWrite(ledPin, HIGH);
+    digitalWrite(buzzer, HIGH);
+    Serial.println("alarm on");    
+  }
+
+//  delay(1000); //​take a reading every second 
+}
+
+int readSoil() {
+//  digitalWrite(soilPower, HIGH);​ //turn D7 "On"     
+  digitalWrite(soilPower, HIGH);     
+  delay(10);     
+  val = analogRead(soilPin);
+  digitalWrite(soilPower, LOW);    
+  return val; //send current moisture value
+}
+