Open Roberta Lab – a new way to Scratch-like programming of Lego Mindstorms EV3 robots

Open Roberta Lab or Roberta’s Open Lab, the robot lady you see in the picture, is a cloud-based Lego Mindstorms EV3 robot programming environment very similar to Scratch 2, but does not require installation on a computer. You can test your finished programs here on the simulator. To program and use the simulator, all you need is a browser and Internet access.

Open Roberta Lab - a new way to Scratch-like programming of Lego Mindstorms EV3 robots

So, let’s understand in more detail. Project Open Roberta Lab is part of the initiativeRoberta – Learning with Robots» Fraunhofer societies (Fraunhofer-Gesellschaft), a German research organization that brings together a large number of scientific institutions in Germany. In more than 10 years of existence, this initiative has allowed children to explore the world of robots and study computer science, science and technology (STEM). The goal of Open Roberta is to overcome technical and professional barriers for teachers and students.

Open Roberta Lab is a cloud platform, allowing you to use it at any time and from any device that has a browser and an Internet connection. To date, only robots can be programmed here. Lego Mindstorms EV3. The programming is graphical, which allows beginners to start programming very smoothly. The developers called the graphical programming language NEPO.

The Open Roberta Lab platform is completely free and open source. The software and developer tools are available on the Fraunhofer servers.

First acquaintance with Open Roberta Lab

Now let’s get acquainted with Roberta’s laboratory. To access it, follow this link. Here you will see an invitation, a description of what’s new in the latest version, reference links, and a quick guide. Unfortunately, Open Roberta Lab does not support the Russian language, but maybe in the future, such support will appear. Click the “Try it” button.

Open Roberta Lab Invitation

After that, you can start programming right away. To do this, drag the blocks from the panel on the left and attach them to each other, by analogy with Scratch 2. To remove a block, drag it to the trash can Mutorny bucket bottom right. In a few seconds I made a program in which the robot must wait until a red object is brought to the color sensor, after which it will travel 20 cm and stop.

Program written in NEPO language at Open Roberta Lab

Now I can immediately test my program. To do this, click on the triangle Triangle from below. As you can see, the simulation started right away: the robot is standing and waiting for the red color. The robot in the simulator is shown schematically here. Robot in Open Roberta Lab Simulator, a black line and colored rectangles are drawn on the field, an obstacle is placed. The sensor values ​​are displayed on the right.

Simulator Open Roberta Lab

In order for my program to work, I will drag the robot onto the red rectangle, after which it will see the red color and move forward.

Reading with a red color sensor in Open Roberta Lab

Registration in Open Roberta Lab and project saving

So that all the results of your work do not disappear, you need to register in the laboratory and / or enter it under your login and save the project. The user menu opens if you click on the image of a little man on the top left. To register or log in, click on “login …”.

Login to Open Roberta Lab

To log in with your username, enter your name and password here and click “OK”. If you have not registered yet, click on the “new …” link in the dialog.

Open Roberta Lab login dialog

After that, fill in the registration data and click on the “Register now” button.

Open Roberta Lab Registration Data Entry Dialog

After registration, you will immediately enter the laboratory, and the image of the little man on the right will turn green (see the picture below).

The green man means the entrance to the system Open Roberta Lab

Now in the menu “Edit” you can select the menu item “save as …” to save the project.

Menu item for saving a project in Open Roberta Lab

In the dialog that appears, enter a name for the project and click OK.

Project Name Entry Dialog in Open Roberta Lab

After that, if there are changes in the project, the menu item “Edit -> save” and the cloud cloud bottom right will become active. And in order to save, the changes will need to be clicked either on the cloud or on the menu item “Edit -> save”.

View, delete and publish projects

To open all your saved projects, select the menu “Edit -> list …”.

Menu to display the list of Open Roberta Lab projects

After that, select the desired project in the list and select an action with it. The project can be loaded for later modification (Load button), deleted (Delete button), and published (Share button).

When publishing, you will need to specify the users who will have access to your project, as well as permissions to view or edit.

Robot configuration setup

Robot designs are different for everyone, so for the program to work correctly, you need to correctly configure the robot configuration. The configuration is changed on a separate tab, see figure.

Robot configuration in Open Roberta Lab

Only robots with two driving wheels are supported, such as the EV3 drive platform. Here the diameter of the wheels (wheel diameter) and the distance between them (track width) are set. Distances are given in centimeters. Sensors and motors are also connected to the ports here. For motors, the direction of rotation is forwards or backwards, the side is left or right (side – left or right) and whether the motor is adjustable.

EV3 preparation

After the program is written and tested on the simulator, you can run it on a real EV3 robot. To do this, your EV3 Brick must have firmware installed. OpenRobertaFirmware. Firmware for Open Roberta Lab is based on leJOSso the installation process will be similar.

How to choose a memory card and how to prepare it, you can learn from the article “Programming the Lego Mindstorms EV3 robot using Scratch 2.0” in the “Preparing an SD card” section.

When the card is ready, you can download the firmware. The download link can be found on the page describing the installation process. To go to it, select the menu item “Help -> EV3 preparation” in the laboratory menu. After clicking on the link, you need to find step 1, which will contain a link to download OpenRobertaFirmware. At the time of writing, the latest firmware version is 1.4, so I downloaded the file.

