BlueBot: An Arduino robot controlled from an Android phone via Bluetooth

After reading about the awesome stuff people have done, I decided to share my modest creation with the community.

This is a differential steering robot that can be controlled from an Android phone via Bluetooth. The robot’s “brain” is Arduino Uno compatible board (an “Arduino on a breadboard”). The robot uses a JY-MCU Bluetooth module for communication with the Android phone. A custom Android app, created with the MIT App Inventor 2 essentially acts as a remote control, sending commands to the Arduino that tell the robot to move forward, reverse, stop or rotate.

The robot also has two ultrasonic sensors (one mounted on the front and one on the back) that are used for obstacle detection. If you try to drive the robot into a wall using your phone remote, the robot will overwrite that command and will stop when it detects an obstacle closer than 10 cm.

Parts list, links to Arduino and Android code and tutorial on building the key components are available on my blog.

Next steps (in no particular priority):

  • add voice control
  • integrate a camera and FPV
  • add wheel encoders, or accelerometer/gyro for feedback on positioning and distance travelled
  • add a "autonomous mode" where the robot roams using the ultrasonic sensors to avoid obstacles
  • display information from the robot on the phone (like data from the distance sensors, distance travelled etc.

Any ideas, or suggestions will be welcome. I will try post regular updates and document progress here in the future.


This is a companion discussion topic for the original entry at https://community.robotshop.com/robots/show/bluebot-an-arduino-robot-controlled-from-an-android-phone-via-bluetooth

nice work.

the intended scope is very similar to the scope of the project I’m working on.  I’m working towards writing my app in eclipse bc I didn’t think app inventor would handle everything I need it to.  I may have to look at using it though because I have limited time to work and the native java is going slowly.

App inventor

Thanks for the comment! App Inventor 2 seems very capable for basic UI that is needed fast. If you are eserious about Androd development, definitely getting the SDK and a tool like Eclipse is the right way.