#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <BlynkSimpleEsp8266.h>
#include <NewPing.h>
// Replace with your WiFi credentials
char auth[] = "YourAuthToken";
char ssid[] = "YourWiFiSSID";
char pass[] = "YourWiFiPassword";
// Virtual PINs on Blynk app
#define VIRTUAL_DISTANCE_PIN V1
// Define LCD address and dimensions
LiquidCrystal_I2C lcd(0x27, 16, 2);
// Define sensor pins
#define TRIGGER_PIN 2
#define ECHO_PIN 3
#define MAX_DISTANCE 200
NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE);
void setup() {
Serial.begin(115200);
// Initialize LCD
lcd.begin(16, 2);
lcd.backlight();
// Connect to WiFi
Blynk.begin(auth, ssid, pass);
}
void loop() {
Blynk.run();
// Read distance from HC-SR04
delay(50);
unsigned int distance = sonar.ping_cm();
// Display distance on LCD
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Distance: ");
lcd.print(distance);
lcd.print(" cm");
// Send distance to Blynk
Blynk.virtualWrite(VIRTUAL_DISTANCE_PIN, distance);
delay(1000);
}