From 4716ca13946d79b0be2cd6c11d88000864968a27 Mon Sep 17 00:00:00 2001 From: AakashKumar21 Date: Sun, 28 Oct 2018 06:11:05 +0530 Subject: [PATCH] final touch --- IOT/.vscode/.BROWSE.C_CPP.2.DB | Bin 13692928 -> 13697024 bytes IOT/platformio.ini | 2 +- IOT/src/main.cpp | 118 +++++++++++++++++++++++++++------ 3 files changed, 97 insertions(+), 23 deletions(-) diff --git a/IOT/.vscode/.BROWSE.C_CPP.2.DB b/IOT/.vscode/.BROWSE.C_CPP.2.DB index a1f5dcbf4aef92d868a9f51164d3daee40ee3b86..2baa24cb8b388c8085daec5b78decaa102aa9163 100644 GIT binary patch delta 13821 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 OP4AmB-ua`)f&U*Iy|^v_ diff --git a/IOT/platformio.ini b/IOT/platformio.ini index 3f31ebe..f67f86b 100644 --- a/IOT/platformio.ini +++ b/IOT/platformio.ini @@ -12,6 +12,6 @@ platform = espressif8266 board = nodemcuv2 framework = arduino -upload_port = 192.168.137.147 +upload_port = 192.168.137.16 upload_flags = --auth=admin404 lib_extra_dirs = C:\Users\aakas\.platformio\lib diff --git a/IOT/src/main.cpp b/IOT/src/main.cpp index f1b345e..166eb8f 100644 --- a/IOT/src/main.cpp +++ b/IOT/src/main.cpp @@ -31,6 +31,7 @@ struct config byte minute; int timeleft; int endtime; + bool set; }; config reminder[4]; @@ -61,6 +62,11 @@ const byte r = 0; const byte g = 5; const byte b = 4; const byte speaker = 13; +bool pushed = false; +bool y[3]={0,0,0}; +byte buzz_limit; +byte ring = false; +byte x=0; int time_in_min(); long time_in_sec(); void trigger(int,int,int); @@ -73,6 +79,7 @@ pinMode(interruptPin, INPUT_PULLUP); pinMode(r,OUTPUT); pinMode(g,OUTPUT); pinMode(b,OUTPUT); +pinMode(speaker,OUTPUT); digitalWrite(r,0); digitalWrite(g,0); digitalWrite(b,0); @@ -129,6 +136,13 @@ void loop() { MQTT_connect(); Adafruit_MQTT_Subscribe *subscription; while ((subscription = mqtt.readSubscription(3000) )) { + x = 0; + y[0]=0; + y[1]=0; + y[2]=0; + pushed = false; + ring = false; + buzz_limit = 0; button_pressed = false; calculated=false; subscription = mqtt.readSubscription(3000); @@ -182,10 +196,13 @@ void loop() { Serial.printf("%dmin\n", reminder[0].timeleft); Serial.printf("%dmin\n", reminder[1].timeleft); Serial.printf("%dmin\n", reminder[2].timeleft); + reminder[1].set = true; + reminder[2].set = true; + reminder[3].set = true; if(!calculated){ for(int i=0;i<=2;i++) { - reminder[i].endtime = reminder[i].hour*60 + reminder[i].minute + 10; + reminder[i].endtime = reminder[i].hour*60 + reminder[i].minute + 1; Serial.print("End Times"); Serial.printf("%d %d\n", reminder[i].endtime/60 ,reminder[i].endtime%60); } @@ -210,9 +227,21 @@ void loop() { Serial.printf("NTP Time: "); Serial.print(timeClient.getFormattedTime()); Serial.printf("=%dminutes",time_in_min()); + if(ring) + { + digitalWrite(speaker,0); + ring = 0; + Serial.println("Buzzer ON\n"); + } + else + { + Serial.println("Buzzer OFF\n"); + digitalWrite(speaker,1); + ring = false; + } ArduinoOTA.handle(); delay(2500); -} + } /****************************** FUNCTIONS *************************************/ void MQTT_connect() { @@ -243,6 +272,7 @@ void MQTT_connect() { void handleInterrupt() { button_pressed = true; + pushed = true; Serial.println("INTEEUPT"); } @@ -258,8 +288,54 @@ long time_in_sec() void trigger(int a, int bx, int c) { + /************** De-trigger ***************/ + if( reminder[0].endtime <= time_in_min()) + { + Serial.println("R1 De-Triggered"); + digitalWrite(r,0); + if(!pushed) + { + Serial.println("button not Pressed"); + delay(2200); + button.publish(1); + pushed = true; + } + } + + if( reminder[1].endtime <= time_in_min()) + { + Serial.println("R2 De-Triggered"); + digitalWrite(g,0); + if(!pushed) + { + Serial.println("button not Pressed"); + delay(2200); + button.publish(1); + pushed = true; + } + x++; + } + + if( reminder[2].endtime <= time_in_min()) + { + + Serial.println("R3 De-Triggered"); + digitalWrite(b,0); + if(!pushed) + { + Serial.println("button not Pressed"); + delay(2200); + button.publish(1); + pushed = true; + } + x++; + } + if(x == 2) ring = false; + + /***************** TRIGGER **************/ if(button_pressed) { + static int i=0; Serial.println("Button Pressed"); Serial.println("R1 De-Triggered"); digitalWrite(r,0); @@ -269,36 +345,34 @@ void trigger(int a, int bx, int c) digitalWrite(b,0); return; } - if(a <= 1 ) + if(a <= 1 && !(a<-1)) { Serial.println("R1 Triggered"); digitalWrite(r,1); + if(!y[0]) + { + ring = true; + y[0] = 1; + } } - if(bx <= 1) + if(bx <= 1 && !(bx<-1) ) { Serial.println("R2 Triggered"); digitalWrite(g,1); + if(!y[1]) + { + ring = true; + y[1] = 1; + } } - if(c <= 1) + if(c <= 1 && !(c<-1)) { Serial.println("R3 Triggered"); digitalWrite(b,1); - } - - /************** De-trigger ***************/ - if( reminder[0].endtime <= time_in_min()) - { - Serial.println("R1 De-Triggered"); - digitalWrite(r,0); - } - if( reminder[1].endtime <= time_in_min()) - { - Serial.println("R2 De-Triggered"); - digitalWrite(g,0); - } - if( reminder[2].endtime <= time_in_min()) - { - Serial.println("R3 De-Triggered"); - digitalWrite(b,0); + if(!y[2]) + { + ring = true; + y[1] = 1; + } } } \ No newline at end of file