Use RemoteXY for Android communication

I want to talk about interesting service with which to easily connect Arduino with Android smartphone over Bluetooth. This service is different from all the others I looked at, the fact that you can have different buttons, switches, joysticks on the screen of the Android smartphone. In the visual editor you choose these controls and place them anywhere on the screen and in any quantity, in accordance with your task. For example, I will cite a few screenshots of possible interfaces. |500x316 |500x316 Yes, you can put on screen indicators that will display the status of your task in Arduino. How to use it? It is very simple. After you create your interface in the visual editor, you can get the source code for your Arduino. The source code will be finished sketch that you download directly into Arduino or supplement it with your own tasks. Of course do not forget to connect the Bluetooth module to your board. And that's all. On the download page of RemoteXY service you must download a special application in your Android and can connect with your Arduino and manage them. For example, you can watch this video

It looks interesting but it would be nice to be able to try something without signing up.

Note the spelling - it is SIGN not SING. Sing is what pop-stars do.


It looks interesting but it would be nice to be able to try something without signing up.

Yes, without signing up will be interesting

Note the spelling - it is SIGN not SING. Sing is what pop-stars do

Thank! sorry for my English

shev: Yes, without signing up will be interesting

Do you mean I can try it out and download the code without signing up?

When I tried earlier it immediately asked me to sign up.


Do you mean I can try it out and download the code without signing up?

Yes, you can

So you can - that’s great.

I am a lot more cautious about downloading an Android application in case of malicious code. How do we get around that problem?

Am I right to assume that the “Download Android Application” button provides a working Android app that includes the controls, etc that I place on the Android screen on your website? In other words every downloaded Android app will be different?


I am not sure how this is working.

I tried making a new project in the editor. I get the files to use with arduino, works OK.

But when i click on the "Download android application" (on my phone) I am redirected to the Android play shop, where I can download the RemoteXY app.

But this app just does nothing, and are certainly not the app that I made in the editor:

What Android permissions will the downloaded app have?


It do not need any permissions. That's the messages I get when downloading. I don't know if that's what you mean. Normally I don't pay much attention to these messages when downloading apps, maybe I should in the future.

Erni: Normally I don't pay much attention to these messages when downloading apps, maybe I should in the future.

Some of the permissions would allow it to spend your money - slightly less worrying if your phone is Pay-as-you-Go.

It could potentially also send illegal SMS messages or download offensive material.

It's an altogether different situation if you write the Android program yourself and you know exactly what is in it.


No, no, you do not understand the meaning of the project.

  1. You get the source code for Arduino
  2. In the source code contains information about your controls of interface. See array in remotexy.cpp
  3. When connecting Android app, first reads the information about the controls directly from Arduino.
  4. After that, the Android app already knows which screen to show and how datas to communicate with Arduino.

This Android app is one same, and it can work with Arduino with absolutely any controls of interface

The source code for Arduino different for each interface The Android app is always one By analogy with the browser, Android app acts as a browser for Arduino.

Thanks for the clarification shev.

It sounds like an exciting project. However, I have a problem When I run your app on my phone and try to connect to my Arduino / bluetooth it makes a connection, but imidietly disconnect again.

I know that my setup works because if I use any other bluetooth app on the phone there is no problem.

Edit: My bad, I used the hardware serial, instead of pin 2 and 3. Now it works.

Developing our project, we have posted a few examples of how you can use the service RemoteXY for remote management.

  1. Robo car controlled from a smartphone via Blutooth. The car can be controlled even with the help of G-sensor. In addition, you can develop the functionality of the control, adding new features. In the example project has the full source code and electrical circuits.

  1. The second project is a fun cardboard robot. The project tells you how to control servo motors. As is pony the source code of the project.

And another example of the project for Arduino.
Temperature sensor output values on Android smartphone via Bluetooth, RemoteXY library used.
and video:

Wow! This is AWESOME!! :)

It would be really cool if it is possible to upload your own graphics in the editor for each controls.

The project involves placing description of interface on the Arduino. This main feature of the project. Arduino does not have enough memory that to save the image of controls. But it can save the pointer of the control element as one of several pre-defined. In the near future, we plan to vary the of pre-defined skins of control elements.

RemoteXY is AWESOME! Works like a charm with The AirBoard now live on Kickstarter. The AirBoard is a thumb-size, Arduino compatible, wireless, ubiquitous computer designed to sketch Internet-of-Things, fast!

Hi !

Good idea! Works perfectly - see our robot .

Автору спасибо!

New example RemoteXY project - online GUI creator for remote control via smartphone. Smart power socket control from your smartphone via Bluetooth. Full version of project by site

And video

sketch for the design as in the photo how?
for materials
arduino nano
L298N module

please guide me… :smiley:

// RemoteXY include library //
// use ANDROID app version 3.1.1 or up //

/* RemoteXY select connection mode and include library */
#include <SoftwareSerial.h>
#include <RemoteXY.h>

/* RemoteXY connection settings */

/* RemoteXY configurate */
unsigned char RemoteXY_CONF =
{ 5,0,110,0,2,0,2,0,41,13
,105,110,107,0 };

/* this structure defines all the variables of your control interface */
struct {

/* input variable /
unsigned char switch_1; /
=1 if switch ON and =0 if OFF /
unsigned char switch_2; /
=1 if switch ON and =0 if OFF /
unsigned char switch_3; /
=1 if switch ON and =0 if OFF /
signed char slider_1; /
=-100…100 slider position /
signed char slider_2; /
=-100…100 slider position */

/* other variable /
unsigned char connect_flag; /
=1 if wire connected, else =0 */

} RemoteXY;

// END RemoteXY include //

#define PIN_SWITCH_1 13
#define PIN_SWITCH_2 8
#define PIN_SWITCH_3 11

void setup()
RemoteXY_Init ();


// TODO you setup code


void loop()
RemoteXY_Handler ();

digitalWrite(PIN_SWITCH_1, (RemoteXY.switch_1==0)?LOW:HIGH);
digitalWrite(PIN_SWITCH_2, (RemoteXY.switch_2==0)?LOW:HIGH);
digitalWrite(PIN_SWITCH_3, (RemoteXY.switch_3==0)?LOW:HIGH);

// TODO you loop code
// use the RemoteXY structure for data transfer