Lego Mindstorms

Last updated

Lego Mindstorms
Lego Mindstorms Sound Finder.jpg
Robot based on the NXT platform
Subject Robotics
Licensed from The Lego Group
Availability1 September 1998 (1998-09-01)–31 December 2022 (2022-12-31)
Total sets91 [1]
Official website

Lego Mindstorms (sometimes stylized as LEGO MINDSTORMS) is a discontinued line of educational kits for building programmable robots based on Lego bricks. It was introduced on 1 September 1998 and was discontinued on 31 December 2022.

Contents

Mindstorms kits allow users to build creations that interact with the physical world. All Mindstorms kits consist of a selection of Lego Elements, a "Smart Brick" (internally known as a programmable brick or "pbrick"), which serves as the "brain" for a Mindstorms machine. Each set also includes a few attachments for the smart brick (such as motors and sensors) and programming software. Unlike conventional Lego sets, Mindstorms kits do not have a main model to build. Sample builds are included with each version of Mindstorms, but the kit is open-ended with the intent of the user creating and programming their own designs.

In addition to at-home use, Mindstorms products are popularly used in schools and in robotics competitions such as the FIRST Lego League. Versions of Mindstorms kits specifically intended for use in educational settings are sold by Lego Education.

Children are the target audience of Lego Mindstorms, but a significant number of Mindstorms hobbyists are adults. Adult hobbyists have developed a large number of alternative programming languages and operating systems for the smart brick, allowing for more complex functions.

While originally conceptualized and launched as a tool to support educational constructivism, Mindstorms has become the first home robotics kit available to a wide audience. It has developed a community of adult hobbyists and hackers as well as students and general Lego enthusiasts following the product's launch in 1998. In October 2022, the Lego Group announced that it would discontinue the Lego Mindstorms line while continuing to support the Scratch-based SPIKE controller. [2]

Lego Mindstorms and Robotics Invention System (1998)

A robot created using Robotics Invention System parts Lego Roverbot.JPG
A robot created using Robotics Invention System parts

The Robotics Invention System (RIS) was the flagship product of the first generation of the Lego Mindstorms line. It is a commercialization of technology produced by the MIT Media Lab in collaboration with the LEGO group. The RIS featured the programmable Robotic Command eXplorer (RCX) microcontroller, as well as 9V Lego-compatible motors and sensors and a selection of Lego parts. The original RIS was launched fall of 1998. It was replaced by a second version, RIS 1.5, in the summer of 1999; and a third version, RIS 2.0, in 2001.

Development of Mindstorms Brand

The Lego Mindstorms product line was the first project of "Home Education", a division of Lego Education established by employee Tormod Askildsen in 1995. Askildsen, who had previously spent ten years working for Lego Education, had grown frustrated working with teaching professionals and wanted to create an improved educational experience that was delivered directly towards children. Home Education decided to incorporate technology into their products based on market research that concluded that children found learning that involved technology interesting. [3] Lego Mindstorms started development in April 1996. [4] :1061 The concept for the set was based on technology created in partnership with the MIT Media Lab. MIT Media Lab had been experimenting with combining Lego and programming since the early 1980s, and Lego had previously commercialized some of this technology as classroom products in the Lego Dacta line. The programmable brick (or pbrick [5] ) was a refinement of these early concepts, which had limited range because they had to be tethered to a computer to run. [6] :24

Lego had been interested in mass-producing the pbrick since its creation in the 1980s, but at the time it was considered unfeasible due to the lack of computers in schools and households and the relative expense of electrical components. [6] :25 in the early 1990s Technology began to become more of a child's life, and the toy market accordingly began shifting more towards computerized toys. [7] :37 Many of Lego's attempts at producing electronic toys had languished at the point that Lego began developing MIT's programmable brick into a consumer product. [4] :1061 MIT continued developing the pbrick concept, creating a "Red Brick" version between 1994 and 1996 that improved the previous version. By the mid-1990s personal computers were relatively common in households and the components required to produce the pbrick went down in price, making mass production feasible. [6] :25 Development on what would later be known as the Robotics Invention System started in 1996 as the flagship product of the newly created home-learning division of Lego Education (Lego Dacta). The product line's name "Mindstorms" was intended to express the user experience of the product, it is named after Papert's book Mindstorms, as the user experience was similar to the educational constructivism concepts described in his book. [8]

The project's at-first low profile allowed the Mindstorms team the freedom to develop the product using operating procedures then-unorthodox to the Lego Group. [4] :1062 Unlike traditional Lego sets, the Mindstorms Robotics Invention System did not come with step-by-step instructions. [3] The kit also did not have a main model, nor was the play driven by storytelling. [ citation needed ] To bridge the gap between this new play experience and pre-existing Lego ones, the Mindstorms team created a lot of opportunities for people interested in the product to engage with each other, such as the creation of Mindstorms.com, Mindstorms Discovery Centers, and the FIRST Lego League. [8] The creation of these experiences was done through partnerships with a relatively large amount of external groups that the Mindstorms team interacted with as equal partners, something that was uncommon for the Lego group at the time. [4] :1063 To ease tensions between Mindstorms and more conventional products, the project team was given autonomy from Lego's product development process and instead reported directly to the company's senior management. [4] :1064

Development of RCX Brick

MIT Media Lab's "Red Brick" served as the prototype for Lego Mindstorms' RCX. Lego Mindstorms prototypes 1.jpg
MIT Media Lab's "Red Brick" served as the prototype for Lego Mindstorms' RCX.

