#define BLYNK_TEMPLATE_ID "TMPL6sNczBcC6"
#define BLYNK_TEMPLATE_NAME "UAS IoT"
#define BLYNK_AUTH_TOKEN "pTme70XSJovbnTAq_jS2MccJbJrBvbmO"
#include <WiFi.h>
#include "DHT.h"
#include <BlynkSimpleEsp32.h>
#define pin_led 12
#define pin_led2 33
#define DHT22PIN 23
bool ledState = LOW;
bool KipasState = LOW;
float humi = 0.0;
float temp = 0.0;
#define AUTH BLYNK_AUTH_TOKEN
#define WIFI_AP "Wokwi-GUEST"
#define WIFI_PASS ""
DHT dht(DHT22PIN, DHT22);
BlynkTimer timer;
BLYNK_WRITE(V3){
int pinValue = param.asInt();
digitalWrite(pin_led2, pinValue);
}
void sendSensor()
{
Blynk.virtualWrite(V0, temp);
Blynk.virtualWrite(V1, humi);
Blynk.virtualWrite(V2, KipasState);
}
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
Serial.println("Hello, ESP32!");
pinMode(pin_led, OUTPUT);
pinMode(pin_led2, OUTPUT);
dht.begin();
Blynk.begin(AUTH, WIFI_AP, WIFI_PASS);
timer.setInterval(100L, sendSensor);
}
void loop() {
// put your main code here, to run repeatedly:
Blynk.run();
timer.run();
humi = dht.readHumidity();
temp = dht.readTemperature();
Serial.print("Temperature: ");
Serial.print(temp);
Serial.print("ºC ");
Serial.print("Humidity: ");
Serial.println(humi);
if(temp > 35){
KipasState = HIGH;
}else if(temp < 30){
KipasState = LOW;
}
digitalWrite(pin_led, KipasState);
delay(500);
}