#include "DHTesp.h"
#include "WiFi.h"
#include "WiFiClientSecure.h"
#include "HTTPClient.h"
#include "Wire.h"
#include "ArduinoJson.h"
StaticJsonDocument<500> doc;
const int DHT_PIN = 15;
const char* serverName = "https://us-east-1.aws.data.mongodb-api.com/app/iot-test-app-diiex/endpoint/insertdht22data";
String sid = "s001";
DHTesp dhtSensor;
void setup() {
Serial.begin(115200);
dhtSensor.setup(DHT_PIN , DHTesp::DHT22);
Serial.print("Connecting to Wifi");
WiFi.begin("Wokwi-GUEST" , "" , 6);
while (WiFi.status() !=WL_CONNECTED) {
delay(100);
Serial.print(".");
}
Serial.println("Connected!");
}
void loop(){
TempAndHumidity data = dhtSensor.getTempAndHumidity();
if(WiFi.status()==WL_CONNECTED){
WiFiClientSecure *client = new WiFiClientSecure;
client->setInsecure();
HTTPClient https;
doc["sensor"]["sid"] = sid;
doc["sensor"]["temp"] = String(data.temperature, 2);
doc["sensor"]["hum"] = String(data.humidity,1);
https.begin(*client,serverName);
https.addHeader("Content-Type","application/json");
String json;
serializeJson(doc,json);
Serial.println(json);
int httpResponseCode = https.POST(json);
if (httpResponseCode>0){
Serial.print("HTTP Response code : ");
Serial.println(httpResponseCode);
}
else {
Serial.print("Error code: ");
Serial.println(httpResponseCode);
}
https.end();
}
delay(2000);
}