#define TRIG 5 // Ultrasonic TRIG pin
#define ECHO 18 // Ultrasonic ECHO pin
#define LED_PIN 19 // LED pin (simulating vibration motor)
void setup() {
pinMode(TRIG, OUTPUT); // Tell ESP32 TRIG is output
pinMode(ECHO, INPUT); // Tell ESP32 ECHO is input
pinMode(LED_PIN, OUTPUT);// LED output
Serial.begin(115200); // For monitoring distance
}
void loop() {
long duration, distance;
// Send pulse to ultrasonic sensor
digitalWrite(TRIG, LOW);
delayMicroseconds(2);
digitalWrite(TRIG, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG, LOW);
// Read echo (time it took for signal to return)
duration = pulseIn(ECHO, HIGH);
// Convert time to distance in cm
distance = (duration * 0.0343) / 2;
// Check if obstacle is close
if(distance < 50){ // threshold = 50 cm
digitalWrite(LED_PIN, HIGH); // LED ON → obstacle detected
} else {
digitalWrite(LED_PIN, LOW); // LED OFF → no obstacle
}
// Print distance for monitoring
Serial.print("Distance: ");
Serial.println(distance);
delay(100); // small delay
}