The Lego Mindstorms team used the insights that MIT researchers discovered from testing the 3rd Generation Logo Brick ("Red Brick") in schools as the basis for the development of the mass-produced programmable brick. [9] :5 The physical programmable brick was re-engineered from the ground up, as the experimental programmable bricks were not designed for robustness or cost-effective manufacturing. [6] :19,26 The programming language of the product was developed with help from members of the MIT Media lab. Lego decided to use a Visual programming language for Mindstorms, inspired by the LOGOBlocks language previously used with programmable brick experiments, in order to make the product accessible to children who might be unfamiliar with programming. [6] :29 While the technology that Mindstorms was based on was aimed towards "all children", the chosen target demographic of Lego Mindstorms was intentionally narrow, in order to garner positive press by outselling expectations. The decision was made to aim the product towards 10 to 14-year-old boys, partly because it was Lego's main target demographic, and partly based on market research (not substantiated by the findings of the MIT Media Lab) which concluded that this demographic would be most attracted to computerized toys. This choice of target demographic directly informed the color of the RCX brick (which was made yellow and black to resemble construction equipment) and the sample uses for the Mindstorms kit (such as making autonomous robots). [6] :28

Launch

Promotion of the Lego Mindstorms Robotics Invention System began 6 months before the product was planned to launch. [8] The product was first soft launched with the opening of the Mindstorms Discovery Center at the Museum of Science and Industry, where children could interact with the Mindstorms Robotics Invention System to complete set tasks, getting them familiar with the product. [10] The Mindstorms product was launched concurrently with Lego Cybermaster, another Lego product spun off from the MIT programmable brick technology that was more in line with the traditional product philosophies of the Lego group. [4] :1067

The Lego Mindstorms Robotics Invention System (RIS) was released September 1998 [11] at a retail price of $199. Instead of being sold at toy stores, the product was sold at electronics stores like BestBuy and CompUSA, due to the relatively high cost of the set. [8] The entire production run (of between 60 and 100 thousand units [12] ) sold out within 3 months. [7] :181 [6] :30

The second edition of the RIS, Robotics Invention System 1.5, was released in the summer of 1999. [7] :187 [5]

A third edition, RIS 2.0, was launched in 2001. [13]

Fanbase and "Right-to-Hack"

Despite being aimed towards children, the Robotics Invention System quickly found an audience with adults and hackers of all ages; Lego company surveys conducted a few months after launch determined that seventy percent of Lego Mindstorms Hobbyists were adults. Shortly following the product's launch, adult hobbyists began sharing reverse-engineered versions of the RCX brick's Microcode and Firmware on the internet, leading to the development of alternative programming languages for the RCX such as "Not Quite C" (NQC) and alternative operating systems for the brick like lejOS. The Lego Group briefly considered sending cease-and-desist letters to websites sharing the RCX's proprietary code. [7] :183 However, The Mindstorms team successfully argued that the embrace of the product by the hacking community proved that the product was worth developing. In order to foster this burgeoning community, an official forum was established on the Lego website and a "right to hack" clause was added to end user license agreement of the Lego Mindstorms software. An official software developers kit for the RCX would later be released on the Mindstorms website. A significant amount of products focusing on the RIS were released by adult hobbyists, including how-to books, and unofficial sensors and hardware. A convention for Lego Mindstorms hobbyists, named Mindfest, started in 1999. [7] :181–184

Despite strong sales, The Mindstorms development team was neglected by upper management. As a cost-cutting measure, the Mindstorms office was shut down in 2001, and team members were laid-off or assigned to other projects. [5] The Lego Group continued to produce the Robotics Invention System 2.0 after the Mindstorms office was shut down, selling around 40,000 units per year without advertising [7] :189 until the set was discontinued in 2006. [14]

RCX

First-generation RCX programmable brick LegoMindstormsRCX.jpg
First-generation RCX programmable brick

The RCX is based on the 8-bit Renesas H8/300 microcontroller, including 32 KB of ROM for low-level IO functions, along with 32 KB of RAM to store high-level firmware and user programs. The RCX is programmed by uploading a program using a dedicated infrared interface. After the user uploads a program, the RCX can run it on its own without the need for computer access. Programs may make use of three sensor input ports and three 9 V output ports, in addition to the IR interface, enabling several RCX bricks to communicate. A built-in LCD can display the battery level, the status of the input/output ports, which program is selected or running, and other information. [15]

Version 1.0 RCX bricks feature a power adapter jack in addition to batteries. In version 2.0 (as well as later 1.0s included in the RIS 1.5), the power adapter jack was removed. Power adapter-equipped RCX bricks were popular for stationary robotics projects (such as robot arms) or for controlling Lego model trains. In the latter context, the RCX might be programmed with Digital Command Control (DCC) software to operate multiple wired trains.

The IR interface on the RCX is able to communicate with Spybots, Scout Bricks, Lego Trains, and the NXT (using a third-party infrared link sensor). The RCX 1.0 IR receiver carrier frequency is 38.5 kHz, while the RCX 2.0 IR carrier frequency is 76 kHz. Both versions can transmit on either frequency. The RCX communicates with a computer using a Serial or USB IR tower. As the RCX is discontinued, support for the interface is limited on more recent operating systems than Windows XP.

All RCX versions have a unique number printed on them, which could be registered on the now-defunct Lego Mindstorms RCX website. This was necessary to obtain technical support. The first RCX produced is marked "000001," and was on display at the Mindstorms 10th Anniversary event. [16]

The Lego RCX was available in new sets from 1998 (Lego Set 9719: Robotics Invention System 1.0) through 2003 (Lego Set 9786: Robo Technology Set, with USB cable). The original RCX 1.0 worked with existing Lego power supply products from the Lego Train theme, Lego Product 70931: Electric Train Speed Regulator 9V Power Adaptor for 120v 60 Hz - US version (Years: 1991 thru 2004), Lego Product 70938: Electric Train Speed Regulator 9V Power Adaptor for 230v 50 Hz - European version (Years: 1991 thru 1996). Both of these products converted wall power to 12VAC, through a coaxial power connector (also called a "barrel connector"), 5.5 mm outside, 2.1 mm inside. These were sometimes sold alone and sometimes available as part of other sets such as Lego Set 4563: Load N' Haul Railroad (Year: 1991) and Lego Set 10132: Motorized Hogwarts Express (Year: 2004). [17] [18] [19] [20] [21] [22]

