#define BLYNK_PRINT Serial
#define BLYNK_TEMPLATE_ID "TMPL6ZBbPZfyy"
#define BLYNK_TEMPLATE_NAME "led and buzzer"
#define BLYNK_AUTH_TOKEN "IgVDWPPiHrLC-T5ZEQveeuPKvpYMbKFM"
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
char auth[] = BLYNK_AUTH_TOKEN;
char ssid[] = "Wokwi-GUEST";
char pass[] = "";
BlynkTimer timer;
#define LED1 13 // red
#define LED2 2 // yellow
#define LED3 5 // green
#define LED4 4 // blue
#define BUZZER 12 // Buzzer
#define BUZZER_FREQUENCY 1000 // Buzzer frequency in Hz
int SW_State_M = 0;
int SW_State_K = 0;
int SW_State_H = 0;
int SW_State_A = 0; // State for additional LED
int SW_State_Buzzer = 0; // State for buzzer
BLYNK_WRITE(V0)
{
SW_State_M = param.asInt();
digitalWrite(LED1, SW_State_M);
Serial.println(SW_State_M ? "RED ON" : "RED OFF");
Blynk.virtualWrite(V1, SW_State_M);
}
BLYNK_WRITE(V2)
{
SW_State_K = param.asInt();
digitalWrite(LED2, SW_State_K);
Serial.println(SW_State_K ? "YELLOW ON" : "YELLOW OFF");
Blynk.virtualWrite(V3, SW_State_K);
}
BLYNK_WRITE(V4)
{
SW_State_H = param.asInt();
digitalWrite(LED3, SW_State_H);
Serial.println(SW_State_H ? "GREEN ON" : "GREEN OFF");
Blynk.virtualWrite(V5, SW_State_H);
}
BLYNK_WRITE(V6)
{
SW_State_A = param.asInt();
digitalWrite(LED4, SW_State_A);
Serial.println(SW_State_A ? "Additional LED ON" : "Additional LED OFF");
Blynk.virtualWrite(V7, SW_State_A);
}
BLYNK_WRITE(V8)
{
SW_State_Buzzer = param.asInt();
digitalWrite(BUZZER, SW_State_Buzzer);
if (SW_State_Buzzer) {
tone(BUZZER, BUZZER_FREQUENCY);
Serial.println("Buzzer ON");
} else {
noTone(BUZZER);
Serial.println("Buzzer OFF");
}
Blynk.virtualWrite(V9, SW_State_Buzzer);
}
void setup()
{
pinMode(LED1, OUTPUT);
pinMode(LED2, OUTPUT);
pinMode(LED3, OUTPUT);
pinMode(LED4, OUTPUT); // Additional LED
pinMode(BUZZER, OUTPUT); // Buzzer
Serial.begin(9600);
Blynk.begin(auth, ssid, pass);
}
void loop()
{
Blynk.run();
timer.run();
}