Webdroid Edutech
Published

Building a Bluetooth-Controlled Car Using ESP32

This guide demonstrates how to build a Bluetooth-controlled car using an ESP32 module, an L298N motor driver, and 4WD car chassis kit.

BeginnerProtip3 hours114
Building a Bluetooth-Controlled Car Using ESP32

Things used in this project

Hardware components

4WD Car Chassis Kit
×1
ESP32 Module
×1
L298N Motor Driver Module
×1
7-12 V DC Battery (in our case lipo 2s battery)
×1
Jumper Wires
×1

Story

Read more

Code

Code

Arduino
#include <DabbleESP32.h>
 
#define IN1 16
#define IN2 17
#define IN3 18
#define IN4 19
#define ENA 5
#define ENB 6
 
void setup() {
    pinMode(IN1, OUTPUT);
    pinMode(IN2, OUTPUT);
    pinMode(IN3, OUTPUT);
    pinMode(IN4, OUTPUT);
    pinMode(ENA, OUTPUT);
    pinMode(ENB, OUTPUT);
    Dabble.begin("My Bluetooth Car");
}
 
void loop() {
    Dabble.processInput();
}
 
GamePad.onPressed(GAMEPAD_UP, []() {
    moveForward();
});
GamePad.onPressed(GAMEPAD_DOWN, []() {
    moveBackward();
});
GamePad.onPressed(GAMEPAD_LEFT, []() {
    turnLeft();
});
GamePad.onPressed(GAMEPAD_RIGHT, []() {
    turnRight();
});
GamePad.onPressed(GAMEPAD_STOP, []() {
    stopMotors();
});
 
void moveForward() {
    digitalWrite(IN1, HIGH);
    digitalWrite(IN2, LOW);
    digitalWrite(IN3, HIGH);
    digitalWrite(IN4, LOW);
}
 
void moveBackward() {
    digitalWrite(IN1, LOW);
    digitalWrite(IN2, HIGH);
    digitalWrite(IN3, LOW);
    digitalWrite(IN4, HIGH);
}
 
void turnLeft() {
    digitalWrite(IN1, LOW);
    digitalWrite(IN2, HIGH);
    digitalWrite(IN3, HIGH);
    digitalWrite(IN4, LOW);
}
 
void turnRight() {
    digitalWrite(IN1, HIGH);
    digitalWrite(IN2, LOW);
    digitalWrite(IN3, LOW);
    digitalWrite(IN4, HIGH);
}
 
void stopMotors() {
    digitalWrite(IN1, LOW);
    digitalWrite(IN2, LOW);
    digitalWrite(IN3, LOW);
    digitalWrite(IN4, LOW);
}

Credits

Webdroid Edutech
12 projects • 2 followers
Contact

Comments

Please log in or sign up to comment.