Robotics Discovery Set and Droid, Dark Side Developer Kit

The Robotics Discovery Set was a more affordable and simpler package than the Robotics Invention Set. Instead of being based on the RCX, it had its own programmable brick called the Scout. An even simpler version of the Scout would be featured in two Star-Wars-themed Mindstorms sets.

Scout

Lego also released a blue computer called the Scout, which has 2 sensor ports, 2 motor ports (plus one extra if linked with a Micro Scout using a fiber-optic cable), and a built-in light sensor, but no PC interface. It comes with the Robotics Discovery Set. The Scout can be programmed from a collection of built-in program combinations. In order to program the Scout, a user must enable "power mode" on it. The Scout can store one program.

The Scout is based on a Toshiba microcontroller with 32 KB of ROM and 1 KB of RAM, where about 400 bytes are available for user programs. Due to the extremely limited amount of RAM, many predefined subroutines were provided in ROM. The Scout only supports passive external sensors, which means that only touch, temperature and other unpowered sensors can be used. The analog-to-digital converters used in the Scout only have a resolution of 8 bits, in contrast to the 10-bit converters of the RCX. [23]

There was a plan for Lego to create a booster set that allows programming the Scout from a computer with software such as RCX code. However, due to the complexity of this project, it was abandoned.

The RCX can control the Scout brick using the "Send IR Message" program block. The RCX does all of the controlling, and therefore can be programmed with the PC, while the Scout accepts commands. The Scout brick must have all of its options set to "off" during this process.

Micro Scout

The Micro Scout was added as an entry-level to Lego robotics. It is a very limited Pbrick with a single built-in light sensor and a single built-in motor. It has seven built-in programs and can be controlled by a Scout, Spybotics or RCX unit using VLL. Like the Scout, the Micro Scout is also based on a microcontroller from Toshiba.

The unit was sold as part of the Droid Developer Kit (featuring R2-D2) and later the Dark Side Developer Kit (featuring an AT-AT Imperial Walker).

Lego Mindstorms NXT (2006)

Lego Mindstorms NXT Kit Lego Mindstorms NXT Kit.jpg
Lego Mindstorms NXT Kit
Robot built from the NXT kit Lego MindStorms NXT - Alpha Rex.jpg
Robot built from the NXT kit

Lego Mindstorms NXT was a programmable robotics kit released by Lego in August 2006, replacing the first-generation Lego Mindstorms kit. [24] The kit consists of 577 pieces, including: 3 servo motors, 4 sensors (ultrasonic, sound, touch, and light), 7 connection cables, a USB interface cable, and the NXT Intelligent Brick. It lets the robot autonomously perform different operations. The kit also includes NXT-G, a graphical programming environment that enables the creation and downloading of programs to the NXT. The software also has instructions for 4 robots: Alpha-Rex (a humanoid), Tri-Bot (a car), Robo-Arm T-56 (a robotic arm), and Spike (a scorpion)

Development

The Development of Lego Mindstorms NXT began in 2004. At the time, The Lego group was in the middle of a financial crisis. As part of the turn-around effort, the product line developed for release in 2006 would feature relatively few products that were guaranteed to be profitable. A revival of The Mindstorms Robotics Invention System was chosen as of these products, as Lego Mindstorms had a strong fan following and kits continued to sell well without advertising. [7] :187–188

Fans were extensively involved in the development and promotion of Mindstorms NXT. The development team collaborated with four hobbyists considered experts in Lego Mindstorms fan community. These fans were collectively known as the Mindstorms Users Panel (MUP). They were shipped early prototypes of the Mindstorms kit and communicated to Mindstorms team members on a private internet forum. MUP gave extensive feedback on the hardware and design of the NXT kit. Features of NXT directly based on requests of the MUP include the use 32-bit processor, more powerful motors, and Bluetooth compatibility. [7] :194

Launch

Promotion of Lego Mindstorms NXT was largely word-of-mouth based, because the company was in the middle of a financial crisis and did not have enough money for a large marketing campaign. [7] :189 Mindstorms NXT was unveiled in January 2006 at the 2006 Consumer Electronics Show. At the show, Lego requested applications for a beta-testing phase, where 100 users, known as Mindstoms Community Partners (MCP)s would receive NXT kits at a discounted price months before launch. The intention of the MCP program was to build support for the product prior to launch, and receive feedback on the near-final kit. [7] :196–198 [5] Fans involved in the MCP program provided a significant amount of PR for the set upon launch, such as alternate models, finished book drafts, and web content like blog posts. [5] News outlets like Wired and CNN also provided free publicity for Mindstorms NXT by reporting on the inclusion of fans in its development process. [7] :199 The launch of Mindstorms NXT, measured in airtime hours, web content and magazine pages; generated more public interest than the entire company had previously accumulated in its entire lifetime. [5]

Lego Mindstorms NXT (Product no. 8527) was released August 1 of 2006. [5] $30 million worth of kits were sold in the first year. [7] :199

Lego Mindstorms NXT 2.0

The Lego Mindstorms NXT 2.0 was launched on 5 August 2009. It contains 619 pieces and five sensors; two touch sensors, and one sound, light, and ultrasonic distance sensor. The NXT 2.0 uses Floating Point operations whereas earlier versions use Integer operation. [25] The kit costs around US$280.

Lego Mindstorms EV3

Brick of Lego Mindstorms EV3 Lego Mindstorms EV3 brick.jpg
Brick of Lego Mindstorms EV3

The Lego Mindstorms EV3 is the third generation Lego Mindstorms product. EV3 is a further development of the NXT. [26] [27] The system was released on 1 September 2013. The Lego Mindstorms EV3 set includes motors (2 large servo motor and 1 medium servo motor), sensors (2 touch sensors, ultrasonic sensor, color sensor, infrared sensor, and the new gyro sensor), the EV3 programmable brick, 550+ Lego Technic elements and a remote control (the Infrared Beacon, which is only on Home/Retail mode). The EV3 can be controlled by smart-devices. It can boot an alternative operating system from a microSD card, which makes it possible to run ev3dev, a Debian-based operating system.

Lego Education Spike Prime

Spike Prime was announced in April 2019. [28] While not being part of the Mindstorms product line, the basic set includes three motors (1 large 2 medium) and sensors for distance, force and color [29] a controller brick based on an STM32F413 microcontroller [30] and 520+ Lego Technic elements. [31] Majority of these motors and sensors, including the hub, would serve as the electric components for the then-upcoming Robot Inventor set.

Lego Mindstorms Robot Inventor

Lego Mindstorms Robot Inventor was announced in June 2020 [32] and released later in autumn. It is the last commercially available Mindstorms set before the discontinuation of the theme announced in October 2022. It has four medium motors from Spike Prime, two sensors (distance sensor and color/light sensor) also from Spike Prime, a Spike Prime hub with a six-axis gyroscope, an accelerometer, and support for controllers and phone control. It also has 902+ Lego Technic elements. This set was discontinued in 2022 with Lego promising app support through 2024. [33]

Programming languages

NameDeviceProgram typeLanguage type(s)NotesLinks
RCXNXTEV3Runs on BrickRemote control
Actor-Lab Custom flowchart-like language
AdaYes Ada Requires nxtOSEK
Ada Interface to Mindstorms Ada
App InventorYes App Inventor Specific support for Lego Mindstorms NXT sensors and motors
brickOSYesNoNo C, C++ website
ChC, C++ interpreterControl Lego Mindstorms in C/C++ interactively without compiling
clangC, C++
CoderZYesYesNo Java Works with Blockly or with Java (using LejOS). Also includes an online 3D simulator [34] website
Cpp4RobotsNoNoYesYesC/C++Cpp4Robots is extension (plug-in) for Microsoft Visual Studio environment; allows programming Lego EV3 in native C/C++ language and in Microsoft Visual Studio development environment; works with default firmware in EV3 Brick website
DialogOS Graphical flowchart for voice controlled robotsDialogOS combines speech recognition and speech synthesis with robotics, enabling building talking robots that react to voice commands
Enchanting YesDrag and drop, similar to NXT-GProgram robots simply by dragging the line of functions
EV3BasicNoNoYesYesYesMicrosoft Small Basic website
ev3_scratch YesNoYes Scratch (programming language) Code runs in the browser relaying commands to EV3 robot over Bluetooth
FLL NXT NavigationYesUses NXT-G and .txt files
GCC C, C++, Objective-C, Fortran, Java, Ada, others
GnikrapNoNoYesYesYes JavaScript, Scratch like programming website
GNU Toolchain for h8300C/C++, Assembly language (ASM)
HVMYesDevelopment environment for the Java language for the Mindstorms EV3, Eclipse-basedWorks with Java 1.7; works with standard Lego firmware; needs no microSD card; needs a wireless bluetooth dongle for the EV3 website
Interactive CC-style languageLanguage developed for the MIT Lego Robot Design Contest
jaraco.nxtYesYes Python Python modules providing low-level interfaces for controlling a Lego NXT brick via Bluetooth; includes code to control motors with an Xbox 360 controller using pyglet
LabVIEW YesYesYesYesNational Instruments LabVIEW visual programming language (G code)The core language used to develop Mindstorms NXT software. You can use the available add-on kit to create and download programs to NXT and create original NXT blocks or control robots directly via USB or Bluetooth using NXT fantom.dll. It also serves as the programming language for EV3.
Lego Mindstorms EV3 API for .NETNoNoYesNoYes.NET, WinJS and C++A .NET API for the Lego Mindstorms EV3 brick usable from desktop, Windows Phone, and WinRT; this API can connect, control, and read sensor data from Lego EV3 bricks over Bluetooth, WiFi, or USB website
Lego.NETAnything that can compile to CIL, works best with C# Does not come with a compiler, converts CIL to machine code
Lego::NXTYesNoYes Perl Set of Perl modules providing real-time low-level control of a Lego NXT brick over Bluetooth.
LegoLog Prolog Uses an NQC program to interpret commands send from the PC running the Prolog code
LegoNXTRemoteYesNoYesObjective-CRemote control program for remotely operating and programming a Lego NXT Brick. Supports NXT 2.0 and 1.0, sensors, all 3 motors, automatic "steering" control, and running preloaded programs.
leJOS YesYesYesYesYes Java A java based system for advanced programmers can handle most sensors and things like GPS, speech recognition and mapping technology. Can be interfaced with the Eclipse IDE or run from the command line
LestatC++Allows controlling the NXT directly from any C++ program in Linux
librcxC/C++A library for GCC
Logitech SDK Visual Basic, Visual C++ Can be combined with an RCX control library such as spirit.ocx from the MindStorms SDK to make use of the Lego Cam
Microsoft Visual Programming Language (VPL)YesNoYesGraphical flowchart, based on .NETWith the Microsoft Robotics Studio, it uses a native NXT program msrs to send and receive messages to and from a controlling program on a computer via Bluetooth
Mindstorms SDKVisual Basic, Visual C++, MindScript, LASMDoes not need VB to use the VB features as MS Office comes with a cut down version of VB to make macros
MonobrickYesYesYesC#.NET 4.5. Firmware running from SD card. website
NQCYesYes NQC, a C-like language
NXT++C++Allows controlling the NXT directly from any C++ program, in Visual Studio, Windows.
NXT_PythonYesNoYesPythonPackage to control a Lego NXT robot using Python language; can communicate via USB or Bluetooth
NXT-PythonYesNoYesPythonBased on NXT_Python, includes additional advanced features, support for around 30 sensors, and multiple brick connection backends. Works on Windows, Linux, Mac.
NXTGCCAssembly, C, makefiles, Eclipse, etc.The first GCC toolchain for programming the Lego Mindstorms NXT firmware.
nxtOSEK C/C++
OCaml-mindstorm OCaml Module to control Lego NXT robots using OCaml through the Bluetooth and USB interfaces.
OnScreenA custom language which can be programmed directly on the RCX
pbForthYes Forth No longer developed.
pbLuaYesAPI for the Lua programming language for the Mindstorms NXT, text-basedpBLua: ... is written in portable C, with minimal runtime requirements; can be compiled on the fly on NXT; is a small, easy to read, and easy to write language; has extensive documentation available online and in dead-tree format, and a very friendly newsgroup website
PBrickDevPBrickDev, a flowchart based language.Has more function than the RIS language, such as datalogs and subroutines, multithreading
PRO-BOTA kind of Visual Basic/spirit.ocx-based languageDesigned for robots which are in contact with the workstation at all times
ProcessingYesJava (simplified, programmed C-style) Processing (programming language) is an open source programming language and environment to program images, animation, and interactions. It is used by students, artists, designers, researchers, and hobbyists for learning, prototyping, and production; the NXTComm Processing library developed by Jorge Cardoso can control the NXT with Processing
QuiteCCA library for use with GCC and comes with GCC for Windows.
RCX CodeYesRCX Code, a custom flowchart-based languageIncluded in the Mindstorms consumer version sold at toystore
ROBOLABYesA flowchart language based on LabVIEWThis is the programming environment offered to schools who use MindStorms, supports the Lego Cam. The programming structure simulates a flowchart design structure almost icon by icon. Therefore, it helps users a great deal in terms of translating from a flowchart design to Robolab icons.
RoboMind Simple educational scripting language available from Arabic to Ukrainian.The RoboMind learning environment allows to quickly develop and test scripts for a virtual robot environment. The scripts can then directly be transferred to a Lego Mindstorms NXT robot. It works on the standard firmware.
RoboRealmA multi-platform language that works with IRobot Roomba, NXT, RCX, VEX, and many other popular robotic sets; can also process video using a webcam, this gives a robot excellent vision since it can filter out certain colors, lock-on to a certain area of color, display variables from the robot or computer, and much more; software works with keyboard, joystick, mouse
Robot JavaScriptNoYesYesYesJavaScriptA compiler that compiles JavaScript code for EV3 robots. Includes syntax highlighting, code sharing, over 100 example programs, and verbose compiler messages. Object oriented language. Free. website
ROBOTC YesYesYesYesAn integrated development environment targeted towards students that is used to program and control Lego NXT, VEX, RCX and Arduino robots using a programming language based on the language C.ROBOTC gives the ability to use a text-based language based on the C language. It includes built-in debugger tools, (but not limited to) code templates, math/trigonometry operations (sin, cos, tan, asin, acos... etc.), user-friendly auto-complete function built into the interface, built-in sample programs. This deserves a special note for its debugging tool. Any developer will know how important it is to have a good debugging tool. Among all other robotics programming languages which support Mindstorms platform, RobotC's debugging environment is noteworthy; but it is not free.
Robotics.NXTYesYes Haskell A Haskell interface over Bluetooth; it supports direct commands, messages and many sensors (also unofficial), and supports a simple message-based control of a NXT brick via remotely executed program (basic NXC code included)
Robot Operating System (ROS)A Linux based library for writing robots; the stack "nxt" provides interface with the NXT
ruby-nxtYesYes Ruby Provides low-level access to the NXT via Bluetooth and some preliminary high-level function
RWTH – Mindstorms NXT ToolboxYesYes MATLAB Interface to control the NXT from MATLAB via Bluetooth or USB; open-source
Simulink (Lego Mindstorms NXT Support)Yes Simulink Provides a one-click rapid programming tool for the NXT; C code is automatically generated from a graphical Simulink model; code is then deployed and downloaded onto the NXT, from where it can be run; the Mathworks provides an array of graphical blocks that represent various sensors and actuators that the NXT uses
SqLego Squeak
Swift / RobotaryYesYes Swift (programming language) Robotary is a Mac robotics studio that uses the Swift programming language website
TclRCXYes Tcl
Terrapin Logo LOGO
TinySoar Soar An implementation of the Soar artificial intelligence architecture that runs on the RCX brick; Soar incorporates acting, planning, and learning in a rule-based framework
TinyVMYesJavaA predecessor to the lejos language. An open source Java based replacement firmware for the Lego Mindstorms RCX microcontroller.
Transterpreter (The) Occam
TuxMinds(Linux) GUI for various distributions, an open source IDE based on Qt. Supports a lot of bots. RCX, NXT and Asuro are predefined.With the XML-based configuration file almost any kind of bot (or microcontroller) can be added. Own equipment can be added in the same manner.
URBI by Gostai for Lego Mindstorms NXT URBI, C++, Java, MatlabEasy to use parallel and event-driven script language with a component architecture and opensource interfaces to many programming languages. It also offers voice/speech recognition/synthesis, face recognition/detection, Simultaneous localization and mapping, etc.
Vision CommandYesRCX CodeOfficial programming language for use with the Lego Cam, allows control of robots with color, motion, and light flashes
XS Lisp

