#include "DHTesp.h"
#include <WiFi.h>
#include <HTTPClient.h>
const char* ssid = "Wokwi-GUEST";
const char* password = "";
const char* serverUrl = "http://example.com/api/data";
const int DHT_PIN = 3;
DHTesp dhtSensor;
#define uS_TO_S_FACTOR 1000000ULL // Conversion factor for micro seconds to seconds
#define TIME_TO_SLEEP 5
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
Serial.println("Hello, ESP32-C3!");
dhtSensor.setup(DHT_PIN, DHTesp::DHT22);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
}
Serial.println("Wifi connected");
Serial.println(WiFi.macAddress());
esp_sleep_enable_timer_wakeup(1000);
TempAndHumidity data = dhtSensor.getTempAndHumidity();
Serial.println("Temp: " + String(data.temperature, 2) + "°C");
Serial.println("Humidity: " + String(data.humidity, 1) + "%");
Serial.println("---");
if (WiFi.status() == WL_CONNECTED) {
HTTPClient http;
http.begin(serverUrl);
http.addHeader("Content-Type", "application/json");
String jsonData = "{\"temperature\":" + String(data.temperature, 2)
+", \"humidity\": " + String(data.humidity, 1)
+ ", \"MacAdress\": " + WiFi.macAddress() + "}";
int httpResponseCode = http.POST(jsonData);
if (httpResponseCode > 0) {
Serial.println("Data sent successfully: " + String(httpResponseCode));
} else {
Serial.println("Error sending data: " + String(httpResponseCode));
}
http.end();
}
delay(2000);
Serial.println("Going to sleep now");
delay(1000);
esp_deep_sleep_start();
}
void loop() {
}