Bluetooth Controlled Robot Car Using Arduino




About: Student at University of Colombo

In this instructable, i'm going to guide you on making a robot car that control over Bluetooth from your android mobile phone. Not only that, the robot car has special ability of avoiding obstacles which it meet when moving the car forward. The robot car is fully based on arduino and I hope to do step by step guide on making this robot in very easy way. Hope you will enjoy it.

Step 1: What You Need for This Robot

  1. Arduino UNO -
  2. HC-06 Bluetooth Module -
  3. L298n motor driver -
  4. HC-SR04 Ultrasonic Sonar Sensor -
  5. Smart robot car chassis with 2 x toy car wheels and 1 x Universal wheel (or ball casters) -
  6. Two DC motors -
  7. 2x 9V Batteries
  8. 1K and 2K Resistors
  9. Jumper wires (male-to-male, male-to-female)
  10. Mini breadboard
  11. Screws and nuts
  12. Screwdriver
  13. Soldering iron
  14. Double sided tape(optional)
  15. Hot glue gun(optional)

Step 2: Assembling the Chassis

Solder two wires to each DC motor. Then fix two motors to the chassis using the screws. If you need any clarification, please watch this youtube video and it will show you how to assemble the Smart 2WD Robot car chassis. Finally attach the Universal wheel (or ball caster wheel) to the back of the chassis.

Step 3: Mount the Components

Mount the Arduino UNO, L298n motor driver and the Breadboard on the chassis. Attach the HC-06 Bluetooth module on the breadboard. Mount the HC-SR04 Ultrasonic sensor at the front of the chassis. Note: when mounting the arduino board, leave enough space to plug the USB cable, since later you have to program the arduino board by connecting the it to the PC via a USB cable.

Step 4: HC-06 Bluetooth Module Connections

Tip: This circuit diagram only shows you, how the pins of HC-06 Bluetooth module should be connected to the arduino board. This is not the circuit diagram of our robot.

Make resistor connections correctly!!!

You can use 'two series 1K' resistors instead of 2K resistor.

Power the Bluetooth module using arduino 5V output.

Important: You have to remove any connections you made to the arduino digital pin 0(RX) and digital pin 1(TX) before upload any code. Otherwise your code will not upload to the board. After uploading the code, you can plug wires to both pins.

Step 5: Wire Connections

L298n motor driver:

+12V → 9V battery (+)

GND → 9V battery (- ) and to arduino board any GND pin

In1 → arduino digital pin 7

In2 → arduino digital pin 6

In3 → arduino digital pin 5

In4 → arduino digital pin 4

OUT1 → Motor 1

OUT2 → Motor 1

OUT3 → Motor 2

OUT4 → Motor 2

HC-SR04 Ultrasonic Sonar sensor:
VCC → +5V

Trig → arduino analog pin 1

Echo → arduino analog pin 2

GND → breadboard GND

HC-06 Bluetooth module:

VCC → +5V

GND → breadboard GND

TXD → arduino digital pin 0 (RX)

RXD → arduino digital pin 1 (TX) [after going throught resistor connections]

Step 6: Programming Arduino UNO

  1. Install NewPing Library. (Ultrasonic sensor function library)
    • Download the NewPing.rar file
    • Unrar the file and copy NewPing file
    • Paste the file to Arduino libraries folder where you have installed the Arduino software in your PC (e.g:-C:\Arduino\libraries)
  2. Download and open bluetooth_obstacle_avoiding.ino
  3. Remove any connections made to arduino digital pin 0 (RX) and digital pin 1 (TX)
  4. Upload the bluetooth_obstacle_avoiding.ino code
  5. Make necessary connections to arduino digital pin 0 (RX) and digital pin 1 (TX) again

Step 7: The Android App

  1. Download mkrbot.apk on your android mobile
  2. Install the app. If your mobile prevent installing the app, Go to settings → security → enable unknown sources
  3. Open the app
  4. At the beginning, the app will show "Disconnected" and the HC-06 Bluetooth module red LED will blink
  5. Tap the Bluetooth symbol ᛒ on the app
  6. Select something named with HC-06
  7. Now the app will show connected and the LED in the HC-06 Bluetooth module will light up continuously without blinking

Step 8: Great!!!

Now you can control the robot from your android mobile over Bluetooth and it will automatically avoid any obstacle before crash!!!

I would be happy to answer any questions you have

email me:

search me on facebook and linkedin for more projects - Danusha nayantha

Thank You



    • Plastics Contest

      Plastics Contest
    • Make it Glow Contest 2018

      Make it Glow Contest 2018
    • Optics Contest

      Optics Contest

    19 Discussions

    Star Robaticssachinbalaji125

    Reply 2 months ago

    There are lot of apps available in the play store. you can download one of them. Or else use this app( recomended) .


    7 months ago

    i didn't understand this code can you briefly explain me.

    void loop()













    9 months ago

    Sir i got a issue on my hc-sr04... I think its not working..

    3 replies
    Nayantha KGDSubraP

    Reply 9 months ago

    You can simply buy another, because its very cheap.
    Remember to provide a voltage between 3.3V - 5V to the ultrasonic sensor.
    However you can build the bluetooth controlled car without Obstacle avoiding feature (Without HC- SR04). What you have to do is, just remove the sensor, and its connections from the robot and update the code.
    If you need help on updating the code, please let me know....

    ChristyF23Nayantha KGD

    Reply 7 months ago

    Can u pls send me the updated code excluding the ultrasonic sensor


    7 months ago

    The compiler is showin some kind error in program

    Arduino: 1.8.5 (Windows Store (Windows 10), Board: "Arduino/Genuino Uno"


    Downloads\bluetooth_obstacle_avoiding\bluetooth_obstacle_avoiding.ino:2:21: fatal error: NewPing.h: No such file or directory

    #include <NewPing.h>


    compilation terminated.

    exit status 1
    Error compiling for board Arduino/Genuino Uno.

    This report would have more information with
    "Show verbose output during compilation"
    option enabled in File -> Preferences.
    please help
    1 reply
    Star Robaticsthebrophet

    Reply 7 months ago

    You have to install the Newping library first.
    Please download and copy, phaste it to the Arduino/libaries where you have installed Arduino software in your pc.

    Then delete the #include part in my code and re enter it by following
    Sketch-->include libaries--->NewPing

    If you have trouble, give me your email address and i will send you screenshots of how to install NewPing

    Nayantha KGDAcchatP

    Reply 9 months ago

    of course, But you have to do some changes in the code.

    AcchatPStar Robatics

    Reply 9 months ago

    hello sir i have some more issues can you help me . I want to contact you on mail . Thank you


    10 months ago

    Nice instructable! Can you use bluetooth to communicate with other arduinos? If so where would I start?

    1 reply
    Nayantha KGDPib2

    Reply 10 months ago

    Thank you!

    You have to use a bluetooth module (HC-06 or HC-05) to communicate with any arduino. And also you need to design an android app by yourself to control your project (Some apps are already available in Google App store).

    Nayantha KGD

    10 months ago

    Please vote me on instructables contests!!!

    Thank you