Use in education

A Mindstorms EV3 robot is used to navigate a First Lego League (FLL) course as part of a summer camp. Robotics Camp 2018 (41276792080).jpg
A Mindstorms EV3 robot is used to navigate a First Lego League (FLL) course as part of a summer camp.

Mindstorms kits are also sold and used as an educational tool, originally through a partnership between Lego and the MIT Media Laboratory. [35] [36] The educational version of the products is called Mindstorms for Schools or Mindstorms Education, and later versions come with the ROBOLAB GUI-based programming software, developed at Tufts University [37] using the National Instruments LabVIEW as an engine.

Use in Competition

A poster presentation from First Lego League (FLL) NXTcomp.jpg
A poster presentation from First Lego League (FLL)

Due to its user friendliness towards children, Lego Mindstorms has been used as a platform for several child-oriented robotics competitions, most prominently the FIRST Lego League (FLL), but also World Robot Olympiad or Robocup Junior [38]

FIRST Lego League Challenge (founded as FIRST Lego League) is a robotics competition that uses Lego Mindstorms products. [lower-alpha 1] It was founded in 1998 concurrent with the launch of LEGO Mindstorms and continues to exist to this day. It is a collaboration between FIRST and The Lego Group to involve a lower age bracket than the FIRST Robotics Competition. [3] FLL teams consist of children between the ages of 9 and 14, and an adult coach.

See also

Notes

  1. Lego Education's SPIKE sets are also allowed. SPIKE is the only brand of robotics kits sold by Lego following the discontinuation of the Mindstorms Brand in 2022; but any generation of Lego Mindstorms can be used in FLL. [39]

Related Research Articles

leJOS is a firmware replacement for Lego Mindstorms programmable bricks. Different variants of the software support the original Robotics Invention System, the NXT, and the EV3. It includes a Java virtual machine, which allows Lego Mindstorms robots to be programmed in the Java programming language. It also includes 'iCommand.jar' which allows you to communicate via bluetooth with the original firmware of the Mindstorm. It is often used for teaching Java to first-year computer science students. The leJOS-based robot Jitter flew around on the International Space Station in December 2001.

BrickOS is an open-source operating system created by Markus Noga as firmware to operate as an alternative software environment for the Lego Mindstorms Robotic Invention System. BrickOS is the first open-source software made for Lego Mindstorms robots. It allows development using the C, C++, and Java programming languages. Programs are cross compiled using the g++ and Jack compilers, with the toolchain targeting the Hitachi H8 architecture used in Mindstorms devices.

Lego Spybotics was a Mindstorms robotics sub-series by Lego. There are four different sets, each of which includes a Spybot, a controller, a cable, and a software disc. The Spybots are color-coded, and each one has a different set of equipment attached. The software disc allows the user to program the robots and set up simulated missions for them.

Interactive C is a program which uses a modified version of ANSI C with several libraries and features that allow hobbyists to program small robotics platforms.

<span class="mw-page-title-main">Modified Modular Jack</span> Serial port connector type

The Modified Modular Jack (MMJ) is a small form-factor serial port connector developed by Digital Equipment Corporation (DEC). It uses a modified version of the 6P6C modular connector with the latch displaced off-center so standard modular connectors found on Ethernet cables or phone jacks cannot accidentally be plugged in. MMJ connections are used on Digital minicomputers, such as the PDP-11, VAX and Alpha systems, and to connect terminals, printers, and serial console servers.

<span class="mw-page-title-main">Lego Mindstorms NXT</span> Programmable robotics kit

Lego Mindstorms NXT is a programmable robotics kit released by Lego on August 2, 2006. It replaced the Robotics Invention System, the first-generation Lego Mindstorms kit. The base kit ships in two versions: the retail version and the education base set. It comes with the NXT-G programming software or the optional LabVIEW for Lego Mindstorms. A variety of unofficial languages exist, such as NXC, NBC, leJOS NXJ, and RobotC. A second-generation set, Lego Mindstorms NXT 2.0, was released on August 1, 2009, with a color sensor and other upgrades. The third-generation EV3 was released in September 2013.

<span class="mw-page-title-main">Webots</span> Open-source robot simulator

Webots is a free and open-source 3D robot simulator used in industry, education and research.

DialogOS is a graphical programming environment to design computer system which can converse through voice with the user. Dialogs are clicked together in a Flowchart. DialogOS includes bindings to control Lego Mindstorms robots by voice and has bindings to SQL databases, as well as a generic plugin architecture to integrate with other types of backends.

Lego Education, formerly known as Lego Dacta, is a specialized Lego theme created for educational purposes in schools. This theme, introduced in 1999, includes a variety of sets that cater to different educational needs.[2] These sets often focus on Duplo and Technic themes and typically contain a larger quantity of blocks. By incorporating these sets into the classroom, educators can provide students with hands-on learning experiences that enhance their understanding of various subjects, from basic building concepts to advanced engineering principles.[1]

The World Robot Olympiad (WRO) is a global robotics competition for young people. The World Robot Olympiad competition uses Lego Mindstorms manufactured by LEGO Education. First held in 2004 in Singapore, it now attracts more than 28,000 teams from more than 85 countries.

<span class="mw-page-title-main">For Inspiration and Recognition of Science and Technology</span> Engineering societies based in the United States

For Inspiration and Recognition of Science and Technology (FIRST) is an international youth organization that operates the FIRST Robotics Competition, FIRST LEGO League Challenge, FIRST LEGO League Explore, FIRST LEGO League Discover, and FIRST Tech Challenge competitions. Founded by Dean Kamen and Woodie Flowers in 1989, its expressed goal is to develop ways to inspire students in engineering and technology fields. Its philosophy is expressed by the organization as Coopertition and Gracious Professionalism. FIRST also operates FIRST Place, a research facility at FIRST Headquarters in Manchester, New Hampshire, where it holds educational programs and day camps for students and teachers.

