#include <ESP8266WiFi.h>
#include "ThingSpeak.h"

const char* ssid = "YOUR_WIFI_SSID";
const char* password = "YOUR_WIFI_PASSWORD";
unsigned long myChannelNumber = 123456;
const char* myWriteAPIKey = "YOUR_WRITE_API_KEY";

const int trigPin = D1;
const int echoPin = D2;

WiFiClient client;

void setup() {
  Serial.begin(115200);
  
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);

  WiFi.begin(ssid, password);
  Serial.print("Connecting to WiFi");
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
  }
  ThingSpeak.begin(client);
}

void loop() {
  long duration;
  float distanceCm;

  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);

  duration = pulseIn(echoPin, HIGH);

  distanceCm = (duration * 0.0343) / 2;

  Serial.print("Distance: ");
  Serial.print(distanceCm);
  Serial.println(" cm");

  ThingSpeak.writeField(myChannelNumber, 1, distanceCm, myWriteAPIKey);

  delay(15000);
}

Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: