2006 CES Report: First look at the Mindstorms NXT (Part 2)

In this second installment of our three part CES report on the Mindstorms NXT we’ll take a brief look at the new Mindstorms programming software.

The original LEGO Mindstorms product shipped with one of two different programming environments, depending on how it was purchased. The original retail product shipped with RCX code, a visual programming environment that was easy to use but perhaps lacked programming features for more advanced users. Educational versions of Mindstorms shipped with RoboLAB, a more robust programming environment based on National Instruments’ LabVIEW application. Participants in FIRST LEGO League also received both software versions as part of their registration, while a number of unofficial third-party programming alternatives — such as NQC and leJOS — offered even more advanced programming capability for accomplished Mindstorms gurus.

The Mindstorms NXT will be the first retail Mindstorms product to offer both Macintosh and Windows support right out of the box, thanks to an all-new programming environment based on National Instruments’ latest version of their LabVIEW software. During a quick demonstration of the new software by Soren Lund (the Mindstorms NXT Marketing Director), it was obvious that the new software is a noticeable upgrade over both the old RoboLAB and RCX code programming environments, and fully embraces standard Windows interface conventions. Segments of code can be dragged and dropped into the programming workspace very easily, while a new quick start programming option will let novices get up to speed quickly with 18 new robot building challenges designed around the new features and capabilities of the NXT. I’ll hopefully share some additional details on the new software over the next few months.

In our upcoming (and final) installment of our 2006 CES Mindstorms NXT coverage I’ll share some photos and observations of a few of the sample NXT models that were on display, as well as a few very early pics of the new product packaging.

