My child is learning programming using Scratch in school. Can she program her Mindstorms using Scratch?

  • If you are talking about the NXT, you can actually use assembly, C, or C++ to program it (see this question). I don't know about Scratch, though.
    – fouric
    Commented Mar 23, 2012 at 0:28

8 Answers 8


If you wish to program the EV3 with Scratch, then check out this project on github:


This software is a so-called helper app, that interfaces between the Scratch 2.0 offline editor and the Lego Mindstorms EV3.

The EV3 must be booted from Lejos (http://sourceforge.net/p/lejos/wiki/Home/), requires a wifi dongle and wireless setup.

The helper app will find the EV3 brick on the wireless network, and will execute commands invoked in Scratch as RMI requests on the EV3. The helper app also reports the status of the motors and sensors back to Scratch.

Below is an example program in Scratch, that allows you to control the robot with the arrow keys (after having pressed 'g'), or (after having clicked on the 'start' sprite) let the robot walk around until it meets an object that is too close, at which point it will make a left turn.

Scratch Car program

The robot itself should look something like this : Scratch Car Robot

Have fun, and let me know what you think.


No, but you can use a very similar programming language: Enchanting. (I haven't tried it yet. It was recommended by the programming instructor).


Mitch Resnick at the MIT Media Lab is the developer of both Scratch and the original Mindstorms programmable brick, and the original Mindstorms programming interface was very similar to Scratch. If you have one of the original Mindstorms Robotics Invention System sets (and a PC of the proper vintage on which to run the software) she would probably find it similar enough to use without much trouble. (I recently rejuvenated my old Mindstorms sets with a $30 laptop bought online)


Scratch for LEGO Mindstorms EV3

One way is to use the open-source online programming environment Open Roberta Lab: http://lab.open-roberta.org there is also a wiki included for detailed information. Or just google Open Roberta at wikipedia.

Everything is for free.


On macOS, it is officialy supported, with the « New LEGO® MINDSTORMS® Home pre-release software for macOS ». I guess that will soon be the case on windows 🥳


Open Roberta wiki: https://wiki.open-roberta.org

Open Roberta Community: https://groups.google.com/forum/#!forum/open-roberta

Best Thorsten

  • 1
    Thorsten - welcome and these are good suggestions. Can you elaborate a bit in your answer - for example explain what Open Roberta is, how NEPO compares to Scratch etc. that will help OP get a full answer from this site without having to jump to links that might or might not work in the future?
    – Phil B.
    Commented May 31, 2016 at 19:20
  • Open Roberta is the name of 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 kids to code by using Lego Mindstorms, a programmable robotics platform. The Cloud-approach of the Open Roberta Lab makes programming easier and minimizes the hurdles 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 $1Mio by Google.org.
    – thorsten
    Commented Jun 2, 2016 at 7:00
  • NEPO is a free open source meta programming language that can be used by students, scholars, teachers, and other interested persons in the Open Roberta Lab. NEPO is how we call our graphical programming language and its coupled hardware connection layer. NEPO uses the freely available Blockly library. In addition within NEPO there are additional functionalities and improvements have been adapted for Open Roberta. The programming paradigm of NEPO is inspired by Scratch. All infos at: en.wikipedia.org/wiki/Open_Roberta
    – thorsten
    Commented Jun 2, 2016 at 7:03

You can control an EV3 brick as it is (no added firmware) via bluetooth with Snap. This open source Snap extension can be find at: https://drive.google.com/drive/folders/0BycKtjGwKylicndOeXNkcXVlVG8

It allows you to control all the sensors in the LEGO box, the motors and the vehicle (if you need one). The documentation (and the blocks) is mostly in french :-(

All you need to make it work is Windows (7 or higher), Chrome and bluetooth (on your computer, the EV3 already has bluetooth).


Maybe also interesting for scratch users - we made a comparison between our language, called NEPO (wich is quite simular to scratch) and LEGO Mindstorms EV3 Software (EV3-G): http://roberta-home.de/en/comparisson-between-open-roberta-and-lego-mindstorms-ev3-software

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.