#include <WiFi.h>
#include "ThingSpeak.h"
#include <DHT.h>
DHT ddd(15,DHT22);
int temperature = 0;
int humidity = 0;
const char* WIFI_NAME = "Wokwi-GUEST";
const char* WIFI_PASSWORD = "";
const int myChannelNumber =2383682 ;
const char* myApiKey = "PCPBBY3KN7JS01JW";
const char* server = "api.thingspeak.com";
WiFiClient client;
void setup() {
Serial.begin(115200);
ddd.begin();
WiFi.begin(WIFI_NAME, WIFI_PASSWORD);
while (WiFi.status() != WL_CONNECTED){
delay(1000);
Serial.println("Wifi not connected");
}
Serial.println("Wifi connected !");
Serial.println("Local IP: " + String(WiFi.localIP()));
WiFi.mode(WIFI_STA);
ThingSpeak.begin(client);
}
void loop() {
temperature = ddd.readTemperature(); //Celsius
humidity = ddd.readHumidity();
ThingSpeak.setField(1,temperature);
ThingSpeak.setField(2,humidity);
long x = ThingSpeak.readLongField(myChannelNumber,1,myApiKey);
Serial.print("Temperature value from the thingspeak = ");
Serial.println(x);
int count;
int statusCode = ThingSpeak.getLastReadStatus();
if(statusCode == 200){
Serial.println("Counter: " + String(count));
count++;
}
else{
Serial.println("Problem reading channel. HTTP error code " + String(statusCode));
}
delay(1500); // No need to read the counter too often.
long y = ThingSpeak.readLongField(myChannelNumber,2,myApiKey);
Serial.print("Humidity value from the thingspeak = ");
Serial.println(y);
statusCode = ThingSpeak.getLastReadStatus();
if(statusCode == 200){
Serial.println("Counter: " + String(count));
count++;
}
else{
Serial.println("Problem reading channel. HTTP error code " + String(statusCode));
}
delay(1500); // No need to read the counter too often.
}