Skip to content

Apache PLC4X 0.10.0

Compare
Choose a tag to compare
@sruehl sruehl released this 24 Oct 09:35
· 2726 commits to develop since this release

A lot of the work in this version went into refactoring and
cleaning up our code generation. The code generation itself is
now a lot cleaner and simpler as well as the code generated
for Java. We also added a number of new field-types to allow
implementing more sophisticated protocols. PLC4C now should
also support all of the constructs mspec has to offer.

New Features

  • Implemented a PLC4X-Server and PLC4X-Driver that allows
    using the server as a proxy for communicating with PLCs.
  • The Modbus driver is now also available in the variants:
    "modbus-rtu" and "modbus-ascii" (Both using Serial
    communication, which however can be tunneled through a
    "tcp" and "udp" transport)
  • The KNX driver in Java now supports reading "knxproj" files
    exported from the new ETS version 6.

Incompatible changes

  • The name of the Modbus TCP driver was changed from "modbus"
    to "modbus-tcp".
  • Removed the Apache Edgent (incubating) integration and
    examples related, as Edgent is abandoned and there were
    CVEs reported, which will not be fixed.
  • We have replaced the BitString types with BYTE, WORD, DWORD,
    and LWORD which generally match their unsigned integer
    counterparts. So we are no longer returning lists of boolean
    values for any of these types.

Bug Fixes

  • Fixed a big bug in the KNX Datapoint decoding, which caused
    byte-aligned data types to parse with an offset of 8 bit.
    (This bug affected both the Java and the Go driver)