
WIZwiki-W7500 mbed platform & IFTTT maker channel. The aim of this project is to catch a thief when I wasn't home. If the PIR sensor catches a thief. It will send notification to your mobile device.
Dependencies: IFTTT WIZnetInterface mbed
main.cpp
- Committer:
- jehoon
- Date:
- 2015-07-30
- Revision:
- 0:801a968f1625
File content as of revision 0:801a968f1625:
#include "mbed.h" #include "EthernetInterface.h" #include "TCPSocketConnection.h" #include "ifttt.h" #define YourEventName "YOUREVENT" #define YourSecretKey "YOURKEY" #define DuringSafety 5 //hours EthernetInterface eth; Serial pc(USBTX, USBRX); // tx, rx DigitalOut led(LED1); AnalogIn sw(A0); DigitalIn pir(D8,PullUp); Timer timer; int main() { int phy_link; int flag = 0; int onetimeflag = 0; float sec = 0.0; pc.baud(115200); printf("Wait a second...\r\n"); uint8_t mac_addr[6] = {0x00, 0x08, 0xDC, 0x12, 0x34, 0x56}; eth.init(mac_addr); //Use DHCP eth.connect(); do{ phy_link = eth.ethernet_link(); printf("..."); wait(2); }while(!phy_link); printf("\r\nIP Address is %s \r\n", eth.getIPAddress()); TCPSocketConnection sock; // Initialize ifttt object, add up to 3 optional values, trigger event. IFTTT ifttt(YourEventName,YourSecretKey, &sock); // EventName, Secret Key, socket to use while(1) { if(!pir){ led = 0; onetimeflag = 0; printf("Safety\r\n"); if(!flag){ timer.start(); flag = 1; } wait(1); } else if(pir && (float)sw.read()>=0.9 && !onetimeflag){ led=1; onetimeflag=1; printf("Thief Detected\r\n"); ifttt.addIngredients("===WARNING===","The Thief was found","Report him to the police"); ifttt.trigger(); timer.reset(); wait(1); } sec = timer.read(); if(sec > DuringSafety*3600 && (float)sw.read()>=0.9){ timer.reset(); ifttt.addIngredients("Your home in safety during",(char*)DuringSafety,"hours!"); ifttt.trigger(); } } }