Program Your Arduino With an Android Device!




Introduction: Program Your Arduino With an Android Device!


in this Instructable I want to show you, how you can program your Arduino with your Android device. It is very simple and cheap. Also it allows us to program our Arduino where ever we want, this is usefull for permanently installed Arduino boards, like in light controllers...

So lets get started! :)

Step 1: Materials and Tools


A USB-A to USB-B cable ( )

A USB-Host cable (OTG cable) ( )

An Arduino( )

1 LED (for testing)

A Android device with Android 4.0.0+ (or with host aviability)


ArduinoDroid or

ArduinoCommander from the Google Play store

Step 2: The USB-Host Cable

Such a USB-Host cable is basicaly just a USB cable, but just with a few changed resistors in the mikro USB plug. The internal resistors let the Android device activate the USB-Host mode, in this mode you can also use USB-Sticks or other usb applications on the device. That is very useful, now you could plug a usb-printer in.

The problem is now, that every USB device which you plug in, will now run on the energy of your device, what realy can bring the akku down.

Step 3: Connections

This step is very simple and doesn´t require much text. Just plug the USB-A to USB-B cable into the female USB of the Host cable. Then plug the USB-B plug into the Arduino and the Mikro USB into the Android device.

Step 4: Arduino Power Up

Now it should look like the connections on the picture. Also your Arduino should now power up and load the last code you uploaded. On my Arduino was the Blink sketch. If it doesn´t power up, check connections.

Step 5: The Apps

Now your Arduino is ready to get coded, but your Android device isnt...

Lets change that!

Currently there are 2 apps which allow us to work with our Arduino via the Host mode.

To get them we have to go to the Play Store, then type into the search bar "Arduino". Now tap on "Apps", now there should be only apps. We want the apps "ArduinoDroid" and "ArduinoCommander". Install them and launch "ArduinoDroid", it has to update the IDE, that will need some time. "ArduinoCommander" should be ready promptly.

Note: We dont need both apps, i just want to show you both! :)

Step 6: ArduinoCommander by Anton Smirnov

Okay, the first app I want to show you is "ArduinoCommander". It is by Anton Smirnov and is for Andorid 2.2 or higher.

This app is for working with the Arduino on an Android device, you can change pins easy (directly set pins hight or low), upload sketches or read analog pins with a oscilloscope mode.

The app is easy to understand, even if the controlls are unusual. It finds the Arduino automatical and doesnt crash.

But sadly some of the functions didnt work when i tried to use them, hopefully that get fixed. Uploading a sketch worked very good!

So I would give this app 4.0 out of 5 stars :)

I want to show you short how you can connect to the Arduino:

Step 7: Step 1

First we have to start the app, now a blue window wih 4 options should appear. As we want to connect via USB we tap on "USB-Device" (on the picture in german :) ).

Other options are:




Step 8: Step 2

Now tap on "Autodetect", the Android device will now scann for Arduino(s) nad show them on the screen. We will pic our Arduino ( just tap on it ).

Step 9: Step 3

After we did that the app will now show us our Arduino as a drawn animation. Normally it is colored and you can tap the pins, to change their mode. This didnt work for me, sadly i couldnt fix it for me, maybe it works for you. when you tap in the down right corner you get to the menu, where you can upload sketches from your SD-card, what works very well.

Step 10: ArduinoDroid

Now the seccond app, which allows us to upload sketches to our Arduino. This app is called "ArduinoDroid" and is for Android 4.2.2 or higher. It is also by Anton Smirnov!

This app is an IDE, a compiler and an uploader for Arduino, it also uses the host mode to upload sketches, which you can write directly in the app.

After you wrote a code, you can compile it with the "Lightning-Button", that needs some time, but works good.

when its compiled you can press the upload button (the to the right).

The upload should take only secconds.

After that my Arduino started the new code --> It worked very good!

For testing I used the "Blink" sketch.

Why am i talking?! here is a short video of the app compiling and uploading a sketch:

Step 11: Finishing!

As you just saw, it is very easy to write, compile and upload a sketch to an Arduino with an Android device.

