Skip to content
Version 6.1.0
Contact Us

BACnetStack_AddGroupObject

bool BACnetStack_AddGroupObject(const uint32_t deviceInstance, const uint32_t groupObjectInstance);

Creates the stack-held data for a Group object so the stack serves List_Of_Group_Members reads (and AddListElement/RemoveListElement) natively.

The only Group properties that are handled and stored by the CAS BACnet Stack are:

Callbacks are used for:

--------------------------------------------------------------------------------
Property Datatype Callback
--------------------------------------------------------------------------------
ObjectName CharacterString CallbackGetPropertyCharacterString
Description* CharacterString CallbackGetPropertyCharacterString
(*) Optional; enable it with BACnetStack_SetPropertyEnabled first.
--------------------------------------------------------------------------------

PresentValue - a BACnetLIST of ReadAccessResult, required by 135-2024 cl. 12.14.6 - is built by the stack itself from ListOfGroupMembers: one ReadAccessResult per member, carrying the read result of every property BACnetStack_AddGroupMember() referenced for that member. A member’s own property-read failure is reported as a per-property Error inside its ReadAccessResult, not a whole-read failure.

See also: BACnetStack_ObjectExists(), BACnetStack_RemoveObject()

BACnet reference: ANSI/ASHRAE 135-2024 clause 12.14 (Group Object Type).

Parameter Direction Description
deviceInstance in The device instance that owns this Group object.
groupObjectInstance in The instance of an existing Group object (add it with BACnetStack_AddObject() first). An instance with no Group object fails the call; it used to create a Group engine that served nothing.

True on success; false if the device does not exist, the Group object does not exist, the instance is 4194303 or above, memory for the Group could not be allocated, or Group support is not compiled.

Topic: Schedules, calendars, trend logs and other object configuration. Declared in CASBACnetStackDLL.h.