Quick Start

There are 2 contexts which you may wish to start using MyRobotLab.  They are :

  • User - someone who uses MyRobotLab on some project.  They are interested in only utilizing the current capabilities of MyRobotLab and are not interested in developing new Services.  You may develop new functionality in Python within a "User" context and do not need Eclipse or any other dependencies.
  • Developer - someone who is interested in creating new Services in  Java.  They are interested in extending the functionality of MyRobotLab.

User

  • Install Java 1.8  for your operating system
  • Download MyRobotLab in it's latest build
  • Currently you can use the GUI to change message routing and some parameters of configuration, or you may use the Jython Service to create (Python-)scripts. The Jython environment has access to nearly all functionality of MyRobotLab.
  • Check out the Tutorials for something you like, or make a request for a new tutorial.

Developer

  • Install Java 1.8or above for your operating system
  • Install Eclipse unless you have a preference "Eclipse Standard" is a great IDE
  • Start Eclipse - put in a simple directory name (no spaces or unicode characters)
  • Next Select Menu Windows->Open Perspective->Other->Git
  • Clone a Git repository

    We have 2 GitHub repos we want cloned :
     1st is https://github.com/MyRobotLab/repo.git

    Use your own GitHub credentials if you have them - they aren't necessary if you just want to clone.

    I do not usually like the "default" location it chooses - but prefer a subdirectory to my workspace.  Also click the Import all existing projects after the clone finishes

    This is the bigger repo. It includes all dependencies for all Services.  It will take a long time. I would recommend finding something else to do instead of watching the green bar.  Perhaps learn how to play the guitar ...

    Same thing now with https://github.com/MyRobotLab/myrobotlab


    It's important to put the myrobotlab in the same directory as the repo. Should looks something like this

    Switch to Java view and double-click org.myrobotlab.service.Runtime  This will bring the Runtime service into the editor. The Runtime is the first service which starts when MyRobotLab begins. It controls starting and stopping other Services.  This is the service we want to start to run MyRobotLab interactively through the Eclipse debugger.

  • PRESS F11
    This will start the debugger, which if you don't have any errors should start the Runtime service. You can switch to the debug perspective, and it should look like this.
  • It doesn't do anything and ends quite quickly. That is because there are no command line parameters and the Runtime does not know what to do.

    Add the following parameters
    Right-Click on the Runtime file and select "Debug As -> Debug Configurations"

    The -service tells which services to start and what to name them.  In this case we are going to start a SwingGui service who's name is "gui".  You can add on to this command as many services as you want.  For example -service gui SwingGui python Python  will start a GUIService named gui and a Python service named python.
     


  •  
  •  
  • Parameters Explained:
  • -service gui SwingGui  Starts a SwingGui service named "gui", you may start multiple services at once with this command parameter. It will need to follow this convention -service <serviceName> <serviceType> <serviceName> <serviceType> ....
    For example, -service gui01 SwingGui editor Jython    
    Starts a swingGui named gui01 and a Jython service named editor
  • -logLevel sets the current log4j level, other levels include (FATAL, ERROR, WARN, INFO, DEBUG)
  • -logToConsole redirects logging to the eclipse console, otherwise default behavior will be to a myrobotlab.log file
  • VM Arguments
    -Djava.library.path="libraries/native/x86.32.windows;libraries/native/x86.64.windows"  on Windows or
    -Djava.library.path="./libraries/native/x86.32.linux:./libraries/native/x86.64.linux:./libraries/native/x86.32.mac" on Linux or Mac allows MyRobotLab to use native libraries required by some of the services (e.g. OpenCV, Arduino, Joystick, etc).
    These directories are populated by the repo manager depending on what services are loaded & installed. 
  • Hit F11 on the Runtime file and you should be up and running MyRobotLab in the Eclipse debugging perspective... have fun :)

 

Optional

Script Development - ATTENTION: outdated !!! - now as well in GitHub (pyrobotlab)