ROBOT CONTROLLED BY ANDROID
Submitted In Partial Fulfillment of the Requirements for the
Electronics and Telecommunication Engineering By
Mr. Pankaj Rai
Mr. Brian D’souza
Mr. Yadav Sandeep
Mr. Zamil Shaikh
Mr. Dhiraj Singh
Under the guidance of
Mr. Aniket Sonawane
DEPARTMENT OF ELECTRONICS AND TELECOMMUNICATION
AlamuriRatnamala Institute of Engineering and Technology
(Run by KotiVidya Charitable Trust)
A.S. Rao Nagar, Sapgaon, Tal Shahapur, Dist Thane-421601
AlamuriRatnamala Institute of Engineering and Technology
(Run by KotiVidya Charitable Trust)
A.S. Rao Nagar, Sapgaon, Tal Shahapur, Dist Thane-421601
Project Report Submitted By
Name: Mr. PankajRai.
Mr. Brian D’souza.
Mr. Yadav Sandeep.
Mr. Zamil Shaikh.
Mr. Dhiraj Singh.
Title of project: Robot Controlled By Android Application (Bluetooth).
Guide Name: Ms. MeenalVatsaraj
Ms. MeenalVatsaraj Mr. C. Nagababu Mr. C. Nagababu
(ProjectGuide) (H.O.D.) (Principal)
This is to certifythat Mr.Pankaj Shivchander Rai , Mr.Brian Baptist
D’souza , Mr. Dhiraj Ram Singh , Mr. Zamil Muzammil Shaikh,
Mr. Yadav Sandeep Haushila Prasad has delivered a project report
for the Project Topic “Robot Controlled By Android Application
(Bluetooth) and submitted report in the “AlamuriRatnamala Institute
of Engineering and Technology”, Sapgaon, Tal Shahapur, Dist,
Thane, in the partial fulfillment of the “Electronics and
telecommunication Engineering” from Mumbai University for the
Guide H.O.D. Principal
Ms. Meenal Vatsaraj NagababuChekuri NagababuChekuri
I would like to acknowledge and extend our heartfelt gratitude to all those people who have been
associated with this project and have helped us with it thus making it a worthwhile experience.
Firstly I extend our thanks to various people which include my project Guide Mr. Aniket Sonawane, my
H.O.D. Nagababu Chekuri, who have shared their opinions and experiences through which I received
the required information for my report. I am also thankful to all the staff members of EXTC Dept. for
their highly cooperative and encouraging attitudes, which have always boosted me.
I also take this opportunity with great pleasure to thank our Honorable Founder Trustee A.V. Gupta,
Honorable Alternate Chairman Dr. L.S. Bothra and Principal Prof. NagababuChekuri whose timely
support and encouragement has helped us succeeds in our venture.
Mr. Pankaj Rai.
Mr. Brian D’souza.
Mr. Yadav Sandeep.
Mr. Zamil Shaikh.
Mr. Dhiraj Singh.
Sr. No. Topic Name Page No.
1 Abstract 8
2 Introduction 9
3 Overview of the project 9
4 Background 10
5 Andoid platform 10
6 Connectivity and communication 11
7 Purpose 12
8 Block diagram 13
9 System explanation 14
10 Bluetooth module 15
11 HC serial bluetooth 16
12 HC-05 17
13 Motor driver circuit 18
14 Dc motor 19
15 UART 19
16 Explanation 19
17 Design 24
18 System architecture 26
19 Mobile application 26
20 Usage 28
21 Embedded code 30
22 Future scope 36
23 Conclusion 37
24 Reference 38
Sr. No. Table No. Table Name Page No.
1 01 Distinguish of HC-05 & HC-06 16
Sr. No. Diagram No. Diagram Name Page No.
1 1 Block diagram 13
2 2 Bluetooth module 15
3 3 HC-05 17
4 4 Motor driver circuit 18
5 5 Aurdino bluetooth car application 21
6 6 Bluetooth connection search 22
7 7 Bluetooth connection on to move the robot 22
8 8 Android phone bluetooth controller robot 23
9 9 Design architecture 25
10 10 System architecture 26
11 11 Bluetooth not connected 26
12 12 Bluetooth connected 27
Many of the wireless-controlled robots use RF modules. But this project make use of Android mobile
phone for robotic control. The control commands available are more than RF modules. For this the
android mobile user has to install an application on her/his mobile. Then user needs to turn on the
Bluetooth in the mobile. The wireless communication techniques used to control the robot is Bluetooth
technology. User can use various commands like move forward, reverse, move left, move right using
these commands which are sent from the Android mobile. Robot has a Bluetooth receiver unit which
recives the commands and give it to the microcontroller circuit to control the motors. The
microcontroller then transmits the signal to the motor driver IC’s to operate the motors.
OVERVIEW OF THE PROJECT
The project aims in designing a Robot that can be operated using Android mobile phone. The controlling
of the Robot is done wirelessly through Android smart phone using the Bluetooth feature present in it.
Here in the project the Android smart phone is used as a remote control for operating the Robot.
Android is a software stack for mobile devices that includes an operating system, middleware and key
applications. Android boasts a healthy array of connectivity options, including Wi-Fi, Bluetooth, and
wireless data over a cellular connection (for example, GPRS, EDGE ( Enhanced Data rates for GSM
Evolution ), and 3G). Android provides access to a wide range of useful libraries and tools that can be
used to build rich applications. In addition, Android includes a full set of tools that have been built from
the ground up alongside the platform providing developers with high productivity and deep insight into
their applications. Bluetooth is an open standard specification for a radio frequency (RF)-based,
shortrange connectivity technology that promises to change the face of computing and wireless
communication. It is designed to be an inexpensive, wireless networking system for all classes of
portable devices, such as laptops, PDAs (personal digital assistants), and mobile phones. It also will
enable wireless connections for desktop computers, making connections between monitors, printers,
keyboards, and the CPU cable-free. The controlling device of the whole system is a Microcontroller.
Bluetooth module, DC motors are interfaced to the Microcontroller. The data received by the Bluetooth
module from Android smart phone is fed as input to the controller. The controller acts accordingly on
the DC motors of the Robot. The robot in the project can be made to move in all the four directions
using the Android phone. The direction of the robot is indicated using LED indicators of the Robot
system. In achieving the task the controller is loaded with a program written using Embedded ‘C’
This section takes a brief look at Android smart phones and its features, how smart Phones will help to
develop a community in the environment it is used in. Hardware, software and communication protocols
are evaluated for their suitability to this application. Finally, we take a brief look on existing systems.
Android devices are powerful mobile computers and they become more and more popular smart phones
used worldwide. They becomes more and more popular for software developers because of its powerful
capabilities and open architecture, also it’s based on the java programming language. Because Android
uses the Java programming language getting started with the Android API is easy; the API is open and
allows easy access to the hardware components. Android devices provide numerous communication
interfaces like USB, Wi-Fi and Bluetooth, that can be used to connect to the robot. We think it is a great
platform for a robotic system control, because it’s much cheaper than any other ARM-based processing
unit. We use android platform because it is the widest used in the word and runs the largest number of
Smart phones worldwide.
Connectivity and Communication:
For the communication of the robot with the cell phone or a mobile we are using the Bluetooth device.
The Bluetooth device (HC-05) is attached to the robot that receives the data from the mobile and also
can transmit the data. Bluetooth: Bluetooth is a wireless communications protocol running at 2.4 GHz,
with client-server architecture, suitable for forming personal area networks. It is designed for low power
devices such as mobile phones [3,5]. Bluetooth now comes as standard on the majority of mobile
phones, and desktop computers. It can be easily fitted with a module to allow Bluetooth communication.
Bluetooth is the only appropriate communications protocol because there is no fear of getting the
frequency interference. Bluetooth uses the MAC Address of the device. The Bluetooth gives the
connectivity between two devices using their MAC Address.
The purpose of our research is to provide simpler robot’s hardware architecture but with powerful
computational platforms so that robot’s designer can focus on their research and tests instead of
Bluetooth connection infrastructure. This simple architecture is also useful for educational robotics,
because students can build their own robots with low cost and use them as platform for experiments in
several courses. The main purpose of this project is to develop a remote user interface to control a robot
via a wireless technology. There is a need to communicate with the robot remotely in order to control
the robot movements and pass critical data both ways. The current IR controls are not good enough
because the robot does not have an IR transmitter but only a receiver, meaning that the communication
is one way. The IR communication works only in line of direct sight and any objects in the way will
obstruct the communication. Bluetooth communication will enable us to control the robot up to 100
meters without the need for direct sight which means that the robot could be located behind a wall or
some other object and the communication would not be lost.
Here at this robot I have used a Bluetooth module to control the robot via 2 BO motors at 300RPM
appox the robot is control by an android phone application Microcontroller used is AT89S51 from 8051
family to work in a serial communication UART mode the communication is configured on 9800bps to
communicate it with the Bluetooth module. The Bluetooth module used is a HC-05 in smd package
which works on a 3.3v and have a serial communication with any device connected to it the
communication speed can be configured on various speed via AT Command. The BT module is a SPP
supported profile so it can be connected easily to any module or phone. In this profile the data can be
sent and receive to module. The BT module is connected to the RX pin of microcontroller. The L293D
is a motor driver IC to operate the motors in any direction required dependent on the logic applied to the
logic pins. A readymade compact size chassis I have used to avoid the chassis assembly the chassis
contains 2 decks the lower is used for BO motors fitting the upper is used as a battery stack .on top the
plate the board is mounted by screw fitting. A smart phone Android operated robot. Now here is a
simple to control your robot/robo car using Bluetooth module HC-06 and 89c2051 microcontroller with
your android Smartphone device. The controlling devices of the whole system are a microcontroller.
Bluetooth module, DC motors are interfaced to the microcontroller. The data receive by the Bluetooth
module from android smart phone is fed as input to the controller. The controller acts accordingly on the
DC motor of the robot. The robot in the project can be made to move in all the four directions using the
android phone. The direction of the robot is indicators using LED indicators of the Robot system. In
achieving the task the controller is loaded with program written using Embedded ‘C’ Languages.
Android smart phone controller Bluetooth robot using microcontroller is shown in figure 1.1.
HC Serial Bluetooth:
HC Serial Bluetooth product consists of Bluetooth serial interface module and Bluetooth adapter.
Bluetooth serial module is used for converting serial port to Bluetooth.
This module has two modes: master and slaver device. The device named after even number is defined
to be master or slaver when out of factory and can’t changed to the other mode. But for the device
named after odd number, users can set the work mode (master or slaver) of the device by AT commands.
HC-06 Specifically includes: Master device: HC-06-M, M=Master Slaver device: HC-06-S, S=Slaver
The main function of Bluetooth serial module is replacing the serial port line, such as: One connects to
Bluetooth master device while the other one connect to slaver device. Their connection can be built once
the pair is made. This Bluetooth connection is equivalently liked to a serial port line connection
including RXD, TXD signals. And they can communicate with each other.
1. When MCU has Bluetooth salve module, it can communicate with Bluetooth adapter of
computer and smart phones.
2. The Bluetooth devices in the market mostly are salve devices, such as Bluetooth printer,
Bluetooth GPS. So, we can use master module to make pair and communicate with them.
3. Bluetooth serial module’s operation doesn’t need drive, and can communicate with the other
Bluetooth device. But communication between two Bluetooth module require at two conditions:
i) The communication must be between master and slave.
ii) The password must be correct.
Here are the main factory parameter of HC-05 and HC-06.
Pay attention to the difference:
Master and Slave mode can be
Master and Slave mode can’t be
Bluetooth Name: HC-05 Bluetooth Name: HC-06
Password: 1234 Password: 1234
Table 1: Distinguish Between HC-05 & HC-06
Master and Slave mode can be switched Master and Slave mode can’t be switched Bluetooth
Name: HC-05 Bluetooth Name: HC-06
Fig 03: HC-05
The reset circuit at pin 11 and KEY circuit at pin24 can be ignored to work the module in
Motor driver circuit:
The pin 8 of IC should be connected to the 9v battery or 12v. This pin8 is internally connected to the
driver circuit inside the IC which helps the motor to get the good supply which also helps the smooth
functioning of motors .
Fig 04: Motor Driver Circuit
Almost every mechanical movement that we see around us is accomplished by an electric motor.
Electric machines are means of converting energy. Motors take electrical energy and produce
mechanical energy. Electric motor is used to power hundreds of devices we use in everyday life.
An example of small motor applications includes motors used in automobiles, robot, hand power tools
and food blenders. Micro-machines are electric machines with parts the size of red blood cells and find
many applications in medicine.
Universal asynchronous receiver/ transmitter is usually an individual integrated circuit used for serial
communications over a computer or peripheral device serial port. UART are now commonly included in
microcontrollers. A dual UART combines two UARTS into a single chip. Many modern ICs come with
a UART that can also communicate synchronously; these devices are called UART.
A smart phone Android operated robot. Now here is a simple to control your robot/robo car using
Bluetooth module HC-06 and 89c2051 microcontroller with your android Smartphone device. The
controlling devices of the whole system are a microcontroller. Bluetooth module, DC motors are
interfaced to the microcontroller. The data receive by the Bluetooth module from android smart phone is
fed as input to the controller. The controller acts accordingly on the DC motor of the robot. The robot in
the project can be made to move in all the four directions using the android phone. The direction of the
robot is indicators using LED indicators of the Robot system. In achieving the task the controller is
loaded with program written using Embedded ‘C’ Languages. Android smart phone controller Bluetooth
robot using microcontroller is shown in figure 1.1. Figure 1.1: Block diagram of android smart phone
controller Bluetooth robot using 89s51 microcontroller 4. Application Instructions 4.1 First make sure
your HC-06 Bluetooth module is paired with your mobile. The default password for pairing is “1234” or
“0000”. Check the manual of Bluetooth module.
The Bluetooth module: The Bluetooth module used is a HC-05 based on SPP support Features:
1) Wireless serial bluetooth port.
2) With free power adapter bottom board come with well power regulator. User can
connect 3.3 to 5VDC and connect TX and RX to your control IO (general 3.3 to 5V
digital input output of MCU or IO is ok, or general TLL IO)
3) Easy to connect this module with PC, just search and key "1234" passcode.
4) With white SMD LED on the adapter board, can see the Bluetooth connection status.
Step to connect:
1) Connect the wiring, power up, while the device is not connected, the bluetooth module
board has a white LED flashing
2) At PC side, search bluetooth device.
3) Found name called "HC-05" device
First make sure your HC-06 Bluetooth module is paired with your mobile. The default password for
pairing is “1234” or “0000”. Check the manual of Bluetooth module. 4.2 Click on “SELECT DEVICE”
icon to select paired Bluetooth module. 4.3 When press “up arrow” it sends the data “A” to Bluetooth
module connected with the circuit. When microcontroller detects “A” the robot/robot car moves
FORWORD. 4.4 When press “DOWN ARROW” it sends the data “B” to Bluetooth module connected
with the circuit. When microcontroller detects “B” the robot/robot car moves REVERSE. 4.5 When
press “LEFT ARROW” it sends the data “C” to Bluetooth module connected with the circuit. When
microcontroller defects “C” the robot/robot car turns LEFT. 4.6 When press “RIGHT ARROW” it sends
the data “D” to Bluetooth module connected with the circuit. When microcontroller defects “D” the
robot/robot car turns RIGHT. 4.7 When press “STOP” button which is in the centre of remote it sends
the data “E” to the Bluetooth module connected with the circuit. When microcontroller defects “E” the
robot/robot car gets stopped 4.8 Click on “DISCONNECT” icon to disconnect paired Bluetooth module.
Fig 05: Arduino Bluetooth RC Car Application
Fig 06: Bluetooth connection search
Fig 07 : B luetooth connection on to move the robot forword,backword,left and right direction
Fig 08: Android phone bluetooth controller Robot
The Android app is generally developed using JAVA language but this Android app can also be build
without knowing the Java language. This app was developed in “App Inventor” developed by MIT .
This app inventor is designed specifically for Non – Computer Science students those who don’t know
the JAVA language. The figure shown below is the block diagram back- hand design for the application.
The app shown below has 5 buttons and all the buttons gives 5 different bytes in the output that has to be
fed to the Microcontroller to process . For eg. if we press forward button ,the Bluetooth Module will
give 1 byte at its output as shown in the figure. The app consists of the option in the main screen
whether to use the accelerometer of the phone or to use the buttons to control the Robot. This app
inventor brings out the revolution in the Embedded Systems & Robotics. The app invented by this
searches for the Bluetooth devices along with their MAC addresses. The user just has to select the
particular MAC Address. When a particular MAC is selected, the status shown on the screen is
“Connected”. Now all the buttons are active and the app is now connected with the robot and mobile
phone can control the robot.
Fig. 1 shows the overall architecture of the system, and with which components the different types of
users will interact.
Fig10: System Architecture
The Mobile application consists of 5 buttons viz. Right, Left, Forward, Reverse Stop
Fig 11: Status- Not Connected.
The above screen consists of an overlook of the app. Right now all the 5 buttons are disabled until the
Bluetooth is connected The above screen consists of an overlook of the app. Right now all the 5 buttons
are disabled until the Bluetooth is connected
Fig12 : Status- Connected.
Now since the Bluetooth of the mobile is connected to another Bluetooth Module , the status shown is
Coupled Mode: Two modules will establish communication automatically when powered.
PC hosted mode: Pair the module with bluetooth dongle directly as virtual serial.
Bluetooth protocal : Bluetooth Specification v2.0+EDR
Frequency: 2.4GHz ISM band
Modulation: GFSK(Gaussian Frequency Shift Keying)
Speed: Asynchronous: 2.1Mbps(Max) / 160 kbps
Security: Authentication and encryption
Profiles: Bluetooth serial port
CSR chip: Bluetooth v2.0
Wave band: 2.4GHz-2.8GHz, ISM Band
Protocol: Bluetooth V2.0
Voltage: 5V (3.6V-6V, NO more than 7V)
User defined Baud rate : 4800, 9600, 19200, 38400, 57600, 115200, 230400,460800,921600
o PIO8 connects with LED cathodea with 470ohm series resistor in between. LED
NEGATIVE connects to ground. It is used to indicate the module state. After
powered on, flashing intervals differ in different states.
o PIO9 is used to control LED indicating paring. It will be steady on when paring is
o PIO11, module state switching pin. HIGH -> response to AT command; LOW or
floating -> regular work status.
o With build-in reset circuit, reset is completed automatically after powered on.
o Steps to set to MASTER:
o Set PIO11 HIGH with a 10K resistor in between.
o Power on, module comes into AT Command Response Status
o Open HyperTerminal or other serial tool, set the baud rate 38400, 8 data bits, 1
stop bit, no parity bit, no Flow
AT COMMONDS to check the Module:
· Set PIO11 HIGH with a 10K resistor in between.
· Power on, module comes into AT Command Response Status
· Open HyperTerminal or other serial tool, set the baud rate 38400, 8 data bits, 1 stop bit,
no parity bit, no Flow
· Now u renter in AT commond mode.
Command AT Response OK the module is connected successfully Commond
Response +ROLE=0 the module is in slave mode Commond AT+ROLE=1
Response OK the module is set in master mode
For more commande refer data sheet ……;)
In slave mode the PC,Phone etc will search the module and pair with the module
In master mode the module will search for any PC,phone etc CODES
if (dir == 'r')
This project will be further implemented on platform like AVR, ARM microcontroller etc. More can be
done in the process of UART communication control and many challenges will be carry out to increase
reliability and efficiency. This system also can be developed by using GSM technology. The knowledge
is ever expanding and so are the problems which the mankind strive to solve. In this spirit, it is hoped
that the current activity will lead to further enhancements. For example; work on future for military
purpose by the robot.
Wireless control is one of the most important basic needs for all living beings. But unfortunately due to
a huge amount of data and communication overheads the technology is not fully utilized.
1 Many of the wireless-controlled robots use RF modules. But this project make use of Android mobile
phone for robotic control which is very cheap and easily available. The control commands available are
more than RF modules. For this the android mobile user has to install an application on her/his mobile.
Then user needs to turn on the Bluetooth in the mobile. The wireless communication techniques used to
control the robot is Bluetooth technology. User can use various commands like move forward, reverse,
move left, move right using these commands which are sent from the Android mobile. Robot has a
Bluetooth receiver unit which recives the commands and give it to the microcontroller circuit to control
the motors. The microcontroller then transmits the signal to the motor driver IC’s to operate the motors
The objective of the paper is to realise the smart living , more specifically the home lighting control
system using Bluetooth Technology. Robot and smart phones are a perfect match, specially mobile
robots. As phones and mobile devices are each time more powerful, using them as robot for building
robot with advanced feature such as voice recognition. Android bluetooth-enable phones and bluetooth
module via HC-06 and communication among bluetooth devices. It is concluded that smart living will
gradually turn into areality that consumer can control their home romotely and wirelessly.
THE 8051 MICROCONTROLLER & EMBEDDED SYSTEMS:-
Muhammad Ali Mazidi
Janice Gillispie Mazidi
References on the Web: