Project Hub
Bluetooth Controlled Car
📱

Bluetooth Controlled Car

Drive a robot from a phone over HC-05 Bluetooth.

advanced120 min

Components Needed

Arduino UNO
HC-05 Bluetooth module
L298N motor driver
2× DC motors + wheels
Battery pack

Circuit Diagram & Wiring

Add your circuit diagram image here.

  1. HC-05 TX → pin 2 (RX), RX → pin 3 (TX) via divider.
  2. Motor driver IN1..IN4 on pins 5,6,9,10.

Arduino Sketch (.ino)

bluetooth-car.ino
<span style="color:#f97583">#includespan> &lt;SoftwareSerial.h&gt;
SoftwareSerial bt(<span style="color:#79b8ff">2span>, <span style="color:#79b8ff">3span>);
const int IN1=<span style="color:#79b8ff">5span>, IN2=<span style="color:#79b8ff">6span>, IN3=<span style="color:#79b8ff">9span>, IN4=<span style="color:#79b8ff">10span>;

void drive(int a, int b, int c, int d) {
  digitalWrite(IN1,a); digitalWrite(IN2,b);
  digitalWrite(IN3,c); digitalWrite(IN4,d);
}

void setup() {
  bt.begin(<span style="color:#79b8ff">9600span>);
  pinMode(IN1,OUTPUT); pinMode(IN2,OUTPUT);
  pinMode(IN3,OUTPUT); pinMode(IN4,OUTPUT);
}

void loop() {
  if (bt.available()) {
    char c = bt.read();
    if (c == &<span style="color:#f97583">#<span style="color:#79b8ff">39span>span>;F&<span style="color:#f97583">#<span style="color:#79b8ff">39span>span>;) drive(<span style="color:#79b8ff">1span>,<span style="color:#79b8ff">0span>,<span style="color:#79b8ff">1span>,<span style="color:#79b8ff">0span>);
    else if (c == &<span style="color:#f97583">#<span style="color:#79b8ff">39span>span>;B&<span style="color:#f97583">#<span style="color:#79b8ff">39span>span>;) drive(<span style="color:#79b8ff">0span>,<span style="color:#79b8ff">1span>,<span style="color:#79b8ff">0span>,<span style="color:#79b8ff">1span>);
    else if (c == &<span style="color:#f97583">#<span style="color:#79b8ff">39span>span>;L&<span style="color:#f97583">#<span style="color:#79b8ff">39span>span>;) drive(<span style="color:#79b8ff">0span>,<span style="color:#79b8ff">1span>,<span style="color:#79b8ff">1span>,<span style="color:#79b8ff">0span>);
    else if (c == &<span style="color:#f97583">#<span style="color:#79b8ff">39span>span>;R&<span style="color:#f97583">#<span style="color:#79b8ff">39span>span>;) drive(<span style="color:#79b8ff">1span>,<span style="color:#79b8ff">0span>,<span style="color:#79b8ff">0span>,<span style="color:#79b8ff">1span>);
    else drive(<span style="color:#79b8ff">0span>,<span style="color:#79b8ff">0span>,<span style="color:#79b8ff">0span>,<span style="color:#79b8ff">0span>);
  }
}