#define TRIG_PIN D2 #define ECHO_PIN D3 #define RELAY_PIN D4 void setup() { Serial.begin(9600); pinMode(TRIG_PIN, OUTPUT); pinMode(ECHO_PIN, INPUT); pinMode(RELAY_PIN, OUTPUT); digitalWrite(RELAY_PIN, LOW); } long getDistance() { digitalWrite(TRIG_PIN, LOW); delayMicroseconds(2); digitalWrite(TRIG_PIN, HIGH); delayMicroseconds(10); digitalWrite(TRIG_PIN, LOW); long duration = pulseIn(ECHO_PIN, HIGH); long distance = (duration / 2) / 29.1; // Convert to cm return distance; } void loop() { long distance = getDistance(); Serial.print("Distance: "); Serial.print(distance); Serial.println(" cm"); if (distance < 100) { // Adjust threshold distance as needed digitalWrite(RELAY_PIN, HIGH); } else { digitalWrite(RELAY_PIN, LOW); } delay(1000); }