Advertisement
Electgpl

ESP - ThingsSpeak DHT11

Feb 14th, 2017
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.65 KB | None | 0 0
  1. #include <DHT.h>
  2. #include <ESP8266WiFi.h>
  3. String apiKey = "EHW19OYPTK9J7F40";
  4. const char* ssid = "ssid";
  5. const char* password = "pass";
  6. const char* server = "api.thingspeak.com";
  7. #define DHTPIN 2
  8. DHT dht(DHTPIN, DHT11,15);
  9. WiFiClient client;
  10. void setup() {
  11.   Serial.begin(115200);
  12.   delay(10);
  13.   dht.begin();
  14.   pinMode(A0, INPUT);
  15.   WiFi.begin(ssid, password);
  16.   Serial.println();
  17.   Serial.println();
  18.   Serial.print("Connecting to ");
  19.   Serial.println(ssid);
  20.   WiFi.begin(ssid, password);
  21.   while (WiFi.status() != WL_CONNECTED) {
  22.     delay(500);
  23.     Serial.print(".");
  24.   }
  25.   Serial.println("");
  26.   Serial.println("WiFi connected");
  27. }
  28. void loop() {
  29.   float h = analogRead(A0);
  30.   float t = analogRead(A0)+10;
  31.   if (isnan(h) || isnan(t)) {
  32.     Serial.println("Failed to read from DHT sensor!");
  33.     return;
  34.   }
  35.   if (client.connect(server,80)) {
  36.     String postStr = apiKey;
  37.     postStr +="&field1=";
  38.     postStr += String(t);
  39.     postStr +="&field2=";
  40.     postStr += String(h);
  41.     postStr += "\r\n\r\n";
  42.     client.print("POST /update HTTP/1.1\n");
  43.     client.print("Host: api.thingspeak.com\n");
  44.     client.print("Connection: close\n");
  45.     client.print("X-THINGSPEAKAPIKEY: "+apiKey+"\n");
  46.     client.print("Content-Type: application/x-www-form-urlencoded\n");
  47.     client.print("Content-Length: ");
  48.     client.print(postStr.length());
  49.     client.print("\n\n");
  50.     client.print(postStr);
  51.     Serial.print("Temperature: ");
  52.     Serial.print(t);
  53.     Serial.print(" degrees Celcius Humidity: ");
  54.     Serial.print(h);
  55.     Serial.println("% send to Thingspeak");
  56.   }
  57.   client.stop();
  58.   Serial.println("Waiting…");
  59.   delay(20000);
  60. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement