Skip to content

Add support for LocalEV3 #771

@jabrena

Description

@jabrena

Steps:

  • Identify Interfaces & classes from LeJOS
  • Implement a prototype
  • Implement a stable solution
  • Develop tests
  • Move to LeJOS commons the missing interfaces & classes
  • Review on internet the majority of Use cases from Users
  • Review how to include the concept about BrickPi

Motivation:

Many users use the library to build software for robots in Mindstorms ecosystem, but in order to go further with the idea to have robots based on multiple bricks, it is necessary to implement the concept about LocalEV3.

In LeJOS ecosystem, LocalEV3 is a recent concept appeared in EV3:
http://www.lejos.org/ev3/docs/lejos/hardware/ev3/LocalEV3.html

Note: If you are going to use only one Brick, you could use directly the objects that you need to use in your program, but if you are going to use Remote capabilities, RemoveEV3 is necessary. In order to begin that journey, it is necessary to provide a LocalEV3 support.

Some examples using LocalEV3

Brick brick = BrickFinder.getLocal();
Audio sound = brick.getAudio();
sound.systemSound(0);

RegulatedMotor left = new EV3LargeRegulatedMotor(brick.getPort("B"));
RegulatedMotor right = new EV3LargeRegulatedMotor(brick.getPort("C"));

// get a port instance
Port port = LocalEV3.get().getPort("S2");

// Get an instance of the Ultrasonic EV3 sensor
EV3UltrasonicSensor sensor = new EV3UltrasonicSensor(port);

GraphicsLCD g = LocalEV3.get (). GetGraphicsLCD ();

BrickInfo[] bricks = BrickFinder.discover();

for(BrickInfo info: bricks) {
   Brick brick = new RemoteEV3(info.getIPAddress());
   brick.getAudio().systemSound(0);
}

Article:
https://sourceforge.net/p/lejos/wiki/Remote%20access%20to%20an%20EV3/

Related issue:
#524

References:

Brick Capabilities:

Wifi capabilities:


Offtopic examples:


Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions