BACnet Date Pattern Value Object

The BACnet Date Pattern Value object (Clause 12.48) holds a date with wildcard fields that match many recurring dates, read-only or commandable.

What the Date Pattern Value Object Is

The Date Pattern Value object, defined in Clause 12.48 of ANSI/ASHRAE 135-2024, exposes a named date pattern inside a BACnet device to other devices on the network. Unlike a Date Value, which holds one specific day, a Date Pattern Value holds a date whose individual fields can carry wildcards and special values such as “even months” or “don’t care”, so the value matches many recurring dates. Examples the spec gives include “every Thursday in May of any year” or “every day in May 2009”.

A Date Pattern Value can be read-only or commandable. When it is commandable, it carries the same 16-slot priority array as an Analog Output; when it is a simple stored value, it does not. Date Pattern Value objects may optionally support intrinsic reporting for fault conditions only: they perform the first stage of reliability-evaluation, apply no standardized fault or event algorithm, and deliver notifications through the event notification services.

Where You’ll See It

  • Recurring date rules. A holiday or maintenance pattern other devices read with ReadProperty to decide whether today matches.
  • Schedule exceptions. A recurring set of special days the control logic exposes.
  • Configurable date patterns. A matching rule an operator writes to the device.

Required Properties

Clause 12.48 requires every Date Pattern Value object to provide these properties. Datatypes are the spec’s names: Date here holds a date whose fields may be wildcards, CharacterString is a text string, 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 date-pattern-value for this object
Present_ValueDateThe date pattern, with wildcard fields for matching. Read-only or commandable depending on the instance
Status_FlagsBACnetStatusFlagsFour health flags: in-alarm, fault, overridden, out-of-service
Property_ListBACnetARRAY[N] of BACnetPropertyIdentifierThe list of properties this instance actually implements

When the object is commandable, it additionally implements Priority_Array (the 16 command slots), Relinquish_Default (the fallback when all slots are Null), and Current_Command_Priority. On a simple stored Date Pattern Value these are absent. See How Commanding Works on the Analog Output page for the priority-array model.

Optional Properties

The properties integrators meet most are Description, the command-tracking group on commandable instances, and Reliability, which names the reason whenever the fault flag in Status_Flags is set. The intrinsic-reporting group generally appears or is absent as a set and, on this object, drives fault reporting only.

PropertyDatatypeGroup
DescriptionCharacterStringGeneral
Out_Of_ServiceBOOLEANGeneral
Event_StateBACnetEventStateGeneral
Priority_ArrayBACnetPriorityArrayCommanding
Relinquish_DefaultDateCommanding
Current_Command_PriorityBACnetOptionalUnsignedCommanding
Value_SourceBACnetValueSourceCommanding
Value_Source_ArrayBACnetARRAY[16] of BACnetValueSourceCommanding
Last_Command_TimeBACnetTimeStampCommanding
Command_Time_ArrayBACnetARRAY[16] of BACnetTimeStampCommanding
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
ReliabilityBACnetReliabilityFault detection
Reliability_Evaluation_InhibitBOOLEANFault detection
Audit_LevelBACnetAuditLevelAuditing
Auditable_OperationsBACnetAuditOperationFlagsAuditing
TagsBACnetARRAY[N] of BACnetNameValueTagging and profile
Profile_LocationCharacterStringTagging and profile
Profile_NameCharacterStringTagging and profile

What Chipkin Provides

The Date Pattern Value object, in both read-only and commandable forms, is a first-class object type in the CAS BACnet Stack. Talk to us about modeling your device’s points.