#include <CayenneMQTTESP32.h> // Library for Cayenne
#include "DHTesp.h" // Library for DHT sensor
#define CAYENNE_PRINT Serial
const int DHT_PIN = 15;
DHTesp dhtSensor;
char ssid[] = "Wokwi-GUEST";
char wifiPassword[] = "";
char username[] = "b8a822c0-b22a-11ec-8c44-371df593ba58";
char password[] = "69252e02728b3cfdf682c7edd2ab96366fe97396";
char clientID[] = "15ce2bb0-acb3-11ed-b0e7-e768b61d6137";
void setup() {
Serial.begin(115200); // Baud rate for serial monitor
dhtSensor.setup(DHT_PIN, DHTesp::DHT22); // To start communication with DHT sensor
Cayenne.begin(username, password, clientID, ssid, wifiPassword); // To Authenticate cayenne
}
void loop() {
delay(2000); // Give some delay between each Sensor reading
Cayenne.loop();
TempAndHumidity data = dhtSensor.getTempAndHumidity();
if (isnan(data.humidity) || isnan(data.temperature)) { // Condition to check whether the sensor reading was successful or not
Serial.println("Failed to read from DHT sensor!");
return;
}
Serial.print("Humidity: "); // To print the data in serial monitor
Serial.print(data.humidity);
Serial.print(" %\t Temperature: ");
Serial.print(data.temperature);
Serial.println(" *C ");
Cayenne.virtualWrite(0, data.humidity); // To write the Sensor reading to Cayenne Dashboard using channel 0
Cayenne.celsiusWrite(1, data.temperature); // To write the Sensor reading to Cayenne Dashboard using channel 1
}