Hi everyone, As I wrote on the subject I want to make an NXT to be able to localize map and move while avoiding obstacles with a sonar sensor. This is for my final year project at my university.I wanted to ask for advice here as the LeJOS seems very capable of doing many things with the nxt.

What I am wondering is, can the NXT handle the processing of SLAM and transmitting its map in real time on a PC ? If it can't, can I write its algorithm to be executed by a PC and transmit the motor functions to the NXT while receiving info from the NXT's sensors? (wheel encoders, sonar and probably gyroscope or compass)Also I am interested in writing the final algorithm in Android so I can have my mobile phone for example control the NXT, that is after I finish it this is secondary.

If these things can be done can anyone help me or give me some hints on where can I start with LeJOS? I have never used it before.

Technically all you want can be done. However you should not think lightly about SLAM. This is difficult. You will have to deal with uncertainties. For example, the US sensor not only detects objects that are straight in front of the sensor but also objects that are up to 15 percent off. So you are never really sure where an object is. The same goes for the robot, you'll never be sure where it is. Dealing with uncertainties requires the use of statistics.

I do not know how experienced you are but in general I would advice to start with a simpler task. A maze solving robot for example. In that you can use some of the techniques that you also find in SLAM but in a simplified environment.