Lego Robot Wrap-Up

Unfortunately, it seems I have run out of time. I was not able to get the sensors to work. I was able to find a number of different commands which seemed like they ought to gather the correct information from the robot,  but none of them worked. It seems likely that these requests only returned the most recent information from the sensors rather than gathering new input and returning that. I received the same information no matter if the sensor was plugged in or not. This message did not contain any of the error codes I would expect from a faulty message. Additionally, I tested the sensors with a USB connection to the robot and they returned reasonable distances.

[Read more…]

Driving the Robot with Android phone

I got the android app to successfully control the NXT a couple days ago using LCP, which means only the firmware is running on the robot. I have screenshots of the app and video here of the robot moving around.

[Read more…]

Connecting LeJos and Android

I have been working on getting an android phone to connect to the Lego NXT Brick and, so far have encountered some interesting problems. Essentially, leJOS (the Lego programming extension to Java) provides Bluetooth functionality for connecting the robot to either a PC or another NXT. Additionally, Android provides an API for connecting to Bluetooth devices. The trick is to get these two different API’s to work together. This gives me an interesting chance to learn about how devices connect to each other and implement some low-level solutions in Java, which is typically a higher level language.

[Read more…]

Abstract: Solving a maze with Legos and Android

This project aims to program a Lego robot to solve a maze while communicating with an Android phone. Since this robot will have only 2 sensors (much less than robots have used previously), finding an efficient solution to the maze could be valuable for a wide range of robots. Additionally, it will help me explore topics like programming for robotics, and communication between devices, among many other things. The robot must first be configured to accept movement commands from the phone. After this, the phone and robot must begin communicating in order to share sensor and route calculation information. The robot should be able to autonomously solve the maze by the end of the project. If time allows, multiple algorithms could be implemented to compare battery usage and path length.