#include <WiFi.h>
#include "AdafruitIO_WiFi.h"
#include <DHT.h>
// DHT sensor pin
const int dhtPin = 14;
// Initialize DHT sensor
DHT dht(dhtPin, DHT22);
#define WIFI_SSID "Wokwi-GUEST"
#define WIFI_PASS ""
#define IO_USERNAME "Fiuzal212"
#define IO_KEY "aio_eULD614A3MPOPYInY8YCPYuig1PI"
// Connect to Wi-Fi and Adafruit IO handel
AdafruitIO_WiFi io(IO_USERNAME, IO_KEY, WIFI_SSID, WIFI_PASS);
// Create a feed object that allows us to send data to
AdafruitIO_Feed * suhu = io.feed("temperature");
AdafruitIO_Feed * humid = io.feed("humidity");
//delay func
unsigned long previousTime = 0;
unsigned long delayTime = 1000; //define time interval, milli secs
void setup()
{
// Enable the serial port so we can see updates
Serial.begin(115200);
// Connect to Adafruit IO
io.connect();
// wait for a connection
while (io.status() < AIO_CONNECTED)
{
delay(1000);
Serial.println("*************");
Serial.println("******Connecting to Wi-Fid******");
}
Serial.println("Connected to WiFi");
// Initialize DHT sensor
dht.begin();
}
void loop()
{
io.run();
// Read temperature and humidity from DHT sensor
float temperature = dht.readTemperature();
float humidity = dht.readHumidity();
// Check if any reads failed
if (isnan(temperature) || isnan(humidity))
{
Serial.println("Failed to read from DHT sensor!");
return;
}
if (millis() - previousTime >= delayTime) {
suhu->save(temperature);
humid->save(humidity);
// Print temperature and humidity
Serial.print("Temperature Sent is: ");
Serial.print(temperature);
Serial.print(" °C\t");
Serial.print("Humidity Sent is: ");
Serial.print(humidity);
Serial.println(" %");
previousTime = millis();
}
}