Skip to content
Joel Bender edited this page Feb 20, 2018 · 20 revisions

Release Notes

0.17.0

This release contains a number of new features that will break existing code.

New ListOf Classes

Change SequenceOf to ListOf for property definitions and values

The object class definitions started out being generated from the ASN.1 descriptions of objects in Annex C which has since been deleted. That notation used forms like this:

    active-vt-sessions    [5] SEQUENCE OF BACnetVTSession OPTIONAL,

which were translated into BACpypes definitions like this:

    OptionalProperty('activeVtSessions', SequenceOf(VTSession))

But the standard changed to definitions like this (and no longer in an Annex):

    Active_VT_Sessions    BACnetLIST of BACnetVTSession

So BACpypes now uses definitions like this:

    OptionalProperty('activeVtSessions', ListOf(VTSession))

New RouterInfoCache

No change to BACpypes applications unless NetworkServiceAccessPoint has been subclassed

The network service layer consisting of NetworkAdapter, NetworkServiceAccessPoint, and the NetworkServiceElement had no mechanism for a BACpypes application to provide the address of a router, all of the path information it gathered by inspecting upstream packets. It also did not suspend application layer requests to try and find a path, it simply broadcast the request, which is incorrect.

There is a new RouterInfoCache class that can be subclassed and provided to the network layer and it is similar to the DeviceInfoCache at the application layer. A well-known set of functions are called for finding out routing paths for downstream packets and updating paths for upstream packets.

There is a queue of APDU's waiting path discovery in pending_nets. It has not been determined to signal "no path" back to the application when the discovery process times out.

0.16.7

This is a long line of text.

Sidebar items:

Clone this wiki locally