Fire Alarm Code
Fire Alarm Code
//https://justdoelectronics.com
//https://www.youtube.com/c/JustDoElectronics/videos
#include <EEPROM.h>
#include <SoftwareSerial.h>
SoftwareSerial GSM(2, 3);
#define sensorPin 6
#define led_sms 3
#define led_call 4
int read_value;
void setup() {
Serial.begin(9600);
GSM.begin(9600);
pinMode(sensorPin, INPUT);
pinMode(led_sms, OUTPUT);
pinMode(led_call, OUTPUT);
Serial.println("Initializing....");
initModule("AT", "OK", 1000);
initModule("ATE1", "OK", 1000);
initModule("AT+CPIN?", "READY", 1000);
initModule("AT+CMGF=1", "OK", 1000);
initModule("AT+CNMI=2,2,0,0,0", "OK", 1000);
Serial.println("Initialized Successfully");
//Prateek
//wwww.prateeks.in
//https://www.youtube.com/c/JustDoElectronics/videos
sendSMS(phone_no, "Start GSM Fire Alert System");
sms_Status = EEPROM.read(1);
call_Status = EEPROM.read(2);
}
void loop() {
readSMS();
read_value = digitalRead(sensorPin);
if (read_value == 1) {
flag = 0;
} else {
if (flag == 0) {
flag = 1;
if (sms_Status == 1) { sendSMS(phone_no, "Fire Alert...."); }
delay(1000);
if (call_Status == 1) { callUp(phone_no); }
}
delay(1000);
}
if (var_1 == 1) {
if (!(strncmp(input_string, "Sms On", 6))) {
sms_Status = 1;
EEPROM.write(1, sms_Status);
sendSMS(phone_no, "Message is Active");
} else if (!(strncmp(input_string, "Sms Off", 7))) {
sms_Status = 0;
EEPROM.write(1, sms_Status);
sendSMS(phone_no, "Message is Deactivate");
}
var_1 = 0;
var_2 = 0;
}
digitalWrite(led_sms, sms_Status);
digitalWrite(led_call, call_Status);
}
void readSMS() {
while (GSM.available() > 0) {
if (GSM.find("/123"))
{
delay(1000);
while (GSM.available()) {
char input_char = GSM.read();
input_string[var_2++] = input_char;
if (input_char == '/') {
var_1 = 1;
return;
}
}
}
}
}