My son is interested in robotics. For me, I would like maximum flexibility for programming. For my son, I guess something simpler would be preferable so that his interest is not killed by complexity right from the start.

What are the programming languages that can be used on Lego Mindstorm EV3?

I am new to Lego Mindstorm.

6 Answers 6


With ev3dev pretty much any programming language you can run or compile for the ARM board can be used. All you really need to be able to do is read and write to a file. This is because ev3dev is based on Debian Linux and has drivers to communicate with the hardware through virtual files.

That being said, typically you will probably want to use a library which abstracts the low-level API. The following are currently well-supported.

  • Python
  • Java
  • Go
  • C++
  • C
  • Prolog
  • Vala, Genie, and other GObject-based languages
  • Rust

You can find the full list and some other 3rd-party libraries on the ev3dev Programming Languages page.


I would definitely check out EV3Dev. You find a large variety of different languages to program your Mindstorm Ev3. You can use EV3Python to program with python which might be a level-appropriate step up from the Lego programming interface.


If your son has no previous knowledge from other programming languages I suggest to start with the LEGO language called EV3-G. That's the visual one included with the EV3. As an alternative you an use the Open Roberta Project which uses a visual language too, but a slightly different one in terms of concepts.

If you want to program the EV3 by yourself you can choose between various options. There are bindings/libraries at least for C, C++, C#, Java, Python. Good mentions are MonoBrick (C#) and LeJOS (Java).

With a little bit more information about your preferences and your goals I think you can get more detailed recommendations.


There's an extension for Scratch to work with EV3 - might be worth a look.

  • kaspesla.github.io/ev3_scratch
    – chicks
    Commented Feb 23, 2017 at 1:14
  • The Scratch extension seems more focused on making controllers for your games than controlling the actual robots with scratch. Commented Nov 17, 2019 at 0:35

I know three variants:

  1. LEGO MINDSTORMS EV3 Home Edition
  2. LEGO MINDSTORMS Education EV3

Another option is Small Basic, designed for children. Download EV3Basic and get started!

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.