Appearance
VBus Data Primitives
This section describes the different VBus data primitives.
According to the VBus Protocol Specification there are currently three different versions of VBus data primitives:
Since all three primitives share the same first 6 bytes as the general VBus header, their classes all extend from the abstract Header
class.
See Header
class API for details.
Version 1 Packets
Packets are sent regularly by the controller and other attached modules to exchange information like temperatures, output and balance values, status etc.
Packets consist of a header and up to 127 frames of payload data containing 4 bytes of payload per frame.
See Packet
class API for details.
The structure of this payload is dependent on the destination address, source address and command stored in the packet header. RESOL publishes a "VBus Specification File (VSF)" which can be used to decode the payload. The Specification
class can be used to parse and use the VSF.
See Specification
class API for details.
Version 2 Datagrams
Datagrams are used to issue commands to a controller. They can be used to get or set menu parameters etc.
See Datagram
class API for details.
Version 3 Telegrams
Telegrams are used in communication between a controller and a sensor or actor. Telegrams (like Version 1 Packets) can have optional payload in frames, although Telegrams only support up to 3 frames with 7 bytes of payload per frame, providing better throughput for smaller pieces of information.
See Telegram
class API for details.
HeaderSet
The HeaderSet
class stores a set of unique Header
instances (Packet
, Datagram
and Telegram
instances). If a Header
is added but the set already contains a Header
with the same fingerprint (normally the same channel, addresses, version and command), the new Header
replaces the old one.
See HeaderSet
class API for details.