And here a big THANK YOU to Anton Smirnov who created the apps for Android!

Thank you for reading!

Feel free to comment and to visit my other websites!

Your Jan Henrik

2 People Made This Project!


  • Metalworking Contest

    Metalworking Contest
  • Fix It! Contest

    Fix It! Contest
  • Tiny Home Contest

    Tiny Home Contest

122 Discussions

i have a few old android devices kicking around, i plan to connect one and see what happens. you have a touch screen, accelerometer, GPS, compass, many built in sensors on just your average smart phone. could be a powerful combination. thanks for posting and fueling the fires of imagination :-)

3 replies

That Idea is awesome, I guess i have to try it too! I think compiling apps with Processing and combine that would also be great!

there is a processing app in the google playstore. (why they ever changed it from the Android Market, i have no idea ;-) )

an update, i did connect my android device successfully to an UNO, a Micro, and a 3.3 volt ProMini thru an FTDI cable. they all worked flawlessly.

i can't stand going thru TSA security, so i leave as much stuff home as possible, especially my laptop. i bring a RPi and a few other gadgets to keep busy, and now, thanks in part to your instructable, i have one more toy to play with and still leave my laptop behind!

Youre welcome :p

I didnt know, that there is a Processing app, sounds awesome.

I meant the Android Compiler in the newest version of Processing, I already compiled a few apps for my mobile phone, they all work great!


Iam using a micromax p702 tablet

My Arduino is not powering up and the tab is not sensing the uno.please somebody jelp

Dear sir,
I am a real enthusiast for arduino projects but have no idea about using them. Currently I am working on a project of a bicopter. I wish to use an arduino uno, a gyro sensor, and a bluetooth module to connect my drone with my phone. I really need help in programming the arduino. The code that I need should be such that the arduino works as the flight controller for two bldc motors, and the gyro sensor should control the RPM of the motors as per the tilt of the drone along tge X-axis. I hope that you will help.

I have an android mobile with 4.4.4 KitKat android version... I can use USB stick on this mobile, however it won't power the arduino up... I have tried using an external power supply to power the arduino and my mobile won't recognize the board, any idea?

Yes, I bought some clones from AliExpress and it works flawlessly.

Can we unplug the usb and add an alternative power supply after uploading the code

Hello, this is my first arduino project: sending a file (jpeg, pdf, txt)
from an arduino sd card module to android phone using arduino uno and
bluetooth module HC-05

have you any suggestion about the android app to receive the file ?
thank you

I working with samsung galaxy j7 with lollipop but the arduino commander doesn't recognise the arduino uno board. Pll help me

I love the Instructable! I have tried a couple of Android programs a few years ago, maybe even one of these, but I tend to write Arduino code that requires external libraries and span multiple files and it never worked out. This is an excellent solution for smaller, simpler sketches. For those who are a little tech savvy but can't get their phone to talk to your Arduino, try this along with a 9v battery and a plug adapter:

You should be able to upload via Bluetooth, though i haven't tried it myself yet.

This is outside the scope of this Instructable, but I just picked up a cheap ($65 on sale at Fry's) Windows 10 tablet and installed the Arduino IDE directly onto it. It's shortfall, being so cheap, is no USB except for charging, so I'm going to make that Bluetooth shield to program it with, but it'll be just as portable as the solution presented here.

i used OTG many many times with keyboad and the mouse so i know it works fine , but the Arduino i'm having a problem , when i connect the Board with my android phone via OTG , the Arduino lights up and but in the phone i can't find it , when click on ''discover devices " , it tells me no devices however the arduino is lighting and working ..
So how do i fix this ? how i make the phone detect the arduino board in the Arduinocommander App ??
thank you

1 reply

Same problem here. OTG Cable plus LG G3 plus Mega 2560 ch340g but no fucking connection. I also tried with external power supply but no communication possible.

sir i am using an marshmallow version of lava pixel v1 and when i connect arduino uno board to my mobile the arduino lights was on but arduinodroid and arduino commander do'nt find the board .
i am ising mouse and keyboard with my mobile they work fine ....

1 reply

i'm having the same problem , did you find any solution ?