Dexter Industries is a company that designs robots for education, research, and personal use. The company makes several products that expand the LEGO Mindstorms, Raspberry Pi, and Arduino prototype systems.

<span class="mw-page-title-main">Po Leung Kuk Tang Yuk Tien College</span> Grammar school in Hong Kong

Po Leung Kuk Tang Yuk Tien College was opened on 1 September 1987. It is the 8th English College of Po Leung Kuk.

<span class="mw-page-title-main">Tetrix Robotics Kit</span>

TETRIX Robotics consists of two robotic kits by Pitsco Education. The two sets are the TETRIX MAX building system and the TETRIX PRIME building system. They are intended to be used as educational robotics and for competitions such as the FIRST Tech Challenge.

<span class="mw-page-title-main">Lego Mindstorms EV3</span> Programmable robotics kit

LEGO Mindstorms EV3 is the third generation robotics kit in LEGO's Mindstorms line. It is the successor to the second generation LEGO Mindstorms NXT kit. The "EV" designation refers to the "evolution" of the Mindstorms product line. "3" refers to the fact that it is the third generation of computer modules - first was the RCX and the second is the NXT. It was officially announced on January 4, 2013, and was released in stores on September 1, 2013. The education edition was released on August 1, 2013. There are many competitions using this set, including the FIRST LEGO League Challenge and the World Robot Olympiad, sponsored by LEGO.

Braigo is a Braille printer design. Braigo version 1.0 uses a Lego Mindstorms EV3 kit, which includes a microprocessor with assorted components such as electric motors, sensors and actuators. Braigo v1.0 was designed by 13-year-old Shubham Banerjee in January 2014, as an entry in 7th grade school science fair project. The model was based on the PLOTT3R, a bonus model released with the EV3 kit and originally designed by Ralph Hempel. The cost was said to be about US$350 or 250 Euros for the Lego Mindstorms EV3 kit and some extra commonly used hardware whereas a conventional Braille printer retails starting from about $1,900.

Open Roberta is a project within the German education initiative "Roberta – Learning with robots", initiated by Fraunhofer IAIS, which is an institute belonging to the Fraunhofer Society. With Open Roberta Fraunhofer IAIS is looking to encourage children to code by using robots such as Lego Mindstorms, and other programmable hardware systems such as Arduino, BBC micro:bit, and the Calliope mini. The Cloud-approach of the Open Roberta Lab is intended to simplify programming concepts and make it easier for teachers and schools to teach how to code. Open Roberta is free and does not require any installation. The project was initially founded with €1m by Google.org. Users from up to 120 countries now access the platform.

<span class="mw-page-title-main">RoboBlockly</span>

RoboBlockly is a web-based robot simulation environment for learning coding and math. Based on Blockly, it uses a simple puzzle-piece interface to program virtual Linkbot, Lego Mindstorms NXT and EV3, as well as to draw and animate for beginners to learn robotics, coding, math, science, and art. Blocks in RoboBlockly can be executed in debug mode step-by-step. All math activities in RoboBlockly are Common Core State Standards Mathematics compliant.

