#define BLYNK_PRINT Serial
#define BLYNK_TEMPLATE_ID "TMPLwuIqQT0V"
#define BLYNK_DEVICE_NAME "Blynk Project"
#define BLYNK_AUTH_TOKEN "bhkPpEr8g12j5XzA9KfX5BlbZMm5sHpQ"
#include <HTTPClient.h>
#include <Update.h>
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
#include <DHTesp.h>;
char auth[] = BLYNK_AUTH_TOKEN;
char ssid[] = "Wokwi-GUEST";
char pass[] = "";
DHTesp dhtSensor;
TempAndHumidity data;
WidgetLED led(1);
int pin = 13;
BLYNK_WRITE(V0) {
int pinValue = param.asInt();
if (pinValue == 1) {
digitalWrite(pin, HIGH);
led.on();
Serial.println(pinValue);
} else {
digitalWrite(pin, LOW);
led.off();
Serial.println(pinValue);
}
}
BLYNK_WRITE(InternalPinOTA) {
String url = param.asString();
Serial.print(url);
}
void setup() {
Serial.begin(115200);
pinMode(pin, OUTPUT);
digitalWrite(pin, LOW);
dhtSensor.setup(15, DHTesp::DHT22);
dhtSensor.getPin();
delay(10);
Serial.print("connection a : ");
Serial.println(ssid);
WiFi.begin(ssid, pass);
int wifi_ctr = 0;
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("WiFi connected");
Blynk.begin(auth, ssid, pass);
}
void loop() {
data = dhtSensor.getTempAndHumidity();
int temp = data.temperature;
int hum = data.humidity;
Blynk.run();
if (led.getValue()) {
Blynk.virtualWrite(V2, temp);
Blynk.virtualWrite(V5, temp);
Blynk.virtualWrite(V6, hum);
}
else {
Blynk.virtualWrite(V2, 0);
Blynk.virtualWrite(V5, 0);
Blynk.virtualWrite(V6, 0);
}
}
void blinkLedWidget()
{
Serial.println("blinkLedWidget");
Serial.println(led.getValue());
if (led.getValue()) {
led.off();
Serial.println("LED on V1: off");
} else {
led.on();
Serial.println("LED on V1: on");
}
}
//timer.setInterval(1000L, blinkLedWidget);
BLYNK_WRITE(V2)
{
int pinValue = param.asInt();
// assigning incoming value from pin V1 to a variable
Serial.println("BLYNK_WRITE");
Serial.println(pinValue);
}
/*
WidgetLED led(2);
BlynkTimer timer;
void blinkLed()
{
Serial.println("blinkLed");
Serial.println(led.getValue());
if (led.getValue()== 255) {
digitalWrite(pin, HIGH);
} else {
digitalWrite(pin, LOW);
}
}
*/