//MOCHRAFI SAIFULLOH
#define BLYNK_TEMPLATE_ID "TMPL6pJ5bGlMi"
#define BLYNK_TEMPLATE_NAME "Blynk Led ON OFF RAFI"
#define BLYNK_AUTH_TOKEN "h70pRe1MeGJ9HguIOIluofO3t_raESyb"
#define BLYNK_PRINT Serial
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
char auth[] = BLYNK_AUTH_TOKEN;
char ssid[] = "Wokwi-GUEST";///Enter your wifi name
char pass[] = "";// Enter wifi password
BlynkTimer timer;
#define button1_pin 5
#define button2_pin 10
#define button3_pin 19
#define button4_pin 4
#define button5_pin 22
#define button6_pin 23
#define led1_pin 19
#define led2_pin 18
#define led3_pin 5
#define led4_pin 17
#define led5_pin 16
#define led6_pin 4
int led1_state = 0;
int led2_state = 0;
int led3_state = 0;
int led4_state = 0;
int led5_state = 0;
int led6_state = 0;
#define button1_vpin V1
#define button2_vpin V2
#define button3_vpin V3
#define button4_vpin V4
#define button5_vpin V5
#define button6_vpin V6
BLYNK_CONNECTED() {
Blynk.syncVirtual(button1_vpin);
Blynk.syncVirtual(button2_vpin);
Blynk.syncVirtual(button3_vpin);
Blynk.syncVirtual(button4_vpin);
Blynk.syncVirtual(button5_vpin);
Blynk.syncVirtual(button6_vpin);
}
BLYNK_WRITE(button1_vpin) {
led1_state = param.asInt();
digitalWrite(led1_pin, led1_state);
}
BLYNK_WRITE(button2_vpin) {
led2_state = param.asInt();
digitalWrite(led2_pin, led2_state);
}
BLYNK_WRITE(button3_vpin) {
led3_state = param.asInt();
digitalWrite(led3_pin, led3_state);
}
BLYNK_WRITE(button4_vpin) {
led4_state = param.asInt();
digitalWrite(led4_pin, led4_state);
}
BLYNK_WRITE(button5_vpin) {
led5_state = param.asInt();
digitalWrite(led5_pin, led5_state);
}
BLYNK_WRITE(button6_vpin) {
led6_state = param.asInt();
digitalWrite(led6_pin, led6_state);
}
void setup()
{
Serial.begin(115200);
pinMode(button1_pin, INPUT_PULLUP);
pinMode(button2_pin, INPUT_PULLUP);
pinMode(button3_pin, INPUT_PULLUP);
pinMode(button4_pin, INPUT_PULLUP);
pinMode(button5_pin, INPUT_PULLUP);
pinMode(button6_pin, INPUT_PULLUP);
pinMode(led1_pin, OUTPUT);
pinMode(led2_pin, OUTPUT);
pinMode(led3_pin, OUTPUT);
pinMode(led4_pin, OUTPUT);
pinMode(led5_pin, OUTPUT);
pinMode(led6_pin, OUTPUT);
digitalWrite(led1_pin, HIGH);
digitalWrite(led2_pin, HIGH);
digitalWrite(led3_pin, HIGH);
digitalWrite(led4_pin, HIGH);
digitalWrite(led5_pin, HIGH);
digitalWrite(led6_pin, HIGH);
Blynk.begin(auth, ssid, pass);
}
void loop()
{
Blynk.run();
timer.run();
listen_push_buttons();
}
void listen_push_buttons(){
if(digitalRead(button1_pin) == LOW){
delay(200);
control_led(1);
Blynk.virtualWrite(button1_vpin, led1_state);
}
else if (digitalRead(button2_pin) == LOW){
delay(200);
control_led(2);
Blynk.virtualWrite(button2_vpin, led2_state);
}
else if (digitalRead(button3_pin) == LOW){
delay(200);
control_led(3);
Blynk.virtualWrite(button3_vpin, led3_state);
}
else if (digitalRead(button4_pin) == LOW){
delay(200);
control_led(4);
Blynk.virtualWrite(button4_vpin, led4_state);
}
else if (digitalRead(button5_pin) == LOW){
delay(200);
control_led(5);
Blynk.virtualWrite(button5_vpin, led5_state);
}
else if (digitalRead(button6_pin) == LOW){
delay(200);
control_led(6);
Blynk.virtualWrite(button6_vpin, led6_state);
}
}
void control_led(int led){
if(led == 1){
led1_state = !led1_state;
digitalWrite(led1_pin, led1_state);
Serial.print("led1 State = ");
Serial.println(led1_state);
delay(50);
}
else if(led == 2){
led2_state = !led2_state;
digitalWrite(led2_pin, led2_state);
delay(50);
}
else if(led == 3){
led3_state = !led3_state;
digitalWrite(led3_pin, led3_state);
delay(50);
}
else if(led == 4){
led4_state = !led4_state;
digitalWrite(led4_pin, led4_state);
delay(50);
}
else if(led == 5){
led5_state = !led5_state;
digitalWrite(led5_pin, led5_state);
delay(50);
}
else if(led == 6){
led6_state = !led6_state;
digitalWrite(led6_pin, led6_state);
delay(50);
}
}