BACnet Global Group Object

The BACnet Global Group object (Clause 12.50) collects properties from objects across multiple devices into one readable set

What the Global Group Object Is

The Global Group object, defined in Clause 12.50 of ANSI/ASHRAE 135-2024, gathers a set of properties from objects that may live on other devices and presents them as one readable collection. It is like a Group that reaches across the network: where a Group bundles points inside a single BACnet device, a Global Group bundles points from many devices into one place a client can read.

Group_Members names the remote object properties, and Present_Value returns their collected values. Because the members are elsewhere, the Global Group also tracks how current its collected values are through Update_Interval and the COV (Change of Value) resubscription properties, and it rolls the members’ health up into Member_Status_Flags. When it supports intrinsic reporting the Global Group applies the CHANGE_OF_STATUS_FLAGS event algorithm, alarming through the event notification services when a member’s status flags change.

Where You’ll See It

  • Cross-device dashboards. A supervisory controller assembles key points from several field controllers into one Global Group a workstation reads in a single request.
  • Roll-up monitoring. Member_Status_Flags summarizes the health of every collected point, so one read shows whether anything in the set is in alarm or fault.
  • Efficient distribution. The Global Group subscribes for COV on its remote members and can push its own combined updates to recipients, sparing the head end (the central BMS server) from polling each device separately.

Required Properties

Clause 12.50 requires every Global Group object to provide these properties. Datatypes are the spec’s names: Unsigned is an integer, BOOLEAN a true/false flag, and the BACnet-prefixed types are structured values defined by the standard.

PropertyDatatypeWhat it holds
Object_IdentifierBACnetObjectIdentifierThe object’s type and instance number, unique within the device
Object_NameCharacterStringThe human-readable point name, unique within the device
Object_TypeBACnetObjectTypeAlways global-group for this object
Group_MembersBACnetARRAY[N] of BACnetDeviceObjectPropertyReferenceThe remote object properties collected by this group
Present_ValueBACnetARRAY[N] of BACnetPropertyAccessResultThe collected values of the group members
Status_FlagsBACnetStatusFlagsFour health flags for the object itself: in-alarm, fault, overridden, out-of-service
Event_StateBACnetEventStateThe object’s current event state (normal or off-normal for status-flag reporting)
Member_Status_FlagsBACnetStatusFlagsThe combined health flags rolled up from all members
Out_of_ServiceBOOLEANWhen true, Present_Value is decoupled from the members for testing and override
Property_ListBACnetARRAY[N] of BACnetPropertyIdentifierThe list of properties this instance actually implements

Optional Properties

The properties integrators meet most are Group_Member_Names (labels for the collected points), Update_Interval / Requested_Update_Interval (how fresh the values are kept), and the COV-resubscription pair. The intrinsic-reporting group generally appears or is absent as a set.

PropertyDatatypeGroup
DescriptionCharacterStringGeneral
Group_Member_NamesBACnetARRAY[N] of CharacterStringGroup members
Update_IntervalUnsignedGroup members
Requested_Update_IntervalUnsignedGroup members
COV_Resubscription_IntervalUnsignedCOV reporting
Client_COV_IncrementBACnetClientCOVCOV reporting
COVU_PeriodUnsignedCOV reporting
COVU_RecipientsBACnetLIST of BACnetRecipientCOV reporting
Time_DelayUnsignedIntrinsic reporting
Notification_ClassUnsignedIntrinsic reporting
Event_EnableBACnetEventTransitionBitsIntrinsic reporting
Acked_TransitionsBACnetEventTransitionBitsIntrinsic reporting
Notify_TypeBACnetNotifyTypeIntrinsic reporting
Event_Time_StampsBACnetARRAY[3] of BACnetTimeStampIntrinsic reporting
Event_Message_TextsBACnetARRAY[3] of CharacterStringIntrinsic reporting
Event_Message_Texts_ConfigBACnetARRAY[3] of CharacterStringIntrinsic reporting
Event_Detection_EnableBOOLEANIntrinsic reporting
Event_Algorithm_Inhibit_RefBACnetObjectPropertyReferenceIntrinsic reporting
Event_Algorithm_InhibitBOOLEANIntrinsic reporting
Time_Delay_NormalUnsignedIntrinsic reporting
ReliabilityBACnetReliabilityFault detection
Reliability_Evaluation_InhibitBOOLEANFault detection
Audit_LevelBACnetAuditLevelAuditing
Auditable_OperationsBACnetAuditOperationFlagsAuditing
TagsBACnetARRAY[N] of BACnetNameValueTagging and profile
Profile_LocationCharacterStringTagging and profile
Profile_NameCharacterStringTagging and profile
  • Group: the same read-shortcut idea confined to objects within one device.
  • Structured View: organizes objects into a navigable hierarchy rather than collecting their values.
  • Notification Class: routes the CHANGE_OF_STATUS_FLAGS notification a Global Group can raise.

What Chipkin Provides

The Global Group object is a first-class object type in the CAS BACnet Stack, modeled with its member array and combined read. Talk to us about modeling your device’s points.