#include <WiFi.h>
#include <WiFiClient.h>
//#include <BlynkSimpleEsp32.h>
#include <DHT.h>
#include <LiquidCrystal_I2C.h>
#define DHTPIN 15 // Pin connected to DHT11 sensor
#define DHTTYPE DHT22 // DHT11 sensor type
#define FLAME_PIN 33 // Pin connected to IR Flame sensor
#define LCD_ADDR 0x27 // I2C address of LCD display
#define LCD_COLS 20 // Number of columns in LCD display
#define LCD_ROWS 4 // Number of rows in LCD display
#define ALERT_PIN 27 // Pin connected to alert LED
char auth[] = "xq-C2QfTATi64_fJgVrOkMvDB-JlRmJD";
char ssid[] = "V2020";
char pass[] = "srinibas1100";
#define BLYNK_TEMPLATE_ID "TMPLDvuMcVuQ"
#define BLYNK_TEMPLATE_NAME "fire"
#define BLYNK_AUTH_TOKEN "xq-C2QfTATi64_fJgVrOkMvDB-JlRmJD"
DHT dht(DHTPIN, DHTTYPE); // Initialize DHT11 sensor
WiFiClient client;
LiquidCrystal_I2C lcd(LCD_ADDR, LCD_COLS, LCD_ROWS); // Initialize LCD display
void setup() {
Serial.begin(9600);
dht.begin();
pinMode(FLAME_PIN, INPUT);
pinMode(ALERT_PIN, OUTPUT);
lcd.init();
lcd.backlight();
lcd.print("srinibas");
delay(1000);
//Blynk.begin(auth, ssid, pass); // Connect to Blynk server
}
void loop() {
float temperature = dht.readTemperature(); // Read temperature value from DHT11
float humidity = dht.readHumidity(); // Read humidity value from DHT11
int flame_state = digitalRead(FLAME_PIN); // Read state of IR Flame sensor
Serial.print("Temperature: ");
Serial.print(temperature);
Serial.print("C | Humidity: ");
Serial.print(humidity);
Serial.print("% | Flame: ");
Serial.println(flame_state);
//Blynk.virtualWrite(V0, temperature); // Send temperature value to Blynk app
//Blynk.virtualWrite(V1, humidity); // Send humidity value to Blynk app
//Blynk.virtualWrite(V2, flame_state); // Send flame sensor state to Blynk app
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Temp: ");
lcd.print(temperature);
lcd.print("C");
lcd.setCursor(0, 1);
lcd.print("Humidity: ");
lcd.print(humidity);
lcd.print("%");
delay(1000);
if (flame_state == HIGH) {
digitalWrite(ALERT_PIN, HIGH);
lcd.print("firee!");
// Blynk.notify("Fire detected!"); // Send alert to Blynk app
// Blynk.email("[email protected]", "Subject", "Message");
} else {
digitalWrite(ALERT_PIN, LOW);
}
delay(2000); // Wait for 2 seconds before reading again
//Blynk.run(); // Run Blynk background tasks
}