Disclaimer: I have a background in Microelectronics Engineering which basically means I love robots. Combine that with my career in IT and love of LEGO and you end up with a 100% biased review of this Mindstorms robotics LEGO set :) Plus it's kind of long!
This set is too epic to review in a single article so I'll add more posts over the coming weeks as I get time to cover the rest of the content. This review will provide an overview of what this set is all about and the first introductory robot - The Track3r.
Mindstorms - Overview
For those who have no experience with the Mindstorms theme or programming of any sort, this section will cover what it's all about.
The key part of this set is the programmable brick. This brick is in fact a computer, complete with processor, memory, inputs and outputs. Just like any computer, it can be programmed to respond to its various inputs in any manner the programmer wishes.
Up to four input sources (e.g. proximity sensor, touch sensor, etc) can be plugged into the EV3 brick on its top side. Up to four output targets (e.g. motors) can be plugged into the EV3 brick on its bottom side. There are also connectors to connect to your PC/Mac, or expand its memory capabilities via an external flash card.
There has been a community of AFOLs who have been working with LEGO over the last couple of years to help perfect this set. And perfect it they have :) The set comes with instructions/programs for five robots. LEGO have also chosen 12 sets from the community group to include in the software - complete with building instructions and sample programs to use them. These are optionally downloadable components which can be done from within the Mindstorms program.
This EV3 Home Edition set includes:
- Programmable Brick (for more specs check here)
- Input sensors: Touch, Color (7 colors + no color), Infrared Receiver+Transmitter (proximity + directional)
- Output motors: 2 x Large servo motors, Medium Servo motor
- 500+ various Technic parts
- Printed Building Instructions for Track3r robot
- Mindstorms EV3 Software
The infrared receiver/transmitter pair can be used in a variety of ways. From a simple proximity detector, to a remote control, and the receiver can even detect the direction the transmitter is coming from. This makes it a nice beacon for following/finding objects.
The programmable brick can also play sounds, display/flash its lights, and show images or text on its 178 x 128 pixel LCD display. The Mindstorms software includes the building instructions for every robot, as well as detailed guides on how to write the programs for the robots. There are also plenty of context-sensitive help guides that open in your browser.
The cables used have connectors which at first look like standard RJ12 telephone connectors, but have the top clip that holds it in place off to the left instead of centered. I can only imagine they did this to keep everything proprietary and make it harder to build your own cables/devices :( However, it is compatible with previous generations of Mindstorms sets.
Update: Wolfolo pointed out to me that these are Modified Modular Jacks and not proprietary.
The robots included in the set are:
- Track3r - A tracked crawler robot that has several swappable tools that it can use to slice/shoot/smash obstacles. This is the simplest robot and a great one to start out with.
- Spik3r - A scorpian like robot, with features such as scurrying legs (even though its mobility is wheel-based), a moveable tail that can shoot balls, and a front gripper appendage simulating claws.
- R3ptar - A slithering serpent that can rattle, shake and strike at a close target. Quite an evil looking and cool robot.
- Gripp3r - Another tracked crawler that has a big gripper at its front designed to lift and transport objects.
- Ev3rstorm - The main bipedal robot (but actually moves on tracked feet). It incorporate all sensors and motors and is the most complex robot of the five. Other than the chicken hairstyle, this is one cool robot!
The robots included as part of the community offerings are:
- Ev3game - by Ricardo Oliveira. This is basically a Shell Game in which the robot randomly moves cups around and you have to guess which one is hiding the ball. It includes three missions.
- Banner Print3r - by Ralph Hempel and Phillippe "Philo" Hurbain. A 2d plotter robot that can write anything. The sample program spells "LEGO EV3"!
- Bobb3e - by Kenneth R. Madsen. A tracked forklift robot, complete with beep beep beep reverse sounds.
- Dinor3x - by Lasse S. Lauesen. A triceratops that walks on its four legs and avoids obstacles.
- El3ctric Guitar - by Daniele Benedettelli. It's a freaking guitar, what else is there to know?
- Ev304 - by Vassilis Chryssanthakopoulos. A companion robot that can be controlled remotely, or follow you around.
- Ev3meg - by Martyn Boogaarts. A clever line following robot with some pseudo fuzzy logic driving its calculations.
- Mr-B3am - by Kenneth R. Madsen. This robot will take a technic beam and measure its length and color.
- Kraz3 - by Marc-Andre Bazergui. A little companion robot that wiggles his head when he finds color spots on the mission pad.
- Rac3 Truck - by Laurens Valk. An automated race truck that drives around avoiding obstacles.
- Robodoz3r - by Mark Crosbie and Phillippe "Philo" Hurbain. An autonomous bulldozer that can lift its shovel.
- Wack3m - by Martyn Boogaarts. A Whack-a-mole game to test your reaction speed.
Personally, the Dinor3x interests me the most because... well its a dinosaur and dinosaurs are cool. I will cover these robots more in later reviews!
The CD I received with my set was pre-release so was not included in the box. I presume the normal sets will include a CD inside the box with the latest software. In any case, mine was v1.0.0. However, shortly after installing it there was a new release v1.0.1 which it automatically discovered and I downloaded from the LEGO mindstorms website which has just been updated to include the EV3 content. I also needed to update the brick's firmware from v1.01H to v1.03H which was a quick and painless operation. The latest firmware was downloaded from the website and then copied to the brick over the supplied USB cable. After a few minutes it was all done and ready for use.
For each of the included robots, there are 4-6 "missions" to complete. These missions are actually requirements for programs that you need to write. For example - Mission 1 for the Track3r robot is to write a program to make the robot move forward a bit, swipe a tyre off the mat with the Bi-blade Blender, then move back to the starting position. A simple task to get you used to the development environment and some of the basic coding techniques used. The missions tend to get harder as you progress through them, and build upon things you have learned in earlier ones. Each mission includes: a video showing what the robot needs to do; building instructions for the robot and any add-ons specific to that mission; and step-by-step instructions for coding the program. If you get stuck, you can always open the prepared answers but that would be cheating :)
The building instructions can be viewed directly from the Mindstorms software, or via an external URL. The URL is helpful for viewing from another device that does not have the software installed, such as a tablet. It even includes a handy QR code that you can scan with your tablet to open the URL without having to type it in manually.
To test this, I used my iPad to scan the QR code. This took me to a website that then redirected me to the app store for the free LEGO Mindstorms 3D Builder app. Note that this app says it requires 173MB to install, but after installing I found it used 378MB. Bigger than your average app! This app includes the building instructions for the five main robots, and uses the same Autodesk software that is used on the website for the PC. It allows you to step through the instructions, and change any aspect of the 3D viewing. The app seems to work a lot faster than the website, and is easier to use when building away from your PC anyway.
The PC software isn't perfect. There were a few things I thought could be made clearer and it was quite slow sometimes. My Windows 7 based PC is no slouch, yet it lagged quite often on some of the screen transitions and even just trying to drag blocks around. However, I'm sure things will improve over time as it gets more usage and is tweaked by LEGO. Even at v1.0 it shows a lot of effort has been put into making it a highly intuitive and fun experience.
The Mindstorms software provides a drag-and-drop GUI style of programming. I have been programming for 26 years now so have an intuitive understanding of how things work, but I believe that it is easy enough for anyone to pick up. I can say this because my six year old son wrote all but one of the programs for the Track3r robot!
To write the programs, you drop blocks of functionality into a process flow diagram. Each block can be configured, based on the type of block it is. For example, the "Medium Motor" block shown here has 5 modes of operation:
- Off - turn off
- On - turn on and rotate until told not to in a later block
- On for Seconds - turn on for a specified number of seconds
- On for Degrees - turn to a precise angle
- On for Rotations - turn a fixed number of times only
There are a wide variety of blocks to choose from as shown below and are grouped into six categories: Action (green), Flow Control (orange), Sensor (yellow), Data Operations (red), Advanced (blue), and My Blocks (girly blue).
The My Blocks group contains custom blocks you can create yourself. They may contain entire programs within them. If you have a large number of blocks performing a function that you find yourself needing multiple times, this is a nice way to simplify things. The fifth mission of the Track3r robot provides you with one called Time Trial that acts as a stopwatch, tracks your score and even keeps a high score in a file on the brick.
You are introduced to new blocks slowly, as you progress through the missions for each robot. In fact of the five LEGO supplied robots, only the R3ptar has a block that is not green or orange (ignoring pre-build custom blocks for some of the missions). Once you take a look at the community built models though, things get complicated fast.
When you have created your program, it needs to be copied to the robot. There are actually three different methods that the programmable brick can be connected to the Mindstorms software:
- USB cable - a 2m cable is supplied
- Wifi - you need to buy an additional dongle that plugs into the brick
- Bluetooth - your PC/Mac needs to have bluetooth support
Once you have connected, you can download your project to the brick. Note that all programs within your project are copied. You can choose to just download, or download and immediately start running the current program. This is great for doing quick tests of your program. However, try not to shoot your computer screens :)
Other than the LEGO MINDSTORMS 3D Builder app, there are a couple others worthy of looking into.
The first is the LEGO MINDSTORMS Robot Commander. This allows you to control your robots from your phone. It comes pre-configured with the five standard robots, plus you can also create your own custom commands from within the app for other robots. You must first enable Bluetooth on the robot and pair it with your tablet/phone device. I didn't really find the Track3r one very useful, but can see the potential in it for other robots.
There is also a fun little game app for LEGO Mindstorms called Fix The Factory. It gets you to control the Ev3rstorm robot by coming up with a list of steps for the robot to get to its goal. For example: go forward, turn left, go forward twice, turn right, etc. A great precursor to full-blown programming :)
The first robot you should build is the Track3r. It is the only one with printed building instructions, and also has a demo program pre-installed on the programmable brick. It also comes with an activity mat that is actually the underside of the outside box. Four of the five missions for this robot uses the mat to demonstrate its capabilities. Plus, of course, you can use it for whatever other programs/robots you dream up.
The actual build of the robot is straightforward and will only take 10-15 mins. It mainly introduces you to some of the ways of mounting the motors and sensors, which I gather is much nicer than previous Mindstorms sets. The instructions include showing you how to run programs stored on the brick, and even how to create a program directly on the brick itself. Although, that is really only useful for the most basic programs and the Mindstorms software is much easier to use.
There are five missions included with this robot. Each mission requires you to build a weapon add-on that connects to the medium motor.
- Mission 1 - Blend It with Precision. This uses the "Bi-blade Blender" add-on, and consists of a very simple program to move the robot forward and knock a tyre off the activity mat. It's a great introduction to the software development environment.
- Mission 2 - Blast It Away. Using the "Blasting Bazooka" add-on, you need to manoeuvre the robot to shoot small red balls at two different objects in the distance. Definitely one of the more interesting weapons!
- Mission 3 - Take Them Away. This uses a "Gripping Claw" to pick up tyres from the mat and place them in marked locations. This is the first program that uses flow control with a simple loop.
- Mission 4 - Tactical Defense System. The "Heavy Hammer" is used by this robot to randomly strike at anything nearby, and when something gets close enough to its rear it will spin around and smack them. The program introduces the switch block for conditional actions.
- Mission 5 - Time Trial. This program is a game where you need to swipe away tyres and put the color sensor over the colored dots on the mat in a certain order. It is also timed, and you build up a score for doing it correctly. You get penalised by going over the red lines which are detected by the sensor. A few new concepts in the program for this one.
Mindstorms - Summary
Robots + LEGO = AWESOME!!!
I love this set. My kids love this set. It's expensive at USD$350, but not only is this a great toy, it's a fantastic tool for teaching kids how computers really work. And I mean real computers, not the ones with angry birds inside them.
See more photos of the set.