The Eclipse VOLTTRON 11 Release Candidate is a major refactor of modular VOLTTRON to make message bus, authentication and authorization features pluggable/customizable. Because of the nature of this refactor, this version is backward incompatible with previous versions of VOLTTRON. This release is compatible with python 3.10. We will shortly be making a new release to move development to 3.11 and 3.12.
New Features and improvements
- In this version of modular VOLTTRON, we have refactored VOLTTRON 10.0.5rc4 into three logical code bases - volttron-core, volttron-lib-auth, and volttron-lib-zmq. This enables users to easily customize/replace the message bus and authentication/authorization implementation used with VOLTTRON.
- Redesign of authentication and authorization:
- Authentication and Authorization are separated into distinct components with customizable persistence layer
- Redesigned authorization for both RPC exported methods and message bus topics.
- Authorization rules can now be applied to individual instance of agents
- Authorization rules are no longer a part of source code of an agent
- Authorization rules are defined for specific >vipid<.>methodname< instead of definition based on arbitrary capability strings
- Pubsub topics can now be both read and write protected
- New vctl authz command to add and remove authorization entries
- Driver Redesign
- Optimized tree-based data model allowing for
- Storage of last known values.
- Metadata about points and devices.
- Improved Poll Scheduling, which:
- Allows point-level trending.
- Permits configuration of un-polled points.
- Automatically spreads polls evenly throughout the available period.
- Improves polling efficiency by avoiding duplicate requests to shared remote devices.
- Validation of all configuration parameters and automatic type correction.
- Enhanced API with query based on pattern matching.
- Optimized tree-based data model allowing for
Installable Agents and Libraries
VOLTTRON is now split into multiple repositories. Each repository contains the code for individual agents or a library needed for one of the agents to do its job. See Installation Instructions for more details. The agents and libraries listed below are available to be used with the VOLTTRON 11 Release Candidate.
Main Platform
- volttron-zmq or volttron
Agents
- volttron-agent-watcher
- volttron-dnp3-outstation
- volttron-emailer
- volttron-bacnet-proxy
- volttron-platform-driver
- volttron-listener
- volttron-postgresql-historian
- volttron-sqlite-historian
- volttron-log-statistics
- volttron-sysmon
- volttron-threshold-detection
- volttron-topic-watcher
Libraries
Known Issues
https://github.com/eclipse-volttron/volttron-core/issues?q=is%3Aissue+is%3Aopen+label%3A2.0.0rc0 1. https://github.com/eclipse-volttron/volttron-core/issues?q=is%3Aissue+is%3Aopen+label%3A2.0.0rc0