Protorianbz

ESP32-DHT11-MYSQL

Jul 29th, 2021
670
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <WiFi.h>
  2. #include "Arduino.h"
  3. #include "DHT.h"
  4. WiFiClient client;
  5. #include <HTTPClient.h>
  6.  
  7.  const char* ssid     = "Protorian";
  8.  const char* password = "aryan2016";
  9.  
  10. #define DHTPIN 4
  11. #define DHTTYPE DHT11   // DHT 11
  12. String devid = "RoomSensor1";
  13.  
  14. DHT dht(DHTPIN, DHTTYPE);
  15.  
  16. void setup() {
  17.     Serial.begin(9600);
  18.     while (!Serial) ; // wait for serial port to connect. Needed for native USB
  19.     Serial.println("start");
  20.  
  21.  
  22.   Serial.println();
  23.     Serial.println();
  24.     Serial.print("Connecting to : ");
  25.     Serial.println(ssid);
  26.  
  27.     WiFi.disconnect(true);
  28.     WiFi.begin(ssid, password);
  29.  
  30.     while (WiFi.status() != WL_CONNECTED) {
  31.         delay(300);
  32.         Serial.print(".");
  33.     }
  34.  
  35.     dht.begin();
  36. }
  37.  
  38.  void loop() {
  39. long rssi = WiFi.RSSI();
  40.  
  41.                 float humidity = dht.readHumidity();
  42.                 float tempC = dht.readTemperature();
  43.                 float tempF = dht.readTemperature(true);
  44.  
  45.                 float hif = dht.computeHeatIndex(tempF, humidity);
  46.                 float hic = dht.computeHeatIndex(tempC, humidity, false);
  47.                 int wifistatus = WiFi.status();
  48. //                String ipAddress = WiFi.localIP();
  49.                
  50.                   Serial.print(F("Humidity: "));
  51.                   Serial.print(humidity);
  52.                   Serial.print(F("%  Temperature: "));
  53.                   Serial.print(tempC);
  54.                   Serial.print(F("°C "));
  55.                   Serial.print(tempF);
  56.                   Serial.print(F("°F  Heat index: "));
  57.                   Serial.print(hic);
  58.                   Serial.print(F("°C "));
  59.                   Serial.print(hif);
  60.                   Serial.println(F("°F"));
  61.                   Serial.println();
  62.                   Serial.print(F("Wifi Status : "));
  63.                   Serial.println(wifistatus);
  64.                   Serial.print("\t\t");
  65.                   Serial.print(F("Wifi Ip Address : "));
  66.                   Serial.println(WiFi.localIP());
  67.                   Serial.print("\t\t");
  68.                   Serial.println(rssi);
  69.  
  70.                           HTTPClient http;
  71.         String url = "http://192.168.3.72/room/config.php?deviceid="+String(devid)+"&humidity="+float(humidity)+"&temperatureC="+float(tempC)+"&temperatureF="+float(tempF)+"&heatindexC="+float(hic)+"&heatindexF="+float(hif)+"&rssi="+long(rssi)+"&wifistatus="+String(WiFi.status());
  72.         Serial.println(url);    
  73.         http.begin(url);
  74.  
  75.       //using GET method to write to sql
  76.       int httpCode = http.GET();
  77.       if(httpCode > 0)
  78.       {
  79.           Serial.printf("[HTTP] GET...code: %d\n", httpCode);
  80.             if(httpCode == HTTP_CODE_OK)
  81.             {
  82.               String payload = http.getString();
  83.               Serial.println(payload);
  84.             }
  85.       }
  86.          else
  87.          {
  88.             Serial.printf("[HTTP] GET... failed, error: %s\n", http.errorToString(httpCode).c_str());
  89.          }
  90.           http.end();
  91. //       delay(300000);  // 5 Minute Delay before sending data to MYSQL again.
  92.                   delay(300000);                
  93.             }    
RAW Paste Data