A LEGO Mindstorms NXT Curriculum

LEGO Mindstorms SetLast spring I taught an after-school class on LEGO Mindstorms robotics and the NXT programming language at my son’s elementary school.  The motivation for the class was to provide a good introduction to LEGO Mindstorms, and I hoped that some of the kids who took the class would sign up for our FLL (FIRST LEGO League) team in the fall.

I worked pretty hard to create a curriculum for the class, and I’m uploading it in case anyone would like use the lessons to teach a similar class.  LEGO Mindstorms is a terrific, easily accessible, introduction to robotics, and frankly just a whole lot of fun.  One word of advice:  If you don’t own a set yet, you might want to wait until the fall, as a new revision, called Mindstorms EV3 will be coming out then.

You can download the curriculum here in Word Document format (large file): 

or download it in PDF format:


63 thoughts on “A LEGO Mindstorms NXT Curriculum

    • Actually, not in PDF – it’s a series of word documents (rather large I’m afraid because I didn’t compress many of the images). I can zip it up and send you a download link.

  1. Thanks, from one Geek Mom to another. I am teaching a similar class at my kids’ school starting in April with EV3. Your lesson plans are a great help! Any advice on classroom management, rules, tips and tricks? How long were your sessions? How long did your weekly prep last? Did you take everything apart after each session? Very grateful!


    • Hi Jess,
      Thanks so much for letting me know you find this useful. I taught this class in 8 weekly 1 1/2 hour sessions to kids in 4th and 5th grades. Most of the prep involved writing up the lesson plan, but since the Mindstorms LEGO sets I had to work with were all jumbled together, I took the time each week to make sure each kid had enough pieces for the build and separate out the needed pieces so the kids wouldn’t have to waste their time digging for them. I always brought in a working version of the robot they were supposed to build so that they could get an idea of how it should work before trying it themselves. The only other prep I did was for the lesson plans with line following or mazes was that I would lay out the lines with black electrical tape on the floor or on butcher paper just before the class. I had 12 kids in my class working in 6 groups of 2. I found that if the group size got any bigger than 2, there was always a kid who was doing nothing. Each team had one robot which they kept in a plastic bin from week to week, so they wouldn’t have to break it down. Classroom management is always a challenge! There are always a couple of kids who would rather just free build or come up with their own agenda rather than follow the lesson plan. In the end, I just let those kids do their thing while trying to engage them as much as possible, but it was impossible to keep every single kid on task. The most enjoyable part for the kids was definitely trying to accomplish the challenges, and it allowed them to work at different speeds. I’d usually start each class off with a 15-30 minute group discussion/explanation, followed by them breaking into groups to work at their own pace. One other thing – I gave each team a handout every week, but found that they didn’t really read it. I generally had to explain the concepts to them verbally, no matter how explicitly they were written down.
      Good luck with your class, and kudos to you for doing it. It’s a lot of work, but really worthwhile.

  2. Hi Debra. Sorry for not responding sooner. This was really helpful, so many thanks for writing this up. My experience thus far is similar. We have 8 kids in groups of 2 which is working well. Though the written instructions are indeed not read very thoroughly by the kids, I do find that having a check sheet that laid out the steps in terms of task sharing has been helpful in keeping both kids in each team engaged. (E.g. Choose who will be the builder and who will be the designer for task 1. Discuss which sensor you’ll use. Etc. etc.)

    Again, many thanks.


  3. Hello,
    I am incorporating Lego Mindstorm and Lego WeDo sessions into my summer camp this year. I appreciate the lesson plans you have posted. I have hosted after school programs and winter programs before. When I came across your lesson plans I thought I had struck gold! Thank you sharing you knowledge and effort with out Lego community!

    • Thank you so much for letting me know! Good luck with your camp. I think that LEGO Mindstorms/EV3 provide such a wonderful and fun introduction to robotics for kids – it’s really admirable that you’re helping to get kids engaged in it.

  4. Ive been trying to download the documents and it wont let me. Can you send me the documents as well? I am looking to incorporate robotics in a summer camp that we are doing at my school and everything is so overwhelming. A streamlined guide would be very helpful for me to learn the capabilities of the device as well as teach it. Thanks in advance!!

  5. This is fantastic–I’m mentoring a summer lego robotics camp for middle schoolers as well and these lessons line up very nicely with what we’ll be covering. Thanks for making them available!

  6. I work for a public library and we are planning a Lego Mindstorms program starting in September. We have been looking at the EV3 version and I was wondering if that is similar enough to be able to use your curriculum with the newer version?

    • There are some differences between the part count in the EV3 and Mindstorms sets, though I don’t know if that would be a major problem. However, in the software, the programming blocks and fields for entering data into those blocks looks very different in Mindstorms and EV3, so the screenshots in the lesson write-ups would be confusing to use with the EV3 sets. Plus, the EV3 has two different kinds of “Move” blocks – “Move Steering” and “Move Tank”, while the Mindstorms only has one. The same principles would work, but I think the lesson plan would need to be rewritten to incorporate those differences (and probably some others I haven’t thought of).

  7. Thanks so much for posting these. I work with a small homeschool and we’re thinking of introducing some mindstorms next year and I’ve been looking for a place to start so this is a really useful resource. Thanks for sharing

  8. Tami, I’m halfway through our first term of using EV3 in an after school club. I’ve found these materials from Geek Mom very helpful, but because EV3 is different from NXT, I’ve supplemented with other materials. Damian Kee’s book, Classroom Activities for the Busy Teacher: EV3 has been particularly helpful, though it’s meant to be a bit more “academic” than a club might be (kids writing up reports, graphing etc.) I’ve developed my own materials, but have drawn very heavily from various resources (and have had to adapt my plan as I get a better sense of what this particular group of kids can achieve during our sessions). Good luck with it! It’s lots of fun!

    • Hi Jess, my son is starting a free robotics club in his community. Is there any chance you could share some of the documentation you created. thanks

  9. Jess–thanks for the suggestion of the book. I’ve found some things that were more for school classroom and don’t want it to be that intensive. I’ll check out the book –sounds like it would be really helpful.

    • Sorry, Geek Mom, for hijacking here, but one more terrific resource to recommend to Tami and others who are getting started with EV3 is Dale Yocum’s video tutorials, which can be found here: http://www.stemcentric.com/ev3-tutorial/. I’ve used them myself to get started and am using them to train other volunteers. He has his students watch them and then do the activities.

  10. Hi there, thank you for a great page.
    I have been trying to download the curriculum content but unable to.
    Could you pls email it to me pls?

  11. Thank you! I am helping to develop a before school program and this will help us get off to a great start. Which ev3 Kit did you use for these projects?

  12. Tami, did you end up making the changes to fit the EV3? I’m helping to start a robotics class at my son’s school and would like to use the latest Mindstorm.

    • We decided to start with the basic robot, then let the kids pick. I actually am currently in the hospital so we’ll have to put the lego program on hold until after I have badly needed surgery and am recovered enough. So, to answer you, no, I haven’t. I only made it through about 3 weeks of the program so far.

  13. I am looking for your link to download your curriculum for teaching the Mindstorms, but I don’t see it. Can you help? I would really like to take a look at it. Thank you.

    • Hi Harrison,
      All the downloads from my site seem to have disappeared. I’m working on getting them back. I’ll let you know when they’re back up.

        • Hi Harrison,
          I fixed the download problem, so you can try to download the files from the article now. If that doesn’t work, let me know and I’ll e-mail them to you.

          • Thanks so much for your help. I am teaching a STEM unit to 8th grade girls using the Mindstorms beginning in later January. I am trying to build a “team” of resource people who might be willing to act as consultants for the students as their project develops. Would you be interested in being available to receive student emails or tweets…maybe even Skype into class to encourage them? Just wondering. Thank you for your lessons.


    • Hi Danielle,
      I fixed the broken download links in the post. Let me know if you are unable to download the files and I will e-mail them to you.

  14. Just finished prepping for the first lesson and starting tomorrow with kids. I was just wondering if there is an answer key to the challenges. I figured it out myself but wondering what will happen if I can’t do it and the kids read to check with your instructor for answers. 🙂

    • Sorry, but I never did make an answer key. I always ran the experiments a few days before having the kids do them just to make everything worked out alright. Most of the time, the kids who attempted the challenges were able to figure them out by themselves – at least with a few big hints. Good luck with your class!

  15. i am starting a robotics club on Tuesday of this week. I have been searching the net for some type of lesson that could help me get started. I have read the comments and believe this is exactly what I am looking for however I am not able to download it. Is it possible for you to send it to my email? Thanks in advance.

  16. Hello,
    Thank you so much for such a fantastic resource. I have been teaching a techie after-school special in my son’s as well using little bits, arduino and scratch.. I was recently approached to coach a lego league for the next school year and was looking for ways to get myself and my son introduced to mindstorms.. this is a FANTASTIC set of activities with challenges that we can engage in this summer to be ready for when the league begins next fall.. You truly imbibe the core values that the league makes their cornerstone by lowering the barrier to entry for new entrants like me.. Thanks again.,. and please keep up the good work..

    • Thank you so much for your kind words. Good luck with your FLL team. We had a fantastic experience with it ourselves – I coached for three years, and my son is now doing FTC (first Tech Challenge) at his school. It really is a wonderful organization that deserves a lot of support.

  17. Thank you for this resource. I’m also starting a Robotics club at my kids’ elementary school using the EV3 and this curriculum is a great resource. Initially I intended to start an FLL team but i like your idea of breaking them up in groups of two; that would be far more manageable and effective. The challenge I see are resources: kits and laptops. Can you advise on how you went about raising funds for 8-10 kits each with a laptop i’m guessing. Do you have a recommended source for cheap laptops that meet the system requirements to run the software. Thanks again.

    • Hi Dave,

      For the intro to Mindstorms class, I found that teams of two kids worked well because each could contribute. With more than two kids to a setup, I found that one was always wandering off or getting distracted. However for the actual team, we could get by with a smaller ratio of computers/Mindstorms sets to kids, because I’d have half the kids working on the research project while the other half worked on the robotics challenge. In the competitions, we actually got more prizes for our research than we did for the robot game.

      The school where I ran the Mindstorms class actually had enough laptops for me to use – I was fortunate. And it was a K-12 school which taught a robotics class using Mindstorms in the upper school. They let me use their Mindstorms sets to teach the elementary school kids. We had about a dozen kids and 6 sets total. I’m afraid I don’t really have a good source for laptops. My only suggestion would be that desktops work quite well, too, if the school has any of those installed in some sort of lab. So sorry I can’t be of more help.

      I wish you a lot of luck. I’m a big fan of LEGO Minstorms/EV3 for learning robotics. It is expensive to get started, however, if you don’t have the equipment on hand.


  18. Hey,

    How are you?
    Thank you so much for the content posted,HOWEVER i am unable to open the Zipped file!.
    I am planning to teach a few underprivileged kids, is there a way i could get in touch with you?

    Thank you,


  19. Thanks a million times.. I was really lost in trying to teach my kid how to use the lego mindstorm. With these lessons its going to be really easy. So easy.


  20. Thanks so much for sharing your knowledge, which is still relevant and an handy resource – more than a year after your initial post.

    As the “technologist specialist” I was tasked with implementing the use of the robotic kits that have been sitting, untouched, for years! Contrary to what people believe, the ability to troubleshoot Dell based hardware and Windows based software, does not make me a robotic expert – by any stretch of the imagination.

    Fortunately, I know how to use the internet to research & stumbled across this page, which has been added as a favorite 😉 and found the necessary lessons to introduce a “how to” for both our staff and our youth.

    Thanks again for your willingness to share your knowledge with us!

  21. Thank you so much. I’m a teacher and am going to start an after school robotics club. We inherited some of the older NXT kits so I want to use them in some way. I really didn’t know where to start as I know next-to-nothing about the software. So, hopefully I’ll be able to teach myself and then teach the students. It is so kind of you to share this with others!

  22. Thank you so much for creating this curriculum. This was my first time teaching a Lego Mindstorm NXT elective. It was the first for the school as well. It has been a complete success. My administration wants to turn the class into an enrichment class and buy more kits. I loved your pictures and challenges. It allowed me to learn from my students and become a facilitator, not a lecturer. Thank you!!!

  23. This is so great! I am hoping to teach Lego Mindstorms as an after school club soon. I tried to download, but both said error. Could you email it to me? Thank you!

  24. Thank you very much for uploading this! I am teaching a 2 day Lego Programming course to 5/6th graders next week and need to get my head around it first! Such a great help!!!!

  25. I am wondering what items you used in lesson six? You said ‘loops’ but didn’t describe them. Being totally unimaginative, what type loop did you use and how did you expect them to pick them up since you don’t do the motorized claw until later.

    • Sorry, you’re right, that wasn’t very descriptive. It’s a little hard to describe in words, but I basically used the flexible tubes that come with some lego sets to make structures with loops whose faces are oriented in a vertical plane. The kids built bots with little “lances” or other parts that stuck out and could hook through the loops and pick them up as they drove. You could do a similar exercise by having the kids make a “bulldozer” style bot and sweep up pieces as they drive. I hope that’s more helpful.

    • Hi Cynthia,
      I just fixed a bug in the downloads manager for this site (thanks for pointing out your problem), so please try again to download the files. If it doesn’t work this time, let me know and I’ll email them to you.

  26. Thank you so much for creating and posting this curriculum. My husband and I are using your lessons to teach an after school class for 3rd, 4th & 5th graders. Even though we’ve only done the first lesson, we’re grateful to find projects that the kids can get up and running within the length of their attention span. The kids had a blast making their door alarms work.

  27. I am teaching a kids summer course with the EV3 kits. Any programming tips or things you learned using these kits would be helpful. Thanks for your NXT info as well – easy to understand!

    • Hi Sherri,
      I’m glad you like the NXT tutorial. It definitely needs to be adapted to work with EV3, but the concepts still hold. I don’t know if I have any great teaching tips. I do remember that having more than two kids sharing a robot was a recipe for goofing off, so the fewer kids per robot, the better. Some kids are just too tempted to free-build with LEGOs and it can be hard to keep them on task. It helped a little to write the milestones for each class down, and nudge them towards getting each one accomplished. The kids learned far more by doing the building and trying to solve the challenges than by anything I actually told them directly. Mindstorms are a great real-world learning experience, because unlike classroom problems there isn’t just a right/wrong answer, instead there are a lot of iterative steps to close in on the best solution. Before running a program, I would ask them to predict what they thought the robot would do when they ran it, then afterwards, I would ask if the robot’s performance matched their predictions, and asked them to think about why or why not, which I think helped a little with the debugging and really understanding the code they wrote.
      Good luck with your summer course – the Mindstorms are a fantastic teaching tool, and I hope you have fun with them.

Leave a Comment