Android APP to Control a 3DPrinted Robot




Introduction: Android APP to Control a 3DPrinted Robot

This instructables is made to explain how to control one of my EEZYbotARM or EEZYbotDELTA using a Smartphone (or a tablet). This is made via Arduino board equipped with a bluetooth module, and an Android app made with MIT App inventor 2.


In the video I use it to control my EEZYbotDELTA that is a 3Dprinted parallel robot and can be downloaded for free from my Thingiverse account here . Also my previous EEZYbotARM can be driven with. I made an instructables here and can be dowloaded for free here

The code doesn't come from me but I have to give tribute to " Arduino Robotics LabVIEW Solidworks " that in this video explain very clearly to develop it. I modified it just to manage four servo only and add a splashscreen.

MIT Appinventor2 it's really a cool and simply way that allow you to make Android App. I made some, one is helpful for some calculation in 3DPrinting and can be found for free in my GooglePlay account

Step 1: Materials

Hardware that you need:

· an EEZYbot ( or 4 servos)

· an Arduino Uno or other Arduino types( Yes I used a clone but, if you can, please consider to use original items)

· Bluetooth module I used an HC-06 for this project but also an HC-05 can be used

· a breadboard (but not necessary)

· some connecting wires

· a smartphone or a tablet

· a PC for the code


- EEZYservoDRIVE.ino ( firmware to install on your arduino board )

- EEZYservoDRIVE.apk ( Android app to install in your smartphone )


How to make it works

Connect all the bot's servos following the Fritzing circuit diagram in attached picture. ( sometimes could happen servos jittering, so to avoid this, it is important to connect one ground pin of arduino to the ground of servos supply)

Connect arduino to the PC and transfer the arduino code to the board.

If everything works correctly you can see the red led of the Bluetooth module flashing. This mean that is ready but disconnected.

I supplied the servos using a dedicated board attached on the breadboard, this is a comfortable way but is not necessary, it is only important to supply them separately from the Arduino board. Servos have a supply range from 4,8 to 6 V .

Install the ready made apk on the smartphone, launch it, and after the splashscreen you will be asked for permission to turn on the Bluetooth of the phone (if OFF), press yes. (if already ON no request).

Now you are in the main screen of the APP

Press the Bluetooth logo and choose the *********HC-06

You return in the previous screen while the flashing red led on the bluetooth module turns to steady.

The text below the bluetooth button is now green and become CONNECTED.

Now (if everything works) you are able to move the bot wireless using the slides (and impress friends) :-)

It is a very simply app and for sure can be improved a lot, but it is a good starting point to explore other possibility.

Happy making !

3 People Made This Project!


  • Fix It Speed Challenge

    Fix It Speed Challenge
  • One Board Contest

    One Board Contest
  • Raspberry Pi Contest

    Raspberry Pi Contest



Question 1 year ago

How could I use an iPhone for this?


4 years ago

So I made this project as said(btw great Instructable) ok so I connected everything as required when I control it using the app it just jerks and doesn't move..I think the servos are too small for the load but I may be wrong. None of the servos work as intended. I have very less experience with servos so I don't know what the issue is. The arm just jerks in it's place and nothing moves. Any help would be great thanks.


Reply 1 year ago

I don´t know if you will read this, but I´m going to try jeje
I have the same problem, claw and base servos work smoothly, but the other two servos when but the other two servos when I ride them go crazy, and it doesn't work.
what was your solution?


Question 2 years ago on Step 2

can HC 05 bluetooth module be used instead of HC 06 ?


Question 3 years ago on Step 2

Thank you very much for the instructable is very interesting and can be applied to many projects
I still can not get it to work
I have a question, in what range of values should the variable "realservo"?
I get a value of realservo = 63222 that I think is too big