EV3 Logo

Lego Mindstorms ecosystem

Using any product from Lego Mindstorms ecosystem, the student could learn the Java programming language and Robotics in an easy way. Now, it is possible to install a complete Linux distro in the third generation of Lego Mindstorms and others companies like Mindsensors & Dexter Industries has released products which interact with Sensors & Actuators from Lego Mindstorms ecosystem and that boards can use the Power of the popular board Raspberry Pi 3.

Features included in the whole project

Lego Mindstorms features

  • Regulated Motor Support
  • Unregulated Motor Support
  • Sensor Support (EV3 sensors)
  • Sounds Support
  • EV3 LCD Support

Robotics

  • OpenCV support
  • eSpeak TTS (Text to speech) support
  • LeJOS Sensor filter support
  • LeJOS local navigation stack support
  • RPLidar A1/A2 (2D Lidar) support

Platforms

  • EV3 Brick
  • BrickPi+
  • BrickPi 3
  • PiStorms

Java features

  • OpenJDK Java 11 support
  • Java profiling tools support
  • Logging support based on SLF4J
  • Support for ELK stack

IO

  • 2D Lidar
  • USB Cameras
  • IMU
  • Arduino Boards
  • USB GPS

OpenJDK 11 supported Learn Java with the latest version

Debian Stretch Learn Linux in an easy way

Supported EV3 Brick, Raspberry Pi 3 with BrickPi 3 & PiStorms. Exist multiples options to use this educational project

Evolutionary architecture

The project has in mind a modular architecture to be upgraded in the whole lifecycle of the EV3 product life.

  • Layer
  • Option
    • Platforms
    • EV3, BrickPi, BrickPi3 & PiStorms
    • OS
    • Debian Stretch
    • Runtime
    • EV3Dev
    • JVM
    • OpenJDK 11
    • Java Library
    • EV3Dev-lang-java

Getting Started

1. Read the project documentation

Review the documentation included with this project. It is the best way to start with any new technology. Read the docs

2. Review your Computer

Review if your computer has installed a Modern Java development environment. Getting Started in your computer

3. Install EV3Dev & Java in your Brick

Any Robot requires an Operating System and Java to run your projects. Follow the documentation to install EV3Dev & Java

4. Create your first project

The project provides an example project. The project include some examples and a Gradle plugin to help you in the process to deploy your program in your robot. Create your first project

        
$ git clone https://github.com/ev3dev-lang-java/template_project_gradle
$ cd template_project_gradle
$ vi config.gradle
        
      
        
// Project configuration
brick.pref {
    // Main class //
    mainClass = "example.programming.HelloWorld"

    // Brick connection parameters //
    sshHost = "10.0.0.89"
    sshUser = "robot"
    sshPassword = "maker"
}
        
      
        
public class HelloWorld {

    public static void main(final String[] args) {
        System.out.println("Hello World");
    }

}
        
      
        
$ ./gradlew testConnection
$ ./gradlew getInstaller
$ ./gradlew installJavaLibraries
$ ./gradlew clean deployRun
        
      

Stable projects

  • OpenJDK for EV3

    A custom Build of OpenJDK 9/10/11/12 for EV3, a Lego Mindstorms Brick using ARM Soft Float.

  • lejos-commons

    LeJOS interfaces & utilities

  • EV3Dev-lang-java

    Java library to interact with EV3Dev interface to manage Sensors & actuators from Lego Mindstorms ecosystem.

  • Examples

    A repository with examples to use with the library ev3dev-lang-java.

  • template-project-gradle

    A Ready to use ev3dev-lang-java project to help users with the task to begin a new project with Gradle from Scratch.