How to make a controlled Arduino Robot via Bluetooth by using an Android Device

Can you Please teach me How to make a controlled Arduino Robot via Bluetooth by using an Android Device :D 


I found some Application in Play Store about the Bluetooth controller, it is called Bluebots ,a Bluetooth remote control for robot. (see below)


But the problem is How can I control my Robot using Smart Phone via bluetooth for Arduino UNO ,..? :D


Downloaded the app

Alrighty, if you download the app and hit “menu”, you will get to some instructions showing you how the data is being sent. It does not seem too complicated. For the joystick or tilt, it sends out 4 bytes.

  • First byte direction of X
  • Second byte proportion of X
  • Third byte direction of Y
  • Fourth byte proportion of Y

The buttons seem to work in a similar way. Your UNO will recieve these bytes via a bluetooth unit of some kind (BlueSmirf etc). From there, it is simply a matter of writing some code to do something based on the value(s) of these bytes coming in.

I don’t know if that is helpful at all or not --“How do I do it?” is a bit open-ended. I am not sure if you need help with the data transfer protocol, the hardware, or code. --Also, it looks like the free version of this app will not transmit data. I think you have to drop the $1.65 on the “pro” version.

BTW --If you would like to try my app (which does more and (I think) is set-up much better), just zap me an email. I will be happy to send you a copy for free.


I really need a Diagram to giude where I can Install properly the wirings and other electronics :D 

and a code to help me in programming 

and How I can Program it :D 


I also tried out this

I am trying Bluebots on an ArduinoMega

I wrote a code to print to the serial monitor to see what I get out of it:


/Test bluetooth

ver 20120602_01TestBluetooth

DF Robot BluetoothV3 connected

to Serial 1



#include <SoftwareSerial.h>

unsigned char data_packet[4];

unsigned char packet_index=0;


void setup(){

  Serial.begin(9600); //Open serial port 0 to PC

  Serial1.begin(9600); //Open serial port 1 on 18 and 19




void loop(){

   if (Serial1.available()) {

    // read the most recent byte:

    data_packet[packet_index] =;




      // full packet received

      Serial.print("     |");

     Serial.print(data_packet[0]) ;


     Serial.print(data_packet[1]) ;


     Serial.print(data_packet[2]) ;


     Serial.print(data_packet[3]) ;







But it seems not to work. After some time I only get the same data all over again.


Have anybody tried this?

A pre-built option?

I have one of these on order:


I have ordered the bluetooth version, which will probably work with other arduino based bots.  The android side is not yet in development, but worth keeping an eye on.