New Features in FREEDM 1.3 - FREEDM-DGI/FREEDM GitHub Wiki
Here's a rundown of the major changes since FREEDM 1.2.
General
- We now use Python instead of C++ for code generation, allowing the DGI to be cross-compiled onto a TS-7800. This will save tons of time. See Cross Compile Guide for TS-7800
- Timings are now specified in a configuration file instead of hardcoded; see FREEDM 1.3 Configuration. Sample configurations are provided for groups with the Arch machines at S&T, the Mamba machines at FSU, and the TS-7800.
- A utility is provided to assist with generating timings for your machine; see Configuring Timings if you have issues with the default timings.
- hostname:port strings are now used directly by the DGI to identify peers, instead of inscrutable 32-byte UUIDs.
- Internal message passing is now 5/2 times faster!
- Don't segfault if we can't connect to a peer.
Device Management
- Devices are now specified in a adapter.xml instead of in freedm.cfg; see Writing the adapter specification. (adapter.xml also replaces fpga.xml)
- The PSCAD Interface can now be used to test CRtdsAdapter; see Configuring the simulation server.
- A new device class provides easy access to the group state with the RTDS simulation; see Reading Group State From CDeviceLogger.
- Ignore commands of value 0.0 at the simulation server; this is a temporary workaround to avoid a serious race condition in the CRtdsAdapter protocol.
- Also, most of the device code has been rewritten. You probably won't notice.
Group Management
- General stability and responsiveness improvements, particularly with larger groups.
State Collection
- Fix two bugs that could cause State Collection to not work.
- Fix a bug that could cause incorrect normal values.
Load Balancing
- Don't run past its phase, stealing time from Group Management.
- The load table is now nicer.
- There are lots of known bugs with Load Balancing. This module will be a target for future development.