References

  1. "Lego is discontinuing Mindstorms in 2022". Brick Fanatics. 26 October 2022. Retrieved 26 October 2022.
  2. 1 2 3 Heiseldal, Are (16 November 2022). "Tormod Askildsen: One Last Chat with LEGO's AFOL Advocate". brickner.com. Brick Nerd. Retrieved 5 November 2023.
  3. 1 2 3 4 5 6 Oliver, David; Roos, Johnathan (2003). "Dealing with the unexpected: Critical incidents in the Lego Mindstorms team". Human Relations. 56 (9): 1057–1082. doi:10.1177/0018726703569002. S2CID   145417935. Archived from the original on 27 January 2021. Retrieved 26 March 2019.
  4. 1 2 3 4 5 6 7 "Going for Gold: The Story of the Golden RCX and NXT". Bricknerd.com. 9 September 2021. Retrieved 23 October 2023.
  5. 1 2 3 4 5 6 7 Beland, Cristopher (15 December 2000). Lego Mindstorms: The Structure of an Engineering (R)evolution (conference paper). Docket 6.399J Structure of Engineering Revolutions. Archived from the original on 27 January 2021. Retrieved 25 March 2019.
  6. 1 2 3 4 5 6 7 8 9 10 11 12 Robertson, David (2013). Brick by Brick: How Lego rewrote the rules of innovation and conquered the global toy industry. United States: Crown Publishing. pp. 184–185. ISBN   9780307951618. Archived from the original on 29 November 2020. Retrieved 27 January 2021.
  7. 1 2 3 4 Askildsen, Tormod (4 December 2018). "Lego Mindstorms reflections – What happened before the announcement in January 1998". lan.Lego.com. The Lego Group. Archived from the original on 26 March 2019. Retrieved 26 March 2019.
  8. "To Mindstorms and Beyond: Evolution of a Construction Kit for Magical Machines" (PDF). MIT Media Laboratory. Archived (PDF) from the original on 22 August 2017. Retrieved 15 December 2017.
  9. Hocker, Matt (3 February 2020). "A History of Lego Education, Part 3: Mindstorms over matter [Feature]". The Brothers Brick. Retrieved 15 August 2021.
  10. "Retailers Brace for Overwhelming Consumer Demand for Lego Mindstorms Robotics Invention System" (Press release). Enfield, Connecticut: The Lego Group. 26 August 1998. Archived from the original on 6 December 1998. Retrieved 3 July 2022.
    "Lego Mindstorms announced today that the very first units...will arrive...during the first week of September."
  11. The exact number of sets in the first production run varies between sources
  12. "3804: Robotics Invention System V2.0". Brickset.com. n.d. Retrieved 23 October 2023.
  13. "3804: Robotics Invention System V2.0". Brickset.com. n.d. Retrieved 23 October 2023.
  14. Kekoa Proudfoot (1999). "RCX Internals". mralligator.com. Archived from the original on 11 November 2018. Retrieved 14 December 2018.
  15. "DSC03489.jpg". flickr.com. 20 November 2008. Archived from the original on 17 November 2016. Retrieved 4 April 2018.
  16. "Peeron Lego Inventories - Lego Product 70931: Electric Train Speed Regulator 9V Power Adaptor for 120v 60Hz - US version (Years: 1991 thru 2004)". peeron.com. Peeron Lego Inventories. Retrieved 10 October 2021.
  17. "Peeron Lego Inventories - Lego Product 70938: Electric Train Speed Regulator 9V Power Adaptor for 230v 50Hz - European version (Years: 1991 thru 1996)". peeron.com. Peeron Lego Inventories. Retrieved 10 October 2021.
  18. "Peeron Lego Inventories - Lego Product 884: Electric Mindstorms RCX - Complete Assembly (Years: 1998 thru 2003)". peeron.com. Peeron Lego Inventories. Retrieved 10 October 2021.
  19. "Lego RCX presentation - Clark Wood - BrickCon 2013". cementhorizon.com. BrickCon. Retrieved 10 October 2021.
  20. "FIRST Lego League Programming and Design Suggestions - Power". boardsailor.com. The Los Altos Robotics Community. Retrieved 10 October 2021.
  21. "Lego Mindstorms Internals". crynwr.com. Crynwr Software. Retrieved 10 October 2021.
  22. "Robotics Discovery Set: Info for Hackers". 10 February 2001. Archived from the original on 10 February 2001.
  23. "What's NXT? Lego Group Unveils Lego Mindstorms NXT Robotics Toolset at Consumer Electronics Show". Press Release. LAS VEGAS: Lego Company. 4 January 1986. Archived from the original on 8 July 2009. Retrieved 3 December 2008.
  24. "Lego Robotics FAQ". 2009. Archived from the original on 8 August 2010. Retrieved 2 March 2010.
  25. "EV3-Overview". Archived from the original on 24 June 2013.
  26. Crook, Jordan (7 January 2013). "Lego Mindstorms EV3: The Better, Faster, Stronger Generation of Robotic Programming". TechCrunch. Archived from the original on 23 October 2017. Retrieved 22 May 2015.
  27. "A new hands-on learning approach for classrooms, announced today". www.lego.com. 11 September 2019. Archived from the original on 10 August 2020. Retrieved 8 January 2021.
  28. "Lego Education SPIKE Prime Set 45678 | Lego Education | Buy online at the Official Lego Shop US". www.lego.com. Archived from the original on 3 December 2020. Retrieved 8 January 2021.
  29. "gpdaniels/spike-prime". 25 January 2021. Archived from the original on 25 December 2020. Retrieved 8 January 2021 via GitHub.
  30. Porter, Jon (15 June 2020). "Lego's new Mindstorms kit lets kids build their own walking, talking robots". The Verge . Retrieved 7 September 2021.
  31. "New Lego Mindstorms Robot Inventor lets creators build and bring to life anything they can imagine". www.lego.com. 15 June 2020. Archived from the original on 15 January 2021. Retrieved 8 January 2021.
  32. "LEGO Mindstorms to be discontinued". 26 October 2022.
  33. "CoderZ, an online learning environment for Mindstorms robotics". www.thenxtstep.com. Archived from the original on 14 June 2017. Retrieved 30 May 2017.
  34. "The MIT Programmable Brick". Epistemology and Learning Group. Massachusetts Institute of Technology. 13 February 1998. Archived from the original on 25 October 2005. Retrieved 1 October 2013.
  35. "Programmable Bricks". Projects. MIT Media Lab. Archived from the original on 21 October 2013. Retrieved 3 December 2008.
  36. Erwin, Ben; Cyr, Martha; Rogers, Chris (2000). "Lego Engineer and RoboLab: Teaching Engineering with LabVIEW from Kindergarten to Graduate School" (PDF). International Journal of Engineering Education. 16 (3): 181–192. Archived (PDF) from the original on 23 September 2013. Retrieved 1 October 2013. For the past 6 years, faculty members at Tufts University have developed two different software packages between LabVIEW and Lego data acquisition systems. These packages allow us to teach engineering with both Lego bricks and LabVIEW to students from 5 to 50 years old. The versatility of the hardware and software allow a wide variety of possibilities in what students can build and program, from robots and remote sensing devices to kinetic sculptures. As students design and build their projects, they are motivated to learn the math and science needed to optimize their project. Both college students and kindergartners respond to this motivator. In the paper, we explain how we designed software to complement these projects in allowing automation and animation. The software uses LabVIEW, extending its capabilities to kindergartners and Lego bricks. Finally, we will show how we have used LabVIEW and Lego data acquisition to teach elementary school science, freshman engineering, instrumentation and experimentation, and how college seniors and graduate students have used both the hardware and software to solve various data acquisition problems
  37. Lund, Henrik Hautop; Pagliarini, Luigi. "RoboCup Jr. with LEGO Mindstorms" (PDF). Proceedings of International Conference on Robotics and Automation (ICRA2000), New Jersey: IEEE Press, 2000. Retrieved 9 July 2013.
  38. "Technical Resources". FIRST Inspires. FIRST. 19 October 2015. Retrieved 5 November 2023.

Further reading