#define BLYNK_TEMPLATE_ID "TMPL34KhM6Gts"
#define BLYNK_TEMPLATE_NAME "EV"
#include <WiFi.h>
#include <BlynkSimpleEsp32.h>
// Wi-Fi credentials
char ssid[] = "Galaxy M52 5GAC17";
char pass[] = "cjmo2744";
// Blynk Auth Token
char auth[] = "-9nqh5aCyOumn5mJniA7VMlGq2chxe1C";
// Virtual pins
#define VOLTAGE_PIN V1
#define CURRENT_PIN V2
#define SPEED_PIN V3
#define MOTOR_CONTROL_PIN V4
// Define analog pins for sensors
#define VOLTAGE_SENSOR_PIN 34
#define CURRENT_SENSOR_PIN 35
#define SPEED_SENSOR_PIN 32
// Define digital pin for motor control (LED)
#define MOTOR_CONTROL_LED_PIN 27
// Initialize Blynk instance
BlynkTimer timer;
void setup() {
Serial.begin(115200);
pinMode(MOTOR_CONTROL_LED_PIN, OUTPUT);
// Connect to Wi-Fi and Blynk
connectToWiFi();
}
void loop() {
Blynk.run();
timer.run();
}
void readSensors() {
// Read sensor values
int voltage = analogRead(VOLTAGE_SENSOR_PIN);
int current = analogRead(CURRENT_SENSOR_PIN);
int speed = analogRead(SPEED_SENSOR_PIN);
// Send sensor values to Blynk app
Blynk.virtualWrite(VOLTAGE_PIN, voltage);
Blynk.virtualWrite(CURRENT_PIN, current);
Blynk.virtualWrite(SPEED_PIN, speed);
}
// Function to control the motor (LED) based on Blynk app
BLYNK_WRITE(MOTOR_CONTROL_PIN) {
int motorState = param.asInt();
digitalWrite(MOTOR_CONTROL_LED_PIN, motorState);
}
void connectToWiFi() {
Serial.println("Connecting to WiFi...");
WiFi.begin(ssid, pass);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.println("WiFi connected");
Blynk.begin(auth, ssid, pass);
// Call the readSensors function every second
timer.setInterval(1000L, readSensors);
}
Loading
esp32-devkit-c-v4
esp32-devkit-c-v4