EV3 Preparation Help for Open Roberta Lab

The next file you need is the Java Runtime Environment file. For firmware version 1.4 you need Oracle Java SE Embedded version 7 Update 60which you need to download from the Oracle website from here (at the time of this writing, this is a file ejre-7u60-b19-ejre-7u60-fcs-b19-linux-arm-sflt-headless-07_may_2014.tar.gz).

It should be noted here that in future versions of OpenRobertaFirmware, the version of Java SE Embedded may change. Be careful.

After the files are downloaded and the card is formatted, you can start burning the firmware. First, extract all files from the archive with the firmware to the SD card. Then copy the Java Runtime Environment file to the same place (without extracting it). Here’s what the files on your card should look like when viewed with File Explorer.

EV3 SD Card Contents for Installing OpenRobertaFirmware Firmware

Now you can start installing OpenRobertaFirmware on the memory card. Before starting installation, make sure the EV3 Brick is turned off, insert an SD card into it, and turn it on by pressing the center button. The installation process will start and take about 8 minutes. When this process completes and the EV3 Brick reboots, you will see the Open Roberta Lab menu.

Menu Open Roberta Lab

This completes the preparation of your EV3. Now, in order to work with Open Roberta Lab, you must turn on your EV3 with the SD card installed in it, prepared as described above. If you turn on the EV3 without this card, it will boot up normally and load the stock Lego firmware. So you can quickly change the platform in which you want to program.

Connecting the EV3 to a WiFi Router

In order for your EV3 to work with the Open Roberta Lab, it must be connected to the Internet via a WiFi router. Unfortunately, there is currently no other connection option available. For this purpose, you will need a compatible WiFi adapter. Open Roberta Lab developers have successfully tested the following WiFi adapters:

        • EDIMAX EW-7811UN WiFi USB Adapter, 150 Mbit/s, IEEE802.11b/g/n (preferred!)
        • ThePiHut The Pi Hut USB to WiFi Adapter
        • Netgear N150 WiFi USB Adapter WNA 1100
        • Monoprice Ultra-Mini WiFi Lan Adapter

But I think other leJOS-compatible WiFi adapters will work, see the translation of the article “Comparison of leJOS-compatible WiFi adapters”. When writing this article, I used the Netgear N150 WiFiUSB Adapter WNA 1100.

So, plug the WiFi dongle into the USB port of the EV3 Brick, move the menu so that the “WiFi” icon is in the middle. And press the center button.

WiFi menu in Open Roberta Lab firmware

The search for WiFi hotspot networks will begin.

Search for WiFi access points in Open Roberta Lab firmware

After searching for networks, a list of available WiFi routers will appear on the screen. Use the arrow buttons to move the pointer to your network and press the EV3 Center Button.

Selecting the desired WiFi router in the Open Roberta Lab firmware

Then be patient and type in your password by moving alphabetically using the arrow keys and confirming each letter by pressing the EV3’s center button. The letters U and l in the lower (7th) row indicate switching to upper (U) and lower (l) case. The x icon in the same row is the deletion of the last entered character. In the lowest (8th) row you will see the entered password. After entering the password, select the D symbol (in the 7th row) and press the EV3 Center Key.

Set password for WiFi router in Open Roberta Lab firmware

The connection to your router will begin, which will be clear from the numerous messages on the screen. When this process completes successfully, the second IP address (on the 3rd line) will be displayed on the screen, and the icon for connecting to a WiFi router will appear at the top right.

WiFi connected from Open Roberta Lab firmware

Connecting EV3 to Open Roberta Lab

To connect to Open Roberta Lab, your EV3 Brick must be connected to a WiFi router and have Internet access as described above. If this is done, move the menu so that the Open Roberta icon is in the middle of the screen and press the module’s center button.

Connecting EV3 to Open Roberta Lab

After that, you will see the key to enter the Open Roberta laboratory (in the picture it is “TUK5I459”). The key does not last long, so hurry up to the next step.

Obtaining a key to enter the Open Roberta Lab

In the laboratory, select the menu “robots -> connect …”.

Going to the EV3 connection menu in Open Roberta Lab

Type in the key that is displayed on the EV3 screen and click OK.

Key entry in Open Roberta Lab

The EV3 screen will then briefly display the message “Success!” and a short tune will play. You will then see the Open Roberta Lab menu and the Open Roberta icon will appear in the top right corner.

EV3 Robot connected to Open Roberta Lab

This will turn the EV3 icon green in the lab.

EV3 label highlighted in green

You can then run the program on your actual EV3 Robot. To do this, click on the black triangle at the bottom of the laboratory and wait a bit.

Running an EV3 program from Open Roberta Lab

By the way, after the first run, your programs will be available in the Programs menu of the EV3 Brick, from where they can be run without being connected to the lab.


So you actually got the first impression of the wonderful Open Roberta Lab cloud platform and were even able to connect your EV3 robot to it and execute your program. If you like the platform, then you can make an effort and help in its development, for example, with translation into Russian and in the creation of a Russian-speaking community. You can start from this page.

Leave a Reply