-
Notifications
You must be signed in to change notification settings - Fork 218
Eclipse Dev Environment
The only thing that is necessary to create a VOLTTRON agent is a text editor and the shell. However, we have found the Eclipse Development Environment (IDE) to be a valuable tool for helping to develop VOLTTRON agents. You can obtain the latest (MARS as fo 10/7/15) from http://www.eclipse.org/. Once downloaded the PyDev Plugin is a valuable tool for executing the platform as well as debugging agent code.
- Install PyDev Plugin
- Clone the VOLTTRON Source
- Build VOLTTRON
- Link Eclipse to VOLTTRON Python Environment
- Make Project a PyDev Project
- Testing the Installation
Installing the PyDev plugin from the Eclipse Market place There is a python plugin for eclipse that makes development much easier. Install it from the eclipse marketplace.
The VOLTTRON code is stored in a git repository. Eclipse (Luna and Mars) come with a git plugin out of the box. For other versions the plugin is available for Eclipse that makes development more convenient (note: you must have Git [already installed](VOLTTRON Prerequisites "wikilink") on the system and have built VOLTTRON):
If your version of Eclipse does not have the marketplace follow these instructions.
The project can now be checked out from the repository into Eclipse.
-
Open the Git view
-
Clone a Git Repository
-
Fill out the URI: https://github.com/VOLTTRON/volttron
-
Select 3.x branch for latest release (master for latest stable version)
-
Import the cloned repository as a general project
-
Pick a project name (default volttron) and hit Finish
-
Switch to the PyDev perspective
Continue the setup process by opening a command shell. Make the current directory the root of your cloned VOLTTRON directory. Follow the instructions in our Building VOLTTRON section of the wiki and then continue below.
From the Eclipse IDE right click on the project name and select Refresh so eclipse will be aware of the file system changes. The next step will define the python version that PyDev will use for VOLTTRON
-
Choose Window - > Preferences
-
Expand the PyDev tree
-
Select Interpreters - > Python Interpreter
-
Click New
-
Click Browse and browse to the pydev-python file located in scripts directory off of the volttron source
-
Click Ok
-
Select All, then uncheck the VOLTTRON root like the picture below
-
Click Ok
- You may need redo this stage after platform updates
- In the Project/PackageExplorer view on the left, right-click on the project, PyDev-> Set as PyDev Project
- Switch to the PyDev perspective (if it has not already switched), Window -> Open Perspective -> PyDev
Eclipse should now be configured to use the project's environment.
In order to test the installation the VOLTTRON platform must be running. You can do this either through the shell or through Eclipse.
- Setup a run configuration for the platform
- In the Package Explorer view, open the env/bin folder
- Create a new Run Configuration
- On the menu bar, pick Run -> Run Configurations...
- Create a new configuration and choose env/bin/volttron for the Main Module
- Click on the Argument tab
- Change Working Directory to Default
- Click Run, this launches the platform. If the run does not succeed, click the all stop icon (two red boxes overlaid) on the console and then retry.
- Setup a run configuration for the ListenerAgent
- In the Package Explorer view, open Agents -> ListenerAgent --> listener
- Righ-click on agent.py and select Run As -> Python Run (this will create a run configuration but fail)
- On the menu bar, pick Run -> Run Configurations...
- Under Python Run pick "volttron agent.py"
- Click on the Arguments tab
- Change Working Directory to Default
- In the Environment tab, add
- AGENT_CONFIG = /home/<USER>/git/volttron/Agents/ListenerAgent/config
- AGENT_PUB_ADDR = ipc:///home/<USER>/.volttron/run/publish
- AGENT_SUB_ADDR = ipc:///home/<USER>/.volttron/run/subscribe
- Click Run, this launches the agent
- You should see the agent start to publish and receive its own heartbeat message
- Platform Agent
- VOLTTRON Central Agent
- Platform Commands
- Platform Configuration
- [Platform Hardening Security Recommendations] (Linux-Platform-Hardening-Recommendations-for-VOLTTRON-users)
- ...
- [Building VOLTTRON] (Building-VOLTTRON)
- Example Agents
- Agent Development
- [Shortcut Scripts] (Scripts)
- [VOLTTRON Conventions] (Conventions)
- [sMAP Test Server] (sMAP-Test-Instance)
- [Design Discussions] (Design Discussions)
- VIP
- VIP - VOLTTRON Interconnect Protocol
- RPC by example
- VIP - Known Identities
- VIP - Authentication
- VIP - Authorization
- Protecting Pub/Sub Topics
- Setup Eclipse for VOLTTRON
- Deployment Walkthrough
- Forward Historian Walkthrough
- [Create New Historian Agent] (Developing-Historian-Agents)
- [Create New Driver Agent] (Develop-Driver-Agent)
- [Developing With Eclipse] (Eclipse)
- Migrations
- [2.x to 3.x Migration](2.x-to 3.x-Migration)
- 1.2 to 2.0 Migration
- [Deployment Recommendations](Recommendations for Deployments)
VOLTTRON Versions and Features
Transactional Network Platform Overview
- Established Topics
- Working with the Actuator Agent
- Logging
- [Multi-Node Communication] (MultiBuildingMessaging)
Information Exchange Standards