#include #define TRIGGER 5 #define ECHO 4 // NodeMCU Pin D1 > TRIGGER | Pin D2 > ECHO int ledPin = D0; // GPIO13 void setup() { Serial.begin (9600); pinMode(TRIGGER, OUTPUT); pinMode(ECHO, INPUT); pinMode(BUILTIN_LED, OUTPUT); delay(10); pinMode(ledPin, OUTPUT); digitalWrite(ledPin, LOW); } void loop() { long duration, distance; digitalWrite(TRIGGER, LOW); delayMicroseconds(2); digitalWrite(TRIGGER, HIGH); delayMicroseconds(10); digitalWrite(TRIGGER, LOW); duration = pulseIn(ECHO, HIGH); distance = (duration/2) / 29.1; // Match the request int value = LOW; if (distance <= 10) { digitalWrite(ledPin, HIGH); // turn the LED on (HIGH is the voltage level) delay(20); // wait for 2 second digitalWrite(ledPin, LOW); // turn the LED off by making the voltage LOW delay(20); digitalWrite(ledPin, HIGH); // turn the LED on (HIGH is the voltage level) delay(20); // wait for 2 second digitalWrite(ledPin, LOW); // turn the LED off by making the voltage LOW delay(20); digitalWrite(ledPin, HIGH); // turn the LED on (HIGH is the voltage level) delay(20); // wait for 2 second digitalWrite(ledPin, LOW); // turn the LED off by making the voltage LOW delay(20); } else { digitalWrite(ledPin, HIGH); value = HIGH; } // Set ledPin according to the request digitalWrite(ledPin, value); delay(1); Serial.print(distance); Serial.println(" cm"); delay(50); // if (distance <= 10){ // digitalWrite(ledPin, HIGH);} // else{ // digitalWrite(ledPin, LOW); // } }