Introduction: Arduino Bot Android Remote Control II

When I bought my Complubot one year ago, I didn't thought how fun I could be, I've practice with follow line vehicle, brush car, but when I read I read the article on instructables related to bluethooth rc, I began to think it would be fun to mix, android and arduino programs. First I thought to order a hc-06 interface, it took a few days to come because I have not much time, I installed and made operational tests with my PC. To try to compile and install the program from the android sdk I take more time. As I was anxious, tried a Google Play application, easy to install and use.

Step 1: Mounting and Connecting

as shown on the picture, the robot uses servo modified for use in continuous movement. HC-06 is connected to +5 V, gnd, pin 0 from Arduino to HC-06 Tx and pin 1 from Arduino to HC-06 Rx, note that when sending program to Arduino disconnect HC-06 due it used same serial port.

Step 2: Programming


Step 3: Install Arduino Bluetooth Controller From Google Play

Description
Are you an Arduino enthusiast that always wanted to remote control your projects via your Android phone but didn't have the time, the patience or the knowledge to build an Android Bluetooth Controller? Then ARDUINO BLUETOOTH CONTROLLER is what you need!This android application can establish a connection with any Arduino/microcontroller project that involves a bluetooth module! It allows the user to set a UUID of his own bluetooth module in order to connect the android application with his projects!!! The default UUID that comes with this application is for the HC-06 Wireless Serial 4 Pin Bluetooth RF Transceiver Module RS232. (If you use default UUID in order to pair the BT module with your smartphone for the first time, you will have to give a 4-digit password. This password is '1234'.) The application is comprised of 4 Command Modes: 1. Vehicle Mode : By pressing the "joystick" button the user can remote control a vehicle with specific gestures. For the interpretation of gestures to commands, the application uses the built-in accelerometer sensor of the smart device. There are 8 different gestures available (FRONT, BACK, LEFT, RIGHT, FRONT_LEFT, FRONT_RIGHT, BACK_LEFT, BACK_RIGHT). You can set these gestures with your own custom commands through the the menu button "Set Commands". Additionally, there is a STOP and an ANDROID button that can be assigned with custom commands as well. ***IMPORTANT*** The mode provides via the menu options the option to change the orientation of accelerometer axises (X->Y, Y->X) in order to operate properly in Android phones with different default orientation. Moreover, menu options provide a sensitivity change button to modify the point where the app catches the gesture events for this mode. As the title suggests, this mode is specifically designed to remote control a vehicle which uses a bluetooth module and a microcontroller.

2. Fader Mode : This mode provides the user with a fader-seekbar that can send commands from 0-9 and allow the user to experiment with servos, leds, motors and many more. 3. Controller Mode : This mode provides a standard controller layout with 10 buttons in total that can be assigned with custom commands. The arrow buttons are specifically designed to send commands continuously while pressed, in order to simulate an actual controller. 4. Terminal Mode : This mode provides a terminal-like interface in which the user can type and send an individual or multiple commands which will execute sequentially. Since Arduino serial port receives one byte at a time, if the user types a string in the input text field, the application divides that string into characters and sends them one by one to Arduino. It should be noted that spaces or empty strings are skipped.

All application settings and commands are permanently stored and can be accessed and modified any time according to your needs .

################################################################################################## Arduino Side Code Below code is an example of how Arduino can "listen" the commands that receives through this Android application. char incomingByte; // variable to receive data from the serial port void setup() { Serial.begin(9600); // start serial communication at 9600bps } void loop() { if( Serial.available() > 0 ) // if data is available to read { incomingByte = Serial.read(); // read it and store it in 'incomingByte' } } ____________________________________ © 'Arduino' is a trademark of Arduino team ____________________________________

Step 4: Final Comments

The application have some adds when finish using it but it is not a problem.

Complubot is a robot school in Alcala de Henares (Madrid) where children learn to program and a lot of things related to Arduino bot. I could get the 3D printed robot, thanks to them