Question

I'm new to it and currently using the visual flow-chart like language that the Lego Mindstorms IDE uses. I'm impressed with how readable the diagramming language is but missing the flexiblity of actual code. I'm imagining complicated projects I want to try out and don't really want to implement them as a gigantic flow chart! lol :)

I know there are other languages/IDEs you can use but not really sure what they are or which to use. What IDE/language do you recommend for programming Lego Mindstorms projects?

I'd prefer an IDE that still allows me to hit Run and send the program down to the NXT brick via bluetooth and run it immediately.

UPDATE: I ended up choosing lejos. Mainly because I've just started learning Java at work which is very similar to C# which I'm already familiar with. I would recommend Lejos since Java is a great high level, feature-rich language and there are nice IDE's for it. Eclipse is a great IDE which lejos has a plugin for and ant build scripts make building your project, loading it to the NXT brick and running it on the device a one step process. Lejos does require special firmware on your NXT brick but that went fine and you can always put your old Mindstorms firmware back on later if you want.

If you want to check out other language and IDE options I'd highly recommend this chart I stumbled across: http://www.teamhassenplug.org/NXT/NXTSoftware.html

Was it helpful?

Solution

FYI, I came across this extremely helpful feature comparison chart of different languages which you can program the NXT in:

http://www.teamhassenplug.org/NXT/NXTSoftware.html

OTHER TIPS

Another option is Microsoft Robotics Studio.

I think this is a good book about programming your Mindstorm NXT with the NXC (Not eXactly C) language.

"LEGO Mindstorms NXT Power Programming: Robotics in C" by John C. Hansen

With a small amount of tinkering you can probably get NXC working with whatever your favourite IDE already is.

We used NQC for programming Lego Mindstorms. We was to build a four-wheel robot to gather artificial rubbish(pieces of bead and paper) in a competition. After testing different programming and IDEs I concluded NQC was right to me.(because I knew C and NQC had many good tutorial materials). And the point is that you can modify your code easily with NQC. For example, at the competition, we should change our code in oder to cope with new challenges in our robot's environmetn( they changed MDF with carpet!)

by the way, We obtained a good result (third place) :)

MATLAB actually has a LEGO MINDSTORMS NXT Toolkit, if you're interested at all in using MATLAB. You can send commands via Bluetooth connection or create embedded controls that are downloaded to the robot. I've seen it discussed on some of the MathWorks blogs, and there are some demos posted on the MathWorks File Exchange (here's one).

You can use nxtOSEK as operating system on the NXT. Then you can use plain C to write your code.

Back in the day, NQC was the way to go; A good intro to C style programming, with fewer pitfalls.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top