31 Responses to 2006 CES Report: First look at the Mindstorms NXT (Part 2)

  1. Ben January 9, 2006 at 1:48 am #

    I had a brief foray into LabView when debugging and modifying code that ran a high-temp furnace for testing fire protection coatings and pipe-collars (the ones that expand in a fire to close off PVC pipes). I have to say I was impressed with LabView, and surprised at how powerful it was for a drag-n-drop language (I’m more used to Java/c#). I think it was a great choice for NXT, as long as it is simplified a bit for the kids.

  2. greg January 9, 2006 at 2:42 am #

    I love to see that it operates with standard OS widgets.

    The RIS software was a pig… it needed tweaking to run it outside of administrative mode, and the 800×600 screen mode looked like crap when rasterized for an LCD. If you run your screen with protrait orientation, it kicks and screams and dies.

    This posting makes me want to try out RoboLAB, though, to bide my time untill I get an NXT.

    The way they represent program flow still looks really similar to the RIS software. I wonder how abstract it is. Lego says you can get a robot running in 20 minutes. I presume they have done away with the requisite tutorial, and included a good library of interesting programs for the included models.

    This still leaves a lot of questions unanswered about the software. Will it allow recursion? How do they abstract things like voice recognition? How much of the servo system is firmware, and how much is software?

    I’m not seeing a two-wheel ballancing robot as one of the booklet models. (Hats off to the “Legway” guy, BTW, you know who you are.) Though to me, it looks possible with the supplied sensors. I guess that such fine control of the sensors is hidden in the firmware.

    My prediction is that Lego has left the firmware updateable, and that a lot of the gurus from BrickOS will toil tirelessly until we can make “Legway, the NXT generation.” Such fine control might also alow communication with the RCX block via the light sensor, though getting the protocol right would certainly be a labour of love.

    Bluetooth opens a lot of possibilities, too. I can imagine some early, dirty hacks that turn the NXT brick into a ‘dumb terminal’ of sorts, wirelessly sending sensor info to a cell phone, palmtop, or whatever can run a complicated c or java program. It might tide people over while the LeJOS gurus work on a port.

  3. Elizabeth January 9, 2006 at 2:55 pm #

    NXT does not have IR capability. I wonder if there is plan put in place to add the communication capability between the NXT and RCX. If not, I guess RCX is falling in an obsolete track!?

  4. D.Nielsen January 9, 2006 at 10:20 pm #

    I’ve been a user of Labview for over 15 year and each version they improve it. RoboLAB was a fun to use my kids like it. I hope we see third party tool again for the NXT that is one of the thing that made the RCX a great toy and learning tool. I know that getting my RCX’s and to talk to the NXT will be on my plans. Bluetooth to the PC/PDA with the IR tower. I know that National Instruments has labview running on PDA.

  5. Paul January 10, 2006 at 7:54 pm #

    The Labview based RoboLAB was certainly the more powerful of the drag-and-drop environments for the RCX. Let’s hope that Lego hasn’t crippled it too much and made it like RIS.
    For those of you with FLL lego teams heavily invested in RCXs (like me) it seems that FLL will support both the RCX and NXT systems for at least the upcoming season… http://www.firstlegoleague.org/default.aspx?pid=21400

  6. Felipe José Depiné January 10, 2006 at 9:48 pm #

    The new Ultrasound sensor will do the same thing for NXT that Vision Command do for RCX?

  7. Michael Spencer January 11, 2006 at 1:33 am #

    How complex can LabView programs get? Can I define custom data structures, or make classes?

    Intelligent, autonomous robots would be really fun to build and use, but most of the “easy” textbook artificial intelligence tricks require large data structures to store an internal representation of the robot’s observations.

    Will LabView let me create a dheap class, or create functions and data structures which kinda emulate a dheap class? Can I do linked lists? Binary trees? Huge arrays?

    Even if the answer is ‘no’, I can always do these things in C…

  8. D.Nielsen January 11, 2006 at 5:12 pm #

    Well LabView program can get very complex. LabView is graphical development environment for creating flexible and scalable test, measurement, and control applications rapidly. LabView make delelopment fast and easy.

    Data structures in labview are called Clusters.

    But I not sure we will be getting “LabView” but subset of it. I personal would love to beable to use the full functional of labview. Knowing that the Base version of the LabView delelopment tools Cost $1200.00 I dont think we will be getting it with the NXT.

  9. greg January 12, 2006 at 4:33 am #

    in response to Felipe Jose,

    Doesn’t vision command require the camera to communicate with the PC, and them from PC to RCX? People did some really cool things with the cam, (like the RUBIC’S CUBE solver,) but the ultrasound is, in my mind, in a better class because it is autonomous. It doesn’t need to be in range of a PC, which seems cool to me:

    One of my favourite things to do with lego as a kid was to build with the kid next door, then smash our stuff into each other until we found who made the strongest model. Mindstorms elevates this from a smash durby to a strategic sumo match. And an autonomous model can go to a friend’s house or school, and not have to worry that it doesn’t work without a computer.

    It embodies the elegant simplicity that made me fall back in love with lego as an adult.

  10. sean jefferies January 12, 2006 at 12:09 pm #

    # Elizabeth Says:
    January 9th, 2006 at 2:55 pm

    NXT does not have IR capability. I wonder if there is plan put in place to add the communication capability between the NXT and RCX. If not, I guess RCX is falling in an obsolete track!?

    It may very well be possible to transmit pulse`s needed to run an IR transmittor. theres several ways to allow the rcx to communicate with the nxt on fairly basic levels as well. It wont take long for the serious hackers to develope a solution to the communication im sure.
    The new brick ( or not ?) is just waiting to be used and abused just like the rcx was, but now it opens up such a large range of possibillitys thay will keep many people happy for years to come.

  11. xernobyl January 12, 2006 at 3:49 pm #

    I didn’t understood. Is there any proper programming language for it?

  12. Dom G January 12, 2006 at 9:55 pm #

    The programming software looks so cool! I can’t wait to try it out when (and unfortunately, IF) I get it. In answer to Elizabeth, this version probably won’t, but an upgraded version (NXT 2.0 or something) hopefully will so it can interact with the RCX. But this kind of feature raises yet more questions… where is the transmitter going to be without spoiling the NXT’s looks? If the NXT and RCX do interact, how are they going to interact? If there’s a combo of NXTs and RCXs, does that mean that all the NXTs will have to be swtiched to “IR mode” for the ‘bot to work? etc etc. One final question- what part will the bluetooth play in all this?

  13. Henry January 13, 2006 at 5:53 am #

    I am looking at the new programming language and thinking that it looks a lot like mindstorms and that scares me. I use robolab and it works great. Will there be an alternative to this programming language? I really hope so

  14. Tyko January 13, 2006 at 3:29 pm #

    NXT’s progamming likes more much intelligent than RCX. I would like to know is it possible to connect RCX and NXT? Anyways, I can’t wait Minstorm NXT. Is there coming some expansion kits for NXT?

  15. Pietro January 13, 2006 at 8:38 pm #

    About sensors: Will be possible to use the actual RCX sensors (temperature/rotation/switch/light)?

  16. Bruce January 14, 2006 at 2:52 pm #

    I completely agree with some of the other poster in that I find it very hard to imagine in order to create really complex programs without having support for traditional programming languages like Java or C. With Bluetooth, I can see some really cool things happening (especially depending upon the protocols and profiles that are included).
    Come on Lego, graphical programming environments are great for small apps that kids can pick up quickly, but you really need to think outside of the box.

  17. Pankaj Mehra January 14, 2006 at 8:55 pm #

    I am eager for more detail. My daughter and I went straight to NQC from RIS and never really tried Robolab. Maybe, in preparation for NXT, we will try out Robolab. Also, I am really glad about the motors with the built in rotation sensors. It is very important to me that Lego takes steps to preserve our investment in RCX 2.0 brick; I will want to use the new software with the RCX bricks to make a smooth transition …

  18. Paul NeoStormer January 15, 2006 at 12:14 am #

    The NXT seems to have everything i have wanted in an updated RCX, other than a pressure sensor. If i manage to get a pre-released on i’ll start working on custom add-ons, even if i don’t i’ll start straight away. Is there any software to work it with Bluetooth enabled Pocket PC’s, otherwise i’ll have to make my own software. Finally, will there be compatabillity with the RCX and the NXT or will i again have to make my own?

    Paul NeoStormer (Owner and founder of Neostormer.co.nr)

  19. Filip Verhaeghe January 15, 2006 at 12:24 am #

    I signed up for the developer program of Lego Mindstorms NXT. Unfortunately, there was no space to specify why I would like to be included. So I went ahead and set up my website at http://www.filipverhaeghe.com. Guess I’d really like to be selected to give Lego Mindstorms NXT tester…

    I’ll be adding pages whenever I can to my new blog dedicated to Lego Mindstorms NXT at http://www.filipverhaeghe.com/blog.

  20. znabela January 15, 2006 at 4:40 pm #

    After listening to a radio talkshow here in Denmark, I was astouned to hear that NXT could communicate with a mobile phone, in such a way that NXT makes the phone take a picture if it bumps into someting, or play a tune. You can control the NTX with the mobile phone also.

    Since the RCX remote control is banned from places like FLL, I wonder if mobile phones with bluetooth capabilities will be banned too?

    I hope the NXT will have the option of enabling/disabling bluetooth.

    Link to danish interview with Søren Lund, Chief Kahuna for LEGO Mindstorms:

  21. Leonard Gan January 19, 2006 at 8:32 pm #

    wow, I see many are keeping track with the launching of lego’s new NXT . Hee hee, I will be interested in its bluetooth capabilities. I believe many robotics project uses bluetooth for communication.

    Looks so cool

  22. Kieran January 23, 2006 at 1:58 am #

    I’m hopeing that soon after they release nxt they bring out a backward compatibility kit with adapters for old sensors and – most importantly a brick that can be placed infrount of the infer red port on the rcx compatible with boath types of comunication enableing 2 way comunication without making the nxt ugly.
    sory bout any spelling mistakes

  23. Alex January 28, 2006 at 8:54 pm #

    I have a RCX right now, and use Robolab, the educational software that is based on an earlier version of Labview. I hope that this new software for the NXT will be as easy if not easier. My only other worry is that the mac version of the software will be intel due to apples reinvented computers . Well, I only can wait I guess.

  24. D. Amo February 2, 2006 at 8:12 pm #

    I have never used previous mindstorm products but have had my interest sparked by the NXT kit. LabView has the ability to call external code through a number of methods(Call Library node, in-line C node, .NET node, ect). Not sure how complex the version of LabView included with the kit can get. The inline C node makes the most sense because it can be easily compiled for any 32-bit embedded processor. Java or .NET would require a VM on the brick.

    I have signed up for the developer program, but chances are probably slim. I want to use a PDA with bluetooth (Microsoft stack – open source libraries available) to collect data from the ultrasound sensor for navigation and evironment mapping, or simply use it as a remote control. Hooking up a bluetooth (RFCOMM) GPS might be fun to try for outdoor navigation.

  25. Dez Futak February 12, 2006 at 9:06 am #

    I’m interested to know how the programming environments will develop for the NXT, as what attracts me to the RCX are the number of different IDE’s and commandline utilities available cross-platform. As a linux user, I’ll be keeping my ears close to the ground about such equivalent developments for the NXT before considering purchasing…

  26. Rolf Kalbermatter February 22, 2006 at 7:58 am #

    The software that comes with the NXT is based on LabVIEW but not the full package of LabVIEW. As has been told LabVIEW costs from $1200 up to $10000 and more and the makers would be crazy to include everything in the NXT software too.

    LabVIEW itself is a full programming environment and language and there is virtually nothing you can’t do with LabVIEW if it can be done in a programming language at all. There are of course things where other programming environments are better suited but the limitations of LabVIEW itself are very few. I have created applications in LabVIEW that control entire manufacturing processes and lab experiment setups with several dozen substations some of them containing 2, 3, or 4 axis robots and several TCP/IP and serially controlled devices.

    As to if external code (shared libraries) nodes will be supported in the NXT software I have some doubts. Even if that would be the case it wouldn’t be trivial to do. The new version of LabVIEW used in NXT does directly compile into binary code for the NXT CPU that then gets downloaded to the brick. Your external code shared library would be required to be compiled in the same way for the to me still unknown CPU architecture of the NXT. So you will need a compatible compiler tool chain for the NXT target (which probably will show up eventually unless LEGO has tried to completely lock the brick).

  27. jasonhill March 1, 2006 at 3:54 pm #

    Joel (Senior Group Manager at National Instruments (developer of LabView)) seems to imply that the NXT brick will be open to meddling by other programing languages.


  28. Kodanda March 6, 2006 at 6:51 pm #

    I was looking at the pictures of the new software and thinking what each part did and what kind of program was that. I understood all the other bricks, but what does that brick that has something like a monitor (lowest image on this page, lowest row, the one on the left) ? What does it do? Do you know? Did you see that program running?

  29. haz June 2, 2006 at 2:49 pm #


  30. alerk September 9, 2006 at 3:02 pm #

    hey if you wanna do a little demo of the software goto lego education.com and gotto mindstorms nxt it should be there


  1. philippe::niquille » Blog Archive » LEGO nxt - the kid in me? - February 6, 2006

    [...] update (6.2.06): This blog has tree great articles covering the Las Vegas nxt release (especially the comments). [...]

Leave a Reply