Shopping Cart

No products in the cart.

ASHRAE Standard 135.1 2019

$86.13

ASHRAE Standard 135.1-2019 — Method of Test for Conformance to BACnet (ANSI Approved)

Published By Publication Date Number of Pages
ASHRAE 2019 734
Guaranteed Safe Checkout
Category:

If you have any questions, feel free to reach out to our online customer service team by clicking on the bottom right corner. We’re here to assist you 24/7.
Email:[email protected]

The 2019 edition of Standard 135.1 is now available for BACnet users. It includes the tests for functionality added to Standard 135 between 2013 and 2018. Standard 135.1 defines a standard method for verifying that an implementation of the BACnet protocol provides each capability claimed in its Protocol Implementation Conformance Statement (PICS) in conformance with the BACnet standard (Standard 135). It provides a comprehensive set of procedures for verifying the correct implementation of each claimed capability, including BACnet services (as initiators, executors, or both), BACnet object-types (including both required properties and optional properties), the BACnet network layer protocol, data link options, and all special functionalities.

PDF Catalog

PDF Pages PDF Title
1 ANSI/ASHRAE Standard 135.1-2019
3 CONTENTS
6 FOREWORD
7 1. PURPOSE
2. SCOPE
3. DEFINITIONS
4. ELECTRONIC PICS FILE FORMAT
4.1 Character Encoding
8 4.2 Structure of EPICS Files
9 4.3 Character Strings
4.4 Notational Rules for Parameter Values
4.4.1 Complex Parameter Values
10 4.4.2 Specifying Limits on Parameter Values
4.5 Sections of the EPICS File
4.5.1 General Information Sections
11 4.5.2 Conformance Sections
4.5.2.1 BIBBs Supported
4.5.3 Application Services Supported
12 4.5.4 Object Types Supported
4.5.5 Data Link Layer Options
13 4.5.6 Character Sets
4.5.7 Special Functionality
4.5.8 Property Value Restrictions
14 4.5.9 Timers
4.5.10 Test Database
16 5. EPICS CONSISTENCY TESTS
18 6. CONVENTIONS FOR SPECIFYING BACnet CONFORMANCE TESTS
6.1 TCSL Components
6.1.1 Common Symbols and Characters
6.1.2 Integers
6.1.3 Text Strings
6.1.4 Enumerations
19 6.1.5 Property Identifiers
6.1.6 Service Parameters
6.1.7 Object Identifiers
6.2 TCSL Statements
6.2.1 IF Statement
20 6.2.2 REPEAT Statement
6.2.3 ERROR Statement
6.2.4 CHECK Statement
6.2.5 MAKE Statement
6.2.6 TRANSMIT Statement
22 6.2.7 RECEIVE Statement
6.2.8 WAIT Statement
6.2.9 WRITE Statement
23 6.2.10 VERIFY Statement
6.2.11 BEFORE Statement
6.2.12 WHILE Statement
24 6.2.13 READ Statement
6.3 Time Dependencies
6.3.1 Notification Fail Time
6.3.2 Internal Processing Fail Time
6.3.3 Minimum ON/OFF Fail Time
6.3.4 Schedule Evaluation Fail Time
6.3.5 External Command Fail Time
6.3.6 Program Object State Change Fail Time
25 6.3.7 Acknowledgment Fail Time
6.3.8 Default Time Delay in Test Descriptions
6.3.9 Unconfirmed Response Fail Time
6.4 BACnet References
6.5 TD Requirements
26 7. OBJECT SUPPORT TESTS
7.1 Read Support for Properties in the Test Database
7.1.1 Read Support Test Procedure
27 7.1.2 Non-documented Property Test
7.1.3 Verifying Property_List against the EPICS
28 7.2 Write Support for Properties in the Test Database
7.2.1 Functional Range Requirements for Property Values
7.2.1.1 Enumerated and Boolean Values
7.2.1.2 Unsigned Integer, Signed Integer, Real, and Double Values
7.2.1.3 Octetstrings and Characterstrings,
7.2.1.4 Bitstring
7.2.1.5 Date
7.2.1.6 Time
7.2.1.7 Constructed Datatypes
7.2.2 Write Support Test Procedure
29 7.2.3 Read-only Property Test
30 7.3 Object Functionality Tests
7.3.1 Property Tests
7.3.1.1 Out_Of_Service, Status_Flags, and Reliability Tests
32 7.3.1.2 Relinquish Default Test
33 7.3.1.3 Command Prioritization Test
34 7.3.1.4 Minimum_Off_Time
7.3.1.5 Minimum_On_Time
35 7.3.1.6 Override of Minimum Time
7.3.1.7 COV Tests
7.3.1.8 Binary Object Change of State Tests
37 7.3.1.9 Binary Object Elapsed Active Time Tests
38 7.3.1.10 Event_Enable Tests
7.3.1.10.1 Event_Enable Test for TO_OFFNORMAL, TO_NORMAL, and TO_FAULT
40 7.3.1.10.2 Event_Enable Tests for TO_NORMAL only Algorithms
42 7.3.1.11 Acked_Transitions Tests
46 7.3.1.12 Notify_Type Test
47 7.3.1.13 Limit_Enable Tests
7.3.1.13.1 Limit_Enable Test, LowLimitEnable
48 7.3.1.13.2 Limit_Enable Test, HighLimitEnable
50 7.3.1.14 Process_Identifier Tests
7.3.1.14.1 Process_Identifier Property Test
7.3.1.14.2 Recipient_List Test
51 7.3.1.15 Number_Of_States Range Test
7.3.1.16 Array Resizing Test
52 7.3.1.17 Event_Message_Texts Tests
54 7.3.1.18 Event_Message_Texts_Config Test
7.3.1.19 Event_Algorithm_Inhibit Tests
7.3.1.19.1 Event_Algorithm_Inhibit Test
56 7.3.1.19.2 Event_Algorithm_Inhibit Summarization Test
57 7.3.1.19.3 Event_Algorithm_Inhibit Acknowledgement Test
58 7.3.1.20 Event_Algorithm_Inhibit_Ref Tests
7.3.1.20.1 Event_Algorithm_Inhibit_Ref Test
7.3.1.20.2 Event_Algorithm_Inhibit Writable Test
7.3.1.21 Reliability_Evaluation_Inhibit Tests
7.3.1.21.1 Reliability_Evaluation_Inhibit Test
59 7.3.1.21.2 Reliability_Evaluation_Inhibit Summarization Test
60 7.3.1.22 Event_Detection_Enable Tests
7.3.1.22.1 Event_Detection_Enable Inhibits Event Generation
61 7.3.1.22.2 Event_Detection_Enable Inhibits FAULT
7.3.2 Object Specific Tests
7.3.2.1 Analog Input Object Tests
7.3.2.1.1 Input Tracking Test
62 7.3.2.1.2 Out_Of_Service, Status_Flags, and Reliability Tests
7.3.2.1.3 Change of Value Tests
7.3.2.1.4 Intrinsic Reporting Tests
7.3.2.2 Analog Output Object Tests
7.3.2.2.1 Output Tracking Test
7.3.2.2.2 Out_Of_Service, Status_Flags, and Reliability Tests
7.3.2.2.3 Prioritized Commands Tests
63 7.3.2.2.4 Change of Value Tests
7.3.2.2.5 Intrinsic Reporting Tests
7.3.2.3 Analog Value Object Tests
7.3.2.3.1 Out_Of_Service, Status_Flags, and Reliability Tests
7.3.2.3.2 Prioritized Commands Tests
7.3.2.3.3 Change of Value Tests
7.3.2.3.4 Intrinsic Reporting Tests
7.3.2.4 Averaging Object Tests
7.3.2.4.1 Reinitializing the Samples
64 7.3.2.4.2 Managing the Sample Window
65 7.3.2.5 Binary Input Object Tests
7.3.2.5.1 Input Tracking Test
7.3.2.5.2 Out_Of_Service, Status_Flags, and Reliability Tests
7.3.2.5.3 Polarity Property Tests
66 7.3.2.5.4 Change of State Properties Tests
7.3.2.5.5 Active Time Properties Tests
7.3.2.5.6 Intrinsic Reporting Tests
7.3.2.6 Binary Output Object Tests
7.3.2.6.1 Output Tracking Test
7.3.2.6.2 Out_Of_Service, Status_Flags, and Reliability Tests
67 7.3.2.6.3 Polarity Property Tests
7.3.2.6.4 Change of State Tests
7.3.2.6.5 Elapsed_Active_Time Properties Tests
7.3.2.6.6 Intrinsic Reporting Tests
7.3.2.6.7 Minimum On and Minimum Off Time Tests
7.3.2.6.8 Prioritized Commands Tests
68 7.3.2.7 Binary Value Object Tests
7.3.2.7.1 Out_Of_Service, Status_Flags, and Reliability Tests
7.3.2.7.2 Change of State Tests
7.3.2.7.3 Elapsed_Active_Time Properties Tests
7.3.2.7.4 Intrinsic Reporting Tests
7.3.2.7.5 Minimum On and Minimum Off Time Tests
7.3.2.7.6 Prioritized Commands Tests
7.3.2.8 Calendar Test
7.3.2.8.1 Single Date Rollover Test
69 7.3.2.8.2 Date Range Test
7.3.2.8.3 WeekNDay Test
70 7.3.2.9 Command Object Test
7.3.2.9.1 All Writes Successful with Post Delay Test
71 7.3.2.9.2 Quit on Failure Test
7.3.2.9.3 External Writes Test
72 7.3.2.9.4 Empty Action List Test
7.3.2.9.5 Action 0 Test
73 7.3.2.9.6 Action_Text Test
7.3.2.9.7 Write While In_Process is TRUE Test
74 7.3.2.9.8 Action Size Changes Action_Text Size Test
75 7.3.2.9.9 Action_Text Size Changes Action Size Test
76 7.3.2.10 Device Object Tests
7.3.2.10.1 Active_COV_Subscriptions SubscribeCOV Test
77 7.3.2.10.2 Active_COV_Subscriptions SubscribeCOVProperty Test
7.3.2.10.3 Successful increment of the Database_Revision property after creating an object
78 7.3.2.10.4 Successful increment of the Database_Revision property after deleting an object
79 7.3.2.10.5 Successful increment of the Database_Revision property after changing the Object_Name property of an object
7.3.2.10.6 Successful increment of the Database_Revision property after changing the Object_Identifier property of an object
80 7.3.2.11 Event Enrollment Object Test
7.3.2.11.1 Event_Type Test
7.3.2.12 File Object Test
7.3.2.13 Global Group Object Tests
7.3.2.13.1 Resizing Group_Member_Names by Writing Group_Members Property Test
81 7.3.2.13.2 Resizing Group_Members by Writing Group_Member_Names Property Test
83 7.3.2.14 Group Object Test
84 7.3.2.15 Life Safety Point Object Tests
7.3.2.15.1 Tracking Value Test
7.3.2.15.2 Out_Of_Service, Status_Flags, and Reliability Tests
7.3.2.15.3 Intrinsic Reporting Tests
7.3.2.15.4 Mode Tests
7.3.2.16 Life Safety Zone Object Tests
7.3.2.16.1 Tracking Value Test
7.3.2.16.2 Out_Of_Service, Status_Flags, and Reliability Tests
85 7.3.2.16.3 Intrinsic Reporting Tests
7.3.2.16.4 Mode Tests
7.3.2.17 Loop Object Test
7.3.2.17.1 Manipulated_Variable_Reference Tracking
7.3.2.17.2 Controlled_Variable_Reference Tracking
86 7.3.2.17.3 Setpoint_Reference Tracking
87 7.3.2.17.4 Intrinsic Reporting Tests
7.3.2.18 Multi-state Input Object Test
7.3.2.18.1 Out_Of_Service, Status_Flags, and Reliability Tests
7.3.2.18.2 Number_Of_States and State_Text
7.3.2.18.3 Intrinsic Reporting Tests
7.3.2.18.4 Input Tracking Test
7.3.2.18.5 Number_Of_States and State_Text Size Change Test
88 7.3.2.19 Multi-State Output Object Test
7.3.2.19.1 Out_Of_Service, Status_Flags, and Reliability Tests
89 7.3.2.19.2 Number_Of_States and State_Text
7.3.2.19.3 Prioritized Commands Tests
7.3.2.19.4 Intrinsic Reporting Tests
7.3.2.19.5 Output Tracking Test
7.3.2.19.6 Number_Of_States and State_Text Size Change Test
7.3.2.20 Multi-State Value Object Test
7.3.2.20.1 Out_Of_Service, Status_Flags, and Reliability Tests
90 7.3.2.20.2 Number_Of_States and State_Text
7.3.2.20.3 Prioritized Commands Tests
7.3.2.20.4 Intrinsic Reporting Tests
7.3.2.20.5 Number_Of_States and State_Text Size Change Test
7.3.2.21 Notification Class Object
7.3.2.21.1 Priority Tests
92 7.3.2.21.1.1 Network Priority Test
94 7.3.2.21.2 Ack_Required Tests
7.3.2.21.2.1 Ack_Required False Test
7.3.2.21.3 Recipient_List Tests
7.3.2.21.3.1 ValidDays Test
96 7.3.2.21.3.2 FromTime and ToTime Test
7.3.2.21.3.3 IssueConfirmedNotifications Test
98 7.3.2.21.3.4 Transitions Test
99 7.3.2.21.3.5 Recipient_List Property Supports Device Identifier Recipients Test
100 7.3.2.21.3.6 Recipient_List Property Supports Network Address Recipients
101 7.3.2.21.3.7 Recipient_List non-volatility test
7.3.2.21.3.8 Read-only Recipient_List with internal Notification Forwarder objects
102 7.3.2.21.3.9 Read-only Recipient_List for external Notification Forwarder Objects
7.3.2.21.3.10 Read-only Recipient_List Without Notification Forwarder Test
7.3.2.22 Program Object Tests
103 7.3.2.23 Schedule Object Tests
7.3.2.23.1 Effective_Period Test
104 7.3.2.23.2 Weekly_Schedule Property Test
105 7.3.2.23.3 Exception_Schedule Property Tests
7.3.2.23.3.1 Calendar Reference Test
7.3.2.23.3.2 Calendar Entry Date Test
106 7.3.2.23.3.3 Calendar Entry DateRange Test
107 7.3.2.23.3.4 Calendar Entry WeekNDay Month Test
108 7.3.2.23.3.5 Calendar Entry WeekNDay Week Of Month Test
7.3.2.23.3.6 Calendar Entry WeekNDay Last Week Of Month Test
109 7.3.2.23.3.7 Calendar Entry WeekNDay Day Of Week Test
110 7.3.2.23.3.8 Event Priority Test
7.3.2.23.3.9 List of BACnetTimeValue Test
111 7.3.2.23.4 Weekly_Schedule and Exception_Schedule Interaction Test
112 7.3.2.23.5 Exception_Schedule Restoration Test
7.3.2.23.6 Weekly_Schedule Restoration Test
113 7.3.2.23.7 List_Of_Object_Property_Reference Internal Test
114 7.3.2.23.8 List_Of_Object_Property_Reference External Test
115 7.3.2.23.9 Exception_Schedule Size Change Test
116 7.3.2.23.10 Schedule Object Protocol_Revision 4 Tests
7.3.2.23.10.1 Revision 4 Effective_Period Test
117 7.3.2.23.10.2 Revision 4 Weekly_Schedule Property Test
119 7.3.2.23.10.3 Revision 4 Exception_Schedule Property Tests
7.3.2.23.10.3.1 Revision 4 Calendar Reference Test
120 7.3.2.23.10.3.2 Revision 4 Calendar Entry Date Test
7.3.2.23.10.3.3 Revision 4 Calendar Entry DateRange Test
121 7.3.2.23.10.3.4 Revision 4 Calendar Entry WeekNDay Month Test
122 7.3.2.23.10.3.5 Revision 4 Calendar Entry WeekNDay Week Of Month Test
123 7.3.2.23.10.3.6 Revision 4 Calendar Entry WeekNDay Last Week Of Month Test
124 7.3.2.23.10.3.7 Revision 4 Calendar Entry WeekNDay Day Of Week Test
125 7.3.2.23.10.3.8 Revision 4 Event Priority Test
126 7.3.2.23.10.3.9 Revision 4 List of BACnetTimeValue Test
7.3.2.23.10.3.10 Revision 4 Calendar Entry WeekNDay Odd-Numbered Month Test
127 7.3.2.23.10.3.11 Revision 4 Calendar Entry WeekNDay Even-Numbered Month Test
7.3.2.23.10.3.12 Revision 4 Lower Event Priority Change Test
128 7.3.2.23.10.3.13 Revision 4 Schedule_Default Test
129 7.3.2.23.10.4 Revision 4 Weekly_Schedule and Exception_Schedule Interaction Test
130 7.3.2.23.10.5 Revision 4 Exception_Schedule Restoration Test
7.3.2.23.10.6 Revision 4 Weekly_Schedule Restoration Test
7.3.2.23.10.7 Revision 4 List_Of_Object_Property_Reference Internal Test
7.3.2.23.10.8 Revision 4 List_Of_Object_Property_Reference External Test
7.3.2.23.11 Written Datatypes Tests
7.3.2.23.11.1 Internally Written Datatypes Test, non-NULL values
131 7.3.2.23.11.2 Internally Written Datatypes Test, NULL Values and Priority_Arrays
132 7.3.2.23.11.3 Externally Written Datatypes Test, non-NULL values
133 7.3.2.23.11.4 Externally Written Datatypes Test, NULL values and Priority_Arrays
134 7.3.2.23.12 Revision 4 Midnight Evaluation Test
135 7.3.2.23.13 Forbid Duplicate Time Values
7.3.2.24 Logging Object Tests
7.3.2.24.1 Enable Test
136 7.3.2.24.2 Start_Time Test
137 7.3.2.24.3 Stop_Time Test
138 7.3.2.24.4 Log_Interval Test
7.3.2.24.5 COV_Resubscription_Interval Test
140 7.3.2.24.6 Stop_When_Full Tests
7.3.2.24.6.1 Stop_When_Full TRUE Test
7.3.2.24.6.2 Stop_When_Full FALSE Test
141 7.3.2.24.7 Buffer_Size Test
7.3.2.24.8 Record_Count Test
142 7.3.2.24.9 Total_Record_Count Test
7.3.2.24.10 Notification_Threshold Test
143 7.3.2.24.11 Notification Time Tests
144 7.3.2.24.12 COV Subscription Failure Test
145 7.3.2.24.13 Log-Status Test
146 7.3.2.24.14 Time_Change Test
147 7.3.2.24.15 COV-Sampling Verification Test
148 7.3.2.24.16 Interval Gathering of External Trends Test
7.3.2.24.17 Last_Notify_Record Test
149 7.3.2.24.18 Records_Since_Notification Test
150 7.3.2.24.19 Trigger Verification Test
7.3.2.25 Event Log Tests
7.3.2.25.1 Internal Logging of Notifications
152 7.3.2.25.2 Remote Logging of Notifications
153 7.3.2.25.3 Internal Logging of ACK_NOTIFICATIONs
154 7.3.2.25.4 Remote Logging of ACK_NOTIFICATIONs
155 7.3.2.26 Moved to 7.3.2.25.2
7.3.2.27 Moved to 7.3.2.25.3
7.3.2.28 Moved to 7.3.2.25.4
7.3.2.29 Structured View Tests
7.3.2.29.1 Subordinate_List Size Changes Subordinate_Annotations
7.3.2.29.2 Subordinate_Annotations Size Changes Subordinate_List
156 7.3.2.30 Notification Forwarder Object Tests
7.3.2.30.1 Common values and configurations used in all Notification Forwarder object tests
7.3.2.30.1.1 Values used in all Notification Forwarder object tests
157 7.3.2.30.1.2 Base setup 1 for Notification Forwarder object tests
159 7.3.2.30.1.3 Base setup 2 for Notification Forwarder object tests
160 7.3.2.30.2 Recipient_List Forwarding Test
162 7.3.2.30.3 Subscribed_Recipients Forwarding Test
163 7.3.2.30.4 Confirmed And Unconfirmed Forwarding Test
7.3.2.30.4.1 Confirmed Source And Confirmed Destination Forwarding Test
7.3.2.30.4.2 Confirmed Source And Unconfirmed Destination Forwarding Test
7.3.2.30.4.3 Unconfirmed Source And Confirmed Destination Forwarding Test
7.3.2.30.4.4 Unconfirmed Source And Unconfirmed Destination Forwarding Test
7.3.2.30.5 Character Encoding Test
164 7.3.2.30.6 Out_Of_Service Property Test
165 7.3.2.30.7 Recipient_List Property Tests
166 7.3.2.30.7.1 Destination Date Filtering Test
167 7.3.2.30.7.2 Destination Time Filtering Test
169 7.3.2.30.7.3 Process Identifier Test
7.3.2.30.7.4 Destination Transition Filtering Test
170 7.3.2.30.8 Subscribed_Recipients Property Test
7.3.2.30.8.1 Time Count Down Test
171 7.3.2.30.8.2 Expiration Test
7.3.2.30.8.3 Time Renewal Test
172 7.3.2.30.8.4 Resubscription Update Test
7.3.2.30.8.5 Delete Test
173 7.3.2.30.8.6 Subscription Of Similar Entries Test
174 7.3.2.30.9 Process_Identifier_Filter Property Test
7.3.2.30.9.1 NULL And Unsigned32 Choice Test
7.3.2.30.9.2 NULL Unfiltered Process Identifier Test
7.3.2.30.9.3 Zero Unfiltered Process Identifier Test
175 7.3.2.30.9.4 Specific Value Process Identifier Test
176 7.3.2.30.9.5 Fixed Process_Identifier_Filter Test
7.3.2.30.10 Port_Filter Test
177 7.3.2.30.11 Local_Forwarding_Only Property Tests
7.3.2.30.11.1 Only Forwards Locally When True
179 7.3.2.30.11.2 Forwards Locally And Remotely When False
181 7.3.2.30.12 Preventing endless cycling / duplication of event forwarding for the same notification
7.3.2.30.12.1 Local Broadcast To Receiving Port Restriction Test
182 7.3.2.30.12.2 Globally Broadcast Event Notification Received Restriction Test
183 7.3.2.30.12.3 Forwarding As Global Broadcast Restriction Test
184 7.3.2.30.12.4 Directed Broadcast Received Forwarding To BACnetAddress Restriction Test
185 7.3.2.30.12.5 Directed Broadcast Received Forwarding To Object Identifier Restriction Test
187 7.3.2.30.12.6 Port Restriction Test
7.3.2.30.13 Persistence Tests
7.3.2.30.13.1 Recipient_List Persistence Test
188 7.3.2.30.13.2 Subscribed_Recipients Persistence Test
7.3.2.30.14 Capacity And Range Tests
7.3.2.30.14.1 Time Remaining Range Test
189 7.3.2.30.14.2 Recipient Capacity Test
190 7.3.2.31 Alert Enrollment Tests
7.3.2.31.1 Alert Enrollment Reports The Source Object
7.3.2.31.2 Alert Enrollment Does Not Generate Acknowledgeable Transitions
192 8. APPLICATION SERVICE INITIATION TESTS
8.1 AcknowledgeAlarm Service Initiation Tests
193 8.2 ConfirmedCOVNotification Service Initiation Tests
8.2.1 Change of Value Notification from an Analog Input, Analog Output, and Analog Value Object Present_Value Property
194 8.2.2 Change of Value Notification from an Analog Input, Analog Output, and Analog Value Object Status_Flags Property
195 8.2.3 Change of Value Notification from a Binary Input, Binary Output, and Binary Value Object Present_Value Property
196 8.2.4 Change of Value Notification from a Binary Input, Binary Output, and Binary Value Object Status_Flags Property
197 8.2.5 Change of Value Notification from a Multi-state Input, Multi-state Output, Multi-state Value, Life Safety Point, or Life Safety Zone Object Present_Value Property
199 8.2.6 Change of Value Notification from a Multi-state Input, Multi-state Output Multi-state Value, Life Safety Point, and Life Safety Zone Object Status_Flags Property
200 8.2.7 Change of Value Notification from Loop Object Present_Value Property
201 8.2.8 Change of Value Notification from a Loop Object Status_Flags Property
202 8.2.9 Missing Lifetime Test
8.3 UnconfirmedCOVNotification Service Initiation Tests
8.3.1 Change of Value Notification from an Analog Input, Analog Output, and Analog Value Object Present_Value Property
203 8.3.2 Change of Value Notification from an Analog Input, Analog Output, and Analog Value Object Status_Flags Property
8.3.3 Change of Value Notification from a Binary Input, Binary Output, and Binary Value Object Present_Value Property
8.3.4 Change of Value Notification from a Binary Input, Binary Output, and Binary Value Object Status_Flags Property
8.3.5 Change of Value Notification from a Multi-state Input, Multi-state Output, Multi-state Value, Life Safety Point, and Life Safety Zone Object Present_Value Property
8.3.6 Change of Value Notification from a Multi-state Input, Multi-state Output, Multi-state Value, Life Safety Point, and Life SafetyZone Object Status_Flags Property
204 8.3.7 Change of Value Notification from Loop Object Present_Value Property
8.3.8 Change of Value Notification from a Loop Object Status_Flags Property
8.3.9 Unsubscribed Change of Value Notifications
8.3.10 Device Restart Notifications
205 8.4 ConfirmedEventNotification Service Initiation Tests
8.4.1 CHANGE_OF_BITSTRING Tests (ConfirmedEventNotification)
207 8.4.2 CHANGE_OF_STATE Tests (ConfirmedEventNotification)
209 8.4.3 CHANGE_OF_VALUE Tests (ConfirmedEventNotification)
8.4.3.1 Numerical Algorithm (ConfirmedEventNotification)
210 8.4.3.2 Bitstring Algorithm (ConfirmedEventNotification)
211 8.4.4 COMMAND_FAILURE Tests (ConfirmedEventNotification)
213 8.4.5 FLOATING_LIMIT Tests (ConfirmedEventNotification)
216 8.4.6 OUT_OF_RANGE Tests (ConfirmedEventNotification)
218 8.4.7 BUFFER_READY Tests (ConfirmedEventNotification)
219 8.4.8 CHANGE_OF_LIFE_SAFETY Tests (ConfirmedEventNotification)
8.4.8.1 NORMAL to OFFNORMAL Transition Test
220 8.4.8.2 OFFNORMAL to NORMAL Transition Test
221 8.4.8.3 NORMAL to LIFE_SAFETY_ALARM Transition Test
222 8.4.8.4 LIFE_SAFETY_ALARM to NORMAL Transition Test
224 8.4.8.5 LIFE_SAFETY_ALARM to OFFNORMAL Transition Test
225 8.4.8.6 OFFNORMAL to LIFE_SAFETY_ALARM Transition Test
226 8.4.8.7 Mode Transition Tests when Event State is Maintained
228 8.4.8.8 NORMAL to OFFNORMAL Mode Transition Test
229 8.4.8.9 OFFNORMAL to NORMAL Mode Transition Test
230 8.4.8.10 NORMAL to LIFE_SAFETY_ALARM Mode Transition Test
231 8.4.8.11 LIFE_SAFETY_ALARM to NORMAL Mode Transition Test
232 8.4.8.12 LIFE_SAFETY_ALARM to OFFNORMAL Mode Transition Test
234 8.4.8.13 OFFNORMAL to LIFE_SAFETY_ALARM Mode Transition Test
235 8.4.9 EXTENDED Tests (ConfirmedEventNotification)
236 8.4.10 DOUBLE_OUT_OF_RANGE Test (ConfirmedEventNotification)
8.4.11 SIGNED_OUT_OF_RANGE Test (ConfirmedEventNotification)
8.4.12 UNSIGNED_OUT_OF_RANGE Test (ConfirmedEventNotification)
8.4.13 CHANGE_OF_CHARACTERSTRING Test (ConfirmedEventNotification)
240 8.4.14 UNSIGNED_RANGE Test (ConfirmedEventNotification Test)
242 8.4.15 CHANGE_OF_STATUS_FLAGS Test (ConfirmedEventNotification)
243 8.4.16 Proprietary Algorithms Test (ConfirmedEventNotifications)
244 8.4.17 CHANGE_OF_RELIABILITY Tests (ConfirmedEventNotifications)
8.4.17.1 CHANGE_OF_RELIABILITY with the NONE fault Algorithm (ConfirmedEventNotifications)
8.4.17.2 CHANGE_OF_RELIABILITY with the FAULT_CHARACTERSTRING Algorithm (ConfirmedEventNotifications)
8.4.17.3 CHANGE_OF_RELIABILITY with the FAULT_EXTENDED Algorithm (ConfirmedEventNotifications)
8.4.17.4 CHANGE_OF_RELIABILITY with the FAULT_LIFE_SAFETY Algorithm (ConfirmedEventNotifications)
245 8.4.17.5 CHANGE_OF_RELIABILITY with the FAULT_STATE Algorithm (ConfirmedEventNotifications)
8.4.17.6 CHANGE_OF_RELIABILITY with the FAULT_STATUS_FLAGS Algorithm (ConfirmedEventNotifications)
8.4.17.7 CHANGE_OF_RELIABILITY for Event Enrollment Fault Condition Precedence (ConfirmedEventNotifications)
8.4.17.8 CHANGE_OF_RELIABILITY of Event Enrollment Object, Monitored Object Fault (ConfirmedEventNotifications)
246 8.4.17.9 CHANGE_OF_RELIABILITY of Event Enrollment Object Fault (ConfirmedEventNotifications)
8.4.17.10 After FAULT-to-NORMAL, Re-Notification of OFFNORMAL (ConfirmedEventNotifications)
8.4.17.11 CHANGE_OF_RELIABILITY with Internal Object Fault (ConfirmedEventNotifications)
247 8.5 UnconfirmedEventNotification Service Initiation Tests
8.5.1 CHANGE_OF_BITSTRING Tests (UnconfirmedEventNotification)
8.5.2 CHANGE_OF_STATE Tests (UnconfirmedEventNotification)
8.5.3 CHANGE_OF_VALUE Tests (UnconfirmedEventNotification)
8.5.3.1 Numerical Algorithm (UnconfirmedEventNotification)
248 8.5.3.2 Bitstring Algorithm (UnconfirmedEventNotification)
8.5.4 COMMAND_FAILURE Tests (UnconfirmedEventNotification)
8.5.5 FLOATING_LIMIT Tests (UnconfirmedEventNotification)
249 8.5.6 OUT_OF_RANGE Tests (UnconfirmedEventNotification)
8.5.7 BUFFER_READY Tests (UnconfirmedEventNotification)
8.5.8 CHANGE_OF_LIFE_SAFETY TESTS (UnconfirmedEventNotification)
8.5.8.1 NORMAL to OFFNORMAL Transition Test
8.5.8.2 OFFNORMAL to NORMAL Transition Test
8.5.8.3 NORMAL to LIFE_SAFETY_ALARM Transition Test
250 8.5.8.4 LIFE_SAFETY_ALARM to NORMAL Transition Test
8.5.8.5 LIFE_SAFETY_ALARM to OFFNORMAL Transition Test
8.5.8.6 OFFNORMAL to LIFE_SAFETY_ALARM Transition Test
8.5.8.7 Mode Transition Tests when Event State is Maintained
8.5.8.8 NORMAL to OFFNORMAL Mode Transition Test
8.5.8.9 OFFNORMAL to NORMAL Mode Transition Test
251 8.5.8.10 NORMAL to LIFE_SAFETY_ALARM Mode Transition Test
8.5.8.11 LIFE_SAFETY_ALARM to NORMAL Mode Transition Test
8.5.8.12 LIFE_SAFETY_ALARM to OFFNORMAL Mode Transition Test
8.5.8.13 OFFNORMAL to LIFE_SAFETY_ALARM Mode Transition Test
8.5.9 EXTENDED Test (UnconfirmedEventNotification)
8.5.10 DOUBLE_OUT_OF_RANGE Test (UnconfirmedEventNotification)
252 8.5.11 SIGNED_OUT_OF_RANGE Test (UnconfirmedEventNotification)
8.5.12 UNSIGNED_OUT_OF_RANGE Test (UnconfirmedEventNotification)
8.5.13 CHANGE_OF_CHARACTERSTRING Test (UnconfirmedEventNotification)
8.5.14 UNSIGNED_RANGE Test (UnconfirmedEventNotification)
8.5.15 CHANGE_OF_STATUS_FLAGS Test (UnconfirmedEventNotification)
253 8.5.16 Proprietary Algorithm Tests (UnconfirmedEventNotifications)
8.5.17 CHANGE_OF_RELIABILITY Tests
8.5.17.1 CHANGE_OF_RELIABILITY with the NONE fault Algorithm (UnconfirmedEventNotifications)
254 8.5.17.2 CHANGE_OF_RELIABILITY with the FAULT_CHARACTERSTRING Algorithm (UnconfirmedEventNotifications)
255 8.5.17.3 CHANGE_OF_RELIABILITY with the FAULT_EXTENDED Algorithm (UnconfirmedEventNotifications)
256 8.5.17.4 CHANGE_OF_RELIABILITY with the FAULT_LIFE_SAFETY Algorithm (UnconfirmedEventNotifications)
257 8.5.17.5 CHANGE_OF_RELIABILITY with the FAULT_STATE Algorithm (UnconfirmedEventNotifications)
259 8.5.17.6 CHANGE_OF_RELIABILITY with the FAULT_STATUS_FLAGS Algorithm (UnconfirmedEventNotifications)
260 8.5.17.7 CHANGE_OF_RELIABILITY for Event Enrollment Fault Condition Precedence (UnconfirmedEventNotifications)
262 8.5.17.8 CHANGE_OF_RELIABILITY of Event Enrollment Object, Monitored Object Fault (UnconfirmedEventNotifications)
264 8.5.17.9 CHANGE_OF_RELIABILITY of Event Enrollment Object Fault (UnconfirmedEventNotifications)
265 8.5.17.10 After FAULT-to-NORMAL, Re-Notification of OFFNORMAL (UnconfirmedEventNotifications)
266 8.5.17.11 CHANGE_OF_RELIABILITY with Internal Object Fault (UnconfirmedEventNotifications)
267 8.6 GetAlarmSummary Service Initiation Tests
8.6.1 Basic GetAlarmSummary Service Initiation
268 8.6.2 Updating Alarm Summary Information with GetAlarmSummary
8.7 GetEnrollmentSummary Service Initiation Tests
8.7.1 Acknowledgment Filter
8.7.2 Enrollment Filter
8.7.3 Event State Filter
269 8.7.4 Event Type Filter
8.7.5 Priority Filter
8.7.6 Notification Class Filter
8.7.7 Multiple Filters
8.8 GetEventInformation Service Initiation Tests
270 8.8.1 Without Chaining
8.8.2 With Chaining
8.8.3 Updating Alarm Summary Information with GetEventInformation Without Chaining
271 8.8.4 Updating Alarm Summary Information with GetEventInformation With Chaining
8.9 LifeSafetyOperation Service Initiation Tests
8.9.1 LifeSafetyOperation Service Initiation Tests to an Object
272 8.9.2 LifeSafetyOperation Service Initiation Tests to all Objects in a Device
8.10 SubscribeCOV Service Initiation Tests
8.10.1 Confirmed Notifications Subscription
8.10.2 Unconfirmed Notifications Subscription
8.10.3 Canceling a Subscription
273 8.10.4 Requests 8 Hour Lifetimes
8.11 SubscribeCOVProperty Service Initiation Tests
8.11.1 Confirmed Notifications Subscription
8.11.2 Unconfirmed Notifications Subscription
274 8.11.3 Canceling a Subscription
8.12 AtomicReadFile Service Initiation Tests
8.12.1 Stream Access
8.12.2 Record Access
8.13 AtomicWriteFile Service Initiation Tests
275 8.13.1 Stream Access
8.13.2 Record Access
8.14 AddListElement Service Initiation Tests
8.14.1 Non-Array Properties
8.14.2 Array Properties
276 8.15 RemoveListElement Service Initiation Tests
8.15.1 Non-Array Properties
8.15.2 Array Properties
8.16 CreateObject Service Initiation Tests
8.16.1 Creating Objects by Specifying the Object Identifier with no Initial Values
277 8.16.2 Creating Objects by Specifying the Object Type with no Initial Values
8.16.3 Creating Objects by Specifying the Object Identifier and Providing Initial Values
8.16.4 Creating Objects by Specifying the Object Type and Providing Initial Values
8.17 DeleteObject Service Initiation Tests
8.18 ReadProperty Service Initiation Tests
278 8.18.1 Reading Non-Array Properties
8.18.2 Reading an Array Element
8.18.3 Reading and Presenting Properties
279 8.18.4 Reading Whole Array Properties
8.18.5 Reading an Array Size
8.19 ReadPropertyConditional Service Initiation Tests
8.19.1 Reading Object Identifiers of Objects that Meet the Selection Criteria
280 8.19.2 Reading Specific Properties of Objects that Meet the Selection Criteria
8.20 ReadPropertyMultiple Service Initiation Tests
8.20.1 Reading a Single Property of a Single Object
8.20.2 Reading Multiple Properties of a Single Object
281 8.20.3 Reading Multiple Objects, One Property Each
8.20.4 Reading Multiple Objects, Multiple Properties for Each
8.20.5 Cases In Which ReadProperty Shall Be Used After ReadPropertyMultiple Fails
8.20.5.1 The IUT Determines the TD does not Support the ReadPropertyMultiple Service
282 8.20.5.2 Fallback to ReadProperty on Reject – UNRECOGNIZED_SERVICE Response
8.21 ReadRange Service Initiation Tests
8.21.1 Reading Values with no Specified Range
283 8.21.2 Reading Values with an Array Index
8.21.3 Reading a Range of Values by Position
8.21.4 Reading a Range of Values by Time
8.21.5 Reading a Range of Values by Time Range
8.21.6 Reading a Range of Items Using Any Valid Range in Response to ConfirmedEventNotifications of the BUFFER_READY Event Type
285 8.21.7 Reading a Range of Items Using Any Valid Range in Response to UnconfirmedEventNotifications of the BUFFER_READY Event Type
8.21.8 Reading a Range of Items Using Any Valid Range
286 8.21.9 Presents Log Records Containing a Specific Datatype
8.22 WriteProperty Service Initiation Tests
8.22.1 Writing Non-Array Properties
8.22.2 Writing Array Properties
287 8.22.3 Writing Commandable Properties
8.22.4 Accepting Input and Modifying Properties
8.22.5 Accepting Input and Commanding/Relinquishing Properties
288 8.22.6 Writing An Array Size
8.23 WritePropertyMultiple Service Initiation Tests
8.23.1 Writing a Single Property of a Single Object
289 8.23.2 Writing Multiple Properties of a Single Object
8.23.3 Writing Multiple Objects, One Property Each
8.23.4 Writing Multiple Objects, Multiple Properties for Each
290 8.23.5 Writing Array Properties
8.23.6 Writing Commandable Properties
291 8.24 DeviceCommunicationControl Service Initiation Tests
8.24.1 Indefinite Duration, Disable, No Password
8.24.2 Indefinite Duration, Disable, Password
8.24.3 Time Duration, Disable, Password
8.24.4 Enable, Password
8.24.5 Enable, No Password
292 8.24.6 Time Duration, Disable, No Password
8.24.7 Time Duration, Disable-Initiation, Password
8.25 ConfirmedPrivateTransfer Service Initiation Test
8.26 UnconfirmedPrivateTransfer Service Initiation Test
293 8.27 ReinitializeDevice Service Initiation Tests
8.27.1 COLDSTART with no Password
8.27.2 COLDSTART with a Password
8.27.3 WARMSTART with no Password
8.27.4 WARMSTART with a Password
8.28 ConfirmedTextMessage Service Initiation Tests
294 8.28.1 Text Message with no Message Class
8.28.2 Text Message with an Unsigned Message Class
8.28.3 Text Message with a CharacterString Message Class
8.28.4 Text Message with an Urgent Priority
8.29 UnconfirmedTextMessage Service Initiation Tests
295 8.29.1 Text Message with no Message Class
8.29.2 Text Message with an Unsigned Message Class
8.29.3 Text Message with a CharacterString Message Class
8.29.4 Text Message with an Urgent Priority
8.30 TimeSynchronization Service Initiation Tests
296 8.31 UTCTimeSynchronization Service Initiation Tests
8.32 Who-Has Service Initiation Tests
8.32.1 Object Identifier Selection with no Device Instance Range
8.32.2 Object Name Selection with no Device Instance Range
8.32.3 Object Identifier Selection with a Device Instance Range
297 8.32.4 Object Name Selection with a Device Instance Range
8.33 I-Have Service Initiation Tests
8.34 Who-Is Service Initiation Tests
8.34.1 Who-Is Request with no Device Instance Range
8.34.2 Who-Is Request with a Device Instance Range
298 8.34.3 Who-Is Request with no Device Instance Range
8.35 I-Am Service Initiation Tests
8.36 VT-Open Service Initiation Tests
8.36.1 Default Terminal VT-class
8.36.2 Other VT-classes
299 8.37 VT-Close Service Initiation Tests
8.37.1 Closing a Single Open VT Session
8.37.2 Closing One of Multiple Open VT Sessions
300 8.37.3 Closing Multiple Open VT Sessions
8.38 VT-Data Service Initiation Tests
8.38.1 Virtual Operator Interface
301 8.38.2 Virtual Terminal
302 8.39 RequestKey Service Initiation Tests
8.39.1 Initial Test
303 8.39.2 Random Padding Test
8.40 Authenticate Service Initiation Tests
8.40.1 Peer Authentication
8.40.2 Message Execution Authentication
304 8.40.3 Message Initiation Authentication
8.40.3.1 Message Initiation Authentication by a Key-Server
8.40.3.2 Message Initiation Authentication, Peer-to-Peer
305 8.40.4 Operator Authentication
8.40.5 Enciphered Session
307 9. APPLICATION SERVICE EXECUTION TESTS
9.1 AcknowledgeAlarm Service Execution Tests
9.1.1 Positive AcknowledgeAlarm Service Execution Tests
9.1.1.1 Successful Alarm Acknowledgment of Confirmed Event Notifications Using the Time Form of the ‘Time of Acknowledgment’ Parameter
310 9.1.1.2 Successful Alarm Acknowledgment of Confirmed Event Notifications using the Sequence Number Form of the ‘Time of Acknowledgment’ Parameter
9.1.1.3 Successful Alarm Acknowledgment of Confirmed Event Notifications Using the Date Time Form of the ‘Time of Acknowledgment’ Parameter
311 9.1.1.4 Successful Alarm Acknowledgment of Unconfirmed Event Notifications Using the Time Form of the ‘Time of Acknowledgment’ Parameter
313 9.1.1.5 Successful Alarm Acknowledgment of Unconfirmed Event Notifications Using the Sequence Number Form of the ‘Time of Acknowledgment’ Parameter
9.1.1.6 Successful Alarm Acknowledgment of Unconfirmed Event Notifications Using the Date Time Form of the ‘Time of Acknowledgment’ Parameter
314 9.1.1.7 Successful Alarm Acknowledgment of any “Offnormal” Transitions Using an “Offnormal” ‘To State’
315 9.1.1.8 Successful Alarm Acknowledgment of Confirmed Event Notifications Using an Unknown ‘Acknowledging Process Identifier’ Parameter
317 9.1.1.9 Successful Alarm Acknowledgment of Unconfirmed Event Notifications Using an Unknown ‘Acknowledging Process Identifier’ Parameter
319 9.1.1.10 Successful Alarm Re-Acknowledgment of Confirmed Event Notifications
321 9.1.1.11 Successful Alarm Re-Acknowledgment of Unconfirmed Event Notifications
324 9.1.1.12 Successful Alarm Acknowledgment of Confirmed Event Notifications when ‘To State’ is an Offnormal State other than OFFNORMAL
9.1.1.13 Successful Alarm Acknowledgment of Unconfirmed Event Notifications when ‘To State’ is an Offnormal State other than OFFNORMAL
325 9.1.1.14 Successful Alarm Acknowledgment of Confirmed Event Notifications when ‘To State’ is either High-Limit or Low-Limit, Revision 5 and higher only
9.1.1.15 Unsupported Message Text Character Set AcknowledgeAlarm Test
326 9.1.2 Negative AcknowledgeAlarm Service Execution Tests
9.1.2.1 Unsuccessful Alarm Acknowledgment of Confirmed Event Notifications Because the ‘Time Stamp’ is Too Old
329 9.1.2.2 Unsuccessful Alarm Acknowledgment of Confirmed Event Notifications Because the ‘Acknowledging Process Identifier’ is Invalid
9.1.2.3 Unsuccessful Alarm Acknowledgment of Confirmed Event Notifications Because the ‘Event Object Identifier’ is Invalid
9.1.2.4 Unsuccessful Alarm Acknowledgment of Confirmed Event Notifications Because the ‘Event State Acknowledged’ is Invalid
330 9.1.2.5 Unsuccessful Alarm Acknowledgment of Unconfirmed Event Notifications Because the ‘Time Stamp’ is Too Old
332 9.1.2.6 Unsuccessful Alarm Acknowledgment of Unconfirmed Event Notifications Because the ‘Event Object Identifier’ is Invalid
333 9.1.2.7 Unsuccessful Alarm Acknowledgment of Unconfirmed Event Notifications Because the ‘Event State Acknowledged’ is Invalid
9.2 ConfirmedCOVNotification Service Execution Tests
9.2.1 Positive ConfirmedCOVNotification Service Execution Tests
334 9.2.1.1 Change of Value Notifications
9.2.1.2 Change of Value Notification from Loop Objects
9.2.1.3 Change of Value Notification from Pulse Converter Object
335 9.2.1.4 Change of Value Notification from Load Control Object
9.2.2 Negative ConfirmedCOVNotification Service Execution Tests
9.2.2.1 Change of Value Notification Arrives after Subscription has Expired
336 9.2.2.2 Change of Value Notifications with Invalid Process Identifier
9.2.2.3 Change of Value Notifications with Invalid Initiating Device Identifier
337 9.2.2.4 Change of Value Notifications with Invalid Monitored Object Identifier
9.2.2.5 Deleted Clause
9.3 UnconfirmedCOVNotification Service Execution Tests
338 9.3.1 Device Restart Notifications
9.3.2 Change of Value Notifications
9.3.3 Change of Value Notification from Loop Objects
339 9.3.4 Change of Value Notification from Pulse Converter Object
9.3.5 Change of Value Notification from Load Control Object
9.4 ConfirmedEventNotification Service Execution Tests
340 9.4.1 ConfirmedEventNotification Using the Time Form of the ‘Timestamp’ Parameter and Conveying a Message Text
9.4.2 ConfirmedEventNotification Using the DateTime Form of the ‘Timestamp’ Parameter and no Message Text
9.4.3 ConfirmedEventNotification Using the Sequence Number Form of the ‘Timestamp’ Parameter and no Message Text
341 9.4.4 ConfirmedEventNotification Without a Notification Class Parameter
9.4.5 ConfirmedEventNotification Simple Presentation
9.4.6 ConfirmedEventNotification Full Presentation
342 9.4.7 Unsupported Message Text Character Set ConfirmedEventNotification Test
343 9.5 UnconfirmedEventNotification Service Execution Tests
9.5.1 UnconfirmedEventNotification Simple Presentation
9.5.2 UnconfirmedEventNotification Full Presentation
9.5.3 Unsupported Message Text Character Set UnconfirmedEventNotification Test
9.6 GetAlarmSummary Service Execution Tests
9.6.1 Alarm Summaries with no Active Alarms
9.6.2 Alarm Summaries with One Active Alarm
9.6.3 Alarm Summaries with Multiple Active Alarms
344 9.7 GetEnrollmentSummary Service Execution Tests
9.7.1 Required GetEnrollmentSummary Filters
9.7.1.1 Enrollment Summary with Zero Summaries
9.7.1.2 ACKED
345 9.7.1.3 NOT-ACKED
9.7.1.4 All
9.7.2 User Selectable GetEnrollmentSummary Filters
9.7.2.1 Enrollment Filter
9.7.2.2 Event State Filter
346 9.7.2.3 Event Type Filter
347 9.7.2.4 Priority Filter
9.7.2.5 Notification Class Filter
9.7.2.6 A Combination of Filters
348 9.8 GetEventInformation Service Execution Tests
9.8.1 Event Information with no Active Events
9.8.2 Event Information with one Active Event
9.8.3 Event Information with Multiple Active Events
9.8.4 Event Information Based on Event_State
349 9.8.5 Event Information Based on Acknowledged_Transitions
9.8.6 Chaining Test
351 9.9 LifeSafetyOperation Service Execution Test
9.9.1 Reset Single Object Execution Tests
9.9.2 Reset Multiple Object Execution Tests
352 9.9.3 Silencing Execution Test
9.10 SubscribeCOV Service Execution Tests
9.10.1 Positive SubscribeCOV Service Execution Tests
353 9.10.1.1 Confirmed COV Notifications
9.10.1.2 Unconfirmed COV Notifications
9.10.1.3 Explicit Indefinite Lifetime COV Subscriptions
354 9.10.1.4 Canceling COV Subscriptions
355 9.10.1.5 Canceling Expired or Non-Existing Subscriptions
9.10.1.6 Implied Indefinite Lifetime COV Subscriptions
9.10.1.7 Finite Lifetime Subscriptions
356 9.10.1.8 Updating Existing Subscriptions
357 9.10.1.9 Ensuring Subscription Lifetimes Are Not Affected By Time Changes
359 9.10.1.10 Accepts 8 Hour Lifetimes
9.10.2 Negative SubscribeCOV Service Execution Tests
9.10.2.1 The Monitored Object Does Not Support COV Notification
360 9.11 SubscribeCOVProperty Service Execution Tests
9.11.1 Positive SubscribeCOVProperty Service Execution Tests
9.11.1.1 Confirmed COV Notifications
361 9.11.1.2 Unconfirmed COV Notifications
9.11.1.3 Explicit Indefinite Lifetime COV Subscriptions
362 9.11.1.4 Canceling COV Subscriptions
363 9.11.1.5 Canceling Expired or Non-Existing Subscriptions
9.11.1.6 Implied Indefinite Lifetime COV Subscriptions
9.11.1.7 Finite Lifetime Subscriptions
364 9.11.1.8 Updating Existing Subscriptions
365 9.11.1.9 Client-Supplied COV Increment
367 9.11.2 Negative SubscribeCOVProperty Service Execution Tests
9.11.2.1 The Monitored Object Does Not Support COV Notification
9.11.2.2 The Monitored Property Does Not Support COV Notification
368 9.12 AtomicReadFile Service Execution Tests
9.12.1 Positive AtomicReadFile Service Execution Tests
9.12.1.1 Reading Record Based Files
9.12.1.1.1 Reading an Entire File
9.12.1.1.2 Reading Data from the Beginning of a File
369 9.12.1.1.3 Reading Data from an Intermediate Point to the End of the File
9.12.1.1.4 Reading Data Beginning from an Intermediate Point and Ending at Another Intermediate Point in the File
9.12.1.1.5 Reading A Data Block of Size Zero
9.12.1.1.6 Reading Data Past the End of the File
370 9.12.1.2 Reading Stream Based Files
9.12.1.2.1 Reading an Entire File
9.12.1.2.2 Reading Data from the Beginning of a File
9.12.1.2.3 Reading Data from an Intermediate Point to the End of the File
371 9.12.1.2.4 Reading Data Beginning from an Intermediate Point and Ending at Another Intermediate Point in the File
9.12.1.2.5 Reading A Data Block of Size Zero
9.12.1.2.6 Reading Data Past the End of the File
9.12.2 Negative AtomicReadFile Service Execution Tests
9.12.2.1 Reading Record Based Files
9.12.2.1.1 Attempting to Read Data from a Range of Records Outside the File Boundaries
372 9.12.2.1.2 Attempting to Read Data from a Nonexistent File
373 9.12.2.1.3 Attempting to Read Data Using the Wrong File Access Type
9.12.2.1.4 Attempting to Read Data Beginning with a Record Number Less Than Zero
9.12.2.2 Reading Stream Based Files
9.12.2.2.1 Attempting to Read Data from a Range of Records Outside the File Boundaries
374 9.12.2.2.2 Attempting to Read Data from a Nonexistent File
9.12.2.2.3 Attempting to Read Data Using the Wrong File Access Type
9.12.2.2.4 Attempting to Read Data Beginning with a Start Position Less Than Zero
9.13 AtomicWriteFile Service Execution Tests
375 9.13.1 Positive AtomicWriteFile Service Execution Tests
9.13.1.1 Writing to Record-Based Files
9.13.1.1.1 Writing an Entire File
376 9.13.1.1.2 Overwriting a Portion of a File
9.13.1.1.3 Appending Data to the End of a File
377 9.13.1.1.4 Truncating a File
378 9.13.1.1.5 Deleting a File
379 9.13.1.2 Writing to Stream-Based Files
9.13.1.2.1 Writing an Entire File
9.13.1.2.2 Overwriting a Portion of a File
380 9.13.1.2.3 Appending Data to the End of a File
381 9.13.1.2.4 Truncating a File
382 9.13.1.2.5 Deleting a File
9.13.2 Negative AtomicWriteFile Service Execution Tests
9.13.2.1 Writing to Record Access Files
9.13.2.1.1 Writing to a Record Access File using Stream Access
383 9.13.2.1.2 Writing to a File with an Invalid Starting Position
9.13.2.1.3 Writing to a Read Only File
9.13.2.1.4 Writing to a Nonexistent File
384 9.13.2.2 Writing to Stream Access Files
9.13.2.2.1 Writing to a Stream Access File using Record Access
9.13.2.2.2 Writing to a File with an Invalid Starting Position
9.13.2.2.3 Writing to a Read Only File
385 9.13.2.2.4 Writing to a Nonexistent File
9.14 AddListElement Service Execution Tests
9.14.1 Positive AddListElement Service Execution Test
9.14.1.1 Adding a Single Element
9.14.1.2 Adding Multiple Elements
386 9.14.1.3 Adding a Redundant Element
9.14.2 Negative AddListElement Service Execution Tests
9.14.2.1 Adding a List Element to a Property That is Not a List
387 9.14.2.2 Adding a List Element With an Invalid Datatype
9.14.2.3 An AddListElement Failure Part Way Through a List
9.15 RemoveListElement Service Execution Tests
9.15.1 Positive RemoveListElement Service Execution Tests
388 9.15.1.1 Removing a Single Element from a List
9.15.1.2 Removing Multiple Elements from a List
9.15.2 Negative RemoveListElement Service Execution Tests
9.15.2.1 Removing a List Element from a Property That is Not a List
389 9.15.2.2 A RemoveListElement Failure Part Way Through a List
9.16 CreateObject Service Execution Tests
9.16.1 Positive CreateObject Service Execution Tests
9.16.1.1 Creating Objects by Specifying the Object Type with No Initial Values
390 9.16.1.2 Creating Objects by Specifying the Object Identifier with No Initial Values
9.16.1.3 Creating Objects by Specifying the Object Type and Providing Initial Values
9.16.1.4 Creating Objects by Specifying the Object Identifier and Providing Initial Values
391 9.16.2 Negative CreateObject Service Execution Tests
9.16.2.1 Attempting to Create an Object That Does Not Have a Unique Object Identifier
9.16.2.2 Attempting to Create an Object with an Object Type That is Not Creatable by Specifying the Object Type
9.16.2.3 Attempting to Create an Object with an Object Identifier That is Not Creatable by Specifying the Object Identifier
392 9.16.2.4 Attempting to Create an Object with an Object Type Specifier and an Error in the Initial Values
9.16.2.5 Attempting to Create an Object with an Object Identifier Object Specifier and an Error in the Initial Values
393 9.16.2.6 Attempting to Create an Object with an instance of 4194303
9.17 DeleteObject Service Execution Tests
394 9.17.1 Positive DeleteObject Service Execution Tests
9.17.1.1 Successful Deletion of an Object
9.17.2 Negative DeleteObject Service Execution Tests
9.17.2.1 Attempting to Delete an Object That is Not Deletable
9.17.2.2 Attempting to Delete an Object That Does Not Exist
395 9.18 ReadProperty Service Execution Tests
9.18.1 Positive ReadProperty Service Execution Tests
9.18.1.1 Reading the Size of an Array
9.18.1.2 Reading a Single Element of an Array
9.18.1.3 Reading a Property From the Device Object using the Unknown Instance
396 9.18.1.4 Reading Entire Arrays
9.18.2 Negative ReadProperty Service Execution Tests
9.18.2.1 Reading Non-Array Properties with an Array Index
9.18.2.2 Reading Array Properties with an Array Index that is Out of Range
397 9.18.2.3 Reading an Unknown Object
9.18.2.4 Reading an Unknown Property
9.19 ReadPropertyConditional Service Execution Tests
9.19.1 ‘OR’ Selection Logic With Matches in the Object Database
398 9.19.2 ‘OR’ Negative Test
9.20 ReadPropertyMultiple Service Execution Tests
9.20.1 Positive ReadPropertyMultiple Service Execution Tests
9.20.1.1 Reading a Single Property from a Single Object
399 9.20.1.2 Reading Multiple properties from a Single Object
9.20.1.3 Reading a Single Property from Multiple Objects
9.20.1.4 Reading Multiple Properties from Multiple Objects
400 9.20.1.5 Reading Multiple Properties with a Single Embedded Access Error
9.20.1.6 Reading Multiple Properties with Multiple Embedded Access Errors
401 9.20.1.7 Reading ALL Properties
9.20.1.8 Reading OPTIONAL Properties
402 9.20.1.9 Reading REQUIRED Properties
9.20.1.10 Reading the Size of an Array
9.20.1.11 Reading a Property From the Device Object using the Unknown Instance
403 9.20.1.12 Reading Maximum Multiple Properties
404 9.20.2 Negative ReadPropertyMultiple Service Execution Tests
9.20.2.1 Reading a Single, Unsupported Property from a Single Object
9.20.2.2 Reading Multiple Properties with Access Errors for Every Property
405 9.20.2.3 Reading a Single Non-Array Property with an Array Index
406 9.21 ReadRange Service Execution Tests
407 9.21.1 Positive ReadRange Service Execution Tests
9.21.1.1 Reading All Items in the List
9.21.1.2 Reading Items by Position with Positive Count
408 9.21.1.3 Reading Items by Position with Negative Count
409 9.21.1.4 Reading Items by Time
410 9.21.1.4.1 Reading Items by Time with Negative Count
411 9.21.1.5 Reading Items by Time Range
9.21.1.6 Reading a Range of Items that do not Exist
412 9.21.1.7 Reading a Range of Items that do not Exist (Using by Sequence)
9.21.1.8 Reading a Range of Items that do Not Exist (Using by Time)
413 9.21.1.9 Reading Items by Sequence with Positive Count
414 9.21.1.10 Reading Items by Sequence with Negative Count
415 9.21.1.11 Data Type Verification Test
9.21.1.12 Status/Failure logging
9.21.1.13 Reading Items with Negative Count and MOREITEMS
416 9.22 WriteProperty Service Execution Tests
9.22.1 Positive WriteProperty Service Execution Tests
9.22.1.1 Writing a Single Element of an Array
417 9.22.1.2 Writing a Commandable Property Without a Priority
9.22.1.3 Writing a Non-Commandable Property with a Priority
9.22.2 Negative WriteProperty Service Execution Tests
9.22.2.1 Writing Non-Array Properties with an Array Index
418 9.22.2.2 Writing Array Properties with an Array Index that is Out of Range
9.22.2.3 Writing with a Property Value Having the Wrong Datatype
419 9.22.2.4 Writing with a Property Value that is Out of Range
9.22.2.5 Writing To Non-Existent Objects
420 9.22.2.6 Writing To Non-Existent Properties
9.22.2.7 Writing To Non-Writable Properties
421 9.22.2.8 Writing An Object_Name With A Value That Is Already In Use
9.23 WritePropertyMultiple Service Execution Tests
9.23.1 Positive WritePropertyMultiple Service Execution Tests
9.23.1.1 Writing a Single Property to a Single Object
422 9.23.1.2 Writing Multiple properties to a Single Object
9.23.1.3 Writing a Single Property to Multiple Objects
9.23.1.4 Writing Multiple Properties to Multiple Objects
423 9.23.1.5 Writing a Non-Commandable Property with a Priority
9.23.1.6 Writing a Commandable Property Without a Priority
9.23.1.7 Writing Maximum Multiple Properties
424 9.23.1.8 Writing to Properties Based on Data Type
9.23.2 Negative WritePropertyMultiple Service Execution Tests
425 9.23.2.1 Writing Multiple Properties with a Property Access Error
9.23.2.2 Writing Multiple Properties with an Object Access Error
426 9.23.2.3 Writing Multiple Properties with a Write Access Error
9.23.2.4 Writing Non-Array Properties with an Array Index
427 9.23.2.5 Writing Array Properties with an Array Index that is Out of Range
9.23.2.6 Writing with a Property Value Having the Wrong Datatype
428 9.23.2.7 Writing with a Property Value that is Out of Range
9.23.2.8 Writing To Non-Existent Objects
429 9.23.2.9 Writing To Non-Existent Properties
9.23.2.10 Writing To Non-Writable Properties
9.23.2.11 Writing An Object_Name With A Value That Is Already In Use
430 9.24 DeviceCommunicationControl Service Execution Test
9.24.1 Positive DeviceCommunicationControl Service Execution Tests
9.24.1.1 Indefinite Time Duration Restored by DeviceCommunicationControl
9.24.1.2 Indefinite Time Duration Restored by ReinitializeDevice
431 9.24.1.3 Finite Time Duration
9.24.1.4 Finite Time Duration Restored by DeviceCommunicationControl
432 9.24.1.5 Finite Time Duration Restored by ReinitializeDevice
9.24.1.6 Indefinite Time Duration, Disable-Initiation, Restored by DeviceCommunicationControl
433 9.24.1.7 Indefinite Time Duration, Disable-Initiation, Restored by ReinitializeDevice
9.24.1.8 Finite Time Duration, Disable Initiation
434 9.24.1.9 Disable of Service Initiation Restored by Time Duration
9.24.1.10 Disable of Service Initiation Restored by DeviceCommunicationControl
435 9.24.2 Negative DeviceCommunicationControl Service Execution Tests
9.24.2.1 Invalid Password
9.24.2.2 Missing Password
436 9.24.2.3 Restore by ReinitializeDevice with Invalid ‘Reinitialized State of Device’
9.25 ConfirmedPrivateTransfer Service Execution Tests
437 9.26 UnconfirmedPrivateTransfer Service Execution Tests
9.27 ReinitializeDevice Service Execution Tests
9.27.1 Positive ReinitializeDevice Service Execution Tests
9.27.1.1 COLDSTART with no Password
9.27.1.2 COLDSTART with a Correct Password
438 9.27.1.3 WARMSTART with no Password
9.27.1.4 WARMSTART with a Correct Password
9.27.2 Negative ReinitializeDevice Service Execution Tests
9.27.2.1 COLDSTART with an Invalid Password
439 9.27.2.2 WARMSTART with an Invalid Password
9.27.2.3 COLDSTART with Missing Password
9.27.2.4 WARMSTART with Missing Password
440 9.28 ConfirmedTextMessage Service Execution Tests
9.28.1 Text Message With No Message Class
9.28.2 Text Message With an Unsigned Message Class
441 9.28.3 Text Message With a CharacterString Message Class
9.28.4 Text Message With Urgent Priority
9.29 UnconfirmedTextMessage Service Execution Tests
9.30 TimeSynchronization Service Execution Tests
9.30.1 Positive TimeSynchronization Service Execution Tests
9.30.1.1 Local Broadcast
442 9.30.1.2 Directed to the IUT
443 9.31 UTCTimeSynchronization Service Execution Tests
9.31.1 Positive UTCTimeSynchronization Service Execution Tests
9.31.1.1 Local Broadcast
9.31.1.2 Directed to the IUT
9.32 Who-Has Service Execution Tests
9.32.1 Execution of Who-Has Service Requests Originating from the Local Network
9.32.1.1 Object ID Version with No Device Range
444 9.32.1.2 Object Name Version with no Device Range
9.32.1.3 Object ID Version with IUT Inside of the Device Range
445 9.32.1.4 Object ID Version with IUT Outside of the Device Range
9.32.1.5 Object Name Version with IUT Inside of the Device Range
9.32.1.6 Object Name Version with IUT Outside of the Device Range
446 9.32.1.7 Object ID Version with IUT Device Instance Equal to the High Limit of the Device Range
9.32.1.8 Object ID Version with IUT Device Instance Equal to the Low Limit of the Device Range
9.32.1.9 Object Name Version with IUT Device Instance Equal to the High Limit of the Device Range
447 9.32.1.10 Object Name Version with IUT Device Instance Equal to the Low Limit of the Device Range
9.32.1.11 Object Name Version, Directed to a Specific MAC Address
448 9.32.1.12 Who-Has After Object_Name Changed
9.32.1.13 Who-Has After Object_Identifier Changed
449 9.32.2 Execution of Who-Has Service Requests Originating from a Remote Network
9.32.2.1 Object ID Version, Global Broadcast from a Remote Network
9.32.2.2 Object ID Version, Remote Broadcast
450 9.33 Who-Is Service Execution Tests
9.33.1 Execution of Who-Is Service Requests Originating from the Local Network
9.33.1.1 Local Broadcast, General Inquiry
9.33.1.2 Global Broadcast, General Inquiry
451 9.33.1.3 Local Broadcast, Specific Device Inquiry with IUT Outside of the Device Range
9.33.1.4 Local Broadcast, Specific Device Inquiry with IUT Device Instance Equal to Low Limit of Device Range
9.33.1.5 Local Broadcast, Specific Device Inquiry with IUT Device Instance Equal to High Limit of Device Range
452 9.33.1.6 Local Broadcast, Specific Device Inquiry with IUT Inside of the Device Range
9.33.2 Execution of Who-Is Service Requests Originating from a Remote Network
9.33.2.1 General Inquiry, Global Broadcast from a Remote Network
453 9.33.2.2 General Inquiry, Remote Broadcast
9.33.2.3 General Inquiry, Directed to a Remote Device
9.34 VT-Open Service Execution Tests
454 9.34.1 Default Terminal VT-class
9.34.2 Other VT-classes
455 9.35 VT-Close Service Execution Tests
9.35.1 Closing One of Multiple Open VT Sessions
9.35.2 Closing Multiple Open VT Sessions
9.35.3 Closing a Single Open VT Session
456 9.36 VT-Data Service Execution Tests
9.37 RequestKey Service Execution Test
458 9.38 Authenticate Service Execution Tests
9.38.1 Establishing a Session Key
459 9.38.2 Peer Authentication
9.38.3 Message Execution Authentication
460 9.38.4 Message Initiation Authentication
9.38.4.1 Message Initiation Authentication by a Key Server
9.38.4.2 Message Initiation Authentication Peer-to-Peer
461 9.38.5 Operator Authentication
9.38.5.1 Logon Accepted
9.38.5.2 Logon Refused
9.38.6 Enciphered Session
462 9.39 General Testing of Service Execution
9.39.1 Unsupported Confirmed Services Test
463 9.39.2 Unsupported Unconfirmed Services Test
464 10. NETWORK LAYER PROTOCOL TESTS
10.1 General Network Layer Tests
10.1.1 Processing Application Layer Messages Originating from Remote Networks
10.1.2 Network Layer Priority
465 10.2 Router Functionality Tests
466 10.2.1 Startup
10.2.2 Processing Network Layer Messages
10.2.2.1 Forward I-Am-Router-To-Network
467 10.2.2.2 Execute Who-Is-Router-To-Network
468 10.2.2.2.1 No Specified Network Number
10.2.2.2.2 A Known Remote Network Number is Specified
10.2.2.2.3 A Network Number is Specified and the Router Does Not Respond
469 10.2.2.2.4 An Unknown and Unreachable Network Number is Specified
10.2.2.2.5 An Unknown Network is Discovered
470 10.2.2.2.6 Forwarding a Who-Is -Router-To-Network from a Remote Network
471 10.2.2.3 Forward I-Could-Be-Router-To-Network
10.2.2.4 Router-Busy-To-Network
10.2.2.4.1 Forwarding Router-Busy-to-Network Information for Specific DNETs
10.2.2.4.2 Forwarding Router-Busy-To-Network Information for all DNETs
472 10.2.2.4.3 Receiving Messages for a Busy Router
10.2.2.4.4 Timeout
473 10.2.2.5 Execute Router-Available-To-Network
10.2.2.5.1 Restoring Specific DNETs
474 10.2.2.5.2 Restoring All DNETs
475 10.2.2.6 Execute Initialize-Routing-Table
10.2.2.6.1 Query Routing Table
476 10.2.2.6.2 Add Entries to a Routing Table
477 10.2.2.6.3 Purge Entries in a Routing Table
478 10.2.2.7 Reject-Message-To-Network
10.2.2.7.1 Unknown Network
10.2.2.7.2 Unknown Network Layer Message Type
479 10.2.2.7.3 Unknown Network Layer Message Type For Someone Else
480 10.2.3 Routing of Unicast APDUs
10.2.3.1 Ignore Local Message Traffic
10.2.3.2 Route Message from a Local Device to a Local Device
481 10.2.3.3 Route Message from a Local Device to a Router
10.2.3.4 Route Message from One Router to Another Router
482 10.2.3.5 Route Message from a Router to a Local Device
10.2.3.6 Attempt to Locate Downstream Routers
10.2.3.6.1 Failed Attempt to Locate Router
483 10.2.3.6.2 Successful Attempt to Locate Router
484 10.2.4 Routing of Broadcast APDUs
10.2.4.1 Ignore Local Broadcast Message Traffic
10.2.4.2 Global Broadcast from a Local Device
10.2.4.3 Global Broadcast from a Remote Device
485 10.2.4.4 Remote Broadcast from a Local Device to a Directly-Connected Network
10.2.4.5 Remote Broadcast from a Local Device to a Non-Directly-Connected Network
486 10.2.4.6 Remote Broadcast from a Remote Device to a Directly-Connected Network
10.2.4.7 Remote Broadcast from a Remote Device to a Remote Network
487 10.2.4.8 Remote Broadcast that Should Be Ignored
10.2.5 Hop Count Protection
488 10.2.6 Network Layer Priority
489 10.3 Half-Router Functionality Tests
491 10.3.1 Execute Who-Is-Router-To-Network
10.3.1.1 No Specified Network Number
10.3.1.2 A Network Number is Specified that can be Reached Through a PTP Connection
10.3.2 Reject Messages if no Connection is Established
492 10.3.3 Initiating Half-Router Procedure for Connection Establishment
10.3.4 Automatic Disconnection Due to Expiration of the Activity Timer
493 10.3.5 Answering Half-Router Procedure for Connection Establishment
10.3.6 Periodic Broadcast of I-Am-Router-To-Network Messages
494 10.3.7 Disconnect-Connection-To-Network
495 10.3.8 Recovering from Duplicate Network Connections
496 10.3.9 Normal Routing Functions
10.4 B/IP PAD Tests
498 10.5 Initiating Network Layer Messages
10.5.1 Locating Routers
10.5.1.1 Who-Is-Router-To-Network – General Query
10.5.1.2 Who-Is-Router-To-Network – Specific Network Number
10.5.2 Managing Router Tables
10.5.2.1 Query A Routing Table
499 10.5.2.2 Change a Routing Table
10.5.3 Initiating and Terminating PTP Connections
10.5.3.1 Establish-Connection-To-Network
10.5.3.2 Disconnect-Connection-To-Network
500 10.6 Non-Router Functionality Tests
10.6.1 Ignore Remote packets
501 10.6.2 Ignore Who-Is-Router-To-Network
10.6.3 Ignore Router Commands
502 10.7 Route Binding Tests
10.7.1 Static Router Binding
503 10.7.2 Router Binding via Application Layer Services
504 10.7.3 Router Binding via Who-Is-Router-To-Network
505 10.7.4 Router Binding via Broadcast
506 10.7.5 Reuse Router Binding Found By Broadcast
507 10.8 Virtual Routing Functionality Tests
508 10.8.1 Startup
509 10.8.2 Processing Network Layer Messages
10.8.2.1 Execution of Who-Is-Router-To-Network
10.8.2.1.1 No Specified Network Number
10.8.2.1.2 A Known Remote Network Number is Specified
10.8.2.1.3 A Network Number is Specified and the Router Does Not Respond
510 10.8.2.1.4 An Unknown Network Number is Specified
10.8.2.2 Reject-Message-To-Network
10.8.2.2.1 Unknown Network
511 10.8.2.2.2 Unknown Network Layer Message Type
10.8.3 Routing of Unicast APDUs
10.8.3.1 Route Request Message from a Local Device to a Virtual Device and Route Response Message from the Virtual Device to the Local Device
512 10.8.3.2 Route Request Message from a Virtual Device to a Local Device
10.8.3.3 Route Request Message from a Remote Device to a Virtual Device and Route Response Message from the Virtual Device to the Remote Device
513 10.8.3.4 Route Request Message from a Virtual Device to a Remote Device
10.8.3.5 Unicast Messages that Should Not Be Routed
10.8.3.5.1 Unknown Network
514 10.8.3.5.2 Network Reachable Through the Same Port
10.8.4 Routing of Broadcast APDUs to Virtual Devices
10.8.4.1 Broadcasts that Should Be Ignored
517 10.8.4.2 Route Global Broadcast from a Local Device to Virtual Devices
519 10.8.4.3 Route Global Broadcast from a Remote Device to Virtual Devices
521 10.8.4.4 Route Remote Broadcast from a Local Device to Virtual Devices
10.8.4.5 Route Remote Broadcast from a Remote Device to Virtual Devices
522 10.8.4.6 Route Global Broadcast Message from a Virtual Device
10.8.4.7 Route Remote Broadcast Message from a Virtual Device to a Local Network
10.8.4.8 Route Remote Broadcast Message from a Virtual Device to a Remote Network
523 10.8.5 Hop Count Protection
524 10.8.6 Network Layer Priority
10.8.7 Multiple Devices on a Single Virtual Network
10.8.7.1 Who-Is Specifying Different Device Identifier
10.8.7.2 Who-Has Specifying Different Device Identifier
10.8.7.3 Read of Object Not Contained by Virtual Device
526 11. LOGICAL LINK LAYER PROTOCOL TESTS
11.1 UI Command and Response
11.2 XID Command and Response
527 11.3 TEST Command and Response
529 12. DATA LINK LAYER PROTOCOLS TESTS
12.1 MS/TP State Machine Tests
12.1.1 MS/TP Master Tests
12.1.1.1 Test Setup
12.1.1.2 Startup Tests
12.1.1.2.1 SendFrame Test
530 12.1.1.2.2 Confirmed Service Request Transitions
12.1.1.3 State Machine Transition Tests for Error Transitions
12.1.1.3.1 Error Tests with no Response
12.1.1.3.1.1 Bad Data CRC
531 12.1.1.3.1.2 Data Timeout
532 12.1.1.3.1.3 Data Framing Error
12.1.1.3.1.4 Bad Header CRC
533 12.1.1.3.1.5 Not For Us
12.1.1.3.1.6 Header Framing Error
534 12.1.1.3.1.7 Header Timeout
12.1.1.3.1.8 Not Preamble
535 12.1.1.3.1.9 Eat An Error
12.1.1.3.1.10 Eat An Octet
536 12.1.1.3.1.11 Frame Too Long
12.1.1.3.2 Tests with Response
12.1.1.3.2.1 Repeated Preamble1
537 12.1.1.3.2.2 Test Request Empty Frame
12.1.1.3.2.3 Test Request With Data
12.1.1.4 State Machine Transition Tests for Token Operations
12.1.1.4.1 Token Passed to IUT
538 12.1.1.4.2 Token Passed by IUT
539 12.1.1.4.3 Token Dropped After Passing
540 12.1.1.4.4 Poll For Master – Invalid Frame
541 12.1.1.4.5 Token Received and Passed
542 12.1.1.4.6 Done Polling – No Reply
543 12.1.1.4.7 Done Polling – Invalid Reply
545 12.1.1.4.8 Reset Poll For Master
547 12.1.1.4.9 Next Master Disappeared
12.1.1.4.10 Reply To Poll For Master Frame – Incorrect Destination
548 12.1.1.4.11 Generate Token
549 12.1.1.4.12 Poll For Master – Incorrect Response
12.1.1.4.13 SawFrame
550 12.1.1.5 Tests to Verify Answer Data Request
12.1.1.5.1 Answer Data Request
551 12.1.1.5.2 Deferred Reply
552 12.1.1.6 Miscellaneous Non-Response Tests
12.1.1.6.1 Received Data No Reply
12.1.1.6.2 Received Invalid Frame
553 12.1.1.6.3 Unwanted Frame Tests
12.1.1.6.3.1 Not Our Address
554 12.1.1.6.3.2 Broadcast Token Frame
12.1.1.6.3.3 Broadcast BACnet Data Expecting Reply Frame
555 12.1.1.6.3.4 Broadcast Test Request Frame
12.1.1.7 Sole Master Tests
12.1.1.7.1 Drop Token
556 12.1.1.7.2 Poll For Next Master
12.1.1.7.3 More Polls
557 12.1.1.7.4 Declare Sole Master (a)
558 12.1.1.7.5 New Master Enters
12.1.1.7.6 Poll For Next Master
559 12.1.1.7.7 DeclareSoleMaster (b)
560 12.1.1.7.8 SoleMaster (b)
561 12.1.1.7.9 Get Token
562 12.1.1.8 Multiple Tokens Detected During Confirmed Service Request
12.1.1.8.1 Different Destination
563 12.1.1.8.2 Broadcast
12.1.1.8.3 Token
564 12.1.1.8.4 Poll For Master
12.1.1.8.5 Reply To Poll For Master
565 12.1.1.8.6 Test Request
12.1.1.8.7 BACnet Data Expecting Reply
566 12.1.1.9 Token Usage Tests
12.1.1.9.1 Unconfirmed Request
567 12.1.1.9.2 Confirmed Request With Reply
12.1.1.9.3 Confirmed Request – No Reply
568 12.1.1.9.4 Confirmed Request – Invalid Reply
569 12.1.1.9.5 Confirmed Request With Reply Postponed
570 12.1.1.9.6 Max Info Frame Check
12.1.2 MS/TP Slave Tests
571 12.1.2.1 State Machine Transition Tests for Normal Confirmed and Unconfirmed Service Requests
12.1.2.1.1 Confirmed Service Request Transitions
12.1.2.1.2 Directed BACnet Data Not Expecting Reply
572 12.1.2.1.3 Broadcast BACnet Data Not Expecting Reply
573 12.1.2.2 State Machine Transition Tests for Error Transitions
12.1.2.2.1 Error Tests with no Response
12.1.2.2.1.1 Bad Data CRC
574 12.1.2.2.1.2 Data Timeout
12.1.2.2.1.3 Data Framing Error
575 12.1.2.2.1.4 Bad Header CRC
576 12.1.2.2.1.5 Not For Us
12.1.2.2.1.6 Header Framing Error
577 12.1.2.2.1.7 Header Timeout
578 12.1.2.2.1.8 Not Preamble
12.1.2.2.1.9 Eat An Error
579 12.1.2.2.1.10 Eat An Octet
580 12.1.2.2.1.11 Frame Too Long
12.1.2.2.1.12 Illegally Broadcast Frame
581 12.1.2.2.1.13 Illegally Broadcast Test_Request Frame
582 12.1.2.2.1.14 Unwanted Token Frame
12.1.2.2.1.15 Unwanted Poll For Master Frame
583 12.1.2.2.1.16 Unwanted Reply to Poll For Master Frame
12.1.2.2.1.17 Unwanted Reply Postponed Frame
584 12.1.2.2.2 Tests with Response
12.1.2.2.2.1 Repeated Preamble1
12.1.2.2.2.2 Test Request Empty Frame
585 12.1.2.2.2.3 Test Request With Data
12.1.3 MS/TP Data Link Layer Tests (Alternate)
12.1.3.1 Test Environment
12.1.3.1.1 Test Setup
586 12.1.3.1.2 Serial Analyzer
12.1.3.1.3 Other Test Equipment
12.1.3.2 Verify Tpostdrive
587 12.1.3.3 Verify Tframe_gap
12.1.3.4 Verify Tturnaround
588 12.1.3.5 Verify Treply_delay
12.1.3.6 Verify Tusage_delay After a Token w/ Serial Analyzer
12.1.3.7 Verify Tusage_delay After a Poll For Master w/ Serial Analyzer
589 12.1.3.8 Verify Npoll w/ Serial Analyzer
12.1.3.9 Verify Tusage_timeout w/ Serial Analyzer
12.1.3.10 Max_Master Test
590 12.1.3.11 Max_Info_Frames Test
12.1.3.12 Master Node Data Frame Test
12.1.3.13 Poll For Master w/ Serial Analyzer
12.1.3.14 Slave Node Data Frame Test
591 12.1.3.15 Sole Master Test
12.1.3.16 MS/TP Network Startup Tests (IUT power on Variation)
592 12.1.3.17 MS/TP Network Startup Tests (IUT’s wire connected)
12.1.3.18 MS/TP Network Startup Tests (IUT’s wire disconnected)
593 12.1.3.19 MS/TP Network Startup Tests (Reference device joins the MS/TP network)
12.2 PTP State Machine Tests
594 12.2.1 PTP Tests
12.2.1.1 CONNECT_TEST
595 12.2.1.2 VERIFY_CONNECTED_TEST
12.2.1.3 DISCONNECT_TEST
596 12.2.1.4 VERIFY_DISCONNECTED_TEST
12.2.2 Connection Establishment
12.2.2.1 Inbound Connection Tests
12.2.2.1.1 Inbound Normal Connection and Disconnection Test
597 12.2.2.1.2 Inbound Connection with Retry to Failure Test
12.2.2.1.3 Inbound Connection with Retry to Success Test
598 12.2.2.1.4 Inbound Connection Aborted Test
12.2.2.1.5 Reconnection Test
599 12.2.2.2 Outbound Connection Tests
12.2.2.2.1 Outbound Connection Normal Test
12.2.2.2.2 On-Demand Connection with Retry to Success Test
600 12.2.2.2.3 On-Demand Connection with Retry to Failure Test
601 12.2.3 Connection Termination
12.2.3.1 Network Disconnect Normal Test
12.2.3.2 Network Disconnect with Retry Test
602 12.2.3.3 Unwanted Frame Disconnect Test
603 12.2.3.4 Simultaneous Disconnect Test
12.2.3.5 Invalid Password Disconnect Test
604 12.2.3.6 No Password Disconnect Test
12.2.3.7 Denied Password Disconnect with Retry Test
605 12.2.3.8 Physical Connection Lost with Passive Reconnection Test
606 12.2.3.9 Physical Connection Lost with Active Reconnection Test
12.2.3.10 Inactivity Disconnect Test
607 12.2.4 Reception
12.2.4.1 Normal Receive Sequence Test
609 12.2.4.2 Test_Request Test
610 12.2.4.3 Reconnection Receive Sequence Test
12.2.4.4 Bad Data Test
612 12.2.4.5 Duplicate Ack Test
613 12.2.4.6 Duplicate Nak Test
615 12.2.5 Transmission
12.2.5.1 Initial Transmission Connection and Disconnection Test
616 12.2.5.2 Transmit Ready Test
12.2.5.3 Transmit Pending Queue Test
617 12.2.5.4 Transmit Pending Disconnect Test
12.2.5.5 Normal Transmission Sequence Test
619 12.2.5.6 Transmission Retry Test
620 12.2.6 Flow Control
12.2.6.1 Heartbeat Flow Control Test
621 12.2.6.2 Data Ack XOFF Flow Control Test
622 12.2.6.3 Data Nak XOFF Flow Control Test
623 12.2.6.4 Data Nak XON Flow Control Test
624 12.2.7 Receive Frame
12.2.7.1 Idle to Idle Test
625 12.2.7.2 Preamble to Preamble Test
626 12.2.7.3 Preamble to Idle Test
627 12.2.7.4 Header to Header Test
12.2.7.5 Header to Idle Test
628 12.2.7.6 Header_CRC Test
629 12.2.7.7 Data to Data Test
630 12.2.7.8 Data to Idle Test
12.2.7.9 Data_CRC Test
632 13. SPECIAL FUNCTIONALITY TESTS
13.1 Segmentation
13.1.1 General Rules and Procedures
13.1.1.1 Packet Names
633 13.1.1.2 TCSL Packet Definitions
634 13.1.2 TD Initiated Unsegmented Request and Segmented Response (Non-Window)
13.1.3 TD Initiated Unsegmented Request and Segmented Response (Window)
635 13.1.4 TD Initiated Segmented Request and Unsegmented Response (Non-Window)
13.1.5 TD Initiated Segmented Request and Unsegmented Response (Window)
636 13.1.6 IUT Initiated Unsegmented Request and Segmented Response (Non-Window)
13.1.7 IUT Initiated Unsegmented Request and Segmented Response (Window)
637 13.1.8 IUT Initiated Segmented Request and Unsegmented Response (Non-Window)
13.1.9 IUT Initiated Segmented Request and Unsegmented Response (Window)
638 13.1.10 IUT Initiated Segmented Request With Retries
13.1.11 Segmenting Replies Only When Max_APDU_Length_Accepted is Exceeded
639 13.1.12 IUT Abort When Segmentation Not Possible
13.1.12.1 IUT Does Not Support Segmented Response
13.1.12.2 TD Does Not Support Segmented Response
640 13.1.12.3 TD’s Max-Segments-Accepted Exceeded
641 13.2 Time Master
13.2.1 TimeSynchronization Recipients Test, Protocol_Revision ( 7
642 13.2.2 TimeSynchronization Recipients Test, Protocol_Revision ≥ 7
13.2.3 UTC_TimeSynchronization_Recipients Test
643 13.2.4 Time_Synchronization_Interval Test
644 13.2.5 UTC_Time_Synchronization_Interval Test
13.2.6 Align_Intervals and Interval_Offset TimeSynchronization Test
645 13.2.7 Align_Intervals and Interval_Offset UTCTimeSynchronization Test
646 13.3 Character Sets
1. VERIFY (Device, X), Vendor_Name = (the vendor name)
13.4 Malformed PDUs
647 13.4.1 Inconsistent Parameters
13.4.2 Invalid Parameter Datatype
13.4.3 Invalid Tag
13.4.4 Missing Required Parameter
13.4.5 Too Many Arguments
648 13.5 Slave Proxy Tests
13.5.1 Manual Slave Binding Test
649 13.5.2 Automatic Slave Discovery Test
13.5.3 Proxy Test
650 13.6 Automatic Network Mapping
651 13.7 Automatic Device Mapping
13.8 Backup and Restore Procedure Tests
13.8.1 Backup and Restore Execution Tests
13.8.1.1 Execution of Full Backup and Restore Procedure
654 13.8.1.2 Attempting a Backup Procedure While Already Performing a Backup Procedure
655 13.8.1.3 Attempting a Backup Procedure While Already Performing a Restore Procedure
13.8.1.4 Attempting a Restore Procedure While Already Performing a Backup Procedure
656 13.8.1.5 Attempting a Restore Procedure While Already Performing a Restore Procedure
13.8.1.6 Ending Backup and Restore Procedures via Timeout
657 13.8.1.7 Ending Backup and Restore Procedures via Abort
658 13.8.1.8 Attempting a Backup Procedure with an Invalid Password
13.8.1.9 Attempting a Restore Procedure with an Invalid Password
659 13.8.1.10 Starting and Ending a Backup Procedure when a Password is not Required
13.8.1.11 Starting and Ending a Restore Procedure when a Password is not Required
13.8.1.12 System_Status during a Backup Procedure
660 13.8.1.13 System_Status during a Restore Procedure
13.8.2 Backup and Restore Initiation Tests
13.8.2.1 Initiate a Full Backup and Restore
661 13.8.2.2 Can Abort Backup if Error Received from TD
662 13.8.2.3 Can Abort Restore if Error Received from TD
663 13.8.2.4 Initiate an Abort Backup
13.8.2.5 Initiate an Abort Restore
13.9 Application State Machine Tests
13.9.1 APDU Retry and Timeout Test
664 13.10 Workstation Scheduling Tests
674 13.10.1 Read and Present a Weekly_Schedule
13.10.2 Modify a Weekly_Schedule
13.10.2.1 Modify a Weekly_Schedule by Changing the Time of a BACnetTimeValue
13.10.2.2 Modify a Weekly_Schedule by Changing the Value of a BACnetTimeValue
13.10.2.3 Modify a Weekly_Schedule by Deleting a BACnetTimeValue
675 13.10.2.4 Modify a Weekly_Schedule by Adding a BACnetTimeValue
13.10.3 Read and Present a Complex Schedule
13.10.4 Modify an Exception_Schedule
13.10.4.1 Modify an Exception_Schedule by Changing the Time of a BACnetTimeValue in the listofTimeValues of a BACnetSpecialEvent with Period of Choice calendarEntry
13.10.4.2 Modify an Exception_Schedule by Changing the Value of a BACnetTimeValue in the listofTimeValues of a BACnetSpecialEvent with Period of Choice calendarEntry
676 13.10.4.3 Modify an Exception_Schedule by Deleting a BACnetTimeValue from the listofTimeValues of a BACnetSpecialEvent with Period of Choice calendarEntry
13.10.4.4 Modify an Exception_Schedule by Adding a BACnetTimeValue to the listOfTimeValues of a BACnetSpecialEvent with Period of Choice calendarEntry
13.10.4.5 Modify an Exception_Schedule by Changing the eventPriority of a BACnetSpecialEvent with Period of Choice calendarEntry
13.10.4.6 Modify an Exception_Schedule by Deleting a BACnetSpecialEvent with Period of Choice calendarEntry
677 13.10.4.7 Modify an Exception_Schedule by Adding a BACnetSpecialEvent with Period of Choice calendarEntry of choice Date
13.10.4.8 Modify an Exception_Schedule by Adding a BACnetSpecialEvent with Period of Choice calendarEntry of Choice DateRange
13.10.4.9 Modify an Exception_Schedule by Adding a BACnetSpecialEvent with Period of Choice calendarEntry of Choice WeekNDay
678 13.10.4.10 Modify an Exception_Schedule by Adding a BACnetSpecialEvent with Period of Choice calendarReference
13.10.4.11 Modify an Exception_Schedule by Changing the Time of a BACnetTimeValue in the listofTimeValues of a BACnetSpecialEvent with Period of Choice calendarReference
13.10.4.12 Modify an Exception_Schedule by Changing the Value of a BACnetTimeValue in the listofTimeValues of a BACnetSpecialEvent with Period of Choice calendarReference
13.10.4.13 Modify an Exception_Schedule by Deleting a BACnetTimeValue from the listofTimeValues of a BACnetSpecialEvent with Period of Choice calendarReference
679 13.10.4.14 Modify an Exception_Schedule by Adding a BACnetTimeValue to the listofTimeValues of a BACnetSpecialEvent with Period of Choice calendarReference
13.10.4.15 Modify an Exception_Schedule by Deleting a BACnetSpecialEvent with Period of Choice calendarReference
13.10.5 Modify a Calendar Object
13.10.5.1 Modify a Calendar by Deleting a BACnetCalendarEntry from the Date_List
13.10.5.2 Modify a Calendar by Adding a BACnetCalendarEntry of Choice Date to the Date_List
680 13.10.5.3 Modify a Calendar by Adding a BACnetCalendarEntry of Choice DateRange to the Date_List
13.10.5.4 Modify a Calendar by Adding a BACnetCalendarEntry of Choice WeekNDay to the Date_List
13.10.6 Modify a Self-inconsistent Schedule to be Consistent
681 13.10.7 Change the Datatype that a Schedule Object Schedules
682 14. BACnet/IP Functionality Tests
14.1 Non-BBMD B/IP Device
14.1.1 Write-Broadcast-Distribution-Table
14.1.2 Read-Broadcast-Distribution-Table
14.1.3 Register-Foreign-Device
14.1.4 Delete-Foreign-Device-Entry
683 14.1.5 Read-Foreign-Device-Table
14.1.6 Distribute-Broadcast-To-Network
14.1.7 Forwarded-NPDU (One-hop Distribution)
14.1.8 Original-Broadcast-NPDU
684 14.1.9 Original-Unicast-NPDU
14.1.10 Forwarded-NPDU (Two-hop Distribution)
14.2 BBMD B/IP Device with a Server Application
685 14.2.1 Execute Forwarded-NPDU
14.2.1.1 Execute Forwarded-NPDU (One-hop Distribution)
686 14.2.1.2 Execute Forwarded-NPDU (Two-hop Distribution)
14.2.2 Execute Original-Broadcast-NPDU
687 14.2.2.1 Execute Original-Broadcast-NPDU (One-hop Distribution)
14.2.2.2 Execute Original-Broadcast-NPDU (Two-hop Distribution)
688 14.2.3 Execute Original-Unicast-NPDU
14.3 Broadcast Distribution Table Operations
689 14.3.1 Execute Write-Broadcast-Distribution-Table (Table Growth)
14.3.2 Execute Write-Broadcast-Distribution-Table (Table Growth)
690 14.3.3 Verify Broadcast Distribution Table Created from the Configuration Saved During the Previous Session
691 14.3.4 Write-Broadcast-Distribution-Table (Empty)
14.3.5 Write-Broadcast-Distribution-Table (Doesn’t Contain BBMD Entry)
14.3.6 Verify Broadcast Distribution Table Created from the Configuration Saved During the Previous Session
692 14.4 Foreign Device Table Operations (Negative Tests)
14.4.1 Register-Foreign-Device
14.4.2 Delete-Foreign-Device
14.4.3 Read-Foreign-Device-Table
693 14.4.4 Distribute-Broadcast-To-Network
14.5 BACnet Broadcast Management (No Foreign Device Table, No Applications)
14.5.1 Forwarded-NPDU Message Which Shall Be Ignored
14.5.2 Original-Broadcast-NPDU Message Which Shall Be Forwarded
14.5.2.1 Original-Broadcast-NPDU Message Which Shall Be Forwarded (One-hop Distribution)
694 14.5.2.2 Original-Broadcast-NPDU Message Which Shall Be Forwarded (Two-hop Distribution)
695 14.5.3 Original-Unicast-NPDU Message Which Shall Be Ignored
14.6 Foreign Device Management
14.6.1 Execute Read-Foreign-Device-Table
14.6.2 Execute Permanent Foreign Device Registration
14.6.3 Foreign Device Table Timer Operations
14.6.3.1 Non-Zero-Duration Foreign Device Table Timer Operations
696 14.6.3.2 Zero-Duration Foreign Device Timer Operations
697 14.6.4 Unicast Message Which Should be Ignored
14.6.5 Delete-Foreign-Device-Table-Entry Which Should Be Rejected
698 14.6.6 Execute Delete-Foreign-Device-Table-Entry
699 14.7 Broadcast Management (BBMD, Foreign Devices, Local Application)
14.7.1 Broadcast Message from Directly Connected IP Subnet
14.7.1.1 Broadcast Message from Directly Connected IP Subnet (One-hop Distribution)
701 14.7.1.2 Broadcast Message from Directly Connected IP Subnet (Two-hop Distribution)
702 14.7.2 Broadcast Message Forwarded by a Peer BBMD
14.7.2.1 Broadcast Message Forwarded by a Peer BBMD (One-hop Distribution)
703 14.7.2.2 Broadcast Message Forwarded by a Peer BBMD (Two-hop Distribution)
705 14.7.3 Broadcast Message From a Foreign Device
14.7.3.1 Broadcast Message From a Foreign Device (One-hop Distribution)
706 14.7.3.2 Broadcast Message From a Foreign Device (Two-hop Distribution)
707 14.8 Registering as a Foreign Device
708 14.9 Initiating BVLL Service Requests Conveying an NPDU
14.9.1 Distribute-Broadcast-To-Network
14.9.2 Initiating An Original-Unicast-NPDU
709 14.9.3 Original-Broadcast-NPDU
710 15. Reporting Test Results
711 ANNEX A – EXAMPLE EPICS (INFORMATIVE)
728 HISTORY OF REVISIONS
HISTORY OF REVISIONS
ASHRAE Standard 135.1 2019
$86.13