Wednesday, February 3, 2010

Using Android to control Lego Mindstorms

This is a short post on the more entertaining side of Android showing a project that the Enea team in Linköping, Sweden, prepared for an expo. It is a one minute video from the demonstration.

It is two LEGO Mindstorms robots controlled by one HTC Hero Android phone. The Hero is running an Android application written by Enea Linköping that send motor commands to the LEGO brick. LEGO has been kind enough to put a Bluetooth chip in the Mindstorms NXT controller. By using the built in demonstrational Bluetooth commands the NXT brick provides there is no need for an application to be downloaded into the NXT brick.
There was however one obstacle in the limited Bluetooth support in Android OS version 1.5 (not supporting the Bluetooth serial port profile, SPP). Instead we used the wifi capabilities on the phone to send information to an Ubuntu Linux Laptop with a TCP/IP to Bluetooth tunnel (just a raw tunnel, no logic or programming). HTC has been rumored to be releasing Android OS version 2.1 (with Bluetooth) later in february and we hope to be able to put forth a new version that skip the WiFi laptop step.

Video below:


  1. Are you willing to share the code? I could really use this for a NXT project I'm on right now at school. (Computer Engineering)

  2. I would love to give this a try with direct bluetooth link.

  3. You could place the phone on the robot. This could be used to give mindstorm robots eyes that uses the phone for image processing and deliver the result to the mindstorm program.

  4. Have a look a the SenseBot application in Android Market. It uses the Bluetooth capabilities of Android 2.0+ along with orientation for navigation.

    Source code is available with the Unlocking Android Second edition:


  5. hmm really awesome to me, i am also gonna share this suitable site to my friends.

    Application Development Facebook