#define BLYNK_PRINT Serial
#define BLYNK_TEMPLATE_ID "TMPL6gTauHf9h"
#define BLYNK_TEMPLATE_NAME "KONTROL LED"
#define BLYNK_AUTH_TOKEN "2woLAoMEU75bCtqoxiFEFbpdfcB_DUx1"
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
#include "DHT.h"
#define red 19
#define green 18
#define blue 17
#define led 2
DHT dht(15, DHT22);
// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "Wokwi-GUEST";
char pass[] = "";
float suhu;
int kelembaban,nilai_slider;
BLYNK_WRITE(V3) {
nilai_slider = param.asInt(); // assigning incoming value from pin V1 to a variable
Serial.print("Slider value is: ");
Serial.println(nilai_slider);
}
void setup() {
// put your setup code here, to run once:
pinMode(led,OUTPUT);
pinMode(red,OUTPUT);
pinMode(green,OUTPUT);
pinMode(blue,OUTPUT);
Serial.begin(115200);
Serial.println("Hello, ESP32!");
lcd.init(); lcd.backlight();
lcd.setCursor(0,0); lcd.print("TEST LCD");
Blynk.begin(BLYNK_AUTH_TOKEN, ssid, pass);
dht.begin();
}
void loop() {
// put your main code here, to run repeatedly:
delay(10); // this speeds up the simulation
if(nilai_slider==0) {
digitalWrite(red,0);
digitalWrite(green,0);
digitalWrite(blue,0);
lcd.setCursor(0,1); lcd.print("MODE 0 AKTIF");
}
else if(nilai_slider==1) {
digitalWrite(red,1);
digitalWrite(green,0);
digitalWrite(blue,0);
lcd.setCursor(0,1); lcd.print("MODE 1 AKTIF");
}
else if(nilai_slider==2) {
digitalWrite(red,0);
digitalWrite(green,1);
digitalWrite(blue,0);
lcd.setCursor(0,1); lcd.print("MODE 2 AKTIF");
}
else if(nilai_slider==3) {
digitalWrite(red,0);
digitalWrite(green,0);
digitalWrite(blue,1);
lcd.setCursor(0,1); lcd.print("MODE 3 AKTIF");
}
else if(nilai_slider==4) {
digitalWrite(red,1);
digitalWrite(green,0);
digitalWrite(blue,1);
lcd.setCursor(0,1); lcd.print("MODE 4 AKTIF");
}
else if(nilai_slider==5) {
digitalWrite(red,0);
digitalWrite(green,1);
digitalWrite(blue,1);
lcd.setCursor(0,1); lcd.print("MODE 5 AKTIF");
}
kelembaban = dht.readHumidity();
suhu = dht.readTemperature();
if(suhu>60) {
Blynk.virtualWrite(V2,1);
digitalWrite(led,HIGH);
}
else {
Blynk.virtualWrite(V2,0);
digitalWrite(led,LOW);
}
Blynk.run();
Blynk.virtualWrite(V0, suhu);
Blynk.virtualWrite(V1, kelembaban);
lcd.setCursor(0,0); lcd.print("T=");
lcd.print(suhu,1); lcd.write(0xdf); lcd.print("C ");
lcd.print(" H=");
lcd.print(kelembaban); lcd.print("% ");
delay(1000);
}