#define BLYNK_TEMPLATE_ID "TMPL3nXhF3sst"
#define BLYNK_TEMPLATE_NAME "Ultrasonic Sensor"
#define BLYNK_AUTH_TOKEN "oWAdJ_z4YGe_oaO20oRS9qVNwkEJwDPO"
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
// Blynk credentials
char auth[] = BLYNK_AUTH_TOKEN;
char ssid[] = "Wokwi-GUEST"; // Change if using different WiFi
char pass[] = "";
// Ultrasonic pins
const int trigPin = 5;
const int echoPin = 18;
// Sound speed in cm/us
#define SOUND_SPEED 0.034
long duration;
float distanceCm;
void setup() {
Serial.begin(115200);
Blynk.begin(auth, ssid, pass);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
}
void loop() {
Blynk.run();
// Send ultrasonic trigger pulse
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Read echo response
duration = pulseIn(echoPin, HIGH);
// Calculate distance in cm
distanceCm = duration * SOUND_SPEED / 2;
// Display in Serial Monitor
Serial.print("Distance (cm): ");
Serial.println(distanceCm);
// Send to Blynk (V0)
Blynk.virtualWrite(V0, distanceCm);
delay(1000); // 1-second interval
}