Picture of Arduino - Control DC Motor via Bluetooth
Hi guys,
In this project we will control a DC motor with a smartphone via bluetooth. This project is great to learn more about:
-DC motor
-Interfacing Arduino with your smartphone
-Bluetooth module

you can visit my website for more electronic projects, interesting news and tips.
Check this video to see it working

Step 1: Parts required

Picture of Parts required
1x Arduino Uno
1x Bluetooth Module (for example: HC-05)
1x Smartphone (any Android will work)
BlueTerm application
1x L293D IC
1x DC motor
1x Breadboard
Jumper Cables
1-40 of 106Next »
tytower15 days ago

Get it up front that you are charging $20 for this book and you will get a few more takeups . I for one won't be .

PeymannP1 month ago



ahmedH22 made it!1 month ago

I Made it!!!!

kavish laxkar2 months ago

i made it..but the ic gets hotter. what is the reason..and can i control two motors with it.?

ur ic is heated because of the high current u r drawing through the motor.... maybe instead of l293d , u should go for l298. and yes u can control two motors from a single l293d or l298.

DeepakT12 months ago

dc motor is unable to get power supply sir?

any suggetions?

shah dharmik2 months ago
Hey dear what is the range of bluetooth modulo?
How far can i operate motor?
BurakTutal2 months ago

Hey this is very useful, I will use the same one with much bigger DC motor.

Do you think L293D will burn because of the more current?

1010724 months ago


bbava4 months ago

hi i need to control 4 dc geared motor using bluetooth how can i do that ?

youssefa4 months ago

Hello sir; I have a question concerning the video which allows to command(order) an engine has direct current and I shall want to know what is that I few to put a servomotor instead of the engine has direct current and is that I little to command(order) several engine in liver? And thank you in advanc

returner7 months ago

Hi, i have a question and i hope you guys can help me with this. how does the arduino actually know actually know which data it is going to send or receive? in which part of the code does it do that? i want to make two arduinos one having a HC05 as a master sending data over to a HC06 slave on two different laptops. I hope you can answer me.

Well in the given program, after the loop

there are if, else if, else if statements. In those it is clearly mentioned the below things

input = 0, then both input pins ( 2 & 7 ) should be LOW

input = 1, then 2 should be LOW & 7 should be HIGH

input = 2, then 2 should be HIGH & 7 should be LOW

I hope you got it !!

Can you send me thesis nd ppt of this perticular mini project. plz sir I am herbly request you send me this project related suff on my email. I am not able to make thesis of this project. pratikmankar1802@gmail.com this is my id plz send me

tendous5 months ago

can i use L298 in motor driver shield instead of teh single chip L293

liming.li.106 months ago


JPUDAYAKUMAR made it!6 months ago
working wonderful
HalimA16 months ago

Could it be done with pic18f4550?

nisarg7 months ago
although i connected everything correctly n uploaded the code, it doesn't work is anything wrong wid the app or i m missing something?
FerH8 months ago

I'm new in all these so I had a question, what is the purpose of the variable "flag"?

RichardR38 months ago

Sir Rui Santos, I have a question. May I know if it is possible to get sensor value and command an Arduino (e.g. motors using L293D) at the same time? If yes, i hope you'll give me some ref, Thanks.

RichardR38 months ago

Sir Rui Santos, I have a question. May I know if it is possible to get sensor value and command an Arduino (e.g. motors using L293D) at the same time? If yes, i hope you'll give me some ref, Thanks.

RichardR38 months ago

Sir Rui Santos, I have a question. May I know if it is possible to get sensor value and command an Arduino (e.g. motors using L293D) at the same time? If yes, i hope you'll give me some ref, Thanks.

mustafaa68 months ago


Thanks for your tutorial. I am trying to contrrol arduino by android. I have done coding for arduino but I want to make prosecc when its is pushed android on button so can you sahere ardoino source code.

minsujeong9868 months ago

Is it available to use by I-phone?

I don't have any Android device.

Also, can you recommend a bluetooth control App?

HenleyMcCoy9 months ago

can I use any kind of bluetooth module?

HenleyMcCoy9 months ago

can I use any kind of bluetooth module?

i had to change by tx,rx becoz it was not working,

TahirJ11 months ago

How could I modify the code to add in voice commands and connect a bluetooth headset to verbally command arduino/bluetooth module?

there is no need to modiy ur code ,just use a voice enabled blueetooth app from playstore.


hi,i wrote a program to control to 12v dc motor x 2,motors are moving forward and reverse ,but there is an issue,when i press 1 ,output fwd,but when i press o,output is fwd,but when i press 0 and 1 simultaneously it may give output :rwd

using blueterm app .

ur code is nor uploading to mcu:arduino,showing some error.


#include <SoftwareSerial.h>//import library

SoftwareSerial Blueterm (10, 11);// rx ,tx

int motoroutput1=3;

int motoroutput2=4;

int motoroutput3=6;

int motoroutput4=7;

int motorenableA=5;

int motorenableB=8;

int BluetoothData; //data from blueterm app

void setup() {

Blueterm .begin(9600);

Blueterm .println(" press 0:FWD");

Blueterm .println(" press 1:RWD");








digitalWrite(motorenableB,HIGH);// put your setup code here, to run once:


void loop() {

if (Blueterm .available()){

BluetoothData=Blueterm .read();


digitalWrite(motoroutput1, HIGH);

digitalWrite(motoroutput2, LOW);

digitalWrite(motoroutput3, HIGH);

digitalWrite(motoroutput4, LOW);

Blueterm .println("Motoroutput fwd");


if (Blueterm .available()){



digitalWrite(motoroutput1, LOW);

digitalWrite(motoroutput2, HIGH);

digitalWrite(motoroutput3, LOW);

digitalWrite(motoroutput4, HIGH);

Genetronex.println("motoroutput rwd");


//if (blueterm.available()){

// BluetoothData=blueterm.read();


// digitalWrite(motoroutput1,HIGH);

// digitalWrite(motoroutput3,LOW);

// digitalWrite(motoroutput2,LOW);


//blueterm.println("motoroutput left");


//if (blueterm.available()){







//blueterm.println("motoroutput right");


//if (blueterm.available()){

// BluetoothData=blueterm.read();






//blueterm.println("motoroutput STOP");


}//}} //}}}

// put your main code here, to run repeatedly:

i am wworking on a project to control a robot using bluetooth .help in interfacing bluetooth module working on pic 16f

gsandhu21 year ago

I’m working on a project which is about making a rescue
robot . I have struggling with it for 4 months and now all the mechanical works
had been done . but I’m facing difficulty in make the robot to work with rf
module can u plzz help me…

I want make transmitter and receiver that can control the
motion…I mean that receiver should have control 8 dc gear motor and each dc
motor should have a forward and backward botton to control the motion ……can u
kindly help me with this project ….if u can make the circuit board diagram for
the PCB ….or any other suggestion plz reply……mail me at “sunny1995gagan@gmail.com”

I have a project - Bluetooth data acquisition system using arduino , I will be receiving data on my android phone, so if I could know the android coding part it really would be helpful.

can i use L293NE IC than L293D IC?

The NE is just the package so there is a L293NE and a L293DNE, but the difference is that the L293DNE has flyback diodes built in while the L293NE does not and they need to be added externally as on page 2 of the datasheet:


jacpac1 year ago

can i use 2 motors? and how?

jacpac1 year ago

can i use my nano to create this project

i need ur .aia file for android

1-40 of 106Next »