Files
Arduino/ESP8266_MOTOR_BLYNK/ESP8266_MOTOR_BLYNK.ino
Jérôme Delacotte 7b30d6e298 first commit
2025-03-06 11:15:32 +01:00

92 lines
2.4 KiB
C++
Executable File

#define BLYNK_PRINT Serial
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[] = "fTTuxsu5SappM7VsSLqj0ow_Q0o9Vvvv";
// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "Livebox-37cc";
char pass[] = "8A6060920A8A86896F770F2C47";
int PWMA=5;//Right side
int PWMB=4;//Left side
int DA=0;//Right reverse
int DB=2;//Left reverse
void setup(){
// Debug console
Serial.begin(9600);
Blynk.begin(auth, ssid, pass);
pinMode(PWMA, OUTPUT);
pinMode(PWMB, OUTPUT);
pinMode(DA, OUTPUT);
pinMode(DB, OUTPUT);
}
void loop(){
Blynk.run();
}
// Handling Joystick data
BLYNK_WRITE(V1){
int x = param[0].asInt();
int y = param[1].asInt();
Serial.print(x);
Serial.print(y);
Serial.println();
if(x==-1 && y==-1){ //Backward and Left
digitalWrite(PWMA, LOW);
digitalWrite(DA, LOW);
digitalWrite(PWMB, HIGH);
digitalWrite(DB, HIGH);
}else if(x==-1 && y==0){ //Left Turn
digitalWrite(PWMA, 450);
digitalWrite(DA, HIGH);
digitalWrite(PWMB, 450);
digitalWrite(DB, LOW);
}else if(x==-1 && y==1){ //Forward and Left
digitalWrite(PWMA, LOW);
digitalWrite(DA, LOW);
digitalWrite(PWMB, HIGH);
digitalWrite(DB, LOW);
}else if(x==0 && y==-1){ //Backward
digitalWrite(PWMA, HIGH);
digitalWrite(DA, HIGH);
digitalWrite(PWMB, HIGH);
digitalWrite(DB, HIGH);
}else if(x==0 && y==0){ //Stay
digitalWrite(PWMA, LOW);
digitalWrite(DA, LOW);
digitalWrite(PWMB, LOW);
digitalWrite(DB, LOW);
}else if(x==0 && y==1){ //Forward
digitalWrite(PWMA, HIGH);
digitalWrite(DA, LOW);
digitalWrite(PWMB, HIGH);
digitalWrite(DB, LOW);
}else if(x==1 && y==-1){ //Backward and Right
digitalWrite(PWMA, HIGH);
digitalWrite(DA, HIGH);
digitalWrite(PWMB, LOW);
digitalWrite(DB, LOW);
}else if(x==1 && y==0){ //Right turn
digitalWrite(PWMA, 450);
digitalWrite(DA, LOW);
digitalWrite(PWMB, 450);
digitalWrite(DB, HIGH);
}else if(x==1 && y==1){ //Forward and Right
digitalWrite(PWMA, HIGH);
digitalWrite(DA, LOW);
digitalWrite(PWMB, LOW);
digitalWrite(DB, LOW);
}
}