diff --git a/dogfood-timer.ino b/dogfood-timer.ino index 4b43cf0..9d5ecd3 100644 --- a/dogfood-timer.ino +++ b/dogfood-timer.ino @@ -192,7 +192,7 @@ void setuptime() { } delay(250); unsigned long oldtime = 0; - unsigned long secper5 = now(); + unsigned long secper20 = now(); check = false; while(1 == 1) { time_t t = now(); @@ -212,7 +212,7 @@ void setuptime() { //Serial.println(distance); - if(distance < 30 || analogRead(3) >= 150 || digitalRead(7) == 1 || digitalRead(6) == 1) { + if(distance < 30 || analogRead(3) >= 125 || digitalRead(7) == 1 || digitalRead(6) == 1) { digitalWrite(10, HIGH); wait = now(); } @@ -232,11 +232,17 @@ void setuptime() { if(now() != oldtime) { //if(check == false) { //Serial.println(analogRead(3)); - if(now()-350 >= secper5) { - t = t + 1; - secper5 = now(); + if(now()-1200 >= secper20) { + if(now()-15 >= wait && analogRead(3) < 100) { + digitalWrite(10, LOW); // just in case the arduino skips a second at the wrong time + } + if(day(t) != oldday) { + today = 0; + } + setTime(now() + 1); + secper20 = now(); } - if(now()-15 >= wait && analogRead(3) < 150) { + if(now()-15 >= wait && analogRead(3) < 100) { digitalWrite(10, LOW); } if(day(t) != oldday) { @@ -258,7 +264,7 @@ void setuptime() { lcd.print("PM"); } */ - if (analogRead(3) < 150 && prevphoto >=150) { + if (analogRead(3) < 100 && prevphoto >=100) { last = now(); lastlong = now(); today ++;