#define BLYNK_TEMPLATE_ID "TMPL5pCYhyMf1"
#define BLYNK_TEMPLATE_NAME "Gas detector"
#define BLYNK_AUTH_TOKEN "WN-rIZdQFimbQwJr2Q8pd7AniCgMHzol"
#define gasPin 32
#define ledPin 18
#define buz 5
#define gasThreshold 500
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
#include "LiquidCrystal_I2C.h"
LiquidCrystal_I2C lcd = LiquidCrystal_I2C(0x27, 16, 2);
char ssid[] = "Wokwi-GUEST";
char pass[] = "";
int gasVal = 0;
void setup() {
Serial.begin(9600);
pinMode(ledPin, OUTPUT);
pinMode(buz, OUTPUT);
pinMode(gasPin, INPUT);
lcd.init();
lcd.backlight();
Blynk.begin(BLYNK_AUTH_TOKEN, ssid, pass);
}
void loop() {
gasVal = analogRead(gasPin);
gasVal = map(gasVal, 0, 4095, 0, 1024);
if(gasVal > gasThreshold){
digitalWrite(ledPin, HIGH);
digitalWrite(buz, HIGH);
writeLcd("Gas Leakage");
Blynk.virtualWrite(V1, 1);
}
else{
digitalWrite(ledPin, LOW);
digitalWrite(buz, LOW);
lcd.clear();
Blynk.virtualWrite(V1, 0);
}
Blynk.virtualWrite(V0, gasVal);
Blynk.run();
Serial.println(gasVal);
delay(10); // this speeds up the simulation
}
void writeLcd(String x){
lcd.setCursor(3,0);
lcd.print(x.c_str());
}
//All Good??