07 5123 06 zigbee cluster library specification

Transcript

1 ZigBee Cluster Library – 075123 Document ZigBee Cluster Library Specification Revision 6 Draft Version 1.0 - 0125 Chapter Document: 14 5123 - 07 ZigBee Document: 06 - ZigBee Document 07 - 5123 201 4 January 1 Date of release 6 Sponsored by ZigBee Alliance n accepted for release by the ZigBee Alliance Board of Directors. Accepted by This document has bee (ZCL6). Abstract revision 6 This document defines the ZigBee Cluster Library ZigBee Cluster Library, ZCL, ZCL6, Application Framework Keywords - 1  2007 Copyright 2016 , The ZigBee Alliance. All rights reserved. Page

2 ZigBee Cluste Specification r Library ZigBee Document – 075123 nd Disclosure a f Use Notice o 2016). All rights Reserved. This information within this document - igBee Alliance, Inc. (1996 Copyright © Z is the property of the ZigBee Alliance and its use and disclosure are restricted. Elements of ZigBee Alliance specifications may be subject to third party intellec n- tual property rights, i cluding without limitation, patent, copyright or trademark rights (such a third party may or may not be a member of ZigBee). ZigBee is not responsible and shall not be held responsible in any manner for identifying ntify any or all such third party intellectual property rights. or failing to ide No right to use any ZigBee name, logo or trademark is conferred herein. Use of any ZigBee name, logo or o and Trad e- trademark requires membership in the ZigBee Alliance and compliance with the ZigBee Log mark Policy and related ZigBee policies. S- This document and the information contained herein are provided on an “AS IS” basis and ZigBee DI CLAIMS ALL WARRANTIES EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) E INFORMATION HEREIN WILL NOT INFRINGE ANY ANY WARRANTY THAT THE USE OF TH RIGHTS OF THIRD PARTIES (INCLUDING WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT OR TRADEMARK RIGHTS) OR (B) ANY RPOSE, IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PU TITLE OR NONINFRINGEMENT. IN NO EVENT WILL ZIGBEE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTIAL, PUNITIVE OR CONSEQUENTIAL DAM AGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH LOSS OR DAMAGE. All Company, brand and product names may be their respective owners. trademarks that are the sole property of The above notice and this paragraph must be included on all copies of this document that are made.  , The ZigBee Alliance. All rights reserved. 2 Copyright Page 2007 - 2016

3 ZigBee Cluster Library – 075123 Document Participa nts The following is a list of ZigBee members who contributed to this document: Cam Williams - Chair of the Foundation Working Group Jared Lemke Rob Alexander Shane Almeida Christopher Leidigh Casey Anderson Yingbo Li Skip Ashton Marco Naeve um Alexis Martin Wally Barn Juan Agui Martin Ettore Colicchio Jeff Mathews Jeff Cooper Damon Corbin Tony Mauro Leslie Mulder John Cowburn Luca Negri Robert Cragie Jonathan Cressman Ivan O’Neill Isaac Pinhas Tim Gillman Drew Gislason Andrea Ranalli Ezra Hale Jonas Riska Jesper Haee Zachary Smith Robby Simpson Robert Hall Sumit Singh Jon Harros Jim Hartman David Smith Arasch Honarbacht Matt Smith Ted Humpal Michael Stuber Don Sturek Phil Jamieson William Keith Mads Westergreen Larry Kohrmann lander Urban Wick Tom Klein Cam Williams Ian Winterburn John Knuth Cristian Kuster Kenny York Zin Kyaw Walter Young Gary Lee - 3  2007 Copyright 2016 , The ZigBee Alliance. All rights reserved. Page

4 ZigBee Cluste Specification r Library 075123 – ZigBee Document Document Control Chapter 1 fo r the list of all The ZigBee Cluster Library is made of individual chapters such as this one. See X.Y notation where X is the chapter and Y chapters. References between chapters are made using a is the sub section within that chapter. References to external documents are contained in Chapter 1 and are made - Rn using [ ] notation. te to any of these chapters will be reflected in an update to the An upda do c ument list below. source Chapter 1 – Introduction Document 14 - 0125 - 1 2 - Chapter 2 Foundation Document 14 0126 - 1 5 – Chapter 3 – General Document 14 - 0127 - 1 7 - Chapter 4 Measurement and Sensing Document 14 0128 - 10 – – Lighting Document 14 - 0129 - 1 2 Chapter 5 - Document 14 HVAC – 1 1 - 0130 Chapter 6 0131 Chapter 7 Closures Document 14 - - 14 – Document 14 – Security and Safety 2 - 0132 - 1 Chapter 8 Document 14 Chapter 9 Protocol Interfaces – - 0133 - 07 Chapter 10 – Smart Energy Document 14 - 0134 - 10 Over the Air Upgrades - 3 1 0135 - Document 14 Chapter 11 – Document 14 – Telecommunications Chapter 12 - 0136 - 09 10 Chapter 13 – Commissioning Document 14 - 0137 - 07 – Retail Chapter 14 Document 14 - 0138 - 1 Chapter 15 – Appliances Document 14 - 0139 - 1 15 Document Approved Errata for this ZCL revision 0180 - Source files for drawings in this ZCL revision 00 - 0141 - Document 14  , The ZigBee Alliance. All rights reserved. 4 Copyright Page 2007 - 2016

5 ZigBee Cluster Library 075123 – Document Document History Date Comments Revision Number 11th July 2007 Document created 00 19th Oct 2007 01 First release 02 29th May 2008 Added Commissioning Clust er from 064699r12. Added material from annex of CBA Profile 053516r10  Structured types (arrays etc) and structured R/W co  m- mands  Input / Output / Value clusters (Basic) x- Input / Output / Value clusters (BACnet Regular & E  tended) Generic Tunnel cluster  t Protocol Tunnel cluster  BACne Made changes to the Color Control cluster re. CCB 870 Added x,y control according to CIE 1931 Color Space  Added long data types (as required by SE profile 075356r12 etc)  - 64bit integers etc, long strings 40 ster (as required by CCBs 890, 914) Made changes to time clu  Added time zone & DST + UTCtime type Made minor changes as requested by the following CCBs  627, 714, 781, 853, 854, 867, 878, 879, 880, 881, 883, 893, 897, 898, 919, 958 to the Editor’s Copy of the The following changes were made ZCL, 095254r00. Made change to the Basic cluster, re CCB comment #606 Added optional attribute  DisableLocalConfig . Updated Pressure Measurement cluster re CCB comment #961 Added extra attributes to allow wider range of pressure .  Updated Color Control cluster re CCB comment #1006 18th Sept 2009  Clarification of stop commands, color mode switching etc. 03 Made changes to RSSI Location cluster, re CCB comment #1053 Added mechanism for centralized location.  Made change to Generic Tunnel cluster, re C CB comment #1068  Added extra fields to Match Protocol Address Response Command Made minor changes and clarifications re the following CCBs 960, 1001, 1004, 1061, 1097.  24th Dec 2009 Added Door Lock cluster.  - 5  2007 Copyright 2016 , The ZigBee Alliance. All rights reserved. Page

6 ZigBee Cluste Specification r Library 075123 – ZigBee Document Date Comments Number Revision Updated Occupancy Sensor re CCB comments 1092, 1093, 1094 CCB 1174: Fixed references CCB 1176: Added new status codes 2010 CCB 1202: Corrected default value in thermostat cluster fault Response clarification CCB 1381: De CCB 1260: Generic Tune l cluster clarification ning Cluster minor change CCB 1377: Commissio 04 CCB 1146: Report Attributes without Configuration April 2012 CCB 1169: Dependencies on Optional Attributes CCB 1379: Generic Tunnel attribute ProtocolAddress ReadOnly Option CCB 1420: Time cluster ESI bit ification eporting destination clar CCB 1390: R Move to individual chapters i- Added all approved Clusters from other Application Spec fications 18 March 2015 05 Included CCBs Editorial cleanup of document Chapter 1:New terms for ZigBee 3.0 n Architecture changes Chapter 2: ZigBee 3.0 & Applicatio Broadcast Endpoint Rules iscover Gl obal d y commands from ZHA 1.2 1923 CCB 1277 1444 1505 2092 of Basic cluster Chapter 3 ZCLVersion attribute : is 0x 02 1822 1833 1815 1809 1745 1647 1480 1555 2100 CCB 14 January 2016 06 Chapter 4: CCB 204 8 2049 2050 2106 CCB 2028 Chapter 5: ZLL 1.0 errata Chapter 6: CCB 1823 1994 1995 1996 1997 2086 1811 1812 1821 Chapter 7: CCB Chapter 8: ZHA 1.2 & 1.2.1 & errata CCB 1977 2045 2044 1470 11: CCB 1477 1540 1594 2046 2056 1374 Chapter Chapter 15: CCB 1893 2007 6 , The ZigBee Alliance. All rights reserved. 2016 -  Copyright Page

7 ZigBee Cluster Library – Document 075123 TABLE OF CONTENTS ... ... 1 ... ... ZigBee Cluster Library Specification Notice of Use and Disclosure ... ... 2 ... ... ... ... ... ... Participants 3 ... ... ... ... ... 4 Document Control ... ... ... ... ... ... 5 Document History le of Contents ... ... ... Tab ... 7 ... List of Figures ... ... ... ... ... 17 ... ... ... ... 26 List of Tables ... Introd uction ... ... ... ... 1 - 1 Chapter 1 1.1 ... ... ... ... 1 - 1 Scope and Purpose ... 1.2 ... ... ... Acronyms and Abbreviations 1 - 1 1.3 Definitions ... ... ... ... ... 1 - 4 1.4 ... ... ... ... 1 - 5 Conformance Levels ... ... ... ... ... 1 - 5 1.5 References 5.1 ZigBee Alliance Documents ... ... ... 1 - 5 1. 1.5.2 International Standards Documents ... ... ... 1 - 5 ... ... ... National Standards Documents 1 - 5 1.5.3 1.5.4 IEEE Documents ... ... ... ... 1 - 6 1.5.5 ... ... ... ... 1 - 6 ASHRAE Documents ... 1.5.6 ... ... ... Health Care Documents 1 - 6 1.5.7 Other Documents ... ... ... ... 1 - 7 ... 1.6 Conventions ... ... ... .. 1 - 7 Enumerations and Re 7 - 1 ... ... ... served Values 1.6.1 1.6.2 ... ... ... ... 1 - 7 Reserved Bit Fields 1 ... ... ... ... - 7 1.6.3 Number Format Foundation ... ... ... ... 2 - 1 Chapter 2 2.1 ... ... ... ... 2 - 1 Scope and Purpose ... 2.2 ... ... ... Cluster Library Overview 2 - 1 2.2.1 Architecture Model ... ... ... ... 2 - 1 2.2.2 ... ... ... ... 2 - 2 Client/Server Model ... 2.3 ... ... ... Functional Description 2 - 3 2.3.1 Transmission ... ... ... ... 2 - 3 ... 2.3.2 ... ... ... Reception 2 - 3 2.3.3 Manufacturer Specific Extensions ... ... ... 2 - 4 2.3.4 Dependencies on Optional Attribute ... ... ... 2 - 4 2.3.5 ... ... ... ... 2 - 4 Attribute Access ... ... ... ... rsistent Data 2 - 5 2.3.6 Pe Command Frame Formats ... ... ... ... 2 - 6 2.4 2.4.1 ... ... ... 2 - 6 General ZCL Frame Format ... 2.5 ... ... ... General Command Frames 2 - 8 2.5.1 Read Attributes Command ... ... ... 2 - 9 2.5.2 ... ... ... 2 - 10 Read Attributes Response Command ... 2.5.3 ... ... Write Attributes Command 2 - 12 2.5.4 Write Attributes Undivided Command ... ... ... 2 - 13 ... 2.5.5 ... ... Write Attributes Response Command 2 - 13 Write Attributes No Response Command ... ... ... 2 - 14 2.5.6 ... ... ... Configure Reporting Command 15 - 2.5.7 2 - 7  2007 Copyright 2016 , The ZigBee Alliance. All rights reserved. Page

8 ZigBee Cluste Specification r Library 075123 – ZigBee Document Configure Reporting Response Command 2.5.8 ... ... 2 - 18 ... 2 ... ... Read Reporting Configuration Command - 19 2.5.9 ... - ... 2 ... 20 2.5.10 Read Reporting Configuration Response Command Report Attributes Command 2.5.11 ... ... ... 2 - 22 efault Response Command ... ... ... 2 - 25 2.5.12 D 2 Discover Attributes Command ... ... ... - 26 2.5.13 Discover Attributes Response Command 2.5.14 ... ... 2 - 27 ... 2.5.15 Read Attributes Structured Command ... ... ... 2 - 28 Write Attributes Structured Command ... ... ... 2 - 30 2.5.16 2 Write Attributes Structured Response Command ... ... - 32 2.5.17 Discover Commands Received Command ... ... ... 2.5.18 - 33 2 2.5.19 Discover C ommands Received Response ... ... ... 2 - 34 ... ... .. Discover Commands Generated Command 2 - 35 2.5.20 2.5.21 Discover Commands Generated Response ... ... ... 2 - 36 2.5.22 ... ... ... 2 - 36 Discover Attributes Extended Command Discover Attributes Extended Response Command ... ... 2 - 37 2.5.23 2 ... ... ... - 39 2.6 Addressing, Types and Enumerations Addressing ... ... ... ... 2.6.1 - 39 2 2.6.2 Data Types ... ... ... ... 2 - 40 ... ... ... ... Status Enumerations 2 - 50 2.6.3 Chapter 3 General ... ... ... ... ... 3 - 1 3.1 ... ... ... ... 3 - 1 General Description ... ... ... ... 3.1.1 3 - 1 Introduction ... 3.1.2 ... ... ... Cluster List 3 - 1 3.2 Basic ... ... ... ... ... 3 - 5 ... 3.2.1 ... ... ... Overview 3 - 5 Server ... ... ... ... 3 - 6 3.2.2 ... ... ... ... Client 13 - 3 3.2.3 3.3 ... ... ... ... 3 - 13 Power Configuration Overview ... ... ... ... 3 - 13 3.3.1 ... ... ... ... 3 - 14 3.3.2 Server Client ... ... ... 3.3.3 3 - 22 ... 3.4 Device Temperature Configuration ... ... ... 3 - 22 ... 3.4.1 ... ... ... Overview 3 - 22 3.4.2 Server ... ... ... ... 3 - 23 3.4.3 ... ... ... ... 3 - 26 Client ... ... ... ... ... 3.5 3 - 26 Identify ... ... ... ... Overview 3 - 26 3.5.1 3.5.2 Server ... ... ... ... 3 - 26 ... 3.5.3 ... ... ... Client 3 - 30 3.6 Groups ... ... ... ... ... 3 - 30 3.6.1 Overview ... ... ... ... 3 - 30 3.6.2 ... ... ... ... 3 - 31 Server .3 ... ... ... ... Client 3 - 37 3.6 Scenes ... ... ... ... ... 3 - 37 3.7 3.7.1 ... ... ... ... 3 - 37 Overview ... 3.7.2 ... ... ... Server 3 - 38 3.7.3 Client ... ... ... ... 3 - 51 3.8 ... ... ... ... ... 3 - 51 On/Off ... ... ... ... Overview 3 - 51 3.8.1 3.8.2 Server ... ... ... ... 3 - 51 ... 3.8.3 ... ... ... Client 3 - 58 3.9 On/Off Switch Configuration ... ... ... ... 3 - 58 ... 3.9.1 Overview ... ... ... 3 - 58 ... ... ... 58 Server - 3 ... 3.9.2  , The ZigBee Alliance. All rights reserved. 8 Copyright Page 2007 - 2016

9 ZigBee Cluster Library – Document 075123 Client 3.9.3 ... ... ... 3 - 60 ... - Level Control ... ... ... 3 ... 60 3.10 Overview ... ... ... ... 3.10.1 - 60 3 ... ... ... ... 3 - 61 3.10.2 Server 3 Client ... ... ... ... - 67 3.10.3 Alarms ... ... ... ... ... 3 - 3.11 67 3.11.1 Overview ... ... ... ... 3 - 67 Server ... ... ... ... 3 - 67 3.11.2 3 ... ... ... ... - 70 3.11.3 Client Time ... ... ... ... 3.12 3 - 71 ... 3. Overview ... ... ... ... 3 - 71 12.1 ... ... ... ... Server 3 - 71 3.12.2 3.12.3 Client ... ... ... ... 3 - 75 3.13 ation ... ... ... ... 3 - 75 RSSI Loc Overview ... ... ... ... 3 - 75 3.13.1 3 ... ... ... ... - 76 3.13.2 Server Client ... ... 3.13.3 ... 3 - 89 ... 3.14 Input, Output and Value Clusters ... ... ... 3 - 89 ... 3.14.1 ... ... ... Overview 3 - 89 3.14.2 Analog Input (Basic) ... ... ... ... 3 - 89 3.14.3 ... ... ... ... 3 - 90 Analog Output (Basic) ... ... ... ... 3.14.4 3 - 92 Analog Value (Basic) ... 3.14.5 ... ... ... Binary Input (Basic) 3 - 94 3.14.6 Binary Output (Basic) ... ... ... ... 3 - 95 ... 3.14.7 ... ... ... Binary Value (Basic) 3 - 97 3.14.8 Multistate Input (Basic) ... ... ... . 3 - 98 ... 3.14.9 Multistate Output (Basic) ... ... 3 - 100 ... Multistate Value (Basic) 101 - 3 ... ... 3. 14.10 3.14.11 ... ... ... .. 3 - 102 Attribute Descriptions ... ... ... ... 3 - 138 3.15 Diagnostics Overview ... ... ... ... 3 - 138 3.15.1 3.15.2 ... ... ... ... 3 - 139 Server ... 3.15.3 ... ... ... Client 3 - 142 3.16 Poll Control ... ... ... ... 3 - 142 3.16.1 ... ... ... ... 3 - 142 Overview ... ... ... ... 3.16.2 3 - 143 Terminology ... ... ... Commissioning Process 3 - 144 3.16.3 3.16.4 Server ... ... ... ... 3 - 144 ... 3.16.5 ... ... ... Client 3 - 146 3.16.6 Poll Control Cluster Sequence Diagram ... ... ... 3 - 149 3 3.17 Power Profile ... ... ... ... 151 - 3.17.1 ... ... ... ... 3 - 151 Overview References ... ... ... ... 3 - 152 3.17.2 ... ... ... ... 3 - 152 3.17.3 General Description Server Attribut es ... ... 3.17.4 ... 3 - 152 ... 3.17.5 Server Commands Received ... ... ... 3 - 154 ... ... ... Server Commands Generated 3 - 161 3.17.6 3.17.7 Client Attributes ... ... ... ... 3 - 173 3.17.8 ... ... ... 3 - 173 Client Commands Received ... ... ... 3.17.9 3 - 173 Client Commands Generated Example of Device Interactions Using the Power Profile (Informative Section) ... 3 - 173 3.17.10 3.18 Meter Identification ... ... ... ... 3 - 175 ... 3.18.1 ... ... ... Overview 3 - 175 Server ... ... ... ... 3 - 176 3.18.2 Client ... ... ... ... 179 - 3 3.18.3 - 9  2007 Copyright 2016 , The ZigBee Alliance. All rights reserved. Page

10 ZigBee Cluste Specification r Library 075123 – ZigBee Document Measurement and Sensing Chapter 4 ... ... ... 4 - 1 ... 4 General Description ... ... ... ... - 1 4.1 Introduction ... ... ... ... 4.1.1 4 - 1 ... ... ... ... 4 - 1 4.1.2 Cluster List Illuminance Measurement ... ... ... ... 4 - 4 4.2 Overview ... ... ... ... 4 - 4.2.1 4 4.2.2 Server ... ... ... ... 4 - 5 Client ... ... ... ... 4 - 6 4.2.3 ... ... ... ... 4 - 7 4.3 Illuminance Level Sensing Overview ... ... ... 4.3.1 4 - 7 ... 4.3.2 Server ... ... ... ... 4 - 7 ... ... ... ... Client 4 - 9 4.3.3 4.4 Temperature Measurement ... ... ... ... 4 - 9 4.4.1 ... ... ... ... 4 - 9 Overview Server ... ... ... ... 4 - 10 4.4.2 ... ... ... ... 4 - 11 4.4.3 Client Pressure Measurement ... ... ... 4.5 4 - 11 ... 4.5.1 Overview ... ... ... ... 4 - 11 ... ... ... ... Server 4 - 12 4.5.2 4.5.3 Client ... ... ... ... 4 - 15 4.6 ... ... ... ... 4 - 15 Flow Measurement ... 4.6.1 ... ... ... Overview 4 - 15 4.6.2 Server ... ... ... ... 4 - 15 ... 4.6.3 ... ... ... Client 4 - 17 4.7 Relative Humidity Measurement ... ... ... 4 - 17 ... 4.7.1 Overview ... ... ... 4 - 17 ... ... Server 17 - 4 ... ... 4.7.2 4.7.3 ... ... ... ... 4 - 19 Client Occupancy Sensing ... ... ... ... 4 - 19 4.8 ... ... ... ... 4 - 19 4.8.1 Overview Server ... ... ... 4.8.2 4 - 19 ... 4.8.3 Client ... ... ... ... 4 - 22 ... ... ... ... Electrical Measurement 4 - 22 4.9 4.9.1 Overview ... ... ... ... 4 - 22 4.9.2 ... ... ... ... 4 - 23 Server .. Chapter 5 ... ... ... ... Lighting 5 - 1 5.1 General Description ... ... ... ... 5 - 1 ... 5.1.1 ... ... ... Introduction 5 - 1 5.1.2 Terms ... ... ... ... 5 - 1 ... 5.1.3 Cluster List ... ... ... 5 - 1 5.2 Color Control Cluster ... ... ... ... 5 - 2 5.2.1 ... ... ... ... 5 - 2 Overview Server ... ... ... ... 5 - 3 5.2.2 ... ... ... ... 5 - 29 5.2.3 Client Ballast Configuration Cluster ... ... ... 5.3 5 - 30 ... 5.3.1 Overview ... ... ... ... 5 - 30 ... ... ... ... Server 5 - 30 5.3.2 5.3.3 Client ... ... ... ... 5 - 34 5.3. 4 The Dimming Light Curve ... ... ... 5 - 34 ... Chapter 6 ... ... ... ... HVAC 6 - 1 6.1 General Description ... ... ... ... 6 - 1 ... 6.1.1 ... ... ... Introduction 6 - 1 Terms ... ... ... ... 6 - 1 6.1.2 ... ... ... ... Cluster List 1 - 6 6.1.3  , The ZigBee Alliance. All rights reserved. 10 Copyright Page 2007 - 2016

11 ZigBee Cluster Library – Document 075123 Pump Configuration and Control 6.2 ... ... . 6 - 3 ... - Overview ... ... ... 6 ... 3 6.2.1 Server ... ... ... ... 6.2.2 - 3 6 ... ... ... ... 6 - 13 6.2.3 Client . ... ... ... ... 6 - 13 6.3 Thermostat Overview ... ... ... ... 6 - 6.3.1 13 6.3.2 S erver ... ... ... ... 6 - 13 Client ... ... ... ... 6 - 32 6.3.3 6 ... ... ... ... - 32 6.4 Fan Control Overview ... ... ... 6.4.1 6 - 32 ... 6.4.2 Server ... ... ... ... 6 - 33 ... ... ... ... Client 6 - 34 6.4.3 6.5 Dehumidification Control ... ... ... ... 6 - 34 6.5.1 ... ... ... ... 6 - 34 Overview Server ... ... ... ... 6 - 35 6.5.2 6 ... ... ... ... - 37 6.5.3 Client Thermostat User Interface Configuration ... ... 6.6 6 - 37 ... 6.6.1 Overview ... ... ... ... 6 - 37 ... ... ... ... Server 6 - 38 6.6.2 6.6.3 Client ... ... ... ... 6 - 40 Chapter 7 ... ... ... ... .. 7 - 1 Closures ... ... ... ... General Description 7 - 1 7.1 7.1.1 Introduction ... ... ... ... 7 - 1 ... 7.1.2 ... ... ... Cluster List 7 - 1 Shade Configuratio n ... ... ... ... 7 - 2 7.2 ... ... ... Overview 2 - 7 ... 7.2.1 7.2.2 ... ... ... ... 7 - 3 Server Client ... ... ... ... 7 - 5 7.2.3 ... ... ... ... ... 7 - 5 7.3 Door Lock Overview ... ... 7.3.1 ... 7 - 5 ... 7.3.2 Server ... ... ... ... 7 - 5 ... ... ... ... Client 7 - 47 7.3.3 7.4 Window Covering ... ... ... ... 7 - 47 7.4.1 ... ... ... ... 7 - 47 Overview ... ... ... ... 7.4.2 7 - 47 Server ... 7.4.3 ... ... ... Client 7 - 56 Chapter 8 Security and Safety ... ... ... ... 8 - 1 ... 8.1 ... ... ... General Description 8 - 1 8.1.1 Introduction ... ... ... ... 8 - 1 8.1.2 Cluster List ... ... ... ... 8 - 1 8.2 ... ... ... ... ... 8 - 2 IAS Zone 8 ... ... ... ... - 2 8.2.1 Overview Server ... ... ... ... 8 - 3 8.2.2 8.2.3 ... ... ... ... 8 - 12 Client ... 8.3 ... ... ... IAS ACE ... 8 - 12 8.3.1 Overview ... ... ... ... 8 - 12 8.3.2 ... ... ... ... 8 - 13 Server ... 8.3.3 ... ... ... Client 8 - 26 8.4 IAS WD ... ... ... ... ... 8 - 26 ... 8.4.1 ... ... ... Overview 8 - 26 8.4.2 Server ... ... ... ... 8 - 27 ... 8.4.3 Client ... ... ... 8 - 31 1 - 9 ... ... ... ... Protocol Interfaces Chapter 9 - 11  2007 Copyright 2016 , The ZigBee Alliance. All rights reserved. Page

12 ZigBee Cluste Specification r Library 075123 – ZigBee Document General Description 9.1 ... ... ... 9 - 1 ... 9 Introduction ... ... ... ... - 1 9.1.1 Cluster Lis t ... ... ... ... 9.1.2 9 - 1 ... ... ... ... 9 - 3 9.2 Generic Tunnel Overview ... ... ... ... 9 - 3 9.2.1 Server ... ... ... ... 9 9.2.2 3 - 9.2.3 Client ... ... ... ... 9 - 5 BACnet Protocol Tunnel ... ... ... ... 9 - 6 9.3 ... ... ... ... 9 - 6 9.3.1 Overview Server ... ... ... 9.3.2 9 - 6 ... 9.3.3 Client ... ... ... ... 9 - 7 ... ... ... BACnet Input, Output and Value Clusters 9 - 7 9.4 9.4.1 Overview ... ... ... ... 9 - 7 9.4.2 ... ... ... 9 - 8 Analog Input (BACnet Regular) A ... ... ... 9 - 9 9.4.3 nalog Input (BACnet Extended) 9 Analog Output (BACnet Regular) ... ... ... - 10 9.4.4 Analog Output (BACnet Extended) ... ... ... 9 - 12 9.4.5 9.4.6 ... ... ... 9 - 13 Analog Value (BACnet Regular) ... ... ... 9.4.7 9 - 14 Analog Value (BACnet Extended) 9.4.8 ... ... ... Binary Input (BACnet Regular) 9 - 16 9.4.9 Binary Input (BACnet Extended) ... ... ... 9 - 17 9.4.10 ... ... ... 9 - 18 Binary Output (BACnet Regular) ... ... ... 9.4.11 9 - 20 Binary Output (BACnet Extended) 9.4.12 ... ... ... Binary Value (BACnet Regular) 9 - 21 9.4.13 Binary Value (BACnet Extended) ... ... ... 9 - 23 9.4.14 ... ... ... Multistate Input (BACnet Regular) 9 - 24 Multistate Input (BACnet E xtended) ... ... ... 9 - 25 9.4.15 Multistate Output (BACnet Regular) 26 - 9 ... ... ... 9.4.16 9.4.17 ... ... ... 9 - 28 Multistate Output (BACnet Extended) Multistate Value (BACnet Regular) ... ... ... 9 - 29 9.4.18 9 ... ... ... - 30 9.4.19 Multistate Value (BACnet Extended) Attributes of BACnet Regular Clusters ... ... ... 9.4.20 9 - 31 9.4.21 Attributes of BACnet Extended Clusters ... ... ... 9 - 33 ... 9.5 ... ... ... ISO 7818 Protocol Tunnel 9 - 35 9.5.1 Scope and Purpose ... ... ... ... 9 - 35 9.5.2 ... ... ... ... 9 - 35 Definitions ... escription ... ... ... 9.5.3 9 - 35 General D ... ... ... ... Overview 9 - 35 9.5.4 9.5.5 Server ... ... ... ... 9 - 36 ... 9.5.6 ... ... ... Client 9 - 38 9.6 Partition ... ... ... ... ... 9 - 39 Scope and Purpose 9.6.1 ... ... ... ... 9 - 39 9.6.2 ... ... ... ... 9 - 39 Introduction Server ... ... ... ... 9 - 41 9.6.3 ... ... ... ... 9 - 47 9.6.4 Client General Use of Partition Cluster ... ... 9.6.5 9 - 47 ... 9.7 11073 Protocol Tunnel ... ... ... ... 9 - 49 ... ... ... ... Overview 9 - 49 9.7.1 9.7.2 Server ... ... ... ... 9 - 50 9.7.3 ... ... ... ... 9 - 56 Client ... Chapter 10 ... ... ... Smart Energy 10 - 1 10.1 Gener al Description ... ... ... ... 10 - 1 ... 10.1.1 ... ... ... Introduction 10 - 1 Cluster List ... ... ... ... 10 - 1 10.1.2 1 - 10 ... ... ... ... ... 10.2 P r ic e  , The ZigBee Alliance. All rights reserved. 12 Copyright Page 2007 - 2016

13 ZigBee Cluster Library Document – 075123 Overview 10.2.1 ... ... ... 10 - 1 ... ... ... 10 - 2 10.2.2 ... Server ... - lient ... ... 10 ... 21 C 10.2.3 ... ... ... ... 10.2.4 10 - 23 Application Guidelines Demand Respons e and Load Control ... ... 10 - 24 10.3 ... Overview ... ... ... ... 10 - 10.3.1 24 ... ... ... ... 10 - 25 10.3.2 Server C 10.3.3 ... ... ... 10 - 32 lient ... - ... ... 10 ... 37 10.3.4 Application Guidelines Rules and Guidelines for Overlapping Events ... ... 10 10.3.5 40 - ... ... ... ... ... 10 - 47 10.4 Metering Overview ... ... ... ... 10 - 47 10.4.1 Server ... ... ... ... 10 - 51 10.4.2 10.4.3 etering Application Guideli n es ... ... ... 10 - 84 M Messaging ... ... ... ... 10 - 85 10.5 10 Overview ... ... ... ... - 85 10.5.1 Server ... ... ... ... 10 - 86 10.5.2 Client ... ... ... ... 10 - 89 10.5.3 10 Application Guidelines ... ... ... - 89 10.5.4 Tunneling ... ... ... ... . 10 - 91 10.6 10.6.1 ... ... ... ... 10 - 91 Overview Server ... ... ... ... 10 - 94 10.6.2 ... ... ... ... lient 10 - 103 10.6.3 C Key Establishment ... ... ... ... 10 10.7 103 - 10.7.1 Scope and Purpose ... ... ... ... 10 - 103 10.7.2 Ge neral Description ... ... ... 10 - 104 ... 106 - 10 ... ... ... ... List 10.7.3 Cluster 10.7.4 ... ... ... 10 - 117 Application Implementation 10 ... ... ... - 122 10.7.5 Key Establishment Test Vectors Over - the - Air Upgrading ... ... ... ... 11 - 1 Chapter 11 ... ... 11.1 ... ... 11 - 1 Introduction ... ... ... ... 11.1.1 11 - 1 Purpose ... 11.1.2 ... ... ... Scope 11 - 1 11.1.3 Terminology ... ... ... ... 11 - 1 11.2 ... ... ... ... 11 - 1 General Description ... ... ... ... 11.2.1 11 - 1 Introduction ... 11.2.2 ... ... ... Cluster List 11 - 2 11.3 OTA Upgrade ... ... ... ... 11 - 3 ... 11.3.1 ... ... ... Overview 11 - 3 11.3.2 Security ... ... ... ... 11 - 4 ... 11.3.3 Image Verification ... ... ... 11 - 4 11.3.4 Image Transport ... ... ... ... 11 - 5 11.3.5 ature ... ... ... ... 11 - 5 Image Sign Image Integrity Code ... ... ... ... 11 - 5 11.3.6 11 ... ... ... ... - 6 11.4 OTA File Format General Structure ... ... ... ... 11.4.1 - 6 11 11.4.2 OTA Header Format ... ... ... ... 11 - 6 ... - element Format ... ... 11.4.3 ... 11 - 10 Sub 11.4.4 Tag Identifiers ... ... ... ... 11 - 11 11.4.5 - element ... ... ... 11 - 12 ECDSA Signature Sub ... 11.4.6 - ele ment ... ECDSA Signing Certificate Sub ... 11 - 12 11.4.7 Image Integrity Code Sub - element ... ... ... 11 - 12 ... 11.5 ... ... ... OTA File Naming 11 - 13 Signatures ... ... ... ... . 11 - 13 11.6 ... ... ... 13 ECDSA Signature Calculation - 11 . 11.7 - 13  2007 Copyright 2016 , The ZigBee Alliance. All rights reserved. Page

14 ZigBee Cluste Specification r Library 075123 – ZigBee Document ECDSA Signature Verification 11.7.1 ... ... 11 - 14 ... 11 Image Integrity Code ... ... .. ... - 15 11.7.2 Discovery of the Upgrade Server ... ... ... 11 11.8 16 - erver and Client ... ... ... ... 11 - 16 11.8.1 S Sleepy Devices ... ... ... ... 11 - 17 11.8.2 Dependencies ... ... ... ... 11 - 17 11.9 11.10 ... ... ... ... 11 - 17 OTA Cluster Attributes UpgradeServerID Attribute ... ... ... 11 - 18 11.10.1 ... FileOffset Attribute ... ... ... 11 - 18 11.10.2 CurrentFileVersion Attribute ... ... 11.10.3 11 - 18 ... 11.10.4 CurrentZigBeeStackVersion Attribute ... ... ... 11 - 19 ... Attribute ... ... DownloadedFileVersion 11 - 19 11.10.5 11.10.6 DownloadedZigBeeStackVersion Attribute ... ... . 11 - 19 11.10.7 Attribute ... ... ... 11 - 19 ImageUpgradeStatus Manufacturer ID Attribute ... ... ... 11 - 20 11.10.8 Image Type ID ... ... ... Attribute 11 - 20 11.10.9 MinimumBlockPeriod Attribute ... 11.10.10 ... 11 - 20 ... 11.10.11 Image Stamp Attribute ... ... ... 11 - 20 ... 11.11 s ... ... ... OTA Cluster Parameter 11 - 20 11.11.1 QueryJitter Parameter ... ... ... . 11 - 21 11.11.2 Parameter ... ... ... ... 11 - 21 DataSize ... 11.11.3 Parameter ... ... OTAImageData 11 - 21 11.11.4 CurrentTime and UpgradeTime/RequestTime Parameters ... ... 11 - 21 11.12 OTA Upgrade Diagr am ... ... ... ... 11 - 23 ... 11.13 Command Frames ... ... ... 11 - 24 ... ... ... OTA Cluster Command Identifiers 24 - 11 11.13.1 11.13.2 ... ... ... 11 - 25 OTA Cluster Status Codes Image Notify Command ... ... ... 11 - 25 11.13.3 11 Query Next Image Request Command ... ... ... - 28 11.13.4 Query Next Image Response Command ... ... ... 11 - 30 11.13.5 11.13.6 ... ... ... 11 - 32 Image Block Request Command ... ... ... 11.13.7 11 - 34 Image Page Request Command 11.13.8 ... ... ... Image Block Response Command 11 - 37 11.13.9 Upgrade End Request Command ... ... ... 11 - 41 11.13.10 ... ... 11 - 45 Query Device Specific File Request Command 11 ... ... 11.13.11 - 46 Query Device Specific File Response Command 11.14 ... ... ... Multiple Files Required for a Bootload 11 - 48 11.14.1 Single OTA File with multiple sub - elements ... ... 11 - 48 11.14.2 Separate OTA Files Upgraded Independently ... ... 11 - 48 11.14.3 Multiple OTA Files Dependent on Each Other ... ... 11 - 49 ... 11.15 OTA Upgrade Cluster Management ... ... 11 - 49 11.15.1 ... ... ... . 11 - 49 Query Upgrade Status Query Downloaded ZigBee Sta ... ... 11 - 49 11.15.2 ck and File Versions ... ... ... ... 11 - 50 11.15.3 Rate Limiting Current Time, Request Time, and MinimumBlockPeriod ... ... 11.15.4 11 - 51 11.16 OTA Upgrade Process ... ... ... ... 11 - 52 ... ... ... Application Standard Specific Decisions 11 - 52 11.17 11.17.1 SE Profile Standard: OTA Upgrade from SE 1.x to SE 2.0 ... ... 11 - 53 11.18 ... ... ... ... 1 1 - 53 OTA Upgrade Recovery ... s ... ... ... Chapter 12 12 - 1 Telecommunication ... ... ... ... General Description 12 - 1 12.1 12.1.1 Introduction ... ... ... ... 12 - 1 12.1.2 C luster List ... ... ... ... 12 - 1 ... 12.2 Information ... ... ... 12 - 1 ... ... ... ... Scope and Purpose 1 - 12 12.2.1  , The ZigBee Alliance. All rights reserved. 14 Copyright Page 2007 - 2016

15 ZigBee Cluster Library – Document 075123 1 ... ... ... ... 12 - 2 Cluster List 2.2.2 - ... ... ... 12 ... 4 12.2.3 Overview Server ... ... ... ... 12.2.4 - 4 12 ... ... ... ... 12 - 20 12.2.5 Client 12 Payload Formats for Contents Data ... ... ... - 20 12.2.6 Chatting ... ... 12.3 ... ... 12 - 24 ... 12.3.1 Introduction ... ... ... ... 12 - 24 ... ... ... ... 12 - 25 12.3.2 Server Client ... ... ... ... 12 - 35 12.3.3 12.4 ... ... ... ... 12 - 36 Voice Over ZigBee ... 12.4.1 ... ... ... Scope and Purpose 12 - 36 12.4.2 Overview ... ... ... ... 12 - 36 12.4.3 ... ... ... ... 12 - 37 Server ... ... ... ... 12 - 44 12.4.4 Client Commissioning ... ... ... ... 13 - 1 Chapter 13 ... ... 13.1 ... ... 13 - 1 General Description ... ... ... 13.1.1 Introduction 13 - 1 ... 13.1.2 Cluster List ... ... ... ... 13 - 1 13.2 Commissioning ... ... ... ... 13 - 1 13.2.1 ... ... ... ... 13 - 1 Overview ... ... ... ... 13.2.2 13 - 3 Server ... 13.2.3 ... ... ... Client 13 - 17 13.2.4 ZigBee Alliance EUI - 64s ... ... ... 13 - 17 ... 13.3 ... ... ... Touchlink Commissioning 13 - 18 Overview ... ... ... ... 13 - 19 13.3.1 13 ... ... ... ... Server 19 - 13.3.2 13.3.3 ... ... ... ... 13 - 45 Client ... ... ... . 13 - 46 13.3.4 Functional Description Retail ... ... ... ... .. 14 - 1 Chapter 14 ... ... ... 14.1 ... 14 - 1 General Description ... ... ... ... 14.1.1 14 - 1 Introduction ... 14.1.2 ... ... ... Cluster List 14 - 1 14.2 Retail Tunnel (MSP Tu nnel) ... ... ... ... 14 - 1 14.2.1 ... ... ... ... 14 - 1 Overview ... ... ... ... 14.2.2 14 - 2 Server ... 14.2.3 ... ... ... Client 14 - 4 14.3 Mobile Device Configuration ... ... ... ... 14 - 4 ... 14.3.1 ... ... ... Overview 14 - 4 Serv er ... ... ... ... 14 - 5 14.3.2 14.3.3 Client ... ... ... ... 14 - 6 14.4 ... ... ... ... 14 - 6 Neighbor Cleaning Over ... ... ... ... 14 - 6 14.4.1 view 14 Server ... ... ... ... - 7 14.4.2 Client ... ... ... 14.4.3 14 - 8 ... 14.5 Neare st Gateway ... ... ... ... 14 - 9 ... ... ... ... Overview 14 - 9 14.5.1 14.5.2 Server ... ... ... ... 14 - 9 14.5.3 ient ... ... ... ... 14 - 10 Cl ... ... ... ... Examples of Use 14 - 10 14.5.4 Chapter 15 Appliances ... ... ... ... 15 - 1 ... 15. General Description ... ... ... 15 - 1 1 Introduction ... ... ... ... 15 - 1 15.1.1 ... ... Cluster List 1 - 15 ... ... 15.1.2 - 15  2007 Copyright 2016 , The ZigBee Alliance. All rights reserved. Page

16 ZigBee Cluste Specification r Library 075123 – ZigBee Document EN50523 Appliance Control ... ... ... 15 - 1 15.2 ... Overview ... ... ... ... 15 - 15.2.1 1 15.2.2 General Description ... ... ... ... 15 - 2 ... ... ... ... Server Attributes 15 - 2 15.2.3 15.2.4 Server Commands Received ... ... ... 15 - 4 15.2.5 ... ... ... 15 - 7 Server Commands Generated ... 15.2.6 ... ... ... Client 15 - 10 15.3 EN50523 Appliance Identification ... ... ... 15 - 10 ... 15.3.1 Overview ... ... ... 15 - 10 ... ... ... ... Server 11 - 15 15.3.2 15.3.3 ... ... ... ... Client 15 - 14 ... EN50523 Ap pliance Events and Alerts ... ... 15 - 15 15.4 ... 15.4.1 Overview ... ... ... 15 - 15 15.4.2 Server ... ... ... ... 15 - 16 Client ... ... ... 19 - 15 ... 15.4.3 ... 15.5 ... ... ... Appliance Statistics 15 - 20 Overview ... ... ... ... 15 - 20 15.5.1 15.5.2 Server ... ... ... ... 15 - 21 ... 15.5.3 Client ... ... ... 15 - 23 ... 15 - 24 ... Appliance Statistics Cluster Sequence Diagram 15.5.4  , The ZigBee Alliance. All rights reserved. 16 Copyright Page 2007 - 2016

17 ZigBee Cluster Library – Document 075123 FIGURES LIST OF ... ... ... - 2 - 2 Figure 2 1. The ZCL Client Server Model ... 2. Format of the General ZCL Frame ... ... ... 2 - 6 Figure 2 - 3. Format of the Frame Control Field - ... ... ... 2 - 6 Figure 2 ... 4. Values of the Frame Type Sub field ... ... - 2 - 6 Figure 2 - - 5. Format of the Read Attributes Command Frame ... ... ... 2 - 9 Figure 2 - Figure 2 ... ... 2 - 10 6. Format of Read Attributes Response Command Frame - 7. Format of the Read Attributes Status Record Field ... ... . 2 - 10 Figure 2 8. Format of the Attribute Value Field for an Array, Set or Bag ... ... 2 - 11 Figure 2 - - 9. Format of the Attribute Value Field for a Structure ... ... Figure 2 2 - 11 . Figure 2 10. Format of the Write Attributes Command Frame ... ... .. 2 - 12 - ... - ... ... 11. Format of the Write Attribute Record Field 2 - 12 Figure 2 Figure 2 - 12. Format of Write Attributes Response Command Frame ... ... 2 - 13 Figure 2 - ... ... 2 - 14 13. Format of the Write Attribute Status Record Field - 14. Write Attributes No Response Command Fram ... ... .. 2 - 14 Figure 2 e 15. Format of the Configure Reporting Command Frame ... ... 2 - 16 Figure 2 - - 16. Format of the Attribute Reporting Configuration Record ... ... 2 Figure 2 16 - Figure 2 17. Format of the Configure Reporting Response Command Frame ... ... 2 - 19 - Figure 2 18. Format of the Attribute Status Record Field ... ... - 2 - 19 ... Figure 2 - 19. Read Reporting Configuration Command Frame ... ... .. 2 - 20 Figure 2 - ... ... ... 2 - 20 20. Format of the Attribute Status Record Field ... Figure 2 Frame 21. Format of the Read Reporting Configuration Response Command 2 - 21 - Figure 2 - 22. Attribute Reporting Confi guration Record Field ... ... ... 2 - 21 Figure 2 23. Format of the Report Attributes Command Frame ... ... 2 - 23 - - 24. Format of the Attribute Report Fields ... ... ... 2 - 23 Figure 2 25. Format - 25 - 2 ... ... of the Default Response Command Frame Figure 2 Figure 2 - ... ... 2 - 26 26. Format of the Discover Attributes Command Frame 27. Discover Attributes Response Command Figure 2 ... ... ... 2 - 27 - Frame - ... ... 2 ... 27 - Figure 2 28. Format of the Attribute Report Fields 29. Format of Read Attributes Structured Command Frame ... ... Figure 2 - 28 - 2 - ... ... ... .. 2 - 29 Figure 2 30. Format of the Selector Field ... - Frame ... ... 2 - 30 Figure 2 31. Write Attributes Structured Command - 32. Format of the Write Attribute Record Field ... ... ... 2 - 30 Figure 2 - Figure 2 ... ... ... .. 2 - 30 33. Format of the Selector Field 34. Write Attributes Structured Response Command Frame 2 ... ... - - 32 Figure 2 - ... ... 2 - 33 Figure 2 35. Format of the Write Attribute Status Record Field - 36. Format of the Discover Server Com mands Command Frame ... ... 2 - 34 Figure 2 - ... ... 2 - 35 37. Format of the Discover Commands Received Response Frame Figure 2 ... 38. Format of the Discover Attributes Extended Command Frame ... Figure 2 2 - 36 - Figure 2 - 39. Format of the Discover Attributes Extended Response Command Frame ... 2 - 37 Figure 2 - ... ... 2 - 38 40. Format of the Extended Attribute Information Fields 2 - ... ... ... te Access Control Field - 3 8 Figure 2 41. Format of the Attribu - 42. Format of the ZigBee Semi - precision Number ... ... ... 2 - 44 Figure 2 - Figure 2 ... ... ... 2 - 46 43. Format of the Octet String Type ... - Character String Type ... Figure 2 ... 2 - 46 44. Format of the Figure 2 - 45. Format of the Long Octet String Type ... ... ... 2 - 46 Figure 2 - ... ... ... 2 - 47 46. Format of the Long Character String Type ... Figure 2 he Time of Day Type ... ... 47. Format of t 2 - 48 - Figure 2 - 48. Format of the Date Type ... ... ... ... 2 - 49 Figure 3 1. Typical Usage of Device Configuration and Installation Clusters ... ... 3 - 2 - Figure 3 2. Typical Usage of On/Off and Level Control Clusters ... ... 3 - 3 - 3 Figure 3 - 3. Typical Usage of the Alarms Cluster ... ... ... 3 - 4 - 3 ... ... 4. Typical Usage of the Location Cluster with Centralized Device - Figure 3 - 17  2007 Copyright 2016 , The ZigBee Alliance. All rights reserved. Page

18 ZigBee Cluste Specification r Library 075123 – ZigBee Document 5. Example Usage of the Input, Output and Value Clusters Figure 3 ... 3 - 5 - ... 3 ... ... 6. Format of Identify Query Response Command - 27 - Figure 3 Payload 7. Format of the Trigger Effect Comman d ... ... ... Figure 3 3 - 28 - - ... ... 3 - 29 Figure 3 8. Format of Identify Query Response Command Payload 3 - ... ... ... - 33 Figure 3 9. Format of the Add Group Command Payload - 10. Format of the View Gro up Command Payload ... ... ... 3 - 33 Figure 3 Figure 3 11. Format of Get Group Membership Command Payload ... ... 3 - 33 - - 13. Add Group If Identifying Command Payload ... ... ... 3 - 35 Figure 3 3 14. Forma ... ... t of the Add Group Response Command Payload - 36 Figure 3 - - 15. Format of the View Group Response Command Payload ... ... Figure 3 3 - 36 Figure 3 16. Format of the Get Group Membership Response Command Payload ... .. 3 - 36 - ... - Payload ... 17. Format of Remove Group Response Command 3 - 37 Figure 3 Figure 3 - 18. Format of the Add Scene Command Payload ... ... ... 3 - 41 Figure 3 - nd Payload ... ... ... 3 - 42 19. Format of the View Scene Comma - 20. Format of the Remove Scene Command Payload ... ... . 3 - 42 Figure 3 3 21. Format of the Remove All Scenes Command Payload ... ... - 43 Figure 3 - - 22. Format of the Store Scene Command Payload ... ... ... Figure 3 3 - 43 Figure 3 23. Format of the Recall Scene Command Payload ... ... ... 3 - 44 - ... Figure 3 Payload ... 24. Format of Get Scene Membership Command 3 - 44 - Fig ure 3 - 26. Format of the Mode Field of the Copy Scene Command ... ... 3 - 45 Figure 3 - ... ... 3 - 47 27. Format of the Add Scene Response Command Payload - ... ... Figure 3 3 - 47 28. Format of the View Scene Response Command Payload Figure 3 ... ... 29. Format of Remove Scene Response Command Payload 3 - 48 - Figure 3 - 30. Format of the Remove All Scenes Response Command Payload ... ... 3 - 48 ... Figure 3 of the Store Scene Response Command Payload ... 31. Format 3 - 48 - Figure 3 - 32. Format of the Get Scene Membership Response CommandPayload ... ... 3 - 49 . Figure 3 34. State Behavior of Store and Recall Global Scene ... ... - 3 - 53 ... 35. Format of the Off With Effect Command - 54 - 3 ... ... Figure 3 Figure 3 - ... ... ... 3 - 56 36. Format of the On With Timed Off Command - 37. Format of the On/Off Control Field of the O ... 3 - 56 Figure 3 n With Timed Off Command 3 - ... ... ... - 57 Figure 3 38. On/Off Cluster Operation State Machine - 39. Format of the Move to Level Command Payload ... ... . Figure 3 - 64 3 Figure 3 40. Form at of the Move Command Payload ... ... ... 3 - 64 - - ... ... ... 41. Format of the Step Command Payload 3 - 65 Figure 3 Figure 3 - 42. Format of the Reset Alarm Command Payload ... ... ... 3 - 69 Figure 3 - at of the Alarm Command Payload ... ... ... 3 - 70 43. Form - ... ... Figure 3 3 - 70 44. Format of the Get Alarm Response Command Payload Figure 3 ... ... ... 45. Example of Usage of RSSI Location Cluster 3 - 75 - Fi gure 3 - 46. Format of the Set Absolute Location Command Payload ... ... 3 - 80 Figure 3 ... ... . 47. Format of the Set Device Configuration Payload 3 - 80 - Figure 3 - 48. Format of the Get Device Configuration Payload ... ... . 3 - 81 - Figure 3 - 49. Format of the Get Location Data Payload ... ... ... 3 81 Figure 3 - ... ... 3 - 83 50. Format of the RSSI Response Command Payload - 51. Format of the Send Pings Comman ... ... ... 3 - 83 Figure 3 d Payload 3 52. Format of the Anchor Node Announce Command Payload ... ... - 84 Figure 3 - - 53. Format of the Device Configuration Response Payload ... ... Figure 3 - 85 3 Figure 3 54. Format of the Location Data Response Payload ... ... ... 3 - 85 - Figure 3 55. Format of the Location Data Notification Payload ... ... - 3 - 86 Figure 3 - 56. Format of the RSSI Ping Command Payload ... ... ... 3 - 87 Figure 3 - Report RSSI Measurements Command Payload ... ... 3 - 87 57. Format of the - ... ... ... ... Figure 3 3 - 88 58. Neighbor Info Structure ... Figure 3 Request Own Location Command Payload ... 59. Format of the 3 - 88 - Figure 3 - 60. Format of the Check - in Response Payload ... ... ... 3 - 147 Figure 3 Format of the Set Long Poll Interval Command Payload ... ... 61. 3 - 1 49 - - 62. Format of the Set Short Poll Interval Command Payload ... ... 3 - 149 Figure 3 ... ... 63. Poll Control Cluster Sequence Diagram 150 - 3 ... - Figure 3  , The ZigBee Alliance. All rights reserved. 18 Copyright Page 2007 - 2016

19 ZigBee Cluster Library – Document 075123 3 64. ... ... ... - 152 - Figure 3 Typical Usage of the Power Profile Cluster 65 . Format of the PowerProfileRequest Command Payload ... ... 3 - 155 Figure 3 - - 66. GetPowerProfilePriceResponse Command ... ... 3 - 156 Figure 3 Format of the ... - GetOverallSchedulePriceResponse Command ... Format of the 3 - 157 Figure 3 67. - 68. Format of the EnergyPhasesScheduleNotification Command Payload ... Figure 3 - 158 3 Figure 3 69. Format of the PowerProfileNotification Command Payload (1 of 2) ... .. 3 - 162 - ... - PowerProfileStateResponse Command Frame ... Format of the 3 - 165 Figure 3 70. - 71. Format of the Power Profile Record Field ... ... ... 3 - 165 Figure 3 - Figure 3 Power Profile States ... ... ... ... 3 - 167 72. ... - Power Profile State Diagram ... ... 73. 3 - 167 Figure 3 Figure 3 - 74. Format of EnergyPhasesScheduleStateResponse in Case of No Scheduled Phases ... 3 - 170 Figure 3 - Format of the PowerProfileSched uleConstraintsNotification Command Frame ... 3 - 171 75. ... - GetPowerProfilePriceExtended Command Payload ... Format of the 3 - 172 Figure 3 76. - 77. Visualization of Price Associated to a Power Profile ... ... 3 - 173 Figure 3 - Energy Remote Disabled: Example of Sequence Diagram with User Interaction Figure 3 ... 3 - 174 78. - 3 Energy Remote Enabled: Example of Sequence Diagram with User Interaction ... Figure 3 - 175 79. Figure 3 Typical Usage of the Meter Identification Cluster ... ... 80. 3 - 176 - Figure 4 - 1. Typical Usage of Illuminance Measurement and Level Sensing Clusters ... . 4 - 2 Figure 4 - ge of Temperature, Pressure and Flow Measurement Clusters ... 4 - 3 2. Typical Usa - - ... ... ... 4 Figure 4 4 3. Typical Usage of Occupancy Sensing Cluster ... Figure 4 The DC Overload Alarm Mask ... ... 4. 4 - 34 - F igure 4 - 5. The ACAlarmsMask Attribute ... ... ... . 4 - 35 ... Figure 4 Format of the Get Profile Info Response Command ... 6. 4 - 43 - Figure 4 7. ProfileIntervalPeriod ... ... ... ... 4 - 43 - - 44 - 4 ... ... of the Get Measurement Profile Response Command Format 8. Figure 4 Figure 4 - ... ... . 4 - 45 9. Format of the Get Measurement Profile Command 1. Typical Usage of Ballast Configuration and Color Control Clusters 5 ... ... - - 2 Figure 5 5 - ... ... ... - 13 Figure 5 2. Format of the Move to Hue Command Payload - 3. Format of the Move Hue Command Payload ... ... ... 5 - 14 Figure 5 5 - ... ... ... d - 15 4. Format of the Step Hue Command Payloa Figure 5 - 5. Format of the Move to Saturation Command Payload ... ... 5 - 16 Figure 5 . - ... ... 6. Format of the Move Saturation Command Payload Figure 5 - 16 5 Figure 5 - 7. Format of the Step Saturation Command Payload ... ... ... 5 - 17 Figure 5 - ... ... ... 5 - 18 8. Move to Hue and Saturation Command Payload ... Figure 5 ... ... 10. Format of the Move Color Command Payload 5 - 19 - Figure 5 - 11. F ormat of the Step Color Command Payload ... ... ... 5 - 20 ... Figure 5 ... ... 12. Move to Color Temperature Command Payload 5 - 21 - - 13. Format of the Enhanced Move to Hue Command ... ... . 5 - 21 Figure 5 Figure 5 - 15. Format of the Enhanced Step Hue Command ... ... ... 5 - 23 ... Figure 5 - 16. Format of the Enhanced Move to Hue and Saturation Command 23 ... 5 - Figure 5 - ... ... ... 5 - 24 17. Format of the Color Loop Set Command 18. Format of the Update Flags Field of the Color Loop Set Command 5 ... ... - - 24 Figure 5 - ... ... 5 - 26 Figure 5 19. Format of the Move Color Temperature Command ... 20. Format of the St ep Color Temperature Command ... Figure 5 . 5 - 28 - Figure 6 1. Typical Usage of Pump Configuration and Control Cluster ... ... 6 - 2 - - 2. Example Usage of the Thermostat and Related Clusters ... ... 6 - 2 Figure 6 Figure 6 - 3. Priority Scheme of Pump Operation and Control ... ... ... 6 - 10 4. Format of the Setpoint Raise/Lower Command Payload Figure 6 - ... ... 6 - 26 Figure 6 - 1 of 2) ... ... 6 - 26 5. Set Weekly Schedule Command Payload Format ( - ... ... Figure 6 6 - 27 6. Set Weekly Schedule Command Payload Format (2 of 2) Figure 6 7. Set Heat Weekly Schedule Command Payload Format (1 of 2) ... ... 6 - 28 - Figure 6 - 8 . Set Heat Weekly Schedule Command Payload Format (2 of 2) ... ... 6 - 28 Figure 6 9. Set Cool Weekly Schedule Command Payload Format (1 of 2) ... ... 6 - 28 - - 10. Set Cool Weekly Schedule Command Payload Form at (2 of 2) ... ... 6 - 28 Figure 6 29 Figure 6 - 11. Set Heat & Cool Weekly Schedule Command Payload Format (1 of 2) ... 6 - 12. Set Heat & Cool Weekly Schedule Command Payload Format (2 of 2) - Figure 6 29 - 6 ... - 19  2007 Copyright 2016 , The ZigBee Alliance. All rights reserved. Page

20 ZigBee Cluste Specification r Library 075123 – ZigBee Document 13. Format of the Get Weekly Schedule Command Payload Figure 6 ... 6 - 30 - ... - 14. Format of the Relay Status Log Payload ... ... 6 ... 31 - Figure 6 1. Typical Usage of the Closures Clusters ... ... ... 7 - Figure 7 - 2 - Format of the Alarm Cluster ... ... ... ... 7 - 6 Figure 7 2. 3. ... ... ... Format of the Lock Door Command 7 - 20 Figure 7 - - 4. Format of the Unlock Door Command ... ... ... 7 - 20 Figure 7 Figure 7 5. Format of the Toggle Command ... ... ... 7 - 20 - - 6. ... ... ... 7 - 21 Figure 7 Format of the Unlock with Timeout Command 7 7. Format of the Get Log Record Command ... ... ... - 21 Figure 7 - - 8. Format of the Set PIN Code Command ... ... ... Figure 7 7 - 22 Figure 7 9. Format of the Get PIN Code Command ... ... ... 7 - 22 - ... - Format of the Clear PIN Code Command ... ... 10. 7 - 23 Figure 7 Figure 7 - 11. Format of the Set User Status Command ... ... ... 7 - 23 Figure 7 - Format of the Get User Status Command ... ... ... 7 - 23 12. - 13. ... ... 7 - 23 Figure 7 Format of the Set Week Day Schedule Command - ... ... ... ... 7 - 24 Figure 7 14. Format of Days Mask Bits - 15. Format of the Get Week Day Schedule Command ... ... Figure 7 7 - 24 Figure 7 16. Format of the Clear Week Day Schedule Command ... ... 7 - 24 - . Figure 7 Format of the Set Year Day Schedule Command ... ... 17. 7 - 25 - Figure 7 - 18. Format of the Get Year Day Schedule Command ... ... . 7 - 25 Figure 7 - Format of the Clear Year Day Schedule Command ... ... 7 - 25 19. - ... ... ... Figure 7 7 - 26 20. Format of the Set Holiday Schedule Command ... Figure 7 Format of the Get Holiday Schedule Command ... ... 21. 7 - 26 - Figure 7 - 22. Format of the Clear Holiday Schedul e Command ... ... 7 - 26 Figure 7 Format of the Set User Type Command ... ... ... 23. 7 - 26 - - 24. Format of the Get User Type Command ... ... ... 7 - 27 Figure 7 Format of the Set RFID Code Co 27 - 7 ... ... ... mmand Figure 7 - 25. Figure 7 - Format of the Get RFID Code Command ... ... ... 7 - 28 26. - ... ... ... Format of the Clear RFID Code Command 7 - 28 Figure 7 27. - 28. Format of the Lock Door Response Command Payload ... ... 7 - 30 Figure 7 - ... ... Figure 7 7 - 30 29. Format of the Unlock Door Response Command Payload - 7 Format of the Get Log Record Response Command ... ... Figure 7 - 30 30. ... Figure 7 . Format of the Set PIN Code Response Command ... 31 7 - 31 - Figure 7 - 32. Format of the Get PIN Code Response Command ... ... 7 - 32 Figure 7 - Format of the Clear PIN Code Response Command ... ... 7 - 32 33. - Format of the Clear All PIN Codes Response Command ... ... Figure 7 7 - 32 34. Figure 7 Format of the Set User Status Response Command ... ... 35. 7 - 33 - Figure 7 - 36. Format of the Get User Status Response Command ... ... 7 - 33 Figure 7 Format of the Set Week Day Schedule Response Command ... ... 37. 7 - 33 - Figure 7 - 38. Format of the Get Week Day Schedule Response Command ... ... 7 - 33 34 Figure 7 - 3 9. Format of Days Mask Bits ... ... ... ... 7 - Figure 7 - Format of the Clear Week Day Schedule ID Response Command ... ... 7 - 34 40. - 41. ... ... 7 - 35 Figure 7 Format of the Set Year Day Schedule Response Command 7 - ... ... Format of the Get Year Day Schedule Response Command - 35 Figure 7 42. - 43. Format of the Clear Year Day Schedule Response Command ... ... Figure 7 - 36 7 Figure 7 44. Format of the Set Holiday Schedule Response Command ... ... 7 - 36 - Figure 7 45. Format of the Get Holiday Schedule Response Command ... - 7 - 36 ... Figure 7 - 46. Format of the Clear Holiday Schedule Response Command ... ... 7 - 37 Figure 7 - Format of the Set User Type Response Command ... ... 7 - 37 47. - Format of the Get User Type Response Command ... ... Figure 7 7 - 37 48. Figure 7 Format of the Set RFID Code Response Command ... ... 49. 7 - 38 - Figure 7 - 50. Format of the Get RFID Code Response Command ... ... 7 - 38 Figure 7 Format of the Clear RIFD Code Response Command ... ... 51. 7 - 38 - Figure 7 - 52. Format of the Clear All RFID Codes Response Command ... ... 7 - 39 ... Figure 7 53. Format of the Operation Event Notification Command ... - 7 - 39 Format of the Programming Event Notification Command 54. 43 - - 7 ... ... Figure 7  , The ZigBee Alliance. All rights reserved. 20 Copyright Page 2007 - 2016

21 ZigBee Cluster Library – Document 075123 55. Format of the Go To Lift Value Command Figure 7 ... ... 7 - 54 - ... - ... ... 7 56. Format of the Go To Lift Percentage Command 54 Figure 7 - ... - 57. Format of the Go To Tilt Value Command ... ... 7 ... 55 - Figure 7 58. Format of the Go To Lift Percentage Command ... ... ... Figure 7 - 55 - 7 - ... ... ... 8 - 2 Figure 8 1. Typical Usage of the IAS Clusters 2. Format of the Zone Enroll Response Command Payload 8 ... ... - - 8 Figure 8 8 - ... ... ... - 10 Figure 8 3. Payload format of Initiate Test Mode command - 4. Format of the Zone Status Change Notification Command Payload ... ... 8 - 11 Figure 8 Figure 8 5. Format of the Zone Enroll Request Command Payload ... ... 8 - 12 - - 6. Format of the Arm Command Payload ... ... ... 8 - 14 Figure 8 7. Format of the Bypass Command Payload 8 ... ... ... - - 15 Figure 8 8 - ... ... of the Get Zone Information Command Payload - 16 Figure 8 8. Format - 9. Format of the Get Zone Status command ... ... ... Figure 8 - 17 8 Figure 8 10. Format of the Arm Response Command Payload ... ... .. 8 - 19 - igure 8 ... 11. Get Zone ID Map Response Command Payload ... ... F 8 - 19 - ... Figure 8 Payload ... 12. Format of the Get Zone Information Response Command 8 - 20 - Figure 8 - 13. Format of the Zone Status Changed Command Paylo ad ... ... 8 - 20 Figure 8 - ... ... ... 8 - 21 14. Audible Notification field value - 15. Format of the Panel Status Changed Command Payload ... 8 - 22 Figure 8 ... 16. Alarm Status field value - ... ... ... ... 8 - 23 Figure 8 8 17. Get Panel Status Response command ... ... ... - 23 Figure 8 - - 18. Set Bypassed Zone List Command payload format ... ... Figure 8 - 24 8 Figure 8 19. Bypass Response command format ... ... ... 8 - 25 - - ... ... Figure 8 8 - 25 20. Format of the Get Zone Status Response command ... Figure 8 ... ... 21. Format of the Start Siren Command Payload 8 - 28 - Figure 8 - 22. Format of the Start Sire n Command Payload ... ... ... 8 - 30 Figure 9 - ... ... 9 - 4 1. Format of Match Protocol Address Command Payload - ... ... 9 - 5 Figure 9 2. Match Protocol Address Response Command Payload - 3. Ad vertise Protocol Address Command Payload ... ... Figure 9 9 - 5 ... Figure 9 4. Format of the Transfer NPDU Command Payload ... ... - 9 - 7 ... Figure 9 - 5. Format of the Transfer APDU command ... ... ... 9 - 37 ... Figure 9 Partition Cluster 6. Typical Usage of the ... ... 9 - 39 - Figure 9 - 7. Client and Server in Partition Cluster ... ... ... 9 - 40 Figure 9 8. Format of the TransferPartitionedFrame Command - ... ... 9 - 44 FragmentationOptions 44 - 9 ... ... ... Field Figure 9 - 9. Format of the Figure 9 - ReadHandshakeParam Frame ... ... ... 9 - 45 10. - 11. Frame ... ... ... 9 - 45 Figure 9 WriteHandshakeParam ... 12. Format of Write Attribute Record Field ... ... 9 - 45 Figure 9 - - 13. Format of the MultipleACK Command ... Figure 9 ... 9 - 46 ... Figure 9 14. Format of the ACK Options Field ... ... ... 9 - 46 - ... - ReadHandshake ParamResponse Frame ... 15. ... 9 - 47 Figure 9 Figure 9 - 16. Format of Read Attribute Status Record Field ... ... ... 9 - 47 Figure 9 - ... ... ... 9 - 48 17. Example of Partition Cluster Use - 49 f the 11073 Protocol Tunnel cluster ... ... 9 - Figure 9 18 Typical Usage o ... - Figure 9 – Transfer APDU payload ... 19 ... ... 9 - 52 Figure 9 - 20 – Connect Request command payload ... ... ... 9 - 53 ... Figure 9 – Connect control fie ld format 21 ... ... 9 - 53 - Figure 9 - 22 – Disconnect Request command payload ... ... ... 9 - 54 ... Figure 9 - 23 – Connect Status Notification command payload ... ... 9 - 55 Figure 10 - Cluster Client Server Example ... ... ... 10 - 2 1. Price - Format of Figure 10 Get Current P r ice 2. The C o m m and Payl o ad ... ... 10 - 9 the Figure 10 - 3. G e t C u r r en t Pr ic e C o m m and Op t io n s Field ... ... ... 10 - 10 Figure 10 at of the Get Sc h e d uled Pr i ce s 4. Form C o m m a nd Pa yl oad ... ... 10 - 10 - Figure 10 - 5. Format of the P r ice Acknowledgement Command Payload ... ... 10 - 11 r Figure 10 6. Format of the Get Block Pe - i od(s) Command Payload ... ... 10 - 11 Command Payload or 12 t - 10 ... ... Figure 10 - 7. Format of the GetC o nversionFac - 21  2007 Copyright 2016 , The ZigBee Alliance. All rights reserved. Page

22 ZigBee Cluste Specification r Library 075123 – ZigBee Document 8. Format Figure 10 the GetC alorificValue C o m m a nd Pa yl oad ... ... 10 - 13 - of the Publ i s h Price Co mm and 9. Format Pa y load ... ... . 10 - 14 - Figure 10 of 10. Format of the Publ i sh B l ock Peri o d Command Figure 10 Payload ... ... 10 - 19 - - of the Publ i shCo n versi o nFact o r Co mm and Pa y load ... ... 10 - 20 Figure 10 11. Format m - of the Publ i shCa l orif i cV a lue Co ma n d Pay l oad ... ... 10 - 21 Figure 10 12. Format - 13. De m and Respo n se / L o ad Con t rol C luster Figure 10 l ient Ser v er E x am p le ... ... 10 - 25 C Figure 10 14. Format of the Lo a d Con t r o l Eve n t C o m m a nd Pa yl oad ... ... 10 - 26 - Event - of the C a ncel Load Co n trol Payl o ad ... ... 10 - 30 Figure 10 15. Format - 16. Format of the Rep o rt Event S ta t us C o m m and Payl o ad ... ... 10 - Figure 10 34 Figure 10 17. Format of the G et Sched u led Events Co m mand Pay l oad ... ... 10 - - 36 Figure 10 18. Example of Both a Successful and - an Overridden Load Curtailment Event ... 10 - 39 Figure 10 - 19. Example of a Loa d Cur t ailment Superseded and An o ther C a nce lled ... 10 - 40 Figure 10 - Smart Energy Device Class Reference Example ... ... 10 - 43 20. - 21. Overlapping Events ... ... ... 10 - 43 Figure 10 Correctly 22. - Supers e d ing of Events Correct ... ... ... 10 - 44 Figure 10 - 23. Superseded Ev e n t for a S ubset of Device Classes ... ... 1 0 - 45 Figure 10 - End i ng Figure 10 Rand o m i zation Be t ween Even t s ... ... ... 10 - 45 24. - Events Start Randomizat i on Between Figure 10 ... ... ... 10 - 46 25. - Acceptable Figure 10 Gaps with St a r t and 26. Stop Randomization ... ... 10 - 47 - 27. S t anda l one ES I Model Figure 10 with Mains Powered Metering Device ... ... 10 - 48 ... S t a n da lo n e ES I Figure 10 Model w i th Bat t ery Powered Meter i ng Dev i ce 28. ... 10 - 49 - 29. ES I Figure 10 Model w ith Integrated Metering - D evice ... ... ... 10 - 50 Figure 10 - 30. Format of the Get Profi l e Respo n se C o m m and Payload ... ... 10 - 79 Res Figure 10 of the Request Fast P o ll Mode 31. Format p onse Command Pa y load ... 10 - 81 - - 32. Format of the Get Profi l e Co m ma nd Pa yl oad ... ... ... 10 - 82 Figure 10 ... ... load y Pa 83 - 10 Figure 10 - 33. Format of the Request Mirr o r Respo n se Co mm and Figure 10 - 34. 83 - 10 ... ... Removed C o m m and Payl o ad or r Mir the of Format a 35. Format of the - Fast P o ll Mode C o mm n d Pa y load ... ... 10 - 84 Figure 10 Request - 36. Messa gi n g C lus t e r C lie n t/ Se r ve r E xa m p le ... ... ... 10 - 86 Figure 10 - 37. Format of the Display Message C o m m and Payload ... ... 10 - 87 Figure 10 - of the Cancel Message Co m ma n d Pa y load Figure 10 ... ... 10 - 88 38. Format on - of Figure 10 the Messa g e C o nf i r m at i 39. Format Co m ma n d Pay l oad ... ... 10 - 89 Figure 10 - 40. C l ien t /Server Message Co m ma n d E x ch anges ... ... ... 10 - 90 Figure 10 - A C l ient Req u ests a Tun n el from a Server to Exchange Complex Data in B o th Direct i ons 10 - 91 41. - D evice 1 (C l ient) Requests Figure 10 Tu n nel from SE Device 2 (Server) to Transfer 42. SE Data Without a F ow Co n tr o l (De f aul t l ... ... ... ... 10 - 92 ) Figure 10 - 43. SE Device 1 (Client) Requests a Tunnel f rom SE Device 2 (Server) to Trans f er Data w ith Flow Control ... ... ... ... ... 10 - 93 Figure 10 - 44. Format o f the RequestTun n el Co m mand Pay l oad ... ... 10 - 95 n Figure 10 45. Format of the CloseTun n el Co m ma - d Pay l oad ... ... . 10 - 96 Figure 10 - 46. Format sferDa of the Tra n t a C om ma nd Pa yl oad ... ... 10 - 96 Figure 10 - of the TransferDataE r ror C o mm a n d Pa y load ... ... 10 - 97 47. Format - 48. Format of the AckTrans f er D ata C o m m and Payload ... ... 10 - 98 Figure 10 - of the ReadyD a ta Co m ma n d Pa y load ... ... ... 10 - 99 Figure 10 49. Format - 50. Format of the G et Sup p orted Tunnel Prot o cols C Figure 10 m m a nd Pa yl oad ... .. 10 - 99 o Figure 10 51. Format of the RequestTun n elRes p onse Co m ma n d Pay l oad ... ... 10 - 100 - om Figure 10 Format of the Tra n sferDa t a C 52. ma nd Pa yl oad ... ... 10 - 101 - Figure 10 - 53. Format of the Su p ported Tun n el Pr o toco l s Respo n se C o mma nd Pa y load ... 10 - 102 Figure 10 - ponse Command Protocol Fields ... 10 - 102 54. Format of the Supported Tunnel Protocols Res - of the T u nne l ClosureNo t if i cat i on Co m ma Figure 10 d Pa y load 55. Format ... ... 10 - 103 n Figure 10 56. Overview of General - ... ... ... 10 - 105 Exchange Fi gure 10 - 57. Typ i cal U s a g e o f the Key Estab l ish m ent Cl u s t er ... ... 10 - 107 d Figure 10 Key Establ i shme n t Co m ma n 58. E x change ... ... ... 10 - 108 - Figure 10 - 59. Format of the Initiate Key Establishment Request Command Pay load ... 10 - 110 ta Request Figure 10 60. Format of the Ep h emeral D a - Command Payload ... ... 10 - 111 - 10 ... ... Command Payload y Request 111 Figure 10 - 61. Format of the C o nf i r m K e  , The ZigBee Alliance. All rights reserved. 22 Copyright Page 2007 - 2016

23 ZigBee Cluster Library – Document 075123 62. Key Establi s hment Command Payload Terminate ... ... 10 - 112 - Format of the Figure 10 63. Format of the Ini Figure 10 ia t e Key Estab l ishme n t Resp o nse Command Payload ... 10 - 114 - t - 64. Format of the Ep h emeral D a ta Res p onse Co m mand Pay l oad ... ... 10 - 115 Figure 10 Figure 10 - of the Confirm Key Response C o m m and Payl o ad ... ... 10 - 115 65. Format - - of the Term i na t e Key Es t Figure 10 l ishme n t Command P ayload ... ... 10 66. Format 116 ab Figure 10 67. K e y Esta b lish m ent Co mm - Exchan g e ... ... ... 10 - 124 and Figure 11 - 1. Typical Usage of OTA Upgrade Cluster ... ... ... 11 - 2 Figure 11 - ... ... ... ... 11 - 6 2. Sample OTA File - 3. Sub element Format ... ... ... ... 11 - 11 Figure 11 - 4. ECDSA Signature ... ... ... ... 11 - 12 Figure 11 - - 5. ECDSA Signing Certificate Sub - element ... ... ... 11 - 12 Figure 11 - Figure 11 - element ... ... ... ... 11 - 12 6. Hash Value Sub - ... ... Figure 11 ... 11 - 23 7. OTA Upgrade Message Diagram Figure 11 ... ... ... 8. Format of Image Notify Command Payload 11 - 26 - Figure 11 - 9. Format of Query Next Image Request Command Payload ... ... 11 - 28 Figure 11 - ... ... 11 - 30 10. Format of Query Next Image Response Command Payload - - ... ... 11 Figure 11 32 11. Format of Image Block Request Command Payload ... - Image Page Request Command Payload ... ... Figure 11 11 - 34 12. Figure 11 - 13. Image Block Response Command Payload with SUCCESS status ... ... 11 - 37 Figure 11 14. Image Block Response Command Payload with WAIT_FOR_DATA status ... 11 - 38 - Figure 11 - 15. Image Block Response Command Payload with ABORT status ... ... 11 - 38 ... Figure 11 16. Format of Upgrade End Request Command Payload ... - 11 - 41 t of Upgrade End Response Command Payload 17. Forma - 43 - 11 ... ... Figure 11 Figure 11 - ... .. 11 - 45 18. Format of Query Device Specific File Request Command Payload - 19. Format of Query Device Specific File Response Command Payload ... 11 - 46 Figure 11 - ... ... ... ... 11 - 51 Figure 11 20. Rate Limiting Exchange - 1. Typical Content Data Structure ... ... ... 12 - 2 Figure 12 Figure 12 - Information Cluster ... ... ... 12 - 3 2. Typical Usage of the - ... Information Cluster – with Proxy Function Figure 12 ... 12 - 4 3. Typical Usage of the ... - ... ... ... 4. An Example Sequence 12 - 5 Figure 12 Figure 12 - 5. Preference Scenarios (Triggered by the Client or by the Server) ... ... 12 - 6 Figure 12 - Payload Format of Request Information Command ... ... 12 - 9 6. 12 - ... ... Payload Format for Request a Content by a Content ID - 10 Figure 12 7. - 8. Request Information Payload for Request Contents by Multiple IDs ... Figure 12 12 - 10 .. Figure 12 9. Request Information Payload for Request by Depth ... ... - 12 - 11 Figure 12 - 10. Payload Format of Push In formation Response Command ... ... 12 - 11 Figure 12 ... ... 11. Payload Format for Send Preference Command 12 - 11 - Figure 12 - 12. Payload Format for Preference Is Multiple Content ID (0x0000) ... ... 12 - 12 Figure 12 13. Payload Format for Preference Is Multiple Octet Strings (0x0001) ... .. - 12 - 12 Figure 12 14. Payload Format of Request Preference Response Command - ... ... 12 - 13 Figure 12 - mat for Update Command ... ... ... 12 - 13 15. Payload For ... - Redirection Control Field ... ... Format for 12 - 14 Figure 12 16. - 17. An Example Sequence of Forwarding Case ... ... ... 12 - 14 Figure 12 - ple Sequence of Redirecting Case An Exam Figure 12 ... ... ... 12 - 15 18. - ... ... ... Figure 12 12 - 15 19. Payload Format for Delete Command Figure 12 ... ... ... 20. Format for Deletion Option Field 12 - 16 - Figure 12 - 21. Payloa d Format for Configure Node Description Command ... ... 12 - 16 Figure 12 - ... ... 12 - 16 22. Payload Format for Configure Delivery Enable Command - mand ... .. Figure 12 12 - 17 23. Payload Format for Configure Push Information Timer Com - ... ... 24. Payload Format for Configure Set Root ID Command 12 - 17 Figure 12 Figure 12 - 25. Payload Format of Request Information Response Command ... ... 12 - 18 12 Figure 12 6. Payload Format of Push Information Command ... ... 2 - 18 - Figure 12 - 27. Payload Format for Send Preference Response Command and Request Preference Confirmation Command ... ... ... ... 12 - 19 Figure 12 28. Payload Format of Update Response and Delete Response command - ... 12 - 19 ... ... ... 29. Payload Format for Multiple Contents 20 - - 12 Figure 12 - 23  2007 Copyright 2016 , The ZigBee Alliance. All rights reserved. Page

24 ZigBee Cluste Specification r Library 075123 – ZigBee Document 30. Figure 12 ... ... ... . 12 - 20 Format for Single Content - 12 31. ... ... ... ... - 21 - Figure 12 Format for Title String 32. Format for Long Octet String ... ... ... Figure 12 - 21 - 12 - Format for Long Character String ... ... ... 12 - 21 Figure 12 33. 34. Feed ... ... ... ... Format for RSS 12 - 21 Figure 12 - - 35. Typical Usage of the Chatting Cluster ... ... ... 12 - 25 Figure 12 Figure 12 36. Format of the Join Chat Request Command ... ... ... 12 - 2 8 - ... - Cha t Request Command Leave ... .. 12 - 28 Figure 12 37. Format of the - 38. Format of the Switch Chairman Response Command ... ... 12 - 29 Figure 12 Figure 12 Start Chat Request Command ... ... ... 12 - 29 39. Format of the - Figure 12 40. Format of the ChatMessage C ommand ... - ... 12 - 30 ... Figure 12 - 41. Format of the Get Node Information Request Command ... ... 12 - 30 Figure 12 - an Item of the Chatting Table ... ... ... 12 - 30 42. Format of - 43. Format of the Command ... ... .. 12 - 31 Figure 12 Start Chat Response 44. Format of the Response Command ... ... ... Join Chat 12 - 32 Figure 12 - - 45. Format of the User Left Command ... Figure 12 ... 12 - 32 ... Figure 12 46. Format of the User Joined Command ... ... ... 12 - 33 - ... - Search Chat Response command ... 47. Format of the 12 - 33 Figure 12 Figure 12 - 48. Format of the Switch Chairman Request Command ... ... 12 - 34 Figure 12 - Switch Chairman Confirm Command ... ... 12 - 34 49. Format of the ... Figure 12 NodeInformation Field ... 50. Format of the ... 12 - 34 - Figure 12 - 51. Format of the Switch Chairman Notification Command ... ... 12 - 35 ... Figure 12 Get Node Information Response Command ... 52. Format of the 12 - 35 - Figure 12 53. Typical Usage of the VoZ Cluster ... ... ... 12 - 36 - Attribute 39 - 12 ... ... ... Figure 12 - 54. Format of the OptionFlags Figure 12 - Establishment Request Command ... ... 12 - 40 55. Format of the - ... ... ... ... Flag 12 - 40 Figure 12 56. Format of the - 57. Format of the Voice Transmission Command ... ... .. 12 - 41 Figure 12 - Figure 12 Voice Transmission Completion Command ... ... 12 - 41 58. Format of the ... - Control Response Command ... 59. Format of the ... 12 - 41 Figure 12 Figure 12 - 60. Format of the Voice Transmission Response Command ... ... 12 - 42 Figure 12 - Establishment Response Command ... ... 12 - 43 61. Format of the - Control Command Figure 12 ... ... ... 12 - 43 62. Format of the Figure 13 1. Typical Usage of the Location Cluster with Centralized Device ... ... - 13 - 2 Figure 13 - 2. Format of the Restart Device Command Payload ... ... 13 - 13 ... Figure 13 Options Field ... ... 3. Format of the 13 - 13 - Figure 13 - 4. Format of Save Startup Parameters Command Payload ... ... 13 - 14 .. Figure 13 5. Restore Startup Parameters Command Payload ... ... - 13 - 15 rmat of Reset Startup Parameters Command Payload Figure 13 - 6. Fo ... ... 13 - 16 Figure 13 - ... ... ... 13 - 16 7. Format of the Options Field - 8. Format of Reset Startup Parameters Command Payload ... ... 13 - 17 Figure 13 13 - ... ... ... - 21 Figure 13 9. Format of the Scan Request Command Frame - 10. Format of the ZigBee Information Field ... ... ... 13 - 21 Figure 13 - Figure 13 ... ... 13 - 21 11. Format of the Scan Request Touchlink Information Field - ... ... Figure 13 13 - 22 12. Format of the Device Information Request Command Frame Figure 13 ... ... 13. Format of the Identify Request Command Frame 13 - 23 - Figure 13 - 14. Format o f the Reset to Factory New Request Command Frame ... ... 13 - 24 Figure 13 - ... ... 13 - 24 15. Format of the Network Start Request Command Frame 13 - ... ... - 26 Figure 13 16. Format of the Network Join Router Request Command Frame - 17. Format of the Network Join End Device Request Command Frame ... Figure 13 - 28 13 Figure 13 18. Format of the Network Update Request Command Frame ... ... - 13 - 31 Figure 13 - 19. Format of the Get Group Identifiers Request Command ... ... 13 - 32 Figure 13 ... ... 20. Format of the Get Endpoint List Request Command 13 - 32 - Figure 13 - 21. Format of the Scan Response Command Frame ... ... 13 - 33 ... Figure 13 22. Format of the ZigBee Information Field ... ... - 13 - 34 23. Format of the Scan Response ZLL Information Field - 34 - 13 ... ... Figure 13  , The ZigBee Alliance. All rights reserved. 24 Copyright Page 2007 - 2016

25 ZigBee Cluster Library Document – 075123 24. Format of the Device Inform ation Response Command Frame ... ... 13 - 37 Figure 13 - - ... 13 25. Format of the Device Information Record Field 37 Figure 13 - ... - 26. Format of the Network Start Response Command Frame ... 1 3 ... 39 - Figure 13 27. Format of the Network Join Router Response Command Frame ... ... 13 - 40 Figure 13 - 28. Format of the Network Join End Device Response Command Frame - ... 13 - 41 Figure 13 - 29. Format of the Endp ... ... 13 42 - oint Information Command Figure 13 30. Format of the Get Group Identifiers Response Command ... ... Figure 13 - 43 - 13 - ... ... ... 31. Format of a Group Information Record Entry 13 - 43 Figure 13 - 32. Format of the Get Endpoint List Response Command ... ... Figure 13 13 - 44 Figure 13 33. Format of an Endpoint Information Record Entry ... ... 13 - 44 - - 34. Format of the device information table ... ... ... 13 - 47 Figure 13 35. Scope of a touchlink commissioning inter PAN transaction ... ... - 13 - 49 Figure 13 - 13 36. Overview of Touchlink Security ... ... ... - 52 Figure 13 - - 37. Steps Required to Encryp t/Decrypt the Network Key ... ... Figure 13 13 - 56 Figure 14 1. Typical Usage of the Retail Tunnel Cluster ... ... ... 14 - 2 - - Transfer APDU Command Figure 14 ... ... 14 - 3 2. Format of the ... Figure 14 3. Typica l Usage of the Mobile Device Configuration Cluster ... - 14 - 4 ... Command Keep Alive Notification Figure 14 6 - 14 . ... ... - 4. Format of the Figure 14 - ... ... .. 14 - 7 5. Typical Usage of the Neighbor Cleaning Cluster 14 - ... ... ... - 9 Figure 14 6. Typical Usage of the Nearest Gateway Cluster - 7. Sequence Diagram ... ... ... ... 14 - 11 Figure 14 Figure 15 - ... ... 1. Typical Usage of the Appliance Control Cluster 15 - 2 ... Figure 15 - 2. Format of the Execution of a Command Payload ... ... .. 15 - 4 .. Figure 15 Format of the Write Functions Command Frame ... ... 3. 15 - 5 - - 4. Format of the Write Functions Record Fiel d ... ... ... 15 - 6 Figure 15 - Figure 15 - 5. Format of the Overload Warning Payload ... ... ... 15 7 15 ... ... Format of the Signal State Response Command Payload 6. - 8 - Figure 15 ... Figure 15 Typical Usage of th e Appliance Events and Alerts Cluster ... 7. 15 - 15 - Figure 15 - 8. Format of the Get Alerts Response Command Payload ... ... 15 - 17 ... Figure 15 9. Format of the Alerts Notification Command Payload ... - 15 - 18 Figure 15 - 10. ... ... Format of the Event Notification Command Payload 15 - 19 ... Figure 15 Format of the Log Notification Payload ... ... 11. 15 - 22 - Figure 15 - 12. Format of the Log Queue Response Paylo ad ... ... ... 15 - 23 ... Figure 15 13. Format of the Log Request Payload ... ... - 15 - 24 Appliance Statistics Cluster Sequence Diagram 14. ... ... 15 - 25 Figure 15 - - 25  2007 Copyright 2016 , The ZigBee Alliance. All rights reserved. Page

26 ZigBee Cluste Specification r Library 075123 – ZigBee Document LIST OF TABLES ... ... ... ... 1 - 1 - Table 1 1. Acronyms and Abbreviations 2 ... ... ... ... - 5 - Table 2 1. Global Attributes 2. AttributeRe portingStatus Enumerations Table 2 ... ... 2 - 5 - ... - ... ... ... ... 2 - 8 Table 2 3. ZCL Command Frames 2 4. Destination of Reporting Based on Direction Field ... ... . - 16 Table 2 - - 5. Valid Profile Identifier Values Table 2 ... ... ... . 2 - 39 Table 2 6. Valid Device Identifier Values ... ... ... . 2 - 39 - - ... ... ... . 2 - 39 Table 2 7. Valid Cluster Identifier Values - 8. Valid ZCL Defined Attribute Identifier Values ... ... ... 2 - 40 Table 2 - 9. Valid ZCL - Defined Command Identifier Values ... ... ... 2 - 40 Table 2 ... - ... ... ... 10. Data Types 2 - 41 Table 2 Table 2 - 11. Enumerated Status Values Used in the ZCL ... ... ... 2 - 50 Table 3 - ... ... ... 3 - 1 1. Device Configuration and Installation Clusters - 2. Groups and Scenes Clusters ... ... ... ... 3 - 2 Table 3 3 3. On/Off and Level Control Clusters ... ... ... - 2 Table 3 - - 4. Alarms Cluster ... ... ... ... Table 3 - 3 3 Tab - 5. Other Clusters ... ... ... ... 3 - 3 le 3 ... - ... ... ... 6. Generic Clusters 3 - 4 Table 3 Table 3 - 7. Attributes of the Basic Cluster ... ... ... ... 3 - 6 Table 3 - PowerSource Attribute ... ... ... 3 - 8 8. Values of the ... Table 3 PhysicalEnvironment Attribute ... 9. Values of the ... 3 - 8 - Table 3 - 10. Values of the DeviceEnable Attribute ... ... ... 3 - 12 ... Table 3 AlarmMask Attribute ... 11. Values of the ... 3 - 12 - - 12. V alues of the DisableLocalConfig Attribute ... ... ... 3 - 12 Table 3 ... ... 13. Received Command IDs for the Basic Cluster - 13 - 3 ... Table 3 Table 3 - ration Attribute Sets ... ... ... 3 - 14 14. Power Configu - 15. Attributes of the Mains Information Attribute Set ... ... . 3 - 14 Table 3 - ... ... ... ttings Attribute Set 3 - 15 Table 3 16. Attributes of the Mains Se - 17. Values of the MainsAlarmMask Attribute ... Table 3 ... 3 - 15 ... Table 3 18. Attributes of the Battery Information Attribute Set ... ... 3 - 16 - - ... ... ... 19. Attributes of the Battery Settings Attribute Set 3 - 17 Table 3 Table 3 - 20. Values of the BatterySize Attribute ... ... ... 3 - 18 Table 3 BatteryAlarmMask Attribute ... ... ... 3 - 18 21. Values of the - Table 3 22. Alarm Code Field Enumerations for Battery Alarms ... ... - 3 - 19 Table 3 - 23. BatteryAlarmState Enumerations ... ... ... 3 - 21 Table 3 ... ... . 24. Device Temperature Configuration Attribute Sets 3 - 23 - Table 3 - 25. Device Temperature Information Attribute Set ... ... ... 3 - 23 ... Table 3 - 26. Device Temperature Settings Attribute Set ... ... 3 - 24 Table 3 - DeviceTempAlarmMask Attribute ... ... ... 3 - 25 27. Values of the 3 - ... ... ... - 27 Table 3 28. Attributes of the Identify Server Cluster - 29. Received Command IDs for the Identify Cluster ... ... ... 3 - 27 Table 3 - ... ... Table 3 3 - 28 30. Values of the Effect Identifier Field of the Trigger Effect Command - 3 ... ... Table 3 - 29 31. Values of the Effect Variant Field of the Trigger Effect Command - ... ... .. Table 3 3 - 29 32. Generated Command IDs for the Identify Cluster Table 3 - 33. Attributes of the Groups Server Cluster ... ... ... 3 - 31 Table 3 - ... ... ... 3 - 32 34. Received Command IDs for the Groups Cluster - 3 ... ... ... Table 3 - 35 35. Generated Command IDs for the Groups Cluster ... - ... ... ... Table 3 3 - 38 36. Scenes Attribute Sets Table 3 - 37. Scene Management Information Attribute Set ... ... ... 3 - 39 . Table 3 ... ... ... 38. Fields of a Scene Table Entry 3 - 40 - - 39. Received C ommand IDs for the Scenes Cluster ... ... ... 3 - 40 Table 3 - 3 - ... ... ... 40. Generated Command IDs for the Scenes Cluster 46 Table 3  , The ZigBee Alliance. All rights reserved. 26 Copyright Page 2007 - 2016

27 ZigBee Cluster Library Document – 075123 41. Values of the Statu Table 3 ... ... 3 - 50 s Field of the Copy Scene Response Command - - ... 3 - 52 Table 3 ... 42. Attributes of the On/Off Server Cluster ... - the On/Off Cluster ... ... ... 3 53 43. Command IDs for - Table 3 ... .. 3 Table 3 54 - 44. Values of the Effect Identifier Field of the Off With Effect Command - 45. Values of the Effect Variant Field of the Off With Effect Command ... ... 3 - 55 Table 3 - - ... ... 3 ... 59 - Table 3 46. On/Off Switch Configuration Attribute Sets 47 . Attributes of the Switch Information Attribute Set ... ... . 3 - 59 Table 3 - - SwitchType Attribute ... ... ... 3 - 59 Table 3 48. Values of the 3 49. Attributes ... ... ... of the Switch Settings Attribute Set - 60 - Table 3 50. Values of the SwitchActions Attribute ... ... ... 3 - 60 Table 3 - 51. Actions on Receipt for ... On/Off Commands, when Associated with Level Control - 3 - 61 Table 3 52. Attributes of the Level Control Server Cluster - ... ... ... 3 - 62 Table 3 3 - ... ... ... . Command IDs for the Level Control Cluster - 63 Table 3 53 - 54. Values of the Move Mode Field Table 3 ... ... ... 3 - 64 Table 3 55. Actions on Receipt for M ove Command ... ... ... 3 - 65 - - 56. Values of the Step Mode Field ... ... ... 3 - 65 Table 3 - 57. Actions on Receipt for Step Command ... ... 3 ... 66 - Table 3 58. Alarms Cluster Attribute Sets ... ... ... . 3 - 68 Table 3 - - 59. Attributes of the Alarm Information Attribute Set ... ... .. 3 - 68 Table 3 3 - ... ... ... ... - 68 Table 3 60. Format of the Alarm Table - 61. Received Command IDs for the Alarms Cluster ... ... ... 3 - 69 Table 3 - ... Table 3 ... ... 3 - 69 62. Generated Command IDs for the Alarms Cluster - 63. Attributes of the Time Server Cluster ... ... ... 3 - 71 Table 3 ... 64. Bi - Attribute ... t Values of the ... 3 - 72 Table 3 TimeStatus - 65. Location Attribute Sets ... ... Table 3 ... 3 - 76 ... Table 3 66. Attributes of the Location Informatio n Attribute Set ... ... 3 - 76 - ... - LocationType Attribute ... Table 3 ... 3 - 77 67. Bit Values of the ... Attribute LocationMethod Table 3 77 - 3 ... ... - 68. Values of the Table 3 - ... ... ... 3 - 78 69. Attributes of the Location Settings Attribute Set - 70. Received Command IDs for the Location Cluster ... ... .. 3 - 79 Table 3 71. Generated Command IDs for the RSSI Location Cluster ... ... 3 - 84 Table 3 - - 72. Attributes of the Analog Input (Basic) Server Clus ter ... ... 3 - 90 Table 3 - Table 3 ... ... 3 - 91 73. Attributes of the Analog Output (Basic) Server Cluster - ... Server Cluster ... Table 3 3 - 93 74. Attributes of the Analog Value (Basic) - 75. Attributes of the Binary Input (Basic) Server Cluster ... ... 3 - 94 Table 3 Table 3 - 76. Attributes of the Binary Outp ut (Basic) Server Cluster ... ... 3 - 96 Table 3 - ... ... 3 - 97 77. Attributes of the Binary Value (Basic) Server Cluster - 3 Multistate Input (Basic) Server Cluster ... ... Table 3 - 99 78. Attributes of the Table 3 ... ... 79. Attributes of the Multistate Output (Basic) Server Cluster 3 - 100 - Table 3 - 80 . Attributes of the Multistate Value (Basic) Server Cluster ... ... 3 - 102 3 Table 3 ... ... 81. AI Types, Type = 0x00: Temperature in Degrees C - 1 06 - Table 3 - 82. AI Types, Type = 0x01: Relative Humidity in % ... ... . 3 - 109 83. AI Types, Type = 0x02: Pressure in Pascal Table 3 - ... ... ... 3 - 109 Table 3 - ... ... ... 3 - 111 84. AI Types, Type = 0x03: Flow in Liters/Second - 85. AI Types, Type = 0x04: Percentage % ... ... ... 3 - 112 Table 3 - ... ... ... ype = 0x05: Parts per Million PPM 3 - 112 Table 3 86. AI types, T - 87. AI Types, Type = 0x06: Rotational Speed in RPM ... ... Table 3 3 - 112 Table 3 88. AI Types, Type = 0x07: Current in Amps ... ... ... 3 - 113 - - ... ... ... 89. AI Types, Type = 0x08: Frequency in Hz 3 - 113 Table 3 Table 3 - 90. AI Types, Type = 0x09: Power in W atts ... ... ... 3 - 113 Table 3 - ... ... ... 3 - 114 91. AI Types, Type = 0x0A: Power in kW Table 3 ... ... ... 92. AI Types, Type = 0x0B: Energy in kWH 3 - 114 - Table 3 - 93. AI Types, Type = 0x0C: Count - Unitless ... ... ... 3 - 114 Table 3 ... ... 94. AI Types, Type = 0x0D: Enthalpy in KJoules/Kg 3 - 114 - - 95. AI types, Type = 0x0E: Time in Seconds ... ... ... 3 - 115 Table 3 96. AO Types, Type = 0x00: Temperature in Degrees C - 115 - 3 ... Table 3 ... - 27  2007 Copyright 2016 , The ZigBee Alliance. All rights reserved. Page

28 ZigBee Cluste Specification r Library 075123 – ZigBee Document 97. AO Types, Type = 0x01: Relative Humidity in % ... 3 - 116 Table 3 - ... - 98. AO Types, Type = 0x02: Pressure Pascal ... ... 3 ... 116 - Table 3 99. AO Types, Type = 0x03: Flow in Liters/Second ... ... .. 3 - 116 Table 3 - 100. AO Types, Type = 0x04: Percentage % - ... ... ... 3 - 116 Table 3 101. AO Types, Type = 0x05: Parts per Million PPM 3 ... ... - - 118 Table 3 3 - ... ... - 118 Table 3 102. AO Types, Type = 0x06: Rotational Speed RPM - 103. AO Types, Type = 0x07: Current in Amps ... ... ... Table 3 - 119 3 Table 3 104. AO Types, Type = 0x08: Frequency in Hz ... ... ... 3 - 119 - - 105. AO ... ... ... 3 - 119 Table 3 Types, Type = 0x09: Power in Watts 3 106. AO Types, Type = 0x0A: Power in kW ... ... ... - 120 Table 3 - - 107. AO Types, Type = 0x0B: E nergy in kWh ... ... ... Table 3 3 - 120 Table 3 108. AO Types, Type = 0x0C: Count - Unitless ... ... ... 3 - 120 - Table 3 109. AO Types, Type = 0x0D: Enthalpy in KJoule s/Kg ... - 3 - 120 ... Table 3 - 110. AO Types, Type = 0x0E: Time in Seconds ... ... ... 3 - 120 Table 3 - ... ... 3 - 121 111. AV Types, Type = 0x00: Temperature in Degrees C 3 - ... ... - 121 Table 3 112. AV Types, Type = 0x01: Area in Square Metres - 113. AV Types, Type = 0x02: Multiplier - Number ... ... .. 3 - 122 Table 3 - ... Table 3 ... 3 - 122 114. AV Types, Type = 0x03: Flow in Litres/Second - ... ... Table 3 3 - 123 115. BI Types, Type = 0x00: Application Domain HVAC Table 3 ... ... 116. BI Types, Type = 0x01: Application Domain Security 3 - 129 - Table 3 - 117. BO Types, Type = 0x00: Application Domain HVAC ... ... 3 - 129 Table 3 - ... ... 3 - 134 118. BO Types, Type = 0x02: Application Domain Security - ... ... ... ... Table 3 3 - 135 119. BV Types, Type = 0x00 - ... ... 120. MI Types, Type = 0x00: Application Domain HVAC 3 - 135 Table 3 Table 3 - 121. MO Types, Type = 0x00: Application Domain HVAC ... ... 3 - 136 Table 3 ... ... 122. MV Types, Type = 0x00: Application Domain HVAC 3 - 137 - Table 3 - 123. Server Attribute Sets of the Diagnostics Cluster ... ... 3 - 139 ... Table 3 124. Hardware Information Attribute Set ... ... - 3 - 139 139 - 3 ... ... ... 125. Stack / Network Information Attribute Set - Table 3 Table 3 - ... ... ... ... 3 - 144 126. Server Attributes - 127. Commands Generated by the Poll Control Server ... ... 3 - 146 Table 3 3 e 3 ... ... 128. Commands Generated by the Poll Control Client - 147 Tabl - - 129. Attributes of the Power Profile Cluster ... ... ... 3 - 153 Table 3 - Table 3 EnergyRemote Attribute ... ... ... ... 3 - 154 130. ... - ScheduleMode Attribute ... ... 131. ... 3 - 154 Table 3 Table 3 - 132. Cluster - Specific Commands Received by the Serve r ... ... 3 - 15 4 Table 3 - - Specific Commands Sent by the Server ... ... . 3 - 162 133. Cluster ... Table 3 PowerProfileState Enumeration Field ... 134. ... 3 - 165 - Table 3 - 135. Options Field ... ... ... ... 3 - 172 Table 3 ... ... 136. Attributes of the Meter Identification Server Cluster 3 - 176 - Table 3 - 137. Meter Type IDs ... ... ... ... 3 - 177 ... Table 3 - 138. Data Quality IDs ... ... ... 3 - 178 Table 4 - ent and Level Sensing Clusters ... ... 4 - 1 1. Illuminance Measurem - 2. Pressure and Flow Measurement Clusters ... ... ... 4 - 2 Table 4 - ... ... ... ... 4 - 3 Table 4 3. Occupancy Sensing Clusters - 4. Electrical Measurement Clusters ... ... ... Table 4 4 - 4 Table 4 5. Illuminance Measurement Attributes ... ... ... 4 - 5 - ... Table 4 LightSensorType Attribute ... ... 6. Values of the 4 - 6 - Table 4 - 7. Illuminance Level Sensing Attribute Sets ... ... ... 4 - 7 Table 4 - ... ... 4 - 8 8. Illuminance Level Sensing Information Attribute Set ... - Table 4 Attribute ... 9. Values of the ... 4 - 8 LevelStatus Table 4 - 1 0. Values of the LightSensorType Attribute ... ... ... 4 - 8 Table 4 ... ... ... 11. Illuminance Level Sensing Settings Attribute Set 4 - 8 - Table 4 - 12. Temperat ure Measurement Attribute Sets ... ... ... 4 - 10 ... Table 4 13. Temperature Measurement Information Attribute Set ... - 4 - 10 4 ... ... ... ent Attribute Sets 14. Pressure Measurem 12 - Table 4 -  , The ZigBee Alliance. All rights reserved. 28 Copyright Page 2007 - 2016

29 ZigBee Cluster Library – Document 075123 15. Pressure Measurement Information Attribute Set Table 4 ... ... 4 - 12 - ... - 16. Extended Pressure Measurement In ... ... 4 13 - Table 4 formation Attribute Set 17. Flow Measurement Attribute Sets ... ... ... Table 4 - 15 - 4 - ... ... ... 4 - 16 Table 4 18. Flow Measurement Information Attribute Set 4 19. Relative Humidity Measurement Attribute Sets ... ... ... - 18 Table 4 - - 20. Attributes of the Relative Humidity Measurement Info rmation Attribute Set ... 4 - 18 Table 4 Table 4 21. Occupancy Sensor Attribute Sets ... ... ... 4 - 20 - 4 - ... ... ... - 20 Table 4 22. Occupancy Sensor Information Attribute Set - 23. Values of the OccupancySensorType Attribute ... ... ... 4 - 20 Table 4 - ... ... Table 4 ... 4 - 20 24. Attributes of the PIR Configuration Attribute Set - 4 ... ... Table 4 - 21 25. Attributes of the Ultrasonic Configuration Attribute Set ... - er ... ... Table 4 4 - 23 26. Attributes of the Electrical Measurement Clust Table 4 - 27. Electrical Measurement Cluster Basic Information ... ... 4 - 23 Table 4 - MeasurementType Attribute ... ... ... ... 4 - 25 28. 4 - ... ... ... ... - 25 Table 4 29. DC Measurement Attributes - 30. DC Formatting Attributes ... ... ... ... 4 - 26 Table 4 Table 4 - - phase Specific) Measurement Attributes ... ... . 4 - 27 31. AC (Non ... - - phase Specific) Formatting Attributes ... ... 32. AC (Non 4 - 29 Table 4 Table 4 - 33. AC (Single Phase or Phase A) Measurement Attributes ... ... 4 - 29 Table 4 - ... ... ... ... 4 - 32 34. AC Formatting Attributes ... Table 4 r Threshold Alarms Attributes ... ... 35. DC Manufacture 4 - 34 - Table 4 - 36. AC Manufacturer Threshold Alarms Attributes ... ... ... 4 - 34 Table 4 37. AC Phase B Measurements Attributes ... ... ... 4 - 37 - ... Table 4 38. AC Phase C Measurements Attributes ... - ... 4 - 40 - 4 ... ... t Server Measuremen 39. Generated Command ID’s for the Electrical 42 Table 4 - Table 4 - ... ... ... ... 4 - 44 40. List of Status Valid Values - 41. Generated Command IDs for the Electrical Measurement Client ... ... 4 - 45 Table 4 ... ... 5 - 1 Table 5.1. Clusters Specified for the Lighting Functional Domain ... ... ... ... 5 Table 5.2. Hue Control Attribute Sets 3 - Table 5.3. Attributes of the Color Information Attribute Set ... ... ... 5 - 3 ... DriftCompensation Attribute ... ... Table 5.4. Values of the 5 - 5 Table 5.5. Values of the ColorMode Attribute ... ... ... 5 - 6 Table 5.6. Values of the EnhancedColorMode Attribute ... ... ... 5 - 6 ... Table 5.7. Bit Values of the Attribute ... ... 5 - 7 ColorCapabilities Table 5.8. Defined Primaries Information Attribute Set ... ... ... 5 - 8 Tab ... ... 5 - 9 le 5.9. Additional Defined Primaries Information Attribute Set Table 5.10. Defined Color Points Settings Attribute Set ... ... ... 5 - 10 ... Tabl ... ... e 5.11. Command IDs for the Color Control Cluster 5 - 12 5 Table 5.12. Values of the Direction Field ... ... ... .. - 13 Table 5.13. Values of the Move ... ... ... 5 - 14 Mode Field ... ... 5 - 14 Table 5.14. Actions on Receipt for Move Hue Command ... ... ... 5 - 15 Table 5.15. Values of the Step Mode Field ... ... ... ... 5 - 16 Table 5.16. Actions on Receipt for Step Hue Command Table 5.17. Values of the Move Mode Field ... ... 5 - 16 ... - ... 5 Table 5.18. Actions on Receipt for Move Saturation Command 17 ... Table 5.19. Values of the Step Mode Field ... ... ... 5 - 17 Table 5.20. Actions on Receipt for Step Saturation Command ... ... .. 5 - 18 Table 5.21. Actions on Receipt of the Enhanced Move Hue Command ... 5 - 22 ... ... 5 - 23 Table 5.22. Actions on Receipt for the Enhanced Step Hue Command ... ... ... 5 Table 5.23. Values of the Action Field of the Color Loop Set Command 25 - Table 5.24. Values of the Direction Field of the Color Loop Set Command ... ... 5 - 25 Table 5.25. Actions on Receipt of the Move Color Temperature Command ... ... 5 - 27 Table 5.26. Actions on Receipt of the Step Color Temperature Command ... ... 5 - 28 Table 5.27. Ballast Configuration Attribute Sets ... ... ... 5 - 30 Table 5.28. Attributes of the Ballast Information Attribute Set ... ... . 5 - 31 BallastStatus 31 - 5 ... ... ... Attribute Table 5.29. Bit Usage of the - 29  2007 Copyright 2016 , The ZigBee Alliance. All rights reserved. Page

30 ZigBee Cluste r Library Specification – ZigBee Document 075123 ... Table 5.30. Attributes of the Ballast Settings Attribute Set 5 - 31 ... ... Attribute PowerOnLevel ... 5 - 32 Table 5.31. Values of the ... ... .. 33 5 - ... Table 5.32. Attributes of the Lamp Information Attribute Set ... ... 5 - 33 ... Table 5.33. Attributes of the Lamp Settings Attribute Set ... Attribute ... Table 5.34. Values of the ... 5 - 34 MainsAlarmMode ... 1. Clusters Specified in the HVAC Functional Domain ... ... . 6 - 1 Table 6 - 6 - ... ... ... - 4 ble 6 Ta 2. Pump Configuration Attribute Sets 3. Attributes of the Pump Information Attribute Set ... ... ... 6 Table 6 4 - - - of the Pump Dynamic Information Attribute Set ... ... 6 - 7 Table 6 4. Attributes 5. Values of the Table 6 Attribute ... ... ... 6 - 7 PumpStatus - 6 mp Settings Attribute Set ... ... ... - 9 - Table 6 6. Attributes of the Pu 7. Values of the OperationMode Attribute ... ... Table 6 6 - 10 - ... - ControlMode Attribute ... ... ... 6 - 11 8. Values of the Table 6 9. Alarm Codes ... ... ... ... 6 - 12 - Table 6 - 10. Currently Defined Thermostat Attribute Sets Table 6 ... ... ... 6 - 14 Table 6 11. Attributes of the Thermostat Information Attribute Set ... ... 6 - 14 - - 12. HVAC System Type Configuration Values ... ... ... 6 - 15 Table 6 - 13. Attributes of the Thermostat Settings Attribute Set ... 6 ... 16 - Table 6 14. RemoteSensing Attribute Bit Values ... ... ... 6 - 18 Table 6 - 15. - Attribute Values ... ... ... 6 - 18 Table 6 ControlSequenceOfOperation ... - Attribute Values ... ... SystemMode 6 - 19 Table 6 16. - 17. Interpr etation of SystemMode Values ... ... ... 6 - Table 6 19 Table 6 18. Alarm Codes ... ... ... ... 6 - 20 - ... ... 6 - 20 Table 6.19 Thermostat Running Mode Attribute Values ... 6 - ... ... - 20 Table 6 20. Thermostat Schedule & HVAC Relay Attribute Set - 21. StartofWeek Enumeration Values ... ... ... 6 Table 6 20 - Table 6 22. TemperatureSetpointHold Attribute Values ... ... ... 6 - 21 - ... - ThermostatProgrammingOperationMode Attribute Values ... 23. 6 - 22 Table 6 22 - 6 ... ... ... ... 24. HVAC Relay State Values Table 6 - Table 6 - ... ... ... 6 - 22 25. Thermostat Setting Attribute Set 26. Values ... ... ... ointChangeSource 6 - 23 - Setp Table 6 27. SetpointChangeAmount Values ... ... ... 6 - 23 Table 6 - 28. Attributes of the AC Information Attribute Set Table 6 ... ... ... 6 - 23 - ... 29. - Enumeration ... ... ... ACType 6 - 24 Table 6 - 30. ACRefrigerantType Enumeration ... ... ... 6 - 24 Table 6 - ACCompressorType Table 6 Enumeration ... ... ... 6 - 24 31. ... - Values ... ... ... ACErrorCode 6 - 24 Table 6 32. - 33. ACLouverPosition V alues ... ... ... ... 6 - 25 Table 6 - ... Table 6 ... ... ... 6 - 25 34. ACCapacity Enumeration - ... ... ... Table 6 6 - 25 35. Command IDs for the Thermostat Cluster - ... ... 36. Mode Field Values for Setpoint Raise/Lower Command 6 - 26 Table 6 Table 6 - 37. Day Of Week for Sequence Values ... ... ... 6 - 27 Table 6 - 38. Mode for Sequence Values ... ... ... ... 6 - 28 Table 6 - ... ... ... 6 - 31 39. Server Commands Send Command ID - 40. Attribu ... ... ... 6 - 33 Table 6 tes of the Fan Control Cluster ... 41. Attribute Values ... ... ... - 6 - 33 Table 6 FanMode - 42. FanSequenceOperation Attribute Values Table 6 ... ... ... 6 - 34 Table 6 43. Dehumidification Control Attribute Sets ... ... ... 6 - 35 - - ... ... ... 44. Dehumidification Information Attribute Set 6 - 35 Table 6 Table 6 - 45. Dehumidification Settings Attribute Set ... ... ... 6 - 36 Table 6 - RelativeHumidityMode Attribute Values ... ... ... 6 - 36 46. ... Table 6 DehumidificationLockout Attribute Values ... 47. ... 6 - 36 - Table 6 - 48. RelativeHumidityMode Attribute Values ... ... ... 6 - 37 Table 6 ... ... .. 49. Thermostat User Interface Configuration Cluster 6 - 38 - Table 6 50. DisplayMode Attribute Values ... ... ... 6 - 38 - Attribute Values 38 - 6 ... ... ... Table 6 - 51. KeypadLockout  , The ZigBee Alliance. All rights reserved. 30 Copyright Page 2007 - 2016

31 ZigBee Cluster Library – Document 075123 52. Table 6 Attribute Values ... ... .. 6 - 3 9 ScheduleProgrammingVisibility - - ... ... 7 the Closures Functional Domain 1 1. Clusters Specified in Table 7 - 2. Shade Configuration Attribute Sets ... ... ... Table 7 - 3 - 7 - Attribute Set ... ... ... 7 - 3 Table 7 3. Attributes of the Shade Information ... - Attribute ... ... Status 7 - 4 Table 7 4. Bit Values for the - 5. Attributes of the Shade Settings Attribute Set Table 7 ... ... 7 - 4 ... Table 7 6. Values of the Mode Attribute ... ... ... ... 7 - 4 - 7 - ... ... ... ... - 8 Table 7 7. Attribute Sets Description - 8. Current Information Attribute Set ... ... ... 7 - 8 Table 7 - Attribute Values LockState Table 7 ... ... ... ... 7 - 9 9. ... Table 7 LockType Attr ibute Values ... 10. ... ... 7 - 9 - Table 7 - 11. ActuatorEnabled Attribute Values ... ... ... 7 - 9 Table 7 - DoorState Attribute Values ... ... ... ... 7 - 10 12. - 13. User, PIN, Schedule, Log Information Attribute Set ... ... 7 - 10 Table 7 7 - ... ... ... - 12 Table 7 14. Operational Settings Attribute Set - 15. Operating Modes ... ... ... ... 7 - Table 7 13 Table 7 16. Bit Values for the SupportedOperatingModes Attribute ... ... 7 - 13 - ... T 17. Modes for the LEDSettings Attribute - ... ... 7 - 14 able 7 Table 7 - 18. Settings for the SoundVolume Attribute ... ... ... 7 - 14 Table 7 DefaultConfi gurationRegister Attribute ... ... ... 7 - 15 19. - Table 7 20. Security Settings Attribute Set ... ... - 7 - 16 ... Table 7 - 21. Alarm and Event Masks Attribute Set ... ... ... 7 - 17 ... Table 7 ... ... ... 22. Alarm Code Table 7 - 17 - Table 7 - 23. Commands Received by the Server Cluster ... ... ... 7 - 18 ... Table 7 24. User Status Value ... ... - ... 7 - 21 25. User Type Value - 21 - 7 ... ... ... ... Table 7 Table 7 - ... ... 7 - 27 26. User Status Byte Values for S et RFID Code Command 27. Commands Generated by the Server Cluster ... ... 7 - 28 Table 7 - ... - 28. Operation Event Source Value ... ... 7 ... 39 - Table 7 29. Operation Event Code Value ... ... ... .. 7 - 40 Table 7 - - 30. Keypad Operation Event Value ... ... ... 7 - 41 Table 7 31. RF Operation Event Value 7 ... ... ... ... - - 41 Table 7 7 32. Manual Operation Event Value ... ... ... - 42 Table 7 - - 33. RFID Operation Event Value ... ... ... .. 7 - 42 Table 7 - Table 7 ... ... ... 7 - 43 34. Operation Event Source Value 35. Programming Event Codes ... ... ... ... - 7 - 44 Table 7 36. Keypad Programming Event Value ... ... ... 7 - 45 Table 7 - - 37. RF Programming Event Value ... ... ... 7 - 45 Table 7 ... 38. RFID Programming Event Value ... ... - 7 - 46 7 Table - 39. Window Covering Attribute Set ... ... ... 7 - 48 Table 7 - ... 40. Window Covering Information Attr ibute Set ... Table 7 ... 7 - 48 Table 7 - ... ... ... ... 7 - 48 41. Window Covering Type - 42. Bit Meanings for the Config/Status Attribute ... ... ... 7 - 50 Table 7 7 - ... ... ... - 51 Table 7 43. Window Covering Settings Attribute Set - 44. Bit Meanings for the Mode Attribute ... ... ... 7 - 52 Table 7 Table 7 45. Commands Received by the Window Covering Server Cluster ... ... 7 - 53 - - 8 ... ... Table 8 - 1 1. Clusters of the Security and Safety Functional Domain ... Table 8 ... ... 2. Attribute Sets for the IAS Zone Cluster 8 - 3 - Table 8 - 3. Attributes of the Zone Information Attribute Set ... ... ... 8 - 3 Table 8 - ZoneState Attribute ... ... ... 8 - 3 4. Values of the ... Table 8 ZoneType Attribute ... 5. Values of the ... 8 - 4 - Table 8 - 6. Value s of the ZoneStatus Attribute ... ... ... 8 - 4 ... Table 8 ... ... 7. Attributes of the Zone Settings Attribute Set 8 - 5 - - 8. Received Command IDs for t he IAS Zone Cluster ... ... ... 8 - 8 Table 8 9 Table 8 - 9. Values of the Enroll Response Code ... ... ... 8 - ... 10. Generated Command IDs for the IAS Zone Cluster - Table 8 11 - 8 ... - 31  2007 Copyright 2016 , The ZigBee Alliance. All rights reserved. Page

32 ZigBee Cluste Specification r Library 075123 – ZigBee Document 11. Format of the Zone Table Table 8 ... ... ... 8 - 13 - ... - ... 8 12. Received Command IDs for the IAS ACE Cluster 14 Table 8 - ... 8 ... ... ... 13. Arm Mode Field Values - 14 - Table 8 ... 14. Generated Command IDs for the IAS ACE Cluster Table 8 ... ... 8 - 18 - - ... ... ... ... 8 - 19 Table 8 15. Arm Notification Values ... 16. Field Values ... ... ... - 8 - 22 Table 8 PanelStatus - 17. Values of Bypass Result Fie ld Table 8 ... ... ... 8 - 25 Table 8 18. Attributes of the IAS WD (Server) Cluster ... ... ... 8 - 27 - - 19. Received Command IDs for the IAS WD Server Cluster ... ... 8 - 27 Table 8 20. Warning Modes ... ... ... ... - 8 - 28 Table 8 - 21. Values of the Strobe Field ... ... ... ... Table 8 8 - 28 Table 8 22. Siren Level Field Values ... ... ... ... 8 - 29 - ... - ... ... ... 23. Strobe Level Field Values 8 - 29 Table 8 Table 8 - 24. Squawk Mode Field ... ... ... ... 8 - 3 0 Table 8 - ... ... ... ... 8 - 30 25. Strobe Bit - 26. Squawk Level Field Values ... ... ... ... 8 - 30 Table 8 le 9 ... ... ... 1. Clusters of the Protocol Interfaces Functional 9 - 1 Tab - - 2. Attributes of the Generic Tunnel Cluster ... ... ... 9 - 3 Table 9 Table 9 3. Comman d IDs Received by the Generic Tunnel Cluster ... ... 9 - 4 - - ... ... Table 9 9 - 5 4. Command IDs Generated by the Generic Tunnel Cluster Table 9 nd IDs for the BACnet Protocol Tunnel Cluster ... ... 5. Comma 9 - 7 - Table 9 - 6. Attributes of the Analog Input (BACnet Regular) Server ... ... 9 - 8 Table 9 - ttributes of the Analog Input (BACnet Extended) Server ... ... 9 - 10 7. A - ... ... Table 9 9 - 11 8. Attributes of the Analog Output (BACnet Regular) Server Table 9 ... ... 9. Attributes of the Analog Output (BACnet Extended) Server 9 - 12 - Table 9 - 10. Attributes of the Analog Value (BACnet Regular) Server ... ... 9 - 14 Table 9 ... ... 11. Attributes of the Analog Value (BACnet Extended) Server 9 - 15 - Table 9 - 12. Attributes of the Binary Input (BACnet Regular) Server ... ... 9 - 16 Table 9 13. Attributes of the Binary Input (BACnet Extended) Server ... ... 9 - 18 - - 14. Attributes of the Binary Output (BACnet Regular) Server ... ... 9 - 19 Table 9 21 - 9 ... ... 15. Attributes of the Binary Output (BACnet Extended) Server - Table 9 Table 9 - ... ... 9 - 22 16. Attributes of the Binary Value (BACnet Regular) Server - 17. Attributes of the Binary Value (BACnet Extended) Server ... ... 9 - 23 Table 9 9 - ... ... ver - 24 Table 9 18. Attributes of the Multistate Input (BACnet Regular) Ser - 19. Attributes of Multistate Input (BACnet Extended) Server ... ... 9 - 26 Table 9 Table 9 - t Regular) Server ... ... 9 - 27 20. Attributes of Multistate Output (BACne - ... ... Table 9 9 - 28 21. Attributes of Multistate Output (BACnet Extended) Server Table 9 e Value (BACnet Regular) Server ... ... 22. Attributes of Multistat 9 - 29 - Table 9 - 23. Attributes of Multistate Value (BACnet Extended) Server ... ... 9 - 31 Table 9 - s Used in ISO 7816 Protocol Tunnel Description ... ... 9 - 35 24. Definition - ... ISO7816 Tunnel Cluster ... ... Table 9 9 - 36 25. Attributes for the ... - lues ... ... ... 26. Status Va 9 - 36 Table 9 Table 9 - 27. Received Command IDs for the ISO7816 Tunnel Cluster ... ... 9 - 37 Table 9 28. Generated Command IDs for the ISO7816 Tun nel Cluster ... ... 9 - 38 - ... Table 9 29. Attributes of the Partition Cluster ... ... - 9 - 41 Table 9 ... - 30. Server Received Command IDs for the Partition Clus ter ... 9 - 43 Table 9 - Partition Cluster ... ... . 9 - 45 31. Generated Command IDs for the - tion Cluster ... ... Parti 9 - 48 Table 9 32. Registration Table of Clusters Using the - 33 – Attributes of the 11073 Protocol Tunnel server cluster ... ... 9 - 50 Table 9 - Table 9 – Command IDs for the 11073 pr otocol tunnel cluster ... ... 9 - 52 34 ... Table 9 – Connect status values ... 35 ... ... 9 - 55 - Table 10 - 1. Smart Energy Clusters ... ... ... ... 10 - 1 ... Table 10 Cluster Attribute Set s 2. Price ... ... ... 10 - 3 - Table 10 - 3. T ier L abel Attribute Se t ... ... ... ... 10 - 3 Table 10 4. 4 - 10 ... ... ... - t A ut e Se t tri d reshol h T k Bloc b ... ... ... ... 5 5. - 10 Table 10 - At Perio d k tr ibu te Bloc Set , The ZigBee Alliance. All rights reserved. Page 32 Copyright  2007 - 2016

33 ZigBee Cluster Library – Document 075123 ... - Table 10 6. 5 - 10 ... ... ... At mo te ibu tr Set ity m d Co Table 10 - 7. 6 - 10 ... ... Attribute criptions the for CalorificValueUnit s De and Values 8. Block Price Informa t i o n A t tri bu te Set ... ... ... 10 - 7 Table 10 - ... 9. Table 10 9 - 10 ... ... - tri te Set t A n o i t bu Informa Billing 10 10. ... ... ... - 9 - Table 10 the Price Cluster Receiv e d Command IDs for ... 11. Table 10 ... ... - 10 - 13 Price Cluster Command IDs for the Generated Table 10 12. - 15 - 10 ... ... ... Enumerations - Sub Tier Price field 13. 16 Table 10 - - 10 ... ... ... Enumerations field - Sub Tier Register 14. Altern a te Cost U Table 10 it E numerations ... ... ... 10 - 18 - n 10 - 15. Price Control Table Field BitMa p ... ... ... . 10 - 18 Table 10 16. B lock Period Control Field B it M ap ... ... ... 10 - 20 - Table 10 17. Price Client Cluster Attr ibutes - ... ... ... 10 - 22 Table 10 - 18. C o mm a nd IDs f o r the Demand Response and Load Control S erver ... ... 10 - 26 ... Table 10 - 27 - 10 ... ... 19. ie Bi tM a p /E nc o di n g s F s la De C e c ld v i - i ty Leve l s ... 20. Critical ... ... 10 - 27 Table 10 ... - 21. 10 29 - Table 10 ... ... ... BitMap Event Control Field 22. Cancel Control ... - ... ... 10 - 30 Table 10 ... - 23. Format of the C a ncel All Load C o ntrol Events C o mm a n d Pa y load ... ... 10 - 31 Table 10 ... - Table 10 ... ... 24. 10 - 32 ncel Control Fi e l d Cancel All C omm a nd C a Table 10 - 33 - 10 ... ... ... 25. luster ttributes C Client A nse o Resp Demand Ta ble 10 - 26. Generated Command IDs for the Demand Response a n d L o ad C o n t rol C l ient ... 10 - 34 ... Table 10 Status Field Values ... 27. Event ... ... 10 - 34 - Table 10 - 28. Enumerated Values of Signature Types ... ... ... 10 - 35 Attribute 29. M eterin g Table 10 Clu s ter - Sets ... ... ... 10 - 51 10 ... ... ... Set 51 - Table 10 - 30. Re a ding Info rmation Attribute Table 10 - 31. 55 - ... ... ... ... 10 Enumerations c Blo k Su 57 pl y S t atu s At tr i b u te En u merations ... ... ... 10 - 32. Table 10 p - n for ma ti o n A t tri bu te I Set ... ... ... 10 - 58 33. TOU Table 10 - 34. M eter S t a Table 10 us At t ri b u t e S et ... ... ... ... 10 - 60 - t - M apping of the Status Attribute (Electricity) ... ... ... 10 - 61 Table 10 35. ) 36. Meter Status A t tri bu te ( G as ... ... ... 10 - 61 Table 10 - e 10 - 37. M e ter St a u s Attribute Tabl (Water ) ... ... ... 10 - 61 t Table 10 38. Meter Statu s At tr ibu te ( Hea t a nd Cooling ) ... ... ... 10 - 62 - es - rm a t t ing E xa m p l Fo ... ... ... ... 10 - 63 Table 10 39. - 40. Formatting Attribu t e Set ... ... ... ... 10 - 63 Table 10 - 64 UnitofMeasure Attribute Enumerations ... ... ... 10 - Table 10 41. ... - At tr ibu te ... MeteringDeviceType ... 10 - 66 Table 10 42. - 43. 68 - 10 ... ... Table 10 ... Enumeration e r TemperatureUnitOfMeasu Set - H istor i cal Table 10 Attribute 44. ... ... ... 10 - 68 Consumption Table 10 - 45. ... ... ... 10 - 71 Loa igura t io n At tr i b u te Set f d Pro il e Con f Table 10 - 46. 72 - 10 .. ... ... ... t S u trib t A t Limi y ppl u e Set ... 47. Block t e Se t Information ... ... 10 - 73 - Table 10 Attribu 48. Table 10 - 76 - 10 ... ... ... ... Al Set Attribute m r a ... 49. Table 10 ... ... - ... 10 - 77 ps larm C o d e Gr A u o Table 10 50. Generic Alarm Group ... ... ... ... 10 - 77 - - ... Alarm Group ... ... ... Table 10 10 - 78 51. Electricity ... - 52. ... ... Table 10 10 - 78 Flow/Pr e ssure Alarm Generic Group Table 10 - 53. 79 - 10 ... ... ... Group c Specifi Water Alarm - 54. ... 79 - 10 Table 10 ... ... i H A larm Group ing Specif l oo C nd a eat c .. 55. ... ... ... Table 10 10 - 79 - Alarm Group Gas Specific - 56. Ge n era ted Com m a nd IDs for the Metering Table 10 Server ... ... 10 - 79 ... Table 10 t atus F i eld Values ... 57. S ... ... 10 - 80 - Table 10 - 58. 80 - ... ... ... 10 Timeframes ProfileIntervalPeriod - 59. Generated Command IDs for the M eterin g Table 10 Client ... ... 10 - 82 82 - 10 ... ... ... ... Values Table 10 - 60. I n terval Channel - 33  2007 Copyright 2016 , The ZigBee Alliance. All rights reserved. Page

34 ZigBee Cluste r Library Specification – ZigBee Document 075123 61. Table 10 - 87 - 10 ... ... Messaging Server the r o f IDs Command Generated ... s ge s Field Bit Map a ... ... 10 - 87 62. Me - Table 10 Control Table 10 - 89 - 63. 10 ... ... ... a Cl omm C nt e i ing g M essa nds ... ... 64. Tunneling Cluster Attributes 10 - 94 Table 10 - ... - ... 10 ... 94 - Table 10 65. Cluster Parameters Passed Through Commands 66. Cluster - specific Commands Received by the Server ... ... Table 10 - 95 - 10 - Table 10 67. 95 - ... ... ... ... 10 ns ProtocolID o Enumerati ... Tra s f erD at a S tatus 68. Values n ... ... . 10 - 98 - Table 10 69. Cluster - Specific Comman d s Sent by the Server Table 10 ... ... 10 - 100 - - Tun n el S ta t u s Values ... ... ... ... 70. 10 - 100 Table 10 - sters Specified for the Secure Communication Functional Domain ... 71. Clu - 106 Table 10 10 - 72. Key Establishment Attribute Sets Table 10 ... ... ... 10 - 109 Table 10 73. Information Attribute Sets ... ... ... 10 - 109 - - Table 10 Attribute ... ... 10 - 109 74. Values of the KeyEstablishmentSuite 75. Receiv ... d Comman d IDs for the Key Establishment Cluster Se r v er - . 10 - 110 e Table 10 a 76. Key Establishment Co mm a n d S t Terminate t us F ield ... ... 10 - 112 - Table 10 - 77. 113 - 10 ... ... ... Table 10 tri ut t e Se ts A nt tablishme s E y Ke b ... - 78. Table 10 113 - 10 ... ... te e In formation Attribute Set th A f o s u t trib ... 79. Table 10 ... - 10 - 113 bl i sh m V ntSuite At tr ibu te a lues of t he KeyEst a e Table 10 80. 113 - 10 .. ... - Client e the Establishment Cluster K for IDs Command Received y i F t 116 - 10 ... ... Table 10 - 81. Terminate Key E s tablishment C o m m a nd S t a eld us Table 10 - U s ed by Methods of the CBKE Protocol ... ... 10 - 120 82. Parameters le 11 - ... ... ... 11 - 2 Tab 1. Clusters Specified in This Document - ... ... ... ... 11 - 6 Table 11 2. OTA Header Fields - 3. OTA Header Field Control Bitmask ... ... ... 11 - 7 Table 11 Table 11 - ... ... ... ... 11 - 8 4. Image Type Values - ... ... ... Table 11 11 - 8 5. Recommended File Version Definition . Table 11 ... ... ... 6. ZigBee Stack Version Values 11 - 9 - Table 11 - 7. Security Credential Version ... ... ... . 11 - 10 Table 11 - Version Format ... ... ... ... 11 - 10 8. Hardware - ... ... ... ... 11 - 11 Table 11 9. Tag Identifiers - ... ... ... Table 11 11 - 18 10. Attributes of OTA Upgrade Cluster Table 11 ... ... ... 11. Image Upgrade Status Attribute Values 11 - 19 - Table 11 - 12. Parameters of OTA Upgrade Cluster ... ... ... 11 - 21 Table 11 - ... ... 11 - 22 13. Meaning of CurrentTime and UpgradeTime Parameters Table 11 ... ... ... 14. OTA Upgrade Cluster Command Frames 11 - 24 - Table 11 - 15. Status Code Defined and Used by OTA Upgrade Cluster ... ... 11 - 25 ... Table 11 16. Image Notify Command Payload Type ... ... - 11 - 26 Table 11 - 17. Query Next Image Request Field Control Bitmask ... ... 11 - 28 Table 11 - ... ... ... 11 - 32 18. Image Block Request Field Control Bitmask 11 19. Image Page Request Field Control Bitmask ... ... ... 11 - 35 Table - 1. Telecom Cluster List ... ... ... ... 12 - 1 Table 12 - - 2. Clusters Specified for the Information Delivery ... ... ... 12 - 3 Table 12 - Information Cluster Table 12 Attribute Sets ... ... ... 12 - 7 3. - ... Node Information Attribute Set ... Table 12 ... 12 - 7 4. ... Table 12 Contents Information Attribute Set ... 5. ... 12 - 8 - Table 12 - 6. Received Command IDs for the Information Cluster ... ... 12 - 8 Table 12 - Inquiry ID ... ... ... ... 12 - 9 7. - ... ... ... ... Data Type IDs 12 - 9 Table 12 8. - 9. Preference Type ... ... Table 12 ... 12 - 11 ... Table 12 10. Value of the Access Control Field ... ... - 12 - 13 ... Table 12 - 11. Generated Command IDs for the Information Cluster ... ... 12 - 17 Table 12 ... ... ... 12. Enumerated Status Values Used in the ZCL 12 - 23 - Table 12 - 13. Chatting Attributes Sets ... ... ... ... 12 - 26 ... Table 12 14. Attributes of the User Related Attribute Set - ... ... 12 - 26 12 ... ... 15. Attributes of Chat Session elated Attribute Set R 27 - Table 12 -  , The ZigBee Alliance. All rights reserved. 34 Copyright Page 2007 - 2016

35 ZigBee Cluster Library – Document 075123 16. Command IDs for the Table 12 Cluster ... ... ... 12 - 27 Chatting - 12 17. Generated Command IDs for the Cluster ... ... - 31 - Table 12 Chatting 18. VoZ Attribute Sets Table 12 ... ... ... ... 12 - 37 - - Voice Information Attribute Set 19. Attributes of the ... 12 - 37 Table 12 ... - 20. Command IDs for the VoZ Cluster ... ... ... 12 - 39 Table 12 Table 12 - VoZ Cluster ... ... ... 12 - 41 21. Generated Command IDs for the - 22. he Error Flag of Voice Transmission Response ... ... 12 - 43 T Table 12 13 1. Commissioning Attribute Sets ... ... ... - 3 - Table 13 - 2. Attributes of the Startup Parameters Attribute Set ... ... .. Table 13 - 4 13 Table 13 3. Stack Profile Compatibility for the ShortAddress Attribute ... ... 13 - 5 - ... Table 13 ty for the PANId Attribute 4. Stack Profile Compatibili ... 13 - 6 - Table 13 - 5. StartupControl Attribute Usage ... ... ... 13 - 7 Table 13 - tupControl Attribute ... ... 13 - 8 6. Stack Profile Compatibility for the Star 7. Attributes of the Join Parameters Attribute Set ... ... ... - 13 - 10 Table 13 - Parameters Attribute Set ... ... 13 - 11 Table 13 8. Attributes of the End Device - 9. Attributes of the Concentrator Parameters Attribute Set ... ... 13 - 11 Table 13 13 - ... ... ived by the Commissioning Cluster Server - 12 10. Commands Rece Table 13 - - field Values ... ... ... 13 - 13 Table 13 11. Startup Mode Sub Table 13 - 12. Commands Generated by t he Commissioning Cluster Server ... ... 13 - 16 Table 13 - ... 13 - 20 13. Commands Received by the Server Side of the Touchlink Commissioning Cluster - ... ... ... Table 13 13 - 23 14. Values of the Identify Duration Field Table 13 - 15. Commands Generated by the Server Side of the Touchlink Commissioning Cluster ... 13 - 32 Table 13 16. Values of the Status Field of the Network Start Response Command Frame ... 13 - 39 - Table 13 - 17. Values of the Status Field of the Network Join Router Response Comman d Frame ... 13 - 40 Table 13 - 18. Values of the Status Field of the Network Join End Device Response Command Frame .. 13 - 42 Table 13 - 19. Comma nds Received by the Client Side of the ZLL Commissioning Cluster ... 13 - 45 20. Commands Generated by the Client Side of the ZLL Commissioning Cluster - Table 13 46 - 13 ... Table 13 - ... ... ... 13 - 46 21. Touchlink Commissioning Constants 22. Touchlink Commissioning Attributes Table 13 ... ... 13 - 47 - ... - 23. Key Encryption Algorithms ... ... 13 ... 53 - Table 13 1. Clusters Specified in this Chapter ... ... ... Table 14 - 1 - 14 - etail Tunnel cluster ... ... ... 14 - 2 Table 14 2. Attributes of the R 14 3. Cluster specific Commands Received by the Server ... ... - - 3 Table 14 - - 4. Attributes of the Mobile Device Cleaning Cluster ... ... .. 14 - 5 Table 14 - Table 14 specific Commands Generated by the Server ... ... 14 - 6 5. Cluster - 6. Attributes of the Neigh 14 ... ... ... - - 8 Table 14 bor Cleaning Cluster 14 - specific Commands Generated by the Server ... ... - - 8 Table 14 7. Cluster - 8. Attributes of the Nearest G ateway Cluster ... ... ... 14 - 10 Table 14 15 - ... ... ... - 1 1. Appliance Management Clusters Table 15 - 2. Appliance Control Attribute Set ... ... ... 15 - 2 Table 15 ... - 3. Attributes of the Appliance Functions Attribute Set ... 15 - 3 Table 15 Table 15 - ... ... ... ... 15 - 3 4. Time Encoding - 5. Cluster specific Commands Received by the Server ... ... 15 - 4 Table 15 - 15 6. Command Identification Values ... ... ... - 4 Table 15 - e 15 - 7. Format of the Event ID Enumerator ... ... ... Tabl - 7 15 Table 15 8. Cluster - specific Commands Sent by the Server ... ... ... 15 - 7 - ... - tatus Values ... ... 9. Appliance S ... 15 - 8 Table 15 Table 15 - 10. Remote Enable Flags Values ... ... ... 15 - 9 Table 15 - ... ... ... 15 - 11 11. Appliance Identification Attribute Sets - ... ... Table 15 15 - 11 12. Attributes of the Appliance Identification Attribute Set Table 15 ... ... 13. Basic Appliance Identification Content Specification 15 - 11 - Table 15 - 14. Product Type IDs ... ... ... ... 15 - 12 Table 15 ... ... 15. Attributes of the Extended Appliance Identification Attribute Set 15 - 12 - - 16. CECED Specification Version ... ... ... 15 - 14 Table 15 16 Table 15 - 17. Received Commands IDs for the Events and Alerts Cluster ... ... 15 - Table 15 16 - 15 ... 18. Generated Commands IDs for the Appliance Events and Alerts Cluster - - 35  2007 Copyright 2016 , The ZigBee Alliance. All rights reserved. Page

36 ZigBee Cluste r Library Specification – 075123 ZigBee Document - 19. Alert Count Organization ... ... ... ... 15 - Table 15 17 Table 15 20. Alerts Structure Organization ... ... - 15 - 17 ... 19 - 15 ... ... ... ... 21. Event Identification - Table 15 ... 21 - 15 ... ... ... Table 15 - 22. Server Attributes - Table 15 23. Commands Generated by the Appliance Statistics Server ... ... 15 - 21 s Generated by the Appliance Statistics Client ... ... 15 - 24 24. Command Table 15 -  , The ZigBee Alliance. All rights reserved. 36 Copyright Page 2007 - 2016

37 Chapter ZigBee Cluster Library Specification 1 Introduction – ZigBee Document 075123 CHAPTER 1 INTRODUCTION The ZigBee Cluster Library is made of individual chapters such as this one. See Document Control in the ZigBee Cluster Library for a list of all chapters an d documents . References between chapters are made using - is the sub Y to external section within that chapter. References a X.Y notation where X is the chapter and documents are contained in Chapter 1 and are made using [ R n ] notation. Scope and Purpose 1.1 document specifies the ZigBee Cluster Library (ZCL). The ZCL is a repository for cluster functionality This that is developed by the ZigBee Alliance, and, as a consequence, it will be a working library with regular updates as new functionality is added. A dev eloper constructing a new application should use the ZCL to find relevant cluster functionality that can s . Correspondingly, new clusters that are defined for application be incorporated into the new application for inclusion in the ZCL. should be considered The ZCL consists of the ZCL Foundation, a set of elements that apply across the entire library (such as frame structures, attribute access commands and data types), and a number of sets of clusters. Clusters that are eful across many application domains are included in the General set. Clusters that are intended generally us for use mainly in specific application domains are grouped together in domain oriented sets. Acronyms and Abbreviations 1.2 - 1 Table . Acronyms and Abbreviations 1 Acronym Definition Acc Access Ancillary Control Equipment ACE Advanced Encryption Standard AES AIB Application support sub - layer Information Base AMI Advanced Metering Infrastructure or Advanced Metering I nitiative AP Access Point layer - Application support Sub APS BPL Broadband over Power Lines CA Certificate Authority CBA Commercial Building Automation CBKE Certificate - based Key Establishment CIE Control and Indicating Equipment CT Commissioning To ol Def D efault Elliptic Curve Digital Signature Algorithm ECDSA Qu - Elliptic Curve Menezes ECMQV Vanstone - 2016 1  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 1 -

38 Chapter ZigBee Cluster Library Specification 1 – 075123 ZigBee Document Introduction Acronym Definition EFT Electronic Funds Transfer Energy Management System EMS EOF End Of File Extended PAN Identifier EPID ESI Energy Service Interface ESP Energ y Service Portal Extended Universal Identifier EUI64 64 - GPRS General Packet Radio Service HA Home Automation (Application Profile) Home Area Network HAN HVAC Heating, Ventilation, Air Conditioning IAS Intruder Alarm System Information delivery ID Identifier (or Id) D I IHD Home Display - In IN Information node IPD - Premises Display (Same as IHD) or Inter - PAN Device In IVR Interactive Voice Response M Mandatory M/O Mandatory or Optional er) Medium Access Control (referring to protocol stack sublay MAC MAC Message Authentication Code (referring to cryptographic operation) MAC PIB Medium Access Control sub layer PAN Information Base - - commerce Mobile commerce m MRD Market Requirements Document MT Mobile Terminal NAN Neighborhood Area Network Network layer Information Base NIB NWK Network layer O Optional Over the Air OTA P that an attribute is r ates eportable Mand Peer to Peer P2P Personal Area Network PAN opyright , The ZigBee Alliance. All rights reserved. 1 - 2 C Page  2007 - 2016

39 1 ZigBee Cluster Library Specification Chapter 075123 Introduction – ZigBee Document Acronym Definition PCT Programmable Communicating Thermostat PD Payment Device Personal Home and h PHHC ospital Health Care PID PAN Identifier Pyroelectric Infra Red (a type of motion detection sensor) PIR - PKKE Public Key Key Establishment POS Point of Sales designated as Writable (W) also nly if not or Read (Read) o R Readable R*W ly writable Readable and optional RSSI Anchor Node RAN RFD Reduced Functionality Device RSSI Location Gateway RLG RLN RSSI Location node RSSI Received Signal Strength Indication R/W Readable and Writable (same as RW) e Scene cluster is on the same Mandates that an attribute is part of a scene, if th S endpoint Startup Attribute Set SAS SE Smart Energy (Application Profile) Sleepy End Device is a ZigBee End Device with r xOnWhenIdle set to FALSE SED SKKE Symmetric Key Key Exchange TC Trust Center TOU Time of Use TRD T echnical Requirements Document UKE Unprotected Key Establishment - bit Unicode Transformation Format UTF - 8 8 also W Writable (Write) or Write o nly if not designated as Readable WD Warning Device ZigBee Cluster Library ZCL ZCL A revision of the ZCL. F or example: ZCL6 is the ZigBee Cluster Library revision 6 n ZDO ZigBee Device Object ZDP ZigBee Device Profile – Reduced Functionality Device) ZED ZigBee End Device (equivalent to IEEE’s RFD ZR Device) Full Functionality – ZigBee Router (equivalent to IEEE’s FFD 2016 3  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 1 -

40 Chapter ZigBee Cluster Library Specification 1 Introduction – 075123 ZigBee Document 1.3 Definitions Many of these terms are described in more detail in the core stack specification [Z1], or the Application Ar itecture specification [Z5]. ch Application Cluster: An application cluster generates persistent functional application transactions between client and server. Attribute: A data entity which represents a physical quantity or state. This data is communicated to other devices using commands. remote cluster corresponding more n- i Binding: A persistent mapping of a local clu ster instance to one o r stances broadcast, groupcast, or unicast . A unicast binding includes an address ( IEEE or . A binding can be network) and end point . Cluster: A cluster is a specification defining one or more attributes , command s, behavior s and dependencies , mplementation that supports an independent utility fun c tion . The term may also be used for an i or application or instance of such a specification on an endpoint. ) maps to ( a single cluster spec i- that identifies Cluster identifier: The cluster identifier is a 16 - bit number . fication a cluster specification, each defining a different scope cluster identifier may map to e More than on Cluster identifiers are designated as inputs or outputs in the simple descriptor for use in creating and purpose. a binding table. Client: A cluster in terface which is listed in the output cluster list of the simple descriptor on an endpoint. Typically this interface sends commands that manipulate the attributes on the corresponding server cluster. A client cluster communicates with a corresponding remot e server cluster with the same cluster identifier . Corresp onding cluster: The opposite side of a cluster (client to a server, or server to a client). and optional Device: A specification which defines a unique device identifier and a set of mandatory implementation or instance clusters to be implemented on a single endpoint. The term may also be used for an of the device specification on an endpoint. Node: A ZigBee node (or node) is a single testable implementation of a ZigBee applicatio n on a single ZigBee stack, with a single network address, on a single network. node Product: A product is a that is intended to be marketed. A cluster interface which is listed in the input cluster list of the simple descriptor on an endpoint. Server: A server cluster communicates Typically this interface supports all or most of the attributes of the cluster. with a corresponding client cluster with the same cluster identifier . remote Service discovery: The ability of a device to locate services of interest. Sleepy nd D evice: A ZigBee End Device with r xOnWhenIdle set to E FALSE. Utility Cluste r: A utility cluster is not part of the applica tion function of the product. It may be used for commissioning, configuration, discovery, addressing, diagnostics, etc. A type 1 cluster’s primary function is to initiate transactions from the client to the server. Type 1 Cluster: cluster’s primary function is to initiate transactions from the A type 2 Type 2 Cluster: server to the client . 2003 PAN coordinator. oordinator: - An IEEE 802.15.4 ZigBee C ZigBee End D - an IEEE 802.15.4 evice: 2003 RFD or FFD participating in a ZigBee network, which is neither the ZigBee coordinator nor a ZigBee router. 2003 FFD participating in a ZigBee network, which is not the ZigBee - an IEEE 802.15.4 outer: ZigBee R 2003 coordinator within its personal operating space, that is - coordinator but may act as an IEEE 802.15.4 capable of routing messages between devices and supporting associations. opyright , The ZigBee Alliance. All rights reserved. 1 - 4 C Page  2007 - 2016

41 ZigBee Cluster Library Specification 1 Chapter 075123 Introduction – ZigBee Document Conformance Levels 1.4 Expected: A key word used to describe the behavior of the hardware or software in the design models a s- sumed by this Draft. Other hardware and software design models may also be implemented. . May: A key word that indicates flexibility of choice with no implied preference Shall: to implement all such required A key word indicating a mandatory requirement. Designers are mandatory requirements. A key word indicating flexibility of choice with Should: a strongly preferred alternative. Equivalent to the . phrase is recommended 1.5 References The following standards and specifications contain provisions, which through reference in this document constitute provisions of this specification. All the standards and specifications listed are normative refe r- ences. At the time of publication, the editions indicated were valid. All standards and specifications are subject to revision, and parties to agreements based on this specification are encouraged to investigate t he possibility of applying the most recent editions of the standards and specifications indicated below. ZigBee Alliance Documents 1.5.1 ZigBee 053474, ZigBee Specification [Z1] ZigBee 064321, ZigBee Stack Profile [Z2] file ZigBee 074855, ZigBee PRO Stack Pro [Z3] 2007 Layer PICs and Stack Profiles - ZigBee 08006, ZigBee [Z4] [Z5] ZigBee 130589, Application Architecture [Z6] ZigBee 130402, Base Device Behavior Specification [Z 7 ] ZigBee 053298, Profile Identifier Database [Z 8 ] ZigBee 106050, ZigBee Device interne tworking , list of Device IDs [Z9] ZigBee 075356, Smart Energy Profile Specification [Z10] ZigBee 03084, ZigBee Key Establishment Proposal ZigBee 095343, Installation Code Sample Source Code [Z11] International Standards Documents 1.5.2 CIE 1931 Color Space. Commission Internationale de l'Eclairage Proceedings. Cambridge Un i- [I1] versity Press, Cambridge ISO [I2] 7816 International Standard for Electronic Identification Cards with Contacts (Smart Cards) 1.5.3 National Standards Documents [N1] EN 50131 European Standards Series for Intruder Alarm Systems – 2:2009, “Household Appliances interworking - Standards, document BS EN 50523 British Part [N2] BSI 2: Data Structures”. July 2009 38C, Recommendation for Block Cipher Modes of Operation: C - NIST Special Publication 800 [N3] CM May 2004 Confidentiality, Mode for Authentication and 2016 5  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 1 -

42 Chapter 1 ZigBee Cluster Library Specification ZigBee Document 075123 Introduction – FIPS Pub 197, Advanced Encryption Standard (AES), Processing Standards Publication 197, US [N4] Department of Commerce/NIST Springfield, Virginia, November 26, 2001 Message Authentication Code (HMAC), Federal Information, [N5] FIPS Pub 198, The Keyed Hash - Processing Standards Publication 198, US Department of Commerce/NIST Springfield, Virginia, March 6, 2002 IEEE Documents 1.5.4 hysical Layer [E1] IEEE Standards 802, Part 15.4: Wireless Medium Access Control (MAC) and P (PHY) specifications for Low Rate Wireless Personal Area Networks (LR - WPANs), IEEE, October 2003. - IEEE 754 - Point Arithmetic, IEEE, 1985. [E2] 1985, IEEE Standard for Binary Floating ASHRAE Documents 1.5.5 - 2004 standard, Data Communi cation Protocol for Building Automation and Control [A1] ASHRAE 135 Networks 1.5.6 Health Care Documents ISO/IEEE 11073 - 20601: Health Informatics - Personal Health Device Communication [H1] Applic a- - - Optimized Exchange Protocol - version 1.0 or later. tion Profile ISO/IEEE P 11073 - 1 04 [H2] Health i nformatics – Personal h ealth d evice c ommunication – Device 04, s – Pulse oximeter . pecialization Personal 11073 - 104 07, Health i nformatics – P h ealth d evice c ommunication – Device [H3] ISO/IEEE pecialization – Blood pressure monitor . s ealth [H4] P 11073 - 104 08, Health i nformatics – Personal h ISO/IEEE d evice c ommunication – Device s pecialization – Thermometer . – ommunication c evice d ealth h Personal – nformatics i 15, Device [H5] ISO/IEEE P 11073 - 104 Health s Weighing scale . – pecialization ISO/IEEE P 11073 - 104 17, Health i n formatics – Personal h ealth d evice c ommunication – Device [H6] pecialization – s Glucose meter . [H7] - 10419, Health informatics – ISO/IEEE P11073 Personal health device communication – Device specialization – Insulin Pump [H8] ISO/IEEE P11073 - 10421, Health informatics – Pe rsonal health device communication – Device specialization – Peak Expiratory Flow Monitor – Device – ommunication c evice d [H9] ISO/IEEE P 11073 - 104 41, ealth Health i nformatics h Personal s – Cardiovascular Fitness and Activity Monitor . pecialization [H10] ISO/IEEE P 1107 3 - 104 42, Health i nformatics – Personal h ealth d evice c ommunication – Device pecialization – s Strength Fitness Equipment . ealth [H11] ISO/IEEE P 11073 - 104 71, Health i nformatics – Personal h d evice c ommunication – Device s pecialization – Independent living activity hub . 10472, Health informatics – Personal health device communication – Device ISO/IEEE P11073 - [H12] – specialization Medication Monitor. opyright , The ZigBee Alliance. All rights reserved. 1 - 6 C Page  2007 - 2016

43 ZigBee Cluster Library Specification 1 Chapter 075123 Introduction – ZigBee Document 1.5.7 Other Documents [O1 ] Standards for Efficient Cryptography: SEC 1 (working draft) ver 1.7: Elliptic Curve Cryptography, Certi com Research, www.secg.org, November 13, 2006 [O2] Standards for Efficient Cryptography: SEC 4 (draft) ver 1.0: Elliptic Curve Cryptography, Certicom Research, www.secg.org, January 24, 2013 [O3] ate and Certificate Revocation List RFC 3280: Internet X.509 Public Key Infrastructure: Certific (CRL) Profile, IETF, www.ietf.org, April 2002 Conventions 1.6 The following conventions are used in this document. 1.6.1 Enumerations and Reserved Values Each undefined value or range of an enumeration, field, or identifier SHALL be considered reserved for future revisions of this standard and SHALL not be available for implementation. - available for non is that or identifier , field, of an enumeration Each value or range standard implementation , “vendor specific be described as “manufacturer s pecific” ” , “ms”, or “MS”. SHALL enumeration, field, or identifier Each value or range of an that is available for other parts of this standard SHALL be described as such. n- and not available for impleme Each value or range of an enumeration, field, or identifier that is obso lete , SHALL , tation be described as “Obsolete”. 1.6.2 Reserved Bit Fields Each full or partial data field (e.g., message data field), of any bit length, that is undefined, SHALL be co n- not be available for implementation. SHALL andard and of this st sidere d reserved for future revisions Please see Section 2.6 (Transmission and Reception) regarding rules for setting and interpreting reserved fields. 1.6.3 Number Format n “0x” and binary numbers are In this specification hexadecimal numbers are prefixed with the designatio prefixed with the designation “0b”. All other numbers are assumed to be decimal unless indicated otherwise within the associated text. aracter from the Binary numbers are specified as successive groups of 4 bits, separated by a space (“ “) ch most significant bit (next to the 0b prefix and left most on the page) to the least significant bit (rightmost on the page), e.g. the binary number 0b0000 1111 represents the decimal number 15. Where individual bits are t 3) the bit numbers are relative to the least significant bit (i.e. bit 0). indicated (e.g. bi When a bit is specified as having a value of either 0 or 1 it is specified with an “x”, e.g. “0b0000 0xxx” indicates that the lower 3 bits can take any value but the upper 5 bits must each be set to 0. 2016 7  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 1 -

44

45 ZigBee Cluster Library Specification Chapter 2 Foundation – ZigBee Document 075123 CHAPTER 2 FOUNDATION The ZigBee Cluster Library is made of individual chapters such as this one. See Document Control in the ZigBee Cluster Library for a list of all chapters and documents . References between chapters are made using to external section within that chapter. References - is the sub Y is the chapter and a X.Y not ation where X documents are contained in Chapter 1 and are made using [ Rn ] notation. Purpose 2.1 Scope an d igBee cluster library (ZCL), and spe This chapter provides an entry point into the documentation for the Z c- ifies the elements that are general across the entire library. The ZCL frame structure is specified along with ZCL wide commands used to manipulate attributes from all the clusters defined throughout the ZCL. In additi on, a set of data types is defined that can be used to re p- resent attributes and a common set of status values returned by commands throughout the ZCL. An overview is included which lists all the domains specified in the ZCL and the clusters contained there in. Cluster Library Overview 2.2 The ZigBee Cluster Library (ZCL) is intended to act as a repository for cluster functionality that is developed by ZigBee and, as a consequence, it will be a working library with regular updates as new functionality is A developer constructing a new application added. n- SHOULD use the ZCL to find relevant cluster functio application invent the wheel”. This also allows - so as not to “re ality that can be incorporated into the new eveloped with more of an object oriented style approach. to be d applications 2.2.1 Architecture Model a- Each cluster defines an independent functional entity. Each cluster specific in this document specification purpose and scope, including overall requirements of the tion is agnostic with regard to functions beyond its device. An application cluster SHOULD have no application or dependencies outside its application domain. A utility cluster MAY provide an interface to other layers (e.g. Groups cluster for group addressing). Please se e [Z5], ZigBee Application Architecture for more details. 2.2.1.1 Cluster Identifier A cluster identifier SHALL map to a single cluster specification. A c luster identifier also defines the purpose a , each with luster identifier c instance. More than one map to a single more MAY cluster unique purpose, of a MAY be abstract cluster specification. For example: A Concentration Measurement cluster specification quite abstract, but have many mapped cluster identifier s each with a more concrete purpose, such as CO 2 . ment in air, by volume measure Please see [Z5], ZigBee Application Architecture for more details. 2.2.1.2 Extensibilit y Model A cluster specification MAY be derived from a base cluster spec i fication. A derived cluster specification to the base specif i- add specific requirements (attri butes, commands, behavior, dependencies, etc) SHALL iona cation. A derived specification MAY reduce opt lity by limiting the optional requirements from the base specification. 2016 1  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

46 Chapter 2 ZigBee Cluster Library Specification ZigBee Document 075123 Foundation – attribute and command definitions All new for the derived cluster SHA LL be specified in the base cluster specification as optional, so as to maintain, in one specification , the identifier name space and communic a- tion behavior . Other b ehavior and dependencies that are specific to the derived cluster MAY also be specified in the base cluster, if it is deemed reusable by future derived clusters. i- A derived cluster specification SHALL have the same mandatory requirements as the base cluster specif n the base specification. cation. A derived specification MAY have mandatory requirements that are optional i ClusterRevision attribute) that is in dependent of the A derived cluster specification defines its own revision ( base specific ation. s When addi tion of one or more cluster considering the to this specification , one SHALL explore t he poss i- either new and or derive to map creating a base cluster , or cluster from an existing cluster a deriving bility of and test plan existing cluster identifiers. This allows the reuse of approved and validated specification s . s Please see [Z5], ZigBee A pplication Architecture for more details. Client/Server Model 2.2.2 . Throughout the ZCL, a client/server model is employed. This model is illustrated in Figure 2 - 1 The ZCL Clie nt Server Model . 1 - Figure 2 A cluster is a related collection of commands and attributes, which together define an interface to specific functionality. Typically, the entity that stores the attributes of a cluster is referred to as the server of that entity that affects or manipulates those attributes is referred to as the client of that cluster. cluster and an However, if required, attributes MAY also be present on the client of a cluster. 2.5.1 Commands that allow devices to manipulate attributes, e.g., in this document the read attribute (see ) or write attribute (see 2.5.3 ) commands, are (typically) sent from a client device and received by the server 2.5.2 ) or the device. Any response to those commands, e.g ., in this document the read attribute response (see .5 write attribute response (see 2.5 commands), are sent from the server device and received by the client device. Co nversely, the command that facilitates dynamic attribute reporting, i.e., the report attribute command (see ) is (typically) sent from the server device (as typically this is where the attribute data itself is stored) 2.5.11 sent to the client device that has been bound to the server device. and A type 1 cluster’s primary function is to initiate transactions from the client to the server. For example: An Off client sends commands (da to the On/Off server. A type 2 cluster’s On/ ta) primary function is to initiate transactions from the server to the client. For Temperature Measurement server reports to the example: A Please see [Z5], ZigBee Application Architecture for more details. Temperature Measurement client. ted by an application The clusters suppor are identified through the simple descriptor (see [Z1]), specified on each active endpoint of a device. In the simple descriptor, the application input cluster list SHALL contain clusters supported on the device and the application output cluster list SHALL contain the the list of server list of client clusters supported on the device. Copyright , The ZigBee Alliance. All rights reserved. 2 - 2 Page  2007 - 2016

47 ZigBee Cluster Library Specification Chapter 2 075123 ZigBee Document Foundation – base cluster the same If an endpoint supports multiple server cluster identifiers that are derived or support all such cluster identifiers SHALL represent a single implementation and operate as a speci fication , then . or instance single entity Functional Description 2.3 Global requirements for all clusters and commands are described here. 2.3.1 Transmission DATA.request primitive. - ZCL frames are transmi tted via the APS sub - layer by issuing the APSDE - fields of ZCL frames, including individual bits, that are unspecified, or specified as reserved, SHALL All sub specific frames. Similarly all be set to zero for transmission. This applies to all ZCL frames, includin g cluster - reserved or unspecified bits of attributes of data type class Bitmap SHALL be set to zero for transmi s sion. Reception 2.3.2 primitive. - ZCL frames are received via the APS sub layer by the reception of the APSDE DATA.indication - specific commands) the device SHALL attempt - On receipt of a command (including both general and cluster - manufacturer - to parse and execute the command. During the parsing process for a non specific command, it SHALL ignore all reserved sub fiel ds of the ZCL frame, including individual reserved bits. - Note that, if any of these sub - fields are not set to zero, this MAY indicate that the format or interpretation of the frame has been updated. However, it is the responsibility of the specifier of su ch an updated format that it be backward compatible, i.e., any new format will result in the same functionality as before when parsed by a device that supports the previous version of the cluster. Any additional octets found appended to the frame SHALL als o be ignored, as these MAY be added as part of such an updated frame format. fields is determined by the manufacturer. If the command is manufacturer - specific, handling of reserved sub - If required, the device SHALL then generate a response to the command. Responses are detailed in the specification of each command. If there is no response specified for a particular set of circumstances, (e.g., if the command has been rejected or is not recognized, or the command has succeeded but there is no response specif ied to indicate success), the Default Response command SHALL be generated, taking into account the conditions in 2.5.12.2 . The status code returned by the Default Response command SHALL be one of the . status enumerations listed in Table 2 - 11 2.3.2.1 Broadcast Endpoint 1 : The device pro SHALL (0xff) endpoint broadcast cessing a ZCL message sent to the uster d- in the APS Hea indicated 1. only deliver a copy of the message to the endpoint s supporting the cl er. 2. 2.5.12.2 behavior described in section (no response for command follow the Default Response non unicast messages). - b e- 3. command not generate error response messages, except when required by the Default Response . havior 1 CCB 1444 2016 3  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

48 Chapter 2 ZigBee Cluster Library Specification ZigBee Document – 075123 Foundation Broadcast Endpoint Recommendations 2.3.2.2 Endpoint Behavior Recommendations Broadcast for Avoiding Network Congestion: 1. A device SHOULD NOT send a message to the broadcast endpoint where a response is e x- broadcast pected from (s) endpoint It is recommended to use discovery to determine the specific every active endpoint . per device and endpoint s. then send individual messages that target those specific SHOULD jitter messages that are broadcast endpoint 2. A device processing a ZCL message sent to the sent in response, especially when the nature of the message is such that it generates many responses (i.e. synchronization message). NOTE: Multicast group messages d o not include an endpoint 2.3.3 Manufacturer Specific Extensions the standard in the following ways: Manufacturers are free to extend standard Add manufacturer specific clusters to a  . device endpoint  Add manufacturer specific commands to a standard cluster.  Add manufacturer specific attributes to a standard cluster. All communications regarding manufacturer specific extensions SHALL be transmitted with the manufa c- turer specific sub - field of the frame control field set to 1 and the manufacturer code included in the frame. If the manufacturer code in a command frame is not recognized, the command is not carried out. 2.3.4 Dependencies on Optional Attribute If the specification of an attribute of a cluster depends on the value of another optional attribute of the same cluster, then the optional attribute SHALL have a well - defined default value. When the optional attribute is not supported by a device, then the default value SHAL L be used for those attributes that depend on the unsupported optional attribute value. This rule SHALL be recursive if there is a chain of dependencies. 2.3.5 Access Attribute support these types of access MAY Attributes ’s attribute table for specification that are listed in each cluster each attribute: Read global commands that read the attribute value rite W global commands that write a new value to the attribute Report global commands that report the value attribute or configure the attribute for reporting instance is on the same endpoint , then the attribute is accessed thro ugh a if a Scene cluster s Scene scene Local specific cluster commands for the cluster supporting the attribute MAY also access the attributes as defined in each cluster specification. Copyright , The ZigBee Alliance. All rights reserved. 2 - 4 Page  2007 - 2016

49 ZigBee Cluster Library Specification Chapter 2 – 075123 Foundation ZigBee Document 2.3.5.1 Global Attributes ) . All cluster instances SHALL support mandatory or optional Cluster g lobal attributes (see 2.6.1.3 either are mandatory global attributes. Table 2 - 1 . Global Attributes M/O Def Id Name Type Range Access nly O Read 0x d ClusterRevision uint16 0x 00 0 1 - 0x f f f e 1 M fff nly O Read 0x00 - 0x ff AttributeReportingStatus enum8 fffe 0x - O 2.3.5.1.1 Clus terRe vis ion Att ribu te The ClusterRevision global attribute is mandatory for all cluster instances , client and server, conforming to revisions. This attribute represents the revision of the cluster ZCL revision 6 (ZCL6) and later ZCL cluster An i mplementation of a specification that has been implemented. cluster specification before ZCL6 SHALL have an assumed cluster revision of 0. The initial value for the ClusterRevisio n attribute SHALL be 1. The ClusterRevision attribute SHALL be incremented and associated with each approved revision and release of a cluster specification. An i mplementation of a tation revision of a cluster specification SHALL interoperate with an implemen new revisio of the cluster n specification . of an older Cluster Revision Interoperability with a cluster MAY require reading the . For example: If a new attribute product X wishes to take advantage of the new b ehavior that is supporting revision 3 of cluster application by revision 3, then the application SHOULD read the revision of the corresponding cluster X in mandated remote application . If a corresponding cluster X supports revision 3 or greater, than the behavior is each ackwa Conversely : B require that a new rd compatibility MAY supported. cluster revision read the Cluster Revision of a corresponding cl uster to support interoperability with legacy cluster revisions . Please see [Z5], ZigBee Application Architecture for more details. 2.3.5.1.2 At t ri bu teRe por tin gSt a tus At t ri bu te When reporting requires sending multiple Report Attributes commands, this attribute SHOULD be included in that there are still the last attribute record , in order to indicate that all required attributes have been reported, or for outlined are attribute below: attributes pen ding to be reported. The enumerated values this Table 2 2 . AttributeReportingStatus Enumerations - d Value Status Enumerate 0x00 Pending 0x01 Attribute Reporting Complete 2.3.6 Pers isten t Data i i stent data is pers Pers stent across a restart. A restart is a program restart (warm start ) or power cycle (cold start , but not a factory reset . ) Cluster attributes that represent configuration data SHALL be persistent data unless otherwise spe cified. For example: a writeable attribute that persistently changes the behavior (or mode) of the cluster . Examples calcu lated or comes from an external source , such as a sensor value, is iguration data: data that of non - conf value, etc. a time 2016 5  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

50 Chapter 2 ZigBee Cluster Library Specification ZigBee Document – 075123 Foundation rs define persistent data that are not attributes . For example: The scene table that is part of a Many cluste Scene cluster instance , or the Alarm Table in the Alarms cluster. ommissioning o C configuration data that is created to allow the cluster to perform its func tion is persistent r data . For example: A reporting configuration for a cluster attribute . . restart binding A n APS group table entry and an APS are both persi stent data across a re A factory reset is a deliberate behavior to t data back to its original state set the above described persisten the product when left the factory. 2.4 Command Frame Formats All commands, defined in this specification, SHALL be transmitted to the ZigBee stack using the message service. The transmission order for octets and bits of all Z CL elements is as specified in section 1.2.1.3 of the ZigBee Specification [Z1], i.e., least significant octet and bit first. 2.4.1 General ZCL Frame Format The ZCL frame format is composed of a ZCL header and a ZCL payload. The general ZCL frame SHALL be ted as illustrated in Figure 2 - 2 . format Format of the General ZCL Frame . Figure 2 - 2 Bits: 8 Variable 8 8 0/16 Transaction sequence Frame control Command identifie r Manufacturer code Frame payload number ZCL header ZCL payload 2.4.1.1 Frame Control Field The frame control field is 8 bits in length and contains information defining the command type and other 3 Figure 2 - control flags. The frame control field SHALL be formatted as shown in . Bits 5 - 7 are reserved for future use and SHALL be set to 0. Figure 2 - 3 . Format of the Frame Control Field 3 7 - 5 4 Bits: 0 - 1 2 Default Resp Manufacturer specific Direction Frame type Disable onse Reserved fi eld 2.4.1.1.1 Frame T yp e Su b - The frame type sub - field is 2 bits in length and SHALL be set to one of the non - reserved values listed in Figure 2 - 4 . field 2 Figure - - 4 . Values of the Fr ame Type Sub Description Frame Type Value b1b0 2 00 global for all clusters, including manufacturer specific clusters is Command 2 505 CCB 1 Copyright , The ZigBee Alliance. All rights reserved. 2 - 6 Page  2007 - 2016

51 ZigBee Cluster Library Specification Chapter 2 – 075123 Foundation ZigBee Document 01 Command is specific or local to a cluster other values Reserved - 2.4.1.1.2 Manu fac ture r Sp e cific Su b fiel d The manufacturer specific sub - field is 1 bit in length and specifies whether this command refers to a man u- facturer specific extension . If this value is set to 1, the manufacturer code field SHALL be present in the ZCL frame. I f this value is set to 0, the manufacturer code field SHALL not be included in the ZCL frame. 3 SHALL . (Frame Type 0b00) support global commands M anufacturer specific clusters Direct ion Sub - fiel d 2.4.1.1.3 The direction sub - field specifies the client/server directio n for this command. If this value is set to 1, the command is being sent from the server side of a cluster to the client side of a cluster. If this value is set to 0, the command is being sent from the client side of a cluster to the server side of a clust er. fie ld - Disable Defa ult R esponse S ub 2.4.1.1.4 - The disable Default Response sub field is 1 bit in length. If it is set to 0, the Default Response command will the Default Response command will . If it is set to 1, be returned, under the conditions specified in 2.5.12.2 . only be returned if there is an error, also under the conditions specified in 2.5.12.2 pr frames generated as the immediate and direct effect of a response This field SHALL be set to 1, for all e- viously received frame . 2.4.1.2 Manufacturer Code Field The manufacturer code field is 16 bits in length and specifies the ZigBee assigned manufacturer code for acturer specific . This field SHALL only be included in the ZCL frame if the manuf proprietary extensions field of the frame control field is set to 1. - sub Transaction Sequence Number 2.4.1.3 The Transaction Sequence Number field is 8 bits in length and specifies an identification number for a single that include s s one or more frames in both direction transaction . Each time the first frame of a transaction is on generated , a new value SHALL be copied into the field. When a frame is generated as the specified effect frame, N and part of a transaction, then it is revious the Transaction Sequence umber SHALL be receipt of a p nclude generated in copied from the previously received frame into the generated frame. This i frame that is s a 4 to request frame . response e Number field can be used by a controlling device, which MAY have issued The Transaction Sequenc multiple commands, so that it can match the incoming responses to the relevant command. Command Identifier Field 2.4.1.4 The Command Identifier field is 8 bits in length and specifies the cl uster command being used. If the frame type sub - field of the frame control field is set to 0b00, the command identifier corresponds to one of the - 3 - Table field of the frame control f ield is set to 0b01, the . If the frame type sub non - reserved values of 2 command identifier corresponds to a cluster specific command. The cluster specific command identifiers can ). be found in each individual document describing the clusters (see also 2.2.1.1 3 CCB 1505 4 CCB 1578 2016 7  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

52 Chapter 2 ZigBee Cluster Library Specification ZigBee Document – 075123 Foundation Frame Pa yload Field 2.4.1.5 The frame payload field has a variable length and contains information specific to individual command types. The maximum payload length for a given command is limited by the stack profile in use, in conjunction with the applicable clust er specification and application profile. Fragmentation will be used where available. General Command Frames 2.5 General command frames are used for manipula ting attributes and other general tasks that are not specific to an individual cluster. be SHALL . Each command frame The command fr ames defined in this document are listed in 3 Table 2 - - field of the frame control field set to 0b00. constructed with the frame type sub All clusters (server and client) tion and execution of the Default Response SHALL support ge neration, recep command. Discover Attributes Extended Discover Commands xcept for the optional E commands and the optional tion ach cluster (server or client) that implements attributes SHALL support reception of, exec commands, e u of, and response to all commands to discover, read, and write these attributes. However, if no attributes with structured types are supported, it is not required to support the structured read and write commands. of, and figure Reporting Implementation of commands to report, Con t- of a Read Reporting Configuration tributes is only mandatory if the cluster has attributes whose reportability is mandatory. pen request commands (e.g., Read Attributes , Write Attributes , etc), is application de d Generation of ent. Table 2 - 3 . ZCL Command Frames Command Description Identifier Field Value Read Attributes 0x00 Read Attributes Response 0x01 0x02 Write Attributes 0x03 Write Attributes Undivided Response 0x04 Write Attributes 0x05 Write Attributes No Response 0x06 Configure Reporting 0x07 Configure Reporting Response 0x08 Read Reporting Configuration Read Reporting Configuration Response 0x09 Report attributes 0x0a 0x0b Default Response es Discover Attribut 0x0c 0x0d Discover Attributes Response Copyright , The ZigBee Alliance. All rights reserved. 2 - 8 Page  2007 - 2016

53 ZigBee Cluster Library Specification Chapter 2 – 075123 Foundation ZigBee Document 0x0e Read Attributes Structured 0x0f Write Attributes Structured 0x10 Write Attributes Structured response 0x11 Discover Commands Received 0x12 Discover Commands Received Response Discover Commands Generated 0x13 0x14 Discover Commands Generated Response 0x15 Discover Attributes Extended 0x16 Discover Attributes Extended Response Read Attributes 2.5.1 Command 2.5.1.1 Read Attributes Command Frame Format The Read Attributes command frame SHALL be formatted as illustrated in Figure 2 - 5 . . Format of the Read Attributes Command Frame 5 Figure 2 - ... 2 2 Octets: Variable 2 Attribute Attribute Attribute ... ZCL identifier 2 identifier 1 header identifier n ZCL Heade r Fiel ds 2.5.1.1.1 - The frame control field SHALL be specified as follows. The frame type sub field SHALL be set to indicate a field SHALL be set to 0 if this co - command (0b00). The manufacturer specific sub global mand is being m used to Read Attribu tes defined for any cluster in the ZCL or 1 if this command is being used to read ma n- ufacturer specific attributes. Table The command identifier field SHALL be set to indicate the Read Attributes command (see ). 3 - 2 ti fie r Field 2.5.1.1.2 At t ri bu te Ide n The attribute identifier field is 16 bits in length and SHALL contain the identifier of the attribute that is to be read. 2.5.1.2 When Generated The Read Attributes command is generated when a device wishes to determine the values of one or more t- butes located on another device. Each attribute identifier field SHALL contain the identifier of the a attri tribute to be read. Effect on Receipt 2.5.1.3 On receipt of this command, the device SHALL process each specified attribute identifier and generate a butes Response command. The Read Attributes Response command SHALL contain as many read Read Attri attribute status records as attribute identifiers included in this command frame. Each read attribute status onding attribute identifier record SHALL contain the corresp from this command frame, a status value evaluated as described below, and, depending on the status value, the value of the attribute itself. 2016 9  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

54 Chapter 2 ZigBee Cluster Library Specification – 075123 ZigBee Document Foundation For each attribute identifier included in the command frame, the device SHALL first check that it corr e- sponds to a n attribute that exists on this device. If it does not, the device SHALL set the status field of the corresponding read attribute status record to UNSUPPORTED_ATTRIBUTE and SHALL not include an then move on to the ne SHALL attribute value field. The device xt attribute identifier. If the attribute identified by the attribute identifier is supported, the device set the status field of the SHALL corresponding read attribute status record to SUCCESS and SHALL set the attribute value field to its current value. The device SHALL then move on to the next attribute identifier. 2.5.2 Read Attributes Response Command 2.5.2.1 Read Attributes Response Command Frame Format The Read Attributes Response command frame SHALL be formatted as illustrated in Figure 2 - 6 . Figure 2 - 6 . Format of Read Attributes Response Command Frame Variable ... Variable Variable Octets: Variable Read attribute status Read attribute status s Read attribute statu ... ZCL header record 2 record 1 record n . Each read attribute status record SHALL be formatted as illustrated in Figure 2 7 - Figure - 7 . Format of the Read Attributes Status Record Field 2 Octets: 2 1 0 / 1 0 / Var iable Status Attribute identifier Attribute data type Attribute value ZCL Heade r Fiel ds 2.5.2.1.1 The frame control field SHALL be specified as follows. The frame type sub - field SHALL be set to indicate a m mand is being ic sub - field SHALL be set to 0 if this co command (0b00). The manufacturer specif global used as a respons e to reading attributes defined for any cluster in the ZCL or 1 if this command is being used as a response to reading manufacturer specific attributes. Table The com mand identifier fiel d SHALL be set to indicate the Read Attributes Response command (see 2 3 ). - At t ri bu te Ide nti fie r Field 2.5.2.1.2 The attribute identifier field is 16 bits in length and SHALL contain the identifier of the attribute that has been read ( or of which an element has been read). This field SHALL contain the same value that was included in the corresponding attribute identifier field of the original Read Attributes or Read Attributes Structured command. Stat us Fiel d 2.5.2.1.3 The status field is 8 bits in length and specifies the status of the read operation on this attribute. This field SHALL be set to SUCCESS, if the operation was successful, or an error code, as specified in , if the 2.5.1.3 operation was not successful. At 2.5.2.1.4 t ri bu te Da ta T yp e Field The attribute data type field SHALL contain the data type of the attribute in the same Read Attributes status record (see This field SHALL only be included if the associated status field contai ). 10 - 2 ns a value of Table SUCCESS. Copyright , The ZigBee Alliance. All rights reserved. 2 - 10 Page  2007 - 2016

55 ZigBee Cluster Library Specification Chapter 2 – 075123 Foundation ZigBee Document 2.5.2.1.5 At t ri bu te Value Fi eld The attribute value field is variable in length and SHALL contain the current value of this attribute. This field SHALL only be included if the associated status field contains a value of SUCCESS. For an attribu te or element of simple type (not array, structure, set or bag), this field has the format shown in the Table of Data Types r bag, this field has the Table 2 - 10 ). For an attribute or element of type array, set o ( 2 Figure format shown in . 8 - Figure - 8 . Format of the Attribute Value Field for an Array, Set or Bag 2 Octets: 1 2 Variable ... Variable m Number of elements ( Element type ) Element value 1 ... Element valu e m (NB The reason that th e Element type field is before the Number of elements field is so that the latter field is in the logical position for the zeroth element.) If the Number of elements field has the value 0xffff, this indicates that the attribute o r element being read is invalid / undefined. In this case, or if the Number of elements field has the value 0, no Element value fields are included. ment of type structure, this field has the format shown in 2 - 9 Figure . For an attribute or ele . Format of the Attribute Value Field for a Structure 9 - 2 Figure 1 Variable Octets: 2 ... 1 Variable Element type 1 Number of elements ( m ) m Element value Element value 1 ... Element type m In both figures, the Element v alue subfield follows the same format as that of the attribute value field. This for limitations). format is thus recursive to any required depth (see Selector Field r of elements field has the value 0xffff, this indicates that the attribute or If the Numbe element being read is undefined. In this c ase, or if the Number of elements field has the value 0, no Element type or invalid / Element value fields are included. 2.5.2.2 When Generated The Read Attributes Response command is generated in response to a Read Attributes or Read Attributes Structured command. The command frame SHALL contain a read attribute status record for each attribute s inal Read Attribute identifier specified in the orig or Read Attributes Structured command. For each read SHALL attribute status record, the attribute identifier field contain the identifier specified in the original contain a su SHALL command. The status field Read Attributes itable status Read Attributes Structured or . 2.5.1.3 code, as detailed in only be included in the read attribute status record if The attribute data type and attribute value field SHALL contain the data type SHALL ent, the associated status field contains a value of SUCCESS and, where pres tively, of the attribute, or element thereof, that was read. and current value, respec The length of this command may exceed a single frame, and thus fragmentation support may be needed to entation is not supported, only as many read attribute status records as will return the entire response If fragm fit in the frame SHALL be returned. Effect on Receipt 2.5.2.3 On receipt of this command, the originator is notified of the results of its original Read Attributes attempt and, for each successful request, the value of the requested attribute. 2016 11  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

56 Chapter 2 ZigBee Cluster Library Specification – Foundation ZigBee Document 075123 If fragmentation is not supported, and some trailing attribute status records have not been returned, due to space limitations in the frame, the originator may issue an additional Read Attributes or Read Attributes Structured command to obtain their values. 2.5.3 Write Attributes Command 2.5.3.1 Write Attributes Command Frame Format 2 Figure The Write Attributes command frame SHALL be formatted as illustrated in . 10 - 2 - 10 . Format of the Write Attributes Command Frame Figure Octets: Variable Variable Variable ... Variable ZCL header Write attribute record 1 Write attribute record 2 ... Write attribute record n formatted as illustrated in 2 - 11 . Figure Each write attribute record SHALL be . Format of the Write Attribute Record Field 11 - 2 Figure 1 Variable Octets: 2 Attribute identifier Attribute data type Attribute data 2.5.3.1.1 ZCL H eade r Fiel ds The frame control field SHALL be specified as follows. The frame type sub - field SHALL be set to indicate a command (0b00). The manufacturer specific sub field SHALL be set to 0 if this co - mand is being m global used to Write Attribu tes defined for any cluster in the ZCL or 1 if this command is being used to write manufacturer specific attributes. The command identifier field SHALL be set to indicate the Write Attributes command (see ). 3 - 2 Table Ide nti fie r Field 2.5.3.1.2 At t ri bu te The attribute identifier field is 16 bits in length and SHALL contain the identifier of the attribute that is to be written. At t ri bu te Da ta T yp e Field 2.5.3.1.3 The attribute data type field SHALL contain the data type of the attribute that is to b e written. At t ri bu te Da ta F iel d 2.5.3.1.4 The attribute data field is variable in length and SHALL contain the actual value of the attribute that is to be written. 2.5.3.2 When Generated t- one or more a The Write Attributes command is generated when a device wishes to change the values of tributes located on another device. Each write attribute record SHALL contain the identifier and the actual value of the attribute to be written. Effect on Receipt 2.5.3.3 d write attribute record and On receipt of this command, the device SHALL attempt to process each specifie n- ). Each write attribute status record of the co 2.5.5 SHALL construct a write attribute response command ( structed command SHALL contain the identifier from the corresponding write attr ibute record and a status value evaluated as described below. Copyright , The ZigBee Alliance. All rights reserved. 2 - 12 Page  2007 - 2016

57 ZigBee Cluster Library Specification Chapter 2 – 075123 Foundation ZigBee Document For each write attribute record included in the command frame, the device SHALL make the error checks listed below, in the order shown. If an error is detected, a corresponding write attribute status record SHALL be generated, the status SHALL be set according to the check below, and the device SHALL move on to the next write attribute record. If the attribute is not supported on this device, the status field of the corresponding write attribute status 1. record SHALL be set to UNSUPPORTED_ATTRIBUTE. 2. If the attribute data type field is incorrect, the device SHALL set the status field of the corresponding write attribute status record to INVALID_DATA_TYPE. 3. If the attribute is designated as read onl y, the device SHALL set the status field of the corresponding write attribute status record to READ_ONLY. If the device is not currently accepting write attribute commands for the attribute, the status field of the 4. rd SHALL be set to NOT_AUTHORIZED or READ_ONLY. corresponding write attribute status reco 5. If the supplied value is not within the specified range of the attribute, the status field of the corresponding write attribute status record SHALL be set to INVALID_VALUE. pplied value, the status field of the corresponding write attribute status If the device cannot support the su 6. 5 record SHALL be set to INVALID_VALUE. If the above error checks pass without generating a write attribute status record, the device SHALL write the attribute, and SHALL move on to the next write attribute record. supplied value to the identified When all write attribute records have been processed, the device SHALL generate the constructed Write ructed command, Attributes Response command. If there are no write attribute status records in the const n- indicating that all attributes were written successfully, a single write attribute status record SHALL be i cluded in the command, with the status field set to SUCCESS and the attribute identifier field omitted. 2.5.4 ommand C Write Attributes Undivided The Write Attributes Undivided command is generated when a device wishes to change the values of one or more attributes located on another device, in such a way that if any attribute cannot be written (e.g., if an attribute is not implemented on the device, or a value to be written is outside its valid range), no attribute values are changed. In all other respects, including generation of a Write Attributes Response command, the format and operation of the command is the same as that of the Write Att ributes command, except that the command identifier field SHALL be set to indicate the Write Attributes Undivided command (see - Table 2 3 ). 2.5.5 Write Attributes Response Command Command Frame 2.5.5.1 Write Attributes Response Format Figure Attributes Response command frame SHALL be formatted as illustrated in The Write 2 . 12 - Figure 2 - 12 . Format of Write Attributes Response Command Frame 3 ... Octets: Variable 3 3 Write attribute status Write attribute status Write attribute status r ZCL heade ... record 1 n record record 2 5 CCB 1277 2016 13  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

58 Chapter 2 ZigBee Cluster Library Specification ZigBee Document 075123 Foundation – - . 13 Each write attribute status record SHALL be formatted as illustrated in Figure 2 . Format of the Write Attribute Status Record Field 13 - 2 Figure Octets: 1 2 Attribute identifier Status 2.5.5.1.1 ZCL Heade r Fiel ds field SHALL be set to indicate a The frame control field SHALL be specified as follows. The frame type sub - field SHALL be set to 0 if this command is being - mmand (0b00). The manufacturer specific sub co global used as a response to writing attributes defined for any cluster in the ZCL or 1 if this command is being used butes. as a response to writing manufacturer specific attri Table The command identifier field SHALL be set to indicate the Write Attributes Response command (see ). - 2 3 Stat us Fiel d 2.5.5.1.2 this attribute, as The status field is 8 bits in length and specifies the status of the write operation attempted on . 2.5.3.3 detailed in Note that write attribute status records are not included for successfully written attributes, in order to save tes, only a single write attribute status record bandwidth. In the case of successful writing of all attribu SHALL be included in the command, with the status field set to SUCCESS and the attribute identifier field omitted. 2.5.5.1.3 At t ri bu te Ide nti fie r Field The attribute identifier field is 16 bits in length and SHALL con tain the identifier of the attribute on which the write operation was attempted. 2.5.5.2 When Generated The Write Attributes Response command is generated in response to a Write Attributes command. 2.5.5.3 Effect on Receipt On receipt of this command, the device is noti fied of the results of its original Write Attributes command. Write Attributes No Response Command 2.5.6 Write Attributes No Response Command Frame 2.5.6.1 Format The Write Attributes No Response command frame SHALL be formatted as illustrated in Figure 2 - 14 . - Figure 2 14 . Write Attributes No Response Command Frame Octets: Variable Variable Variable ... Variable n ... Write attribute record Write attribute record 2 ZCL header Write attribute record 1 . 11 - 2 Figure Each write attribute record SHALL be formatted as illustrated in Copyright , The ZigBee Alliance. All rights reserved. 2 - 14 Page  2007 - 2016

59 ZigBee Cluster Library Specification Chapter 2 Foundation – ZigBee Document 075123 ZCL Heade r Fiel ds 2.5.6.1.1 The frame control field SHALL be specified as follows. The frame type sub - field SHALL be set to indicate a - d (0b00). The manufacturer specific sub comman global field SHALL be set to 0 if this command is being used to Write Attributes defined f or any cluster in the ZCL or 1 if this command is being used to write manufacturer specific attributes. tifier fi The command iden eld SHALL be set to indicate the Write Attributes No Response command (see - ). 3 2 Table 2.5.6.1.2 W rite At t rib ute Re cords . Its fields have 2 the same - Figure 11 Each write attribute record SHALL be formatted as illustrated in meaning and contents as the corresponding fields of the Write Attributes command. When Generated 2.5.6.2 The Write Attributes No Response command is generated when a device wishes to change the value of one or t does not require a response. Each write attribute record SHALL more attributes located on another device bu contain the identifier and the actual value of the attribute to be written. Effect on Receipt 2.5.6.3 There SHALL NOT be any response, error response, or Default Response command , to this command. SHALL O n receipt of this c ommand, the device attempt to process each specified write attribute record. For each write attribute record included in the command frame, the device SHALL first check that it corr e- SHALL ignore the attribute sponds to an attribute that is implemented on th is device. If it does not, the device and move on to the next write attribute record. t- If the attribute identified by the attribute identifier is supported, the device check whether the a SHALL SHALL tribute is writable. If the attribut e is designated as read only, the device ignore the attribute and move on to the next write attribute record. check that the supplied value in the attribute data field is within If the attribute is writable, the device SHALL the specified range of t t- he attribute. If the supplied value does not fall within the specified range of the a SHALL tribute, the device ignore the attribute and move on to the next write attribute record. SHALL ange of the attribute, the device If the value supplied in the attribute data field is within the specified r to the identified attribute and move on to the next write attribute record. write the supplied value Configure Reporting 2.5.7 Command more of the The Configure Reporting command is used to configure the reporting mechanism for one or attributes of a cluster. The individual cluster definitions specify which attributes SHALL be available to this reporting mechanism, however specific implementations of a cluster may make additional attributes available. with data types of array, structure, set or bag cannot be reported. Note that attributes 2016 15  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

60 Chapter 2 ZigBee Cluster Library Specification ZigBee Document 075123 Foundation – Configure Reporting Command Frame Format 2.5.7.1 The Configure Reporting command frame SHALL be formatted as illustrated in Figure 2 - 15 . Figure - 15 . Format of the Configure Reporting Command Frame 2 Octets: Variable Variable ... Variable Variable Attribute reporting co Attribute reporting Attribute reporting n- ZCL header ... figuration record n configuration record 1 configuration record 2 There SHALL be one attribute reporting configuration record for each attribute to be configured. Each such Figure 2 - 16 . record SHALL be formatted as illustrated in 16 - . Format of the Attribute Reporting Configuration Record Figure 2 0/2 2 0/1 Octets: 1 0/2 0/Variable 0/2 Reportable Maximum Minimum Direction Attribute Timeout Attribute data type change reporting period reporting identifier interval interval ZCL Heade r Fiel ds 2.5.7.1.1 - field SHALL be set to indicate a The frame control field SHALL be specified as follows. The frame type sub global c ommand (0b00). The manufacturer specific sub - field SHALL be set to 0 if this command is being used to configure attribute repo rts defined for any cluster in the ZCL or 1 if this command is being used to configure attribute reports for manufacturer specific attributes. 3 ). - 2 Table mmand identifier field SHALL be set to indicate the report configuration command (see The co 2.5.7.1.2 Direct ion Fiel d The direc be reported, or whether reports of the to tion field specifies whether values of the attribute are attribute are to be received. If this va lue is set to 0x00, then the attribute data type field, the minimum rep orting interval field, the maximum reporting interval field and the reportable change field are included in the payload, and the timeout period field is omitted. The record is sent to a cluster server (or client) to configure how it sends reports to a nt (or server) of the same cluster. clie If this value is set to 0x01, then the timeout period field is included in the payload, and the attribute data type field, the minimum reporting interval field, the maximum reporting interval field and the reportable cha nge field are omitted. The record is sent to a cluster client (or server) to configure how it SHOULD expect reports from a server (or client) of the same cluster. All other values of this field are reserved. 4 . Destination of Reporting Based on Direction Field - Table 2 Destinations Direction Field 0x00 The receiver of the Configure Reporting command SHALL Configure Reporting to send to each destination as resolved by the bindings for the cluster hosting the att ributes to be reported. This indicates to the receiver of the Configure Reporting command that the 0x01 sender has configured its reporting mechanism to transmit reports and that, based on the current state of the sender’s bindings, the sender will send reports to the receiver. Copyright , The ZigBee Alliance. All rights reserved. 2 - 16 Page  2007 - 2016

61 ZigBee Cluster Library Specification Chapter 2 075123 ZigBee Document Foundation – 2.5.7.1.3 At t ri bu te Ide nti fie r Field If the direction field is 0x00, this field contains the identifier of the attribute that is to be reported. If instead the direction field is 0x01, the device SHALL expect reports of values of this attri bute. 2.5.7.1.4 At t ri bu te Da ta T yp e Field The Attribute data type field contains the data type of the attribute that is to be reported. 2.5.7.1.5 Mini mum Rep or tin g In ter val F ield The minimum reporting interval field is 16 bits in length and SHALL contain the minimum interval , in seconds, between issuing reports of the specified attribute. If this value is set to 0x0000, then there is no minimum limit, unless one is imposed by the specification of the cluster using this reporting mechanism or by the application . Maximu m Re por ti ng I nter val Fiel d 2.5.7.1.6 The maximum reporting interval field is 16 bits in length and SHALL contain the maximum interval, in seconds, betwe en issuing reports of the specified attribute. SHALL If this value is set to 0xffff, then the device not issue reports for the specified attribute, and the in an implementation using d y- configurat ion information for that attribute need not be maintained. ( Note: namic memory allocation, the memory space for that information may then be reclaimed). ue is set to 0x0000 and the minimum reporting interval field eq SHALL uals 0xffff, then the device If this val revert back to its default reporting be set to SHALL reportable change field, if present, . The configuration 6 zero. 2.5.7.1.7 Repo rta ble C han g e Field The reportable cha nge field SHALL contain the minimum change to the attribute that will result in a report - Table 2 10 being issued. This field is of variable length. For attributes with 'analog' data type (see ) the field has the same data type as t he attribute. The sign (if any) of the reportable change field is ignored. For attributes of 'discrete' data type (see Table 2 - 10 ) this field is omitted. orting interval field equals If the Maximum Reporting Interval Field is set to 0x0000 and the minimum rep a field be set to zero upon transmission SHALL this , then default reporting configuration 0xffff, indicating 7 and ignored upon reception. Timeo ut Pe rio d Fi eld 2.5.7.1.8 maximum expected time, in seconds, The timeout period field is 16 bits in length and SHALL contain the between received reports for the attribute specified in the attribute identifier field. If more time than this elapses between reports, this may be an indication that there is a problem with reporting. et to 0x0000, reports of the attribute are not subject to timeout. If this value is s Note that, for a server/client connection to work properly using automatic reporting, the timeout value set for attribute reports to be received by the client (or server) cluster must be s et somewhat higher than the ma x- imum reporting interval set for the attribute on the server (or client) cluster. When Generated 2.5.7.2 The report configuration command is generated when a device wishes to configure a device to automatically e or more of its attributes, or to receive such reports. report the values of on 6 CCB 1923 7 CCB 1923 2016 17  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

62 ZigBee Cluster Library Specification Chapter 2 – 075123 ZigBee Document Foundation 2.5.7.3 Effect on Receipt On receipt of this command, the device SHALL attempt to process each attribute reporting configuration record and SHALL construct a Configure Reporting Response command. Each attri bute status record of the contain an identifier from an attribute reporting configuration record and a SHALL constructed comm and status value evaluated as described below. If the g- ble change are being confi direction field is 0x00, indicating that the reporting intervals and reporta ured, then  If the attribute specified in the attribute identifier field is not implemented on this device or if the a t- tribute type is set to array, structure, set or bag, the device SHALL construct an attribute status record the status field set to UNSUPPORTED_ATTRIBUTE. with Else, if the attribute identifier in this field cannot be reported (because it is not in the list of mandatory  reportable attributes in the relevant cluster specification, and support has also not been imple mented as a manufacturer option), the device SHALL construct an attribute status record with the status field set to UNREPORTABLE_ATTRIBUTE .  Else, if the attribute data type field is incorrect, the device SHALL construct an attribute status record . e status field set to INVALID_DATA_TYPE with th c- Else, if the minimum reporting interval field is less than any minimum set by the relevant cluster spe  than zero and is less - , or the value of the maximum reporting interval field is non ification or application SHALL field, the device that of the minimum reporting interval construct an attribute status record with the status field set to INVALID_VALUE .  Else, if the value of the minimum or maximum reporting interval field is not supported by the product, 8 construct an attribute status record with the status field set to INVALID_VALUE. SHALL device the SHALL set the minimum and maximum reporting intervals and the reportable change for  Else the device the attribute to the values contained in the corresponding fi elds. g that the timeout period is being configured, then Else the direction field is 0x01, indicatin If reports of values of the attribute identifier specified in the attribute identifier field cannot be received (because it is not in the list of mandator y reportable attributes in the relevant cluster specification, and support has also not been implemented as a manufacturer option), or the timeout feature is not supported, the device SHALL construct an attribute status record with the status field set to UNSUPPORTED_ATTRIBUTE. Else the device SHALL set the timeout value for the attribute identifier specified in the attribute identifier field to the value of the timeout period field. Note that the action to be taken by the device if the timeout period is e xceeded is cluster and device dependent, including optionally taking no action. When all attribute reporting configuration records have been processed, the device SHALL generate the n- constructed Configure Reporting Response command. If there are no attribut e status records in the co structed command, indicating that all attributes were configured successfully, a single attribute status record SHALL be included in the command, with the status field set to SUCCESS and the direction and attribute lds omitted. identifier fie The device SHALL then proceed to generate or receive attribute reports according the configuration just set to dete r- - up, by means of the Report Attributes command (see 2.5.11.2.1 2 through 2.5.11.2.4 ). See Table 4 mine the destination of the Report Attributes command. Command 2.5.8 Configure Reporting Response ng command. The Configure Reporting Response command is used to respond to a Configure Reporti 8 CCB 2029 Copyright , The ZigBee Alliance. All rights reserved. 2 - 18 Page  2007 - 2016

63 ZigBee Cluster Library Specification Chapter 2 075123 ZigBee Document Foundation – 2.5.8.1 Configure Reporting Response Command Frame Format The Configure Reporting Response command frame SHALL be formatted as illustrated in Figure 2 - 17 . Frame the Configure Reporting Response Command . Format of 17 - Figure 2 4 4 ... 4 Octets: Variable ZCL header Attribute status record 1 Attribute status record 2 ... Attribute status record n - 2 Figure Each attribute status record SHALL be formatted as illustrated in 18 . Figure . Format of the Attribute Status Record Field 18 - 2 1 Octets: 1 2 Status Direction Attribute identifier 2.5.8.1.1 ZCL Heade r Fiel ds ub The frame control field is specified as follows. The frame type s global - field SHALL be set to indicate a - field SHALL be set to 0 if this command is being used as a command (0b00). The manufacturer specific sub d is being used response to configuring attribute reports defined for any cluster in the ZCL or 1 if this comman as a response to configuring attribute reports for manufacturer specific attributes. The command identifier field SHALL be set to indicate the report configuration response command (see ). Table 2 - 3 2.5.8.1.2 el d Direct ion Fi The direction field specifies whether values of the attribute are reported (0x00), or whether reports of the attribute are received (0x01). All other values of this field are reserved. Stat us Fiel d 2.5.8.1.3 Reporting operation attempted on this attribute, as d e- The status field specifies the status of the Configure 2.5.7.3 tailed in . Note that attribute status records are not included for successfully configured attributes, in order to save essful configuration of all attributes, only a single attribute status record bandwidth. In the case of succ SHALL be included in the command, with the status field set to SUCCESS and the direction and attribute identifier fields omitted. When Generated 2.5.8.2 command is generated in response to a Configure Reporting command. The Configure Reporting Response Effect on Receipt 2.5.8.3 On receipt of this command, the device is notified of the success (or otherwise) of its original Configure Reporting command, for each attribute. Command Read Reporting Configur 2.5.9 ation The Read Reporting Configuration command is used to read the configuration details of the reporting mechanism for one or more of the attributes of a cluster. 2016 19  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

64 Chapter 2 ZigBee Cluster Library Specification ZigBee Document 075123 Foundation – 2.5.9.1 Read Reporting Configuration Command Frame Format . 19 - 2 Figure command frame SHALL be formatted as illustrated in The Read Reporting Configuration Figure 2 - 19 . Read Reporting Configuration Command Frame 3 3 ... Octets: Variable 3 ZCL header ... Attribute record n Attribute record 1 Attrib ute record 2 Figure . 20 - 2 Each attribute record SHALL be formatted as illustrated in - 2 Figure . Format of the Attribute Status Record Field 20 Octets: 1 2 Dire ction Attribute identifier 2.5.9.1.1 ZCL Heade r Fiel ds The frame control field SHALL be specified as follows. The frame type sub - field SHALL be set to indicate a field SHALL be set to 0 if this comman d is being global command (0b00). The manufacturer specific sub - reporting configuration of attributes defined for any cluster in the ZCL or 1 if this command used to read the is being used to read the reporting configuration of manufacturer specific attributes. dicate the Read Reporting Configuration command (see The comm and identifier field SHALL be set to in Table - ). 3 2 2.5.9.1.2 Direct ion Fiel d The dir ection field specifies whether values of the attribute are reported (0x00), or whether reports of the attribute are received (0x01). values of this field are reserved. r All othe At t ri bu te Ide nti fie r Field 2.5.9.1.3 The attribute identifier field SHALL contain the identifier of the attribute whose reporting configuration details are to be read. 2.5.9.2 Effect on Receipt On receipt of this command, a device SHAL L generate a Read Reporting Configuration Response command containing the details of the reporting configuration for each of the attributes specified in the command (see ). 2.5.10 m- Co Read Reporting Configuration Response 2.5.10 mand The Read Reporting Configuration Response command is used to respond to a Read Reporting Configuration command. Copyright , The ZigBee Alliance. All rights reserved. 2 - 20 Page  2007 - 2016

65 ZigBee Cluster Library Specification Chapter 2 075123 Foundation – ZigBee Document Read Reporting Configuration Response Co m- 2.5.10.1 mand Frame Format The Read Reporting Configuration Response command frame SHALL be formatted as illust rated in Figure - . 2 21 2 Figure 21 . Format of the Read Reporting Configuration Response Command Frame - Octets: Variable Variable Variable ... Variable n- n- Attribute reporting co Attribute reporting Attribute reporting co ... ZCL header configuration record 2 figuration record 1 figuration record n There SHALL be one attribute reporting configuration record for each attribute record of the received Read Reporting Configuration command. Each s Figure 2 - 22 . uch record SHALL be formatted as illustrated in 2 - 22 . Attribute Reporting Configuration Record Field Figure 0/Variable 0/2 0/2 0/1 2 0/2 Octets: 1 1 tribute Timeout Direction At Attribute Status Minimum Maximum Reportable identifier reporting period reporting data type change interval interval 2.5.10.1.1 ZCL Heade r Fiel ds field SHALL be set to indicate a - The frame control field SHALL be specified as follows. The frame type sub glo field SHALL be set to 0 if this command is being - command (0b00). The manufacturer specific sub bal used to for attributes specified in the ZCL or 1 if this command is being used for manufacturer specific attributes. m- The command identifier f ield SHALL be set to indicate the Read Reporting Configuration Response co - mand (see Table 2 3 ). Stat us Fiel d 2.5.10.1.2 If the attribute is not implemented on the sender or receiver of the command, whichever is relevant (d e- to UNSUPPORTED_ATTRIBUTE. If the attribute is su p- ion), this field SHALL be set pending on direct SHALL be set to UNREPORTABLE_ATTRIBUTE. If ported, but is not capable of being reported, this field the attribute is supported and reportable, but there is no report configurati on, this field SHALL be set to SHALL Otherwise, this field be set to SUCCESS. NOT_FOUND. l fields except the direction and attribute identifier fields SHALL If the status field is not set to SUCCESS, al be omitted. Direct ion Fiel d 2.5.10.1.3 ction field speci The dire fies whether values of the attribute are reported (0x00), or whether reports of the attribute are received (0x01). If this value is set to 0x00, then the attribute data type field, the minimum reporting interval field, the and the reportable change field are included in the payload, and the timeout maximum reporting interval field period field is omitted. If this value is set to 0x01, then the timeout period field is included in the payload, and field, the maximum reporting interval field and the attribute data type field, the minimum reporting interval the reportable change field are omitted. alues of this field are reserved. All other v 2016 21  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

66 Chapter 2 ZigBee Cluster Library Specification ZigBee Document – 075123 Foundation At t ri bu te Ide nti fie r Field 2.5.10.1.4 tribute that the The attribute identifier field is 16 bits in length and SHALL contain the identifier of the at reporting configuration details apply to. Mini mum Rep or tin g In ter val F ield 2.5.10.1.5 The minimum reporting interval field is 16 bits in length and SHALL contain the minimum interval, in seconds, between issuing reports for the attribute specified i n the attribute identifier field. If the minimum reporting interval has not been configured, this field SHALL contain the value 0xffff. Maximu m Re por ti ng I nter val Fiel d 2.5.10.1.6 The maximum reporting interval field is 16 bits in length and SHALL contain the maximu m interval, in seconds, between issuing reports for the attribute specified in the attribute identifier field. If the maximum reporting interval has not been configured, this field SHALL contain the value 0xffff. 2.5.10.1.7 Repo rta ble C han g e Field The reportable chan ge field SHALL contain the minimum change to the attribute that will result in a report 10 ) t he field has the same data type as the 2 - Table being issued. For attributes with 'analog' data type (see ng attribute. If the reportable cha contain the invalid value for the SHALL e has not been configured, this field relevant data type. 10 For attributes of 'discr ete' data type (see Table 2 - ) this field is omitted. 2.5.10.1.8 Timeo ut Pe rio d Fi eld bits in length and SHALL contain the maximum expected time, in seconds, The timeout period field is 16 between received reports for the attribute specified in the attribute identifier field. If the timeout period has not been configured, this field SHALL contain the value 0xffff. Generated When 2.5.10.2 The Read Reporting Configuration Response command is generated in response to a Read Reporting Co n- figuration command. Only as many attribute reporting configuration records as will fit in the frame SHALL be returned. 2.5.10.3 Effect on Receipt On receipt of this command, the originator is notified of the results of its original Read Reporting Config u- ration command. If some trailing attribute reporting configuration records have not been returned, due to space limitations in ssue a further Read Reporting Configuration command to obtain their values. the frame, the originator may i Report Attributes Command 2.5.11 The Report Attributes command is used by a device to report the values of one or more of its attributes to sewhere in the ZCL, define which attributes are to be reported another device. Individual clusters, defined el 2.5.7 and at what interval. See to determine the destination of the Report Attributes command. Copyright , The ZigBee Alliance. All rights reserved. 2 - 22 Page  2007 - 2016

67 ZigBee Cluster Library Specification Chapter 2 – 075123 Foundation ZigBee Document 2.5.11.1 Report Attributes Command Frame Format - 23 The Report Attri butes command frame SHALL be formatted as illustrated in Figure 2 . 23 - 2 Figure . Format of the Report Attributes Command Frame Variable Variable Octets: Variable ... Variable Attribute report 1 n Attribute report Attribute report 2 ZCL he ader ... - Each attribute report field SHALL be formatted as illustrated in Figure 2 24 . 24 . Format of the Attribute Re port Fields Figure 2 - Variable Octets: 2 1 Attribute data Attribute data type Attribute identifier ZCL Heade r Fiel ds 2.5.11.1.1 The frame control field SHALL be specified as follows. The frame type sub field SHALL be set to indicate a - global command (0b00). The m anufacturer specific sub - field SHALL be set to 0 if this command is being used to Report Attributes defined for any cluster in the ZCL or 1 if this command is being used to report manufacturer specific attributes. The command identifier field SHALL be set to indicate the Report Attributes command (see Table 2 - 3 ). 2.5.11.1.2 At t ri bu te Ide nti fie r Field The attribute identifier field is 16 bits in length and SHALL contain the identifier of the attribute that is being . 2.3.5.1.2 see commands reported. When reporting requires sending multiple Report Attributes At t ri bu te Da ta T yp e Field 2.5.11.1.3 The attribute data type field contains the data type of the attribute that is being reported. 2.5.11.1.4 At t ri bu te Da ta F iel d ta field is variable in length and SHALL contain the actual value of the attribute being r e- The attribute da ported. When Generated 2.5.11.2 The Report Attributes command is generated when a device has been configured to report the values of one or more of its attributes to another device., and when the conditions that have been configured are satisfied. These conditions are detailed in the following sections. A Report Attributes command may also be configured locally on a device at any time. Except for the source, report configuration SHALL be no different than a configuration received externally. A a locally created locally created report configuration SHALL support the same services as a configuration received externally. If the destination of the Report Attributes Command cannot b e determined, then the command SHALL not be to determine the destination of the Report Attributes command. 2.5.7 generated. See 2.5.11.2.1 Periodic Rep or tin g he previous report of the same attribute A report SHALL be generated when the time that has elapsed since t 2.5 is equal to the Maximum Reporting Interval for that attribute (see .7.1.6 ). The time of the first report after configuration is not specified. nterval is set to 0x0000, there is no periodic reporting, but change based r If the Maximum Reporting I e- porting is still operational. 2016 23  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

68 Chapter 2 ZigBee Cluster Library Specification ZigBee Document – 075123 Foundation i- If the Maximum Reporting Interval is set to 0xffff, no reports SHALL be generated, whatever other cond tions are satisfied. 2.5.11.2.2 t rib utes Chan ges t o ' Discr ete' At If the attribute has a 'discrete' data type, a report SHALL be generated when the attribute undergoes any change of value. Discrete types are general data types (which are often used as sets of bit fields), logical 2 10 - Table s, strings, identifiers, IEEE address and security key (see ). types, bitmap types, enumeration Reporting is subject to the Minimum Reporting Interval for that attribute (see ). After a report, no 2.5.7.1.5 her reports are sent during this interval. furt Chan ges t o ' An al o g' At t rib utes 2.5.11.2.3 If the attribute has an 'analog' data type, a report SHALL be generated when the attribute undergoes a change of value, in a positive or negative direction, equal to or greater than the Reportable Change for that attribute (see n- 2.5.7.1.7 ). The change is measured from the value of the attribute when the Reportable Change is co figured, and thereafter from the previously reported value of the attribute. ). 10 - 2 Table Analog types are signed and unsigned integer types, floating point types and time types (see 2.5.7.1.5 Reporting is subject to the Minimum Reporting Interval for that attribute (see ). After a report, no further reports are sent during this interval. Clus ter Spec ific C ondi ti ons 2.5.11.2.4 The specification for a cluster may add additional conditions for specific attributes of that cluster. 2.5.11.2.5 Cons olida ti on of At t ri bu te Re por ti n g n order to reduce the resources (such as the number of timers) required for attribute reporting, a device may I adapt the timing of reports by relaxing the configured minimum and maximum periods as described below. e- By employing these techniques a device may limit the number of timers required to any manufacturer sp cific value, including use of only a single timer, though at the cost of some side effects, such as increased network traffic in some cases. In consolidating timers, a number of principles apply: The maximum reporting interval of an attribute may be reduced, as it SHOULD not normally cause a 1. typical reporting intervals are – problem to devices to receive reports more frequently than expected be incompatible with any timeout period set. seconds to minutes. It may not be increased, as this may 2. The minimum reporting interval of an attribute may also be reduced. However, it may not be increased, as an application may be relying on receiving reports of changes to an attribute within a given delay time. inimum values are generally used to reduce network traffic, but this is less important than ensuring that M the application timing needs are satisfied. From (1), when consolidating the maximum reporting periods of two or more attributes together, the 3. dated reporting period SHALL be equal to the lowest of the configured maximum intervals of the consoli attributes to be reported. 4. o- Similarly, from (2), when consolidating the minimum reporting periods of two or more attributes t eriod SHALL be equal to the lowest of the configured minimum gether, the consolidated reporting p intervals of the attributes to be reported. As a first step, timers for attributes on the same cluster may be consolidated. Such adaptations SHOULD aim ributes of the same cluster at the same time, so that they can be to send attribute reports for different att consolidated into fewer attribute reports, thus reducing network traffic. To reduce the number of timers further, timers may be consolidated across clusters and endpoints if needed. at it is not generally possible to consolidate timeout values (see ) of received attribute r e- 2.5.7.1.8 (Note th ports.) Copyright , The ZigBee Alliance. All rights reserved. 2 - 24 Page  2007 - 2016

69 ZigBee Cluster Library Specification Chapter 2 ZigBee Document Foundation – 075123 2.5.11.3 Effect on Receipt of the attributes of another On receipt of this command, a device is notified of the latest values of one or more device. Default Response 2.5.12 Command 2.5.12.1 Default Response Command Frame Format - . The Default Response command frame SHALL be formatted as illustrated in Figure 2 25 25 Figure 2 - . Format of the Default Response Command Frame 1 Octets: Variable 1 ZCL header Command identifier Status code 2.5.12.1.1 ZCL Heade r Fiel ds field SHALL be set to indicate a - The frame control field SHALL be specified as follows. The frame type sub command (0b00). The manufacturer specific sub global field SHALL be set to 0 if this command is being - e- sent in response to a command defined for any cluster in the ZCL or 1 if this command is being sent in r 9 sponse to a manufacturer specific command . - The command identifier sub - field SHALL be set to indicate the Default Response command (see Table 2 3 ). 2.5.12.1.2 Comma nd Iden ti fi er Field The command identifier field is 8 bits in length and specifies the identifier of the received command to which this command is a response. 2.5.12.1.3 Stat us C ode Field er SUCCESS or the nature of the error that was The status code field is 8 bits in length and specifies eith detected in the received command. It SHALL be one of the status enumerations listed in 2 Table . 11 - 2.5.12.2 When Generated e criteria are met: generated when all 4 of thes The Default Response command SHALL be A device receives a unicast command that is not a Default Response command. 1. 2. No other command is sent in response to the received command, using the same Transaction sequence number as the received command. 2.4.1.1.4 3. ) or when an error it of its Frame control field is set to 0 (see The Disable Default Response b results. 4. The “Effect on Receipt” clause for the received command does not override the behavior of when a Default Response is sent. command If a device receives a command in error through a broadcast or multicast transmission, the command SHALL be discarded and the Default Response command SHALL not be generated. 9 CCB 1505 2016 25  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

70 ZigBee Cluster Library Specification Chapter 2 – 075123 ZigBee Document Foundation i- ot supported on the device, it SHALL set the co mmand ident If the identifier of the received command is n code field SHALL status fier field to the value of the identifier of the command received in error. The be set to the either: UNSUP_CLUSTER_COMMAND, UNSUP_GENERAL_COMMAND, UNSUP_MANUF_CLUSTER_COMMAND or UNSUP_MANUF_GENERAL_COMMAND, as a ppr o- priate. If the device receives a unicast cluster command to a particular endpoint, and the cluster does not exist on the 10 endpoint, the status code field SHALL be set to UNSUPPORTED_CLUSTER . Receiving devices from devices certified before ZCL revision 6. , SHOULD accept other error status codes, suc h as FAILURE The Default Response command SHALL be generated in response to reception of all commands, including d response commands (such as the Write Attributes Response command), under the conditions specifie above. However, the Default Response command SHALL not be generated in response to reception of a n- other Default Response command. Effect on Receipt 2.5.12.3 ith On receipt of this command, the device is notified of the success or otherwise of the generated command w 2.4.1.3 the same transaction sequence number (see ). 2.5.13 Command Discover Attributes Command Frame Format Discover Attributes 2.5.13.1 Figure 2 - 26 . The Discover Attributes command frame SHALL be formatted as illustrated in . Format of the Discover Attributes Command Frame Figure 2 - 26 Octets: Variable 2 1 Start attribute identifier Maximum attribute identifiers ZCL header ZCL Heade r Fiel ds 2.5.13.1.1 field SHALL be set to indicate a The frame control field S - HALL be specified as follows. The frame type sub field SHALL be set to 0 to discover standard a - global command (0b00). The manufacturer specific sub t- tributes in a ZigBee cluster or 1 to discover manufacturer spe cific attributes in either a standard or a man u- facturer specific cluster. 2 The command identifier field SHALL be set to indicate the Discover Attributes command (see ). 3 - Table 2.5.13.1.2 Star t At t rib ute Ide nti fier Field identifier field is 16 bits in length and specifies the value of the identifier at which to begin The start attribute the attribute discovery. Maximu m At t rib ut e Iden tif iers Fiel d 2.5.13.1.3 attribute The maximum attribute identifiers field is 8 bits in length and specifies the maximum number of identifiers that are to be returned in the resulting Discover Attributes Response command. When Generated 2.5.13.2 The Discover Attributes command is generated when a remote device wishes to discover the identifiers and e which are supported within the cluster to which this command is directed. types of the attributes on a devic 10 CCB 1485 and 1319 Copyright , The ZigBee Alliance. All rights reserved. 2 - 26 Page  2007 - 2016

71 ZigBee Cluster Library Specification Chapter 2 Foundation ZigBee Document 075123 – 2.5.13.3 Effect on Receipt On receipt of this command, the device SHALL construct an ordered list of attribute information records, each containing a discovered attribute identifier and it s data type, in ascending order of attribute identifiers. This list SHALL start with the first attribute that has an identifier that is equal to or greater than the identifier ute identifier field. The number of attribute ident ifiers included in the list specified in the start attrib SHALL not exceed that specified in the maximum attribute identifiers field. The device SHALL then generate a Discover Attributes Response command containing the discovered attributes and their types, and SHALL return it to the o riginator of th e Discover Attributes command. 2.5.14 Discover Attributes Response Command 2.5.14.1 Command Frame Discover Attributes Response Format The Discover Attributes Response command frame SHALL be formatted as illustrated in Figure 2 - 27 . . Discover Attributes Response Command Figure 2 - 27 Frame 3 Octets: Variable 1 3 ... 3 r- Attribute info Attribute info ... ZCL header Discovery r- Attribute info r- n mation mation 2 complete mation 1 28 Each attribute information field SHALL be formatted as illustrated in Figure 2 - . . Format of the Attribute Report Fields Figure 2 - 28 Octets: 2 1 Attribute identifier Attribute data type 2.5.14.1.1 Heade r Fiel ds ZCL The frame control field SHALL be specified as follows. The frame type sub - field SHALL be set to indicate a - field SHALL be set to the same value included in the command (0b00). The manufacturer specific sub global original Discove r Attributes command. The command identifier field SHALL be set to indicate the Discover Attributes Response command (see ). 3 - 2 Table 2.5.14.1.2 Disco ver y Com ple te Fiel d s that there are more attributes to be The discovery complete field is a Boolean field. A value of 0 indicate discovered in the last attribute that have an attribute identifier value greater than the last attribute identifier information field . A value of 1 indicates that there are no more attributes to be discovered. u te Ide nti fie r Field At t ri b 2.5.14.1.3 The attribute identifier field SHALL contain the identifier of a discovered attribute. Attributes SHALL be included in ascending order, starting with the lowest attribute identifier that is greater than or equal to the start identifier field of the received Discover Attributes command. attribute 2016 27  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

72 Chapter 2 ZigBee Cluster Library Specification Foundation ZigBee Document – 075123 2.5.14.1.4 At t ri bu te Da ta T yp e Field The attribute data type field SHALL contain the data type of the attribute in the same attribute report field (see Table 2 - 10 ). When Generated 2.5.14.2 The Discover Attributes Response command is generated in response to a Discover Attributes command. 2.5.14.3 Effect on Receipt On receipt of this command, the device is notified of the results of its attribute discovery request. Following the receipt of this c ommand, if the discovery complete field indicates that there are more attributes to be discovered, the device may choose to send subsequent discover attribute request commands to obtain the rest of the attribute identifiers. In this case, the start attribu te identifier specified in the next attribute discovery request command SHOULD be set equal to one plus the last attribute identifier received in the Discover Attributes Response command. 2.5.15 Read Attributes Structured Command 2.5.15.1 Read Attributes Structured Comman d Frame Format 2 29 . - The Read Attributes Structured command frame SHALL be formatted as illustrated in Figure - 2 Figure Frame . Format of Read Attributes Structured Command 29 2 Variable Variable ... 2 Variable Octets: Attribute identifier 1 Selector 1 ... Attribute identifier n Selector n ZCL header ZCL Heade r Fiel ds 2.5.15.1.1 - field SHALL be set to indicate a The frame control field SHALL be specified as follows. The frame type sub command (0b00). The manufacturer specific sub - field SHALL be set to 0 if this command is being global used to Read Attributes defined for any cluster in the ZCL or 1 if this command is being used to read ma n- ufacturer specific attributes. Table The command iden tifier field SHALL be set to indicate the Read Attributes Structured command (see ). 2 3 - At t ri bu te Ide nti fie r Field 2.5.15.1.2 to be The attribute identifier field is 16 bits in length and SHALL contain the identifier of the attribute that is read. Selector Field 2.5.15.1.3 t- Each attribute identifier field is followed by a selector field, which specifies whether the whole of the a tribute value is to be read, or only an individual element of it. An individual element may only be read from with types of Array or Structure. attributes . 30 - 2 Figure The Selector field SHALL be formatted as illustrated in Copyright , The ZigBee Alliance. All rights reserved. 2 - 28 Page  2007 - 2016

73 ZigBee Cluster Library Specification Chapter 2 – Foundation ZigBee Document 075123 . Format of the Selector Field 30 - Figure 2 Octets: 1 2 ... 2 ... m Indicator ( m ) Ind ex 1 Index The Indicator subfield indicates the number of index fields that follow it. This number is limited to the range application. All other values of this field are reserved. an 15. It may be further limited by - 0 this subfield is 0, there are no index fields, and the whole of the attribute value is to be read. For attributes If of type other than array or structure, this subfield SHALL have the value 0. If this subfield is 1 or greater, the index fields indicate which element is to be read, nested to a depth of m. For example, if the attribute is an array of arrays (or structures), then if m = 2, index 1 = 5 and index 2 = 3, the third element of the fifth element of the attribute will be read. mbered from 1 upwards for both arrays and structures. The zeroth element of an Note that elements are nu array or structure is readable, always has type 16 bit unsigned integer, and returns the number of elements contained in the array or structure. 2.5.15.2 When Generated The Read Attribut es command is generated when a device wishes to determine the values of one or more attributes, or elements of attributes, located on another device. Each attribute identifier field SHALL contain the identifier of the attribute to be read. 2.5.15.3 t Effect on Receip On receipt of this command, the device SHALL process each specified attribute identifier and associated m- selector, and SHALL generate a Read Attributes Response command. The Read Attributes Response co mand SHALL contain as many read attribute status reco rds as there are attribute identifiers included in this command frame. Each read attribute status record SHALL contain the corresponding attribute identifier from this command frame, a status value evaluated as described below, and, depending on the status value, the value of the attribute (or attribute element) itself. For each attribute identifier included in the command frame, the device SHALL first check that it corr e- sponds to an attribute that exists on this device, and that its associated selector fie ld correctly indicates either the whole of the attribute or an element of the attribute. If it does not, the device SHALL set the status field of A- the corresponding read attribute status record to either UNSUPPORTED_ATTRIBUTE or INV ate, and SHALL not include an attribute value field. The device SHALL then LID_SELECTOR as appropri move on to the next attribute identifier. If the attribute identified by the attribute identifier is supported, and its associated selector field is valid, the device SHALL set the status field of the corresponding read attribute status record to SUCCESS and SHALL set the attribute value field to the value of the attribute (or its selected element). The device SHALL then move on to the next attribute identifier. 2016 29  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

74 Chapter 2 ZigBee Cluster Library Specification – Foundation 075123 ZigBee Document 2.5.16 Write Attributes Stru ctured Command 2.5.16.1 Write Attributes Structured Command Frame Format Figure 2 - 31 . The Write Attributes Structured command frame SHALL be formatted as illustrated in Frame ributes Structured Command . Write Att Figure 2 - 31 Octets: Variable Variable Variable ... Variable ZCL header Write attribute record 1 Write attribute record 2 ... Write attribute record n Each write attribute record SHALL be formatted as illustrated in 2 - 32 . Figure Figure 2 - 32 . Format of the Write Attribute Record Field Variable 1 Octets: 2 Variable Attribute value Attribute data type Selector Attribute identifier 2.5.16.1.1 ZCL Heade r Fiel ds field SHALL be set to indicate a The frame contr ol field SHALL be specified as follows. The frame type sub - global command (0b00). The manufacturer specific sub field SHALL be set to 0 if this command is being - n the ZCL or 1 if this command is being used to write used to Write Attributes defined for any cluster i manufacturer specific attributes. Table The command identifier field SHALL be set to indicate the Write Attributes Structured command (see - ). 2 3 At t ri bu te Ide nti fie r Field 2.5.16.1.2 attribute identifier field is 16 bits in length and SHALL contain the identifier of the attribute that is to be The written (or an element of which is to be written). 2.5.16.1.3 Selector Field e written, or only an individual The selector field specifies whether the whole of the attribute value is to b element of it. An individual element may only be written to attributes with types of Array, Structure, Set or Bag. The Selector field SHALL be formatted as illustrated in Figure 2 - 33 . - Figure . Format of the Selector Field 33 2 Octets: 1 2 ... 2 Index m ... Indicator ( m ) Index 1 W ritin g an Ele men t t o an Ar ra y or S t ruct ure 2.5.16.1.4 When writing an element to an array or structure, the Indicator subfield indicate s the number of index fields that follow it. This number is limited to the range 0 15 (i.e., the upper 4 bits of the Indicator field are set to - application. an zero). It may be further limited by ere are no index fields, and the whole of the attribute value is to be written. If the Indicator subfield is 0, th Copyright , The ZigBee Alliance. All rights reserved. 2 - 30 Page  2007 - 2016

75 ZigBee Cluster Library Specification Chapter 2 075123 Foundation ZigBee Document – If this subfield is 1 or greater, the index fields indicate which element is to be written, nested to a depth of m. uctures), then if m = 2, index 1 = 5 and index 2 = 3, the For example, if the attribute is an array of arrays (or str third element of the fifth element of the attribute will be written. Note that elements are numbered from 1 upwards for both arrays and structures. e- ype 16 bit unsigned integer, and holds the number of el The zeroth element of an array or structure has t ments in the array or structure. The zeroth element of an array may optionally be written (this is application dependent) and has the effect of changing the number of elements of the array. If the num ber is reduced, the array is truncated. If the number is increased, the content of new elements is application dependent. The zeroth element of a structure may not be written to. Writing to an element with an index greater than the array or structure is always an error. number of elements in an Ad d ing/ Rem o vin g an Elemen t to/ fro m a Set or Bag 2.5.16.1.5 This command may also be used to add an element to a set or bag, or to remove an element from a set or bag. In this case, the lower 4 bits of the Indicator subfield st ill indicate the number of index fields that follow it, as the set may be an element of an array or structure, which may itself be nested inside other arrays or structures. The upper 4 bits of the Indicator subfield have the following values: whole set/bag Write 0b0000 0b0001 Add element to the set/bag Remove element from the set/bag 0b0010 All other values are reserved. 2.5.16.1.6 At t ri bu te Da ta T yp e Field The attribute data type field SHALL contain the data type of the attribute or element thereof that is to be wri tten. 2.5.16.1.7 At t ri bu te Value Fi eld The attribute value field is variable in length and SHALL contain the actual value of the attribute, or element thereof, that is to be written. For an attribute or element of type array, structure, set or bag, this field has the ). Command same format as for the Read Attributes Structured command (see Read Attributes Structured When Generated 2.5.16.2 e or The Write Attributes Structured command is generated when a device wishes to change the values of on more attributes located on another device. Each write attribute record SHALL contain the identifier and the actual value of the attribute, or element thereof, to be written. Effect on Receipt 2.5.16.3 On receipt of this command, the device SHALL attempt to pro cess each specified write attribute record and SHALL construct a write attribute structured response command. Each write attribute status record of the constructed command SHALL contain the identifier from the corresponding write attribute record and a tus value evaluated as described below. sta e- For each write attribute record included in the command frame, the device SHALL first check that it corr n- sponds to an attribute that is implemented on this device and that its associated selector field correctly i icates either the whole of the attribute or an element of the attribute. If it does not (e.g., an index is greater d than the number of elements of an array), the device SHALL set the status field of the corresponding write UNSUPPORTED_ATTRIBUTE or INVALID_SELECTOR as appropriate attribute status record to either and move on to the next write attribute record. 2016 31  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

76 Chapter 2 ZigBee Cluster Library Specification – Foundation 075123 ZigBee Document t- If the attribute identified by the attribute identifier is supported, the device SHALL check whether the a Note: tribute data type field is correct. ( I f the element being written is the zeroth element of an array (in order to change the length of the array) the data type must be 16 bit unsigned integer). If not, the device SHALL set the status field of the corresponding write attribute status record to I NVALID_DATA_TYPE and move on to the next write attribute record. If the attribute data type is correct, the device SHALL check whether the attribute is writable. If the attribute is designated as read only, the device SHALL set the status field of the corr esponding write attribute status record to READ_ONLY and move on to the next write attribute record. ( Note: If an array may not have its length changed, its zeroth element is read only). If the attribute is writable, the device SHALL check that all the sup plied basic (e.g., integer, floating point) values in the attribute value field are within the specified ranges of the elements they are to be written to. If a set the status supplied value does not fall within the specified range of its target element, the device SHALL field of the corresponding write attribute status record to INVALID_VALUE, SHALL set the selector field of that record to indicate that target element, and SHALL move on to the next write attribute record. level element The returned selector SHALL have t he number of indices necessary to specify the specific low - that failed, which will be the same as or greater than the number of indices in the selector of the write attribute record. Note that if the element being written is the zeroth elemen t of an array (in order to change the length of the array) and the requested new length is not acceptable to the application, the value being written is considered outside the specified range of the element. If the value supplied in the attribute value fi eld is within the specified range of the attribute, the device SHALL proceed as follows. If an element is being added to a set, and there is an element of the set that has the same value as the value  set the status field of th e corresponding write attribute status record to to be added, the device SHALL DUPLICATE_ENTRY and move on to the next write attribute record. Else, if an element is being removed from a set or a bag, and there is no element of the set or bag that has  set the status field of the corresponding SHALL removed, the device the same value as the value to be write attribute status record to NOT_FOUND and move on to the next write attribute record. Otherwise, the device SHALL  ute or write, add or remove the supplied value to/from the identified attrib SHALL element, as appropriate, and move on to the next write attribute record. In this (successful) case, a write attribute status record SHALL not be generated. ( Note: If the element being written is the zeroth element of an array, the length of th e array SHALL be changed. If the length is reduced, the array is truncated. If the length is increased, the content of new elements is application dependent.) When all write attribute records have been processed, the device SHALL generate the constructed Write Attributes Response command. If there are no write attribute status records in the constructed command, because all attributes were written successfully, a single write attribute status record SHALL be included in the command, with the status field s et to SUCCESS and the attribute identifier field omitted. Write Attributes Structured Response Command 2.5.17 2.5.17.1 Write Attributes Structured Response Command Frame Format Figure 2 - 34 . The Write Attributes Response command frame SHALL be formatted as illustrated in Figure 2 - 34 . Write Attributes Structured Response Command Frame Octets: Variable Variable Variable ... Variable Write attribute status Write attribute status Write attribute status ... ZCL header rd 2 reco record 1 n record Copyright , The ZigBee Alliance. All rights reserved. 2 - 32 Page  2007 - 2016

77 Chapter 2 ZigBee Cluster Library Specification 075123 Foundation ZigBee Document – Each write attribute status record SHALL be formatted as illustrated in Figure 2 - 35 . 35 rd Field Figure 2 - . Format of the Write Attribute Status Reco 2 Octets: 1 Variable Attribute identifier Selector Status 2.5.17.1.1 ZCL Heade r Fiel ds field SHALL be set to indicate a The frame control field SHALL be specified as follows. The frame type sub - - ub command (0b00). The manufacturer specific s field SHALL be set to 0 if this command is being global used to Write Attributes defined for any cluster in the ZCL or 1 if this command is being used to write manufacturer specific attributes. The command identifier field SHALL be set to indicate the Write A ttributes Structured response command ). 3 2 - (see Table 2.5.17.1.2 Stat us Fiel d The status field is 8 bits in length and specifies the status of the write operation attempted on this attribute, as detailed in 2.5.16.3 . Effect on Receipt Note that write attribute status records are not included for successfully written attributes, in order to save y a single write attribute status record bandwidth. In the case of successful writing of all attributes, onl SHALL be included in the command, with the status field set to SUCCESS and the attribute identifier and selector fields omitted. At t ri bu te Ide nti fie r Field 2.5.17.1.3 The attribute identifier field is 16 bits in length and SHA LL contain the identifier of the attribute on which the write operation was attempted. 2.5.17.1.4 Selector Field The selector field SHALL specify the element of the attribute on which the write operation that failed was Figure 2 - 33 for the structure of this field. attempted. See From the structure shown in Figure 2 - 33 , note that for all attribute data types other than array or structure this field consists of a single octet with value zero. For array or structure ty pes, a single octet with value zero indicates that no information is available about which element of the attribute caused the failure. 2.5.17.2 When Generated The Write Attributes Structured response command is generated in response to a Write Attributes Structure d command. Effect on Receipt 2.5.17.3 On receipt of this command, the device is notified of the results of its original Write Attributes Structured command. 2.5.18 Discover Commands Received Command including This command may be used to discover all commands processed (received) by this cluster, or optional commands. specific - manufacturer 2016 33  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

78 Chapter 2 ZigBee Cluster Library Specification ZigBee Document – 075123 Foundation Discover Commands Received Command Frame 2.5.18.1 Format be formatted as follows. The discover server commands command frame SHALL - 36 . For mat of the Discover Server Commands Command Frame 2 Figure Octets: Variable 1 1 Maximum identifier header Start command ZCL command identifiers Field: 2.5.18.1.1 ZCL Heade r Fiel ds The frame control field SHALL be specified as follows. The frame type sub - field SHALL be set to indicate sub a command (0b00). The manufacturer - specific global - field SHALL be set to 0 to discover standard commands in a ZigBee cluster or 1 to discover manufacturer - specific commands in either a standard or a discover will (wildcard) 0xffff u- man any manufacturer - specific cluster. A manufact urer ID in this field of facture specific commands. The direction bit SHALL be - 0 (client to server) to discover commands that the server can process. The direction (server bit SHALL be 1 to client) to discover comman ds that the client can process. . command The command identifier field SHALL be set to indicate the Discover Commands Received 2.5.18.1.2 Star t C omma nd I d enti fier Field begin to The start command identifier field is 8 - bits in length and specifies the value of the identifier at which command discovery. the 2.5.18.1.3 Maximu m C omma nd I den tifie rs Fiel d The maximum command identifiers field is 8 - bits in length and specifies the maximum number of command identifiers that are to be returned in the resulting Discover Commands Received R esponse . 2.5.18.2 When Generated The Discover Commands Received command is generated when a remote device wishes to discover the optional and mandatory commands the cluster to which this command is sent can process. 2.5.18.3 Effect on Receipt construct an ordered list of command identifiers. This list SHALL On receipt of this command, th e device start with the first command that has an identifier that is equal to or greater than the identifier SHALL tifiers included in the list specified in the start command identifier field. The number of command iden not exceed that specified in the maximum command identifiers field. SHALL Discover Commands Received Response 2.5.19 The Discover Commands R command is sent in response to a e- Discover Commands Received Response ceived used to discover which commands a particular cluster can process. command, and is Copyright , The ZigBee Alliance. All rights reserved. 2 - 34 Page  2007 - 2016

79 ZigBee Cluster Library Specification Chapter 2 075123 Foundation – ZigBee Document Discover Commands Received Response Frame 2.5.19.1 Discover Commands Received Response command frame The be formatted as shown below: SHALL Figure - 37 . 2 Discover Commands Received Response Frame Format of the ... 1 1 Variable 1 1 c O tets: Command Command Command Discovery Header ZCL ... Field: 2 identifier identifier 1 complete identifier n 2.5.19.1.1 ZCL Heade r Fiel ds be set to indicate a field SHALL The frame control field SHALL be specified as follows. The frame type sub - SHALL field - specific sub - command (0b00). The manufacturer global be set to the same value included in the original discover commands command, with the exception that if the manufacture ID is 0xffff (wildcard), - then the response will contain the manufacture ID of the manufacturer specific commands, or will not be present if the cluster supports no manufacturer - specific extensions, or the manufacturer wishes to hide the ensions. The command identifier field SHALL be set to indicate the fact that it supports ext Discover Commands Received Response command. 2.5.19.1.2 Disco ver y Com ple te Fiel d The discovery complete field is a boolean field. A value of 0 indicates that there are more commands to be discovered. A value of 1 indicates that there are no more commands to be discovered. 2.5.19.1.3 Comma nd Iden ti fi er Field The command identifier field SHALL contain the identifier of a discovered command. Commands SHALL be included in ascending order, starting with the lowest a ttribute identifier that is greater than or equal to the start attribute identifier field of the received discover server commands command. 2.5.19.2 When Generated Discover Commands Received Response The is generated in response to a Discover Commands Received com mand. Effect on Receipt 2.5.19.3 On receipt of this command, the device is notified of the results of its command discovery request. Following the receipt of this command, if the discovery complete field indicates that there are more commands to be discovered, th e device may choose to send subsequent discover command request commands to obtain the rest of the command identifiers. In this case, the start command identifier specified in the next command SHOULD be set equal to one plus the l ast command identifier received in the discovery request command Discover Commands Received Response . 2.5.20 Discover Commands Generated Command This command may be used to discover all commands which may be generated (sent) by the cluster, i n- cluding optional or manufacturer - specific com mands. 2.5.20.1 Discover Commands Generated Command Frame Format command With the exception of the command ID in the ZCL header, the Discover Commands Generated SHALL frame ions. and its subsect 2.5.18 clause - be formatted as described in sub 2016 35  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

80 Chapter 2 ZigBee Cluster Library Specification – Foundation 075123 ZigBee Document When Generated 2.5.20.2 The Discover Commands Generated command is generated when a remote device wishes to discover the commands that a cluster may generate on the device to which this command is directed. 2.5.20.3 Effect on Receipt device On receipt of this command, the construct an ordered list of command identifiers. This list SHALL start with the first command that has an identifier that is equal to or greater than the identifier SHALL specified in the start command identifier field. The number of command ident ifiers included in the list SHALL not exceed that specified in the maximum command identifiers field. 2.5.21 Discover Commands Generated Response The Discover Commands Generated Response command is sent in response to a D iscover Commands G enerated command, and i s used to discover which commands a particular cluster supports. 2.5.21.1 Discover Commands Generated Response Frame With the exception of the command ID in the ZCL header, the Discover Commands Generated Response be formatted as described in clause - and its subsections. sub command frame SHALL 2.5.18 When Generated 2.5.21.2 Discover Commands Generated is generated in response to a Discover Commands Generated Response The command. 2.5.21.3 Effect on Receipt Discover Commands Generated tified of the results of its On receipt of this command, the device is no command . Following the receipt of this command, if the discovery complete field indicates that there are more co m- mands to be discovered, the device may choose to send subsequent Discover Commands Ge nerated co m- mands to obtain the rest of the command identifiers. In this case, the start command identifier specified in the be set equal to one plus the last command ident SHOULD i- command next Discover Commands Generated . ds Generated Response Discover Comman fier received in the 2.5.22 Command Discover Attributes Extended This command is similar to the discover attributes command, but also includes a field to indicate whether the attribute is readable, writeable or reportable. 2.5.22.1 Discover Attributes Extended Command Frame Format The Discover Attributes Extended command frame SHALL be formatted as illustrated as follows. Figure 2 - 38 . Format of the Discover Attributes Extended Command Frame Octets: Variable 2 1 Start identifier attribute Maximum attribute identifiers Header Z CL Field: Copyright , The ZigBee Alliance. All rights reserved. 2 - 36 Page  2007 - 2016

81 ZigBee Cluster Library Specification Chapter 2 075123 ZigBee Document Foundation – ZCL Heade r Fiel ds 2.5.22.1.1 - The frame control field SHALL be specified as follows. The frame type sub field SHALL be set to indicate a be set to 0 to discover standard a field t- SH ALL global command (0b00). The manufacturer - specific sub - specific attributes in either a standard or a man - tributes in a ZigBee cluster or 1 to discover manufacturer u- specific cluster. A manufacturer ID in this field of 0xffff (wildcard) will discover any manufa c- - facturer e specific attributes. The direction bit - tur SHALL be 0 (client to server) to discover attributes that the server hosts. The direction bit SHALL be 1 (server to client) to discover attributes that the client may host. The command identifier field . command SHALL Discover Attributes Extended be set to indicate the Star t At t rib ute Ide nti fier Field 2.5.22.1.2 The start attribute identifier field is 16 - bits in length and specifies the value of the identifier at which to begin the attribute discovery. Maximu m At t rib ut e Iden t if iers Fiel d 2.5.22.1.3 The maximum attribute identifiers field is 8 bits in length and specifies the maximum number of attribute command. Discover Attributes Extended Response identifiers that are to be returned in the resulting When Generated 2.5.22.2 command is generated when a remote device wishes to discover the tes Extended Discover Attribu The identifiers and types of the attributes on a device which are supported within the cluster to which this command is directed, including whether the attribute is readable, writeab le or reportable. 2.5.22.3 Effect on Receipt SHALL construct an ordered list of attribute information records, On receipt of this command, the device each containing a discovered attribute identifier and its data type, in ascending order of attribute identifiers. SHALL This list start with the first attribute that has an identifier that is equal to or greater than the identifier specified in the start attribute identifier field. The number of attribute identifiers included in the list SHALL not exceed that specifie d in the maximum attribute identifiers field. 2.5.23 Discover Attributes Extended Response Co m- mand This command is sent in response to a Discover Attributes Extended command, and is used to determine if attributes are readable, writable or reportable. 2.5.23.1 Discover A ttributes Extended Response Co m- mand Frame Format The be formatted as illustrated as follows. SHALL command frame Discover Attributes Extended Response - 39 . Format of the Discover Attributes Extended R esponse 2 Command Frame Figure Octets: Variable 4 1 4 ... 4 attribute attribute Extended Extended attribute Extended Discovery ... header ZCL Field: complete information n information 1 2 information 2016 37  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

82 Chapter 2 ZigBee Cluster Library Specification ZigBee Document – 075123 Foundation be formatted as fol lows. Each extended attribute information field SHALL 2 - 40 . Format of the Extended Attribute Information Fields Figure 2 1 1 ctets O : : Attribute i d entifier Field Attribute control data type Attribute access ZCL Heade r Fiel ds 2.5.23.1.1 The frame control field SHALL be specified as follows. The frame type sub - field SHALL be set to indicate a - global command (0b00). The manufacturer specific sub - field SHALL be set to the same value included in the original Discover Attributes Extended command, with the exception that i f the manufacture ID is 0xffff (wildcard), then the response will contain the manufacture ID of the manufacturer - specific attributes , or will specific extensions. - not be present if the cluster supports no manufacturer m- co Discover Attributes Extended Response set to indicate the be SHALL The command identifier field mand. Disco ver y Com ple te Fiel d 2.5.23.1.2 The discovery complete field is a boolean field. A value of 0 indicates that there are more attributes to be discovered. A value of 1 indicates that there are no m ore attributes to be discovered. At t ri bu te Ide nti fie r Field 2.5.23.1.3 SHALL contain the identifier of a discovered attribute. Attributes SHALL The attribute identifier field be included in ascending order, starting with the lowest attribute identifier that is greate r than or equal to the start attribute identifier field of the received discover attributes command. 2.5.23.1.4 At t ri bu te Da ta T yp e Field The attribute data type field SHALL contain the data type of the attribute. 2.5.23.1.5 At t ri bu te Access Con tr ol Fie ld indicate whether the attribute is readable, writable, and/or r The attribute acces s control field SHALL e- The bits are in little endian order (bit 0 is listed first). below: - portable. This is an 8 bit bitmask field as shown 2 - 41 . Format of the Attribute Access Control Field Figure 1 1 Bits: 1 Reportable Writeable Readable Field: 2.5.23.2 When Generated The Discover Attributes Extended Response command is generated in response to a Discover Attributes Extended command. t Effect on Receip 2.5.23.3 On receipt of this command, the device is notified of the results of its co Discover Attributes Extended m- . mand Following the receipt of this command, if the discovery complete field indicates that there are more attributes commands to Discover Attributes Extended ay choose to send subsequent to be discovered, the device m Copyright , The ZigBee Alliance. All rights reserved. 2 - 38 Page  2007 - 2016

83 ZigBee Cluster Library Specification Chapter 2 075123 ZigBee Document – Foundation obtain the rest of the attribute identifiers and access control. In this case, the start attribute identifier specified be set equ in the next al to one plus the last attribute Discover Attributes Extended command SHOULD identifier received in the Discover Attributes Extended Response command. Addressing, Types and Enumerations 2.6 2.6.1 Addressing ZigBee uses a number of concepts to address application , clusters, device descriptions, attr ibutes and s commands, each with their own constraints. This sub - clause details these constraints. 2.6.1.1 Profile Identifier A profile identifier is 16 bits in length and specifies the application profile being used. A profile identifier Table SHALL be set to one of the non reserved values listed in - 2 - 5 . Please see [Z5], ZigBee Application Architecture for m ore details. Table 2 - 5 . Valid Profile Identifier Values Profile Identifier Description Standard ZigBee application profile – 0x7fff 0x0000 – 0xc000 Manufacturer Specific application profile 0xffff all Reserved r values othe Device Identifier 2.6.1.2 . A device identifier A device identifier is 16 bits in length and specifies a specific device within a standard Table - reserved values listed in 2 SHALL be set to one of the non - 6 . Please see [Z5], ZigBee Application Architecture for more details. Table 2 - 6 . Valid Device Identifier Values Device Identifier Description 0xbfff – Standard ZigBee device description. 0x0000 all values Reserved other 2.6.1.3 Cluster Identifier A cluster identifier is 16 bits in length and identifies an instance of an implemented cluster specification ( see Table 2.2.1.1 ) . It SHALL be set to one of the non reserved values listed in - 2 - 7 . Please see [Z5], ZigBee Application Architecture for more details. Table 2 - 7 . Valid Clus ter Identifier Values Cluster Identifier Description 0x7fff Standard ZigBee cluster – 0x0000 0xffff – 0xfc00 Manufacturer specific cluster 2016 39  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

84 Chapter 2 ZigBee Cluster Library Specification ZigBee Document – 075123 Foundation Reserved all other values Attribute Identifier 2.6.1.4 s in length and specifies a single attribute within a cluster. An attribute ide An attribute identifier is 16 bit n- 8 - Table 2 tifier, defined within the ZCL, SHALL be set to one of the non reserved values listed in . Undefined - cluster attributes are reserved for futu re cluster attributes. Global attributes are associated with all clusters (see 2.3.5 ) . Table - 8 . Valid ZCL Defined Attribute Identifier Values 2 Attribute Identifier Description 0x 0000 – 0x4fff Standard ZigBee attribute 0xf000 0xfffe Global Attributes – all other values Reserved Manufacturer specific attributes within a standard ZigBee cluster can be defined over the full 16 - bit range. c global These may be manipulated using the set to the frame control field with , 3 - 2 Table ommands listed in indicate a manufacturer specific command (see cturer may define ). (Note that, alternatively, the manufa 2.4 cluster specific commands (see sired). ) , re - using these command IDs if d e his own 2.4 2.6.1.5 Command Identifier A command identifier is 8 bits in length and specifies a specific command within the ZCL as a whole or wi thin a specific cluster. A command identifier SHALL be set to one of the non - reserved values listed in Table 2 - 9 . Manufacturer specific commands within a standard ZigBee cluster can be defined over the full 8 - bit range but each SH ALL use the appropriate manufacturer code. - . Valid ZCL Defined Command Identifier Values Table 2 - 9 Command Identifier Description 0x00 – 0x7f Standard ZigBee command or Manufacture Specific command, depending on the Frame Control field in the ZCL Header all other values Reserved 2.6.2 Data Types Each attribute and command field Each in a cluster specification SHALL have a well defined data type. ), which describes map to a single data type ident ifier (data type ID attribute in a cluster specification SHALL data of the general properties length and the type. Copyright , The ZigBee Alliance. All rights reserved. 2 - 40 Page  2007 - 2016

85 ZigBee Cluster Library Specification Chapter 2 075123 – ZigBee Document Foundation SHALL NOT be added to this table. It is encouraged that commonly used cluster ew data type identifiers N and command field data types are added to this list and mapped to appropriate data type identifiers attribute . with a unique name common dat a types can then be reused instead of redefined in each specification. Such For example: a percentage data type representing 0 - 100% with a unit size of .5 percen t, would be mapped to data type identifier 0x20 ( also unsigned 8 - bit integer ), and perhaps named ‘ P e rcent 8 - bit .5 - unit ’ ( short named ) . ‘percent8.5’ Table 2 - 10 also indicates for each data type whether it defines an 'analog' or 'discrete' value . Values of analog types may be added to or subtracted from other values of the same type, and are t ypically used to measure the value of properties in the real world that vary continuously over a range. Values of discrete data types only have meaning as individual values, and may not be added or subtracted. type short name to reduce t text size of the specification. he Cluster specifications MAY use the unique data Table 10 . Data Types 2 - Length Short ID Class Data Type Invalid Value (Octets) Null 0x00 nodata 0 - No data General data - 8 - bit data data8 0x08 1 Discrete 16 - bit data 0x09 2 - data16 24 - bit data data24 0x0a 3 - - 4 0x0b data32 bit data - 32 5 40 data40 0x0c - bit data - - bit data data48 0x0d 6 - 48 - data56 0x0e bit data 56 - 7 64 - bit data data64 0x0f 8 - Logical 0xff Boolean bool 0x10 1 Discrete Bitmap - 1 8 - bit bitmap map8 0x18 Discrete bit bitmap 16 - - map16 0x19 2 24 map24 0x1a bit bitmap 3 - - 32 - bit bitmap map32 0x1b 4 - 40 - bit bitmap map40 0x1c 5 - 48 map48 0x1d bit bitmap 6 - - - bit bitmap map56 0x1e 7 - 56 - 64 - bi t bitmap map64 0x1f 8 Unsigned 0xff 1 0x20 uint8 bit - Unsigned 8 2016 41  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

86 Chapter 2 ZigBee Cluster Library Specification – 075123 ZigBee Document Foundation Length ID Data Type Class Short Invalid Value (Octets) integer integer Analog Unsigned 16 - bit 0xffff uint16 0x21 2 integer - bit Unsigned 24 uint24 0x22 3 0xffffff integer - bit Unsigned 32 uint32 0x23 4 0xffffffff integer Unsigned 40 bit - uint40 0xffffffffff 0x24 5 integer Unsigned 48 - bit uint48 0x25 6 0xffffffffffff integer - bit Unsigned 56 0x26 7 uint56 0xffffffffffffff integer - Unsigned 64 bit 0xffffffffffffffff uint64 0x27 8 integer Signed integer 0x80 1 Signed 8 - int8 0x28 bit integer Analog Signed 16 - bit integer int16 0x29 2 0x8000 - Signed 24 0x800000 3 0x2a int24 bit integer 4 Signed 32 int32 0x2b 0x80000000 bit integer - - bit integer int40 0x2c 5 0x8000000000 Signed 40 0x2d - bit integer int48 Signed 48 6 0x800000000000 Si - bit integer int56 0x2e 7 0x80000000000000 gned 56 0x2f Signed 64 bit integer int64 - 8 0x8000000000000000 Enumeration bit enumeration 0xff 1 8 - 0x30 enum8 Discrete enum16 - bit enumeration 16 0x31 2 0xffff Floating point Not a Number 2 0x38 Semi - precision semi Analog single Single precision 4 Not a Number 0x39 Double precision Not a Number double 0x3a 8 String Defined in octstr 0xff in first octet 0x41 Octet string first octet Discrete Defined in Character string irst octet 0xff in f 0x42 string first octet  - 42 Copyright Page 2007 , The ZigBee Alliance. All rights reserved. 2 - 2016

87 ZigBee Cluster Library Specification Chapter 2 075123 ZigBee Document Foundation – Length Data Type Invalid Class Value Short ID (Octets) Defined in 0xffff in first two oct first two Long octet string 0x43 str 16 octets octets Defined in 0xffff in first two 0x44 first two Long character string string16 octets octets Ordered 2 + sum of 0xffff in first 2 octets ths of Array array 0x48 sequence leng contents Discrete 2 + sum of 0xffff in first 2 octets Structure struct 0x4c lengths of contents Sum of Collection Number of elements Set set 0x50 lengths returned as 0xffff Discrete of contents Sum of Number of elements bag lengths 0x51 Bag returned as 0xffff of co ntents Time 0xe0 Time of day ToD 0xffffffff 4 Analog date 0xe1 4 0xffffffff Date 4 UTCTime UTC 0xe2 0xffffffff Identifier 0xffff 2 Cluster ID clusterId 0xe8 Discrete attribId 0xe9 Attribute ID 0xffff 2 0xea bacOID et OID BACn 4 0xffffffff Miscellaneous 0xffffffffffffffff 8 IEEE address EUI64 0xf0 Discrete - 128 - bit security key key128 0xf1 16 fixed or Opaque opaque - defined separately Unknown Unknown unk - 0xff 0 No Data Type 2.6.2.1 pecial type to represent an attribute with no associated data. The no data type is a s 2016 43  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

88 Chapter 2 ZigBee Cluster Library Specification – 075123 ZigBee Document Foundation 2.6.2.2 General Data (8, 16, 24, 32, 40, 48, 56 and 64 - bit) This type has no rules about its use, and may be used when a data element is needed but its use does not conform to any of the standard types . 2.6.2.3 Boolean The Boolean type represents a logical value, either FALSE (0x00) or TRUE (0x01). The value 0xff repr e- sents an invalid value of this type. All other values of this type are forbidden. Bitmap (8, 16, 24, 32, 40, 48, 56 and 64 - bit) 2.6.2.4 The Bitmap type h olds 8, 16, 24, 32, 40, 48, 56 or 64 logical values, one per bit, depending on its length. There is no value that represents an invalid value of this type. 2.6.2.5 Unsigned Integer (8, 16, 24, 32, 40, 48, 56 and 64 - bit) 32 8 16 24 This type represents an unsigned integer wit h a decimal range of 0 to 2 1, 0 to 2 - 1, 0 to 2 1, 0 - 1, 0 to 2 - - 40 48 56 64 1, 0 to 2 to 2 1, 0 to 2 1, or 0 to 2 - - 1, depending on its length. The values that represent an invalid value - - ffffffffffff, 0xffffffffffffff and 0xffffffffffffffff of this type are 0xff, 0xffff, 0xffffff, 0xffffffff, 0xffffffffff, 0x respectively. 2.6.2.6 Signed Integer (8, 16, 24, 32, 40, 48, 56 and 64 - bit) 23 7 7 15 15 23 This type represents a signed integer with a decimal range of 1, - (2 (2 - 1) to 2 1) to 2 - 1, - (2 - - 1) - to 2 - - 1, 55 63 63 31 31 39 39 47 47 55 1) - 1) - to 2 - - 1 , - (2 (2 - 1) - to 2 1, or - 1, - (2 - - 1) to 2 to 2 1, depending on its length. - 1, - (2 - - 1) (2 to 2 The values that represent an invalid value of this type are 0x80, 0x8000, 0x800000, 0x80000000, 0x8000000000, 0x800000000000, 0x80000000000000 and 0x8 000000000000000 respectively. Enumeration (8 - - bit) 2.6.2.7 bit, 16 The Enumeration type represents an index into a lookup table to determine the final value. The values 0xff - bit and 16 - bit types respectively. and 0xffff represent invalid values of the 8 ion - precis 2.6.2.8 Semi - precision number format is based on the IEEE 754 standard for binary floating - point The ZigBee semi arithmetic [E2]. This number format SHOULD be used very sparingly, when absolutely necessary, keeping in mind the code and processing required supportin g it. The value is calculated as: 15) - (Exponent Sign * (Hidden + Mantissa/1024) * 2 1 - Value = - Figure 2 42 . Format of the ZigBee Semi - precision Number Exponent Sign Hidden Mantissa E S M E E E E H . M M M M M M M M M 0 5 1 8 4 4 2 3 7 0 2 3 6 1 9 0 bit 15 10 9 2 Figure The transmission order for the format in Note: is bit 0 first. 42 - Copyright , The ZigBee Alliance. All rights reserved. 2 - 44 Page  2007 - 2016

89 ZigBee Cluster Library Specification Chapter 2 Foundation ZigBee Document – 075123 - 14 ), the hidden bit = 1 and the resolution is constant at 11 bits ( 1 in 2048). For normalized numbers (>2 For un - normalized numbers, the hidden bit = 0. Note that this does not maintain 11 - bit resolution and that the resolution becomes coarser as the number gets smaller. The hidden bit is not sent over the link. It SHALL have the value ‘1’ (i.e., normalized) in order to be classified as a ZigBee semi - precision number. The sign bit is set to 0 for positive values, 1 for negative. The exponent is 5 bits. The actual exponent of 2 is calculated as (exponent – 15). ific purposes: Certain values are reserved for spec Not a Number : this is used for undefined values (e.g., at switch - on and before initialization) and is  zero mantissa. indicated by an exponent of 31 with a non -  Infinity: this is indicated by an exponent of 31 and a zero mantissa. The sign bit indicates whether this – represents + infinity or infinity, the figure of 0x7c00 representing +  and 0xfc00 representing -  .  Zero: this is indicated by both a zero exponent and zero mantissa. The sign bit indicates whether this is + zero, the value 0x0000 representing +zero and 0x8000 representing – or – zero. - 14 numbers < 2 e indicated by a value of 0 for the exponent. The hidden bit ar normalized numbers: - Un  is set to zero. The maximum value represented by the mantissa is 0x3ff / 1024. The largest number that can be represented is therefore: - (30 15) Sign = 1 * (1 +1023/1024) * 2 65504  8 = -  1.9990234 * 3276 e- Certain applications may choose to scale this value to allow representation of larger values (with a corr spondingly more coarse resolution). For details, see the relevant device descriptions. (1 6 15) - * 1.0 = 0x4000, while a value of 2 is represented by For example, a value of +2 is represented by +2 – 0xc000. (17 - 15) 0.625 is represented by Similarly, a value of +0.625 is represented by +2 – * 1.625 = 0x4680, while 0xc680. Single Precision 2.6.2.9 the IEEE 754 standard for binary floating The format of the single precision data type is based on point - arithmetic [E2]. This number format SHOULD be used very sparingly, when absolutely necessary, keeping in mind the code and processing required supporting it. The format and interpretation of values of this da - ta type follow the same rules as given for the semi precision - fields, as follows. data type, but with longer sub Length of mantissa = 23 bits, length of exponent = 8 bits For further details, see [E2]. Double Precision 2.6.2.10 point - ta type is based on the IEEE 754 standard for binary floating The format of the double precision da arithmetic [E2]. This number format SHOULD be used very sparingly, when absolutely necessary, keeping in mind the code and processing required supporting it. of values of this data type follow the same rules as given for the semi precision - The format and interpretation fields, as follows. - data type, but with longer sub Length of mantissa = 52 bits, length of exponent = 11 bits For further details, see [E2]. 2016 45  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

90 Chapter 2 ZigBee Cluster Library Specification – Foundation 075123 ZigBee Document Octet String 2.6.2.11 defined format, not defined in this specification. The octet string dat a type contains data in an application - . The octet string data type is formatted as illustrated in Figure 2 - 43 Figure of the Octet String Type . Format 43 - 2 Octets: 1 Variable Octet count Octet data The octet count sub - field is one octet in length and specifies the number of octets contained in the octet data - sub field. Setting this sub field to 0x00 represents an octet string with no octet data (an “empty string”). Setting this - - field to 0xff represents an invalid octet string value. In both cases the octet data sub - field has zero length. sub n octets in length, where field - field. This sub - is the value of the octet count sub n The octet data sub - field is - defined data. contains the application Character String 2.6.2.12 r- The character string data type contains data octets encoding characters according to the language and cha by the complex descriptor, the default If not specified acter set field of the complex descriptor (see [Z1]). character encoding UTF - 8. The character string data type SHALL be formatted as illustrated in SHALL be Figure 2 - 44 . 44 Figure - 2 . Format of the Character String Type Octets: 1 Variable Character data length Character data The character data length sub - field is one octet in length and specifies the length of the character data for the ISO 646 ASCII character set, this is the sam sub Note: e as the number of characters in the - field. ( string. For other codings, this may not be the case.) Setting this sub field to 0x00 represents a character string with no character data (an “empty string”). Setting - er string value. In both cases the character data sub this sub - field to 0xff represents an invalid charact - field has zero length. - The character data sub field contains the encoded characters that comprise the desired character string. Its language and character set fields of the length is the sum of the lengths of the characters as specified by the complex descriptor. - field equal to 0x00 and a zero length A character string with no contents, i.e., with the character count sub character data sub - field, SHALL be referred to as an 'empty string'. 2.6.2.13 Long Octet Str ing The long octet string data type contains data in an application - defined format, not defined in this specific a- . - 45 tion. The long octet string data type is formatted as illustrated in Figure 2 45 2 . Format of the Long Octet String Type - Figure Variable Octets: 2 Octet count Octet data Copyright , The ZigBee Alliance. All rights reserved. 2 - 46 Page  2007 - 2016

91 ZigBee Cluster Library Specification Chapter 2 075123 Foundation ZigBee Document – The octet count sub - field is two octets in length and specifies the number of octets contained in the octet data 2.6.2.5 ). sub - field. It has the same format a s a 16 - bit unsigned integer (see - field to 0x0000 represents a long octet string with no octet data (an “empty string”). Setting Setting this sub - this sub field has - string value. In both cases the octet data sub field to 0xffff represents an invalid long octet zero length. is the value of the octet count sub field. This sub - - field The octet data sub - field is n octets in length, where n - defined data. contains the application Long Character String 2.6.2.14 The long ch aracter string data type contains data octets encoding characters according to the language and character set field of the complex descriptor (see [Z1]). If not specified by the complex descriptor, the default The long ch aracter string data type is formatted as illustrated in Figure - 8. character encoding SHALL be UTF 2 . 46 - . Format of the Long Character String Type 46 - 2 Figure Octets: 2 Variable Character count Character data - field. field is two octets in length and specifies the length of the character data sub aracter count sub - The ch ( Note: for the ISO 646 ASCII character set, this is the same as the number of characters in the string. For - bit unsigned integer (see It has the same format as a 16 ). other codings, this may not be the case.) 2.6.2.5 field to 0x0000 represents a long character string with no character data (an “empty string”). - Setting this sub - Setting this sub epresents an invalid long character string value. In both cases the character field to 0xffff r data sub - field has zero length. field contains the encoded characters that comprise the desired character string. Its The character data sub - length is the sum of the lengths of t he characters as specified by the language and character set fields of the complex descriptor. A character string with no contents, i.e., with the character count sub - field equal to 0x0000 and a zero length field, SHALL be referred to as an 'empty string'. character data sub - Arra y 2.6.2.15 An array is an ordered sequence of zero or more elements, all of the same data type. This data type may be any ZCL defined data type, including array, structure, bag or set. The total nesting depth is limited to 15, and may be fur application. an ther limited by Individual elements may be accessed by an index of type 16 bit unsigned integer. Elements are numbered - s the from 1 upwards. The zeroth element is readable, always has type 16 bit unsigned integer, and hold number of elements contained in the array, which may be zero. If the zeroth element contains 0xffff, the array is considered invalid / undefined. The zeroth element may also, as an implementation option, be writeable, in order to change the size of t he array (see for details). 2.5.16.1 n- Arrays are 'packed', i.e., there is no concept of a 'null' element. However, if an element has a simple (u 10 - 2 Table structured) type, and that type has an 'invalid number' value defined (see ), that value indicates that the element is invalid / undefined. 2016 47  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

92 Chapter 2 ZigBee Cluster Library Specification ZigBee Document 075123 Foundation – 2.6.2.16 Structure A structure is an ordered sequence of elements, which may be of different data types. Each data type may be any ZCL defined data type, including array, s tructure, bag or set. The total nesting depth is limited to 15, and may be further limited by application. an - bit unsigned integer. Elements are numbered Individual elements may be accessed by an index of type 16 zeroth element is readable, always has type 16 bit unsigned integer, and holds the from 1 upwards. The number of elements contained in the structure, which may be zero. If the zeroth element contains 0xffff, the not be written to. array is considered invalid / undefined. The zeroth element may Structures are 'packed', i.e., there is no concept of a 'null' element. However, if an element has a simple 2 10 ), that value indicates (unstructured) type, and that type has an 'invalid number' value defined (see - Table that the element is undefined. 2.6.2.17 Set A set is a collection of elements with no associated order. Each element has the same data type, which may be , and may any ZCL defined data type, including array, structure, bag or set. The nesting depth is limited to 15 application. an be further limited by Elements of a set are not individually addressable, so may not be individually read or modified. Sets may moved from a set; removal is only be read in their entirety. Individual elements may be added to a set or re done by value. The maximum number of elements in a set is 0xfffe. If the number of elements is returned by a read command as 0xffff, this indicates that it is invalid / undefined. e. No two elements of a set may have the same valu Bag 2.6.2.18 A bag behaves exactly the same as a set, except that the restriction that no two elements may have the same value is removed. 2.6.2.19 Time of Da y The Time of Day data type SHALL be formatted as illustrated in Figure 2 - 47 . . Format of the Time of Day Type Figure 2 - 47 1 1 Octets: 1 1 Hours Minutes Seconds Hundredths The hour s subfield represents hours according to a 24 hour clock. The range is from 0 to 23. The minutes subfield repres ents minutes of the current hour. The range is from 0 to 59. The seconds subfield represents seconds of the current minute. The range is from 0 to 59. The hundredths subfield represents 100ths of the current second. The range is from 0 to 99. ff in any subfield indicates an unused subfield. If all subfields have the value 0xff, this indicates A value of 0x an invalid or 'don't care' value of the data type. Date 2.6.2.20 . 48 - 2 ure Fig The Date data type SHALL be formatted as illustrated in Copyright , The ZigBee Alliance. All rights reserved. 2 - 48 Page  2007 - 2016

93 ZigBee Cluster Library Specification Chapter 2 075123 ZigBee Document Foundation – Fig ure 2 - 48 . Format of the Date Type Octets: 1 1 1 1 1900 Day of week Day of month Month Year - The year - 1900 subfield has a range of 0 to 255, representing years from 1900 to 2155. a range of 1 to 12, representing January to December. The month subfield has The day of month subfield has a range of 1 to 31. Note that values in the range 29 to 31 may be invalid, depending on the month and year. The day of week subfield has a range of 1 to 7, representing Mon day to Sunday. A value of 0xff in any subfield indicates an unused subfield. If all subfields have the value 0xff, this indicates an invalid or 'don't care' value of the data type. 2.6.2.21 UTCTime e- - nds since 0 hours, 0 minutes, 0 s bit value representing the number of seco UTCTime is an unsigned 32 conds, on the 1st of January, 2000 UTC (Universal Coordinated Time). The value that represents an invalid . value of this type is 0xffffffff oordinated Time (UTC). Note that UTCTime does not hold a standard textual representation of Universal C However, UTC (to a precision of one second) may be derived from it. Cluster ID 2.6.2.22 . .1.3 2.6 This type represents a cluster identifier as defined in 2.6.2.23 Attribute ID te identifier as defined in 2.6.1.4 . This type represents an attribu BACnet OID (Object Identifier) 2.6.2.24 e- The BACnet OID data type is included to allow interworking with BACnet (see [A1]). The format is d scribed in the referenced standard. 2.6.2.25 IEEE Addre ss The IEEE Address data type is a 64 - bit IEEE address that is unique to every ZigBee device. A value of 0xffffffffffffffff indicates that the address is unknown. 2.6.2.26 128 - bit Securit y Ke y - y take any 128 bit value. The 128 - bit Security Key data type is for use in ZigBee security, and ma Opaque 2.6.2.27 he length F ixed block or series of octets where the length is determined separatel y . T S HALL be fixed in the from specification or determined information from another part of the protocol. The format of the data MAY exists . also be unknown. It is not recommended to use this data type, when a more well defined data type used as a cluster attribute, or be NOT This data type SHALL have a Data Type Id. 2016 49  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

94 Chapter 2 ZigBee Cluster Library Specification ZigBee Document – 075123 Foundation Unknow n 2.6.2.28 NOT This data type SHALL for a cluster attribute or frame dat a field . This is not an actual data typ e. be used where one use identifier for data type to is required It is listed here for completenes s and to reserve the It SHALL never be used to identify actual data If the is unknown. designate that a data type as unknown . or length of data is unknown , s tructure, format , , then the Opaque data cannot be used or an existing data type type SHALL be used. 2.6.3 Status Enumerations Where a ZCL command contains a status field, the actual value of the enumerated status values are listed i n 11 - 2 Table . Table . Enumerated Status Values Used in the ZCL 11 - 2 Description Value Enumerated Status SUCCESS 0x00 Operation was successful. ul. Operation was not successf FAILURE 0x01 i- The sender of the command does not have author 0x7e NOT_AUTHORIZED zation to carry out this command. zero - A reserved field/subfield/bit contains a non RESERVED_FIELD_NOT_ZERO 0x7f value. The command appears to contain the wron g fields, as detected either by the presence of one or more invalid field entries or by there being missing fields. MALFORMED_COMMAND 0x80 e- Command not carried out. Implementer has discr tion as to whether to return this error or INV A- LID_FIELD. cified cluster command is not supported on The spe UNSUP_CLUSTER_COMMAND 0x81 the device. Command not carried out. The specified general ZCL command is not su p- UNSUP_GENERAL_COMMAND 0x82 ported on the device. ic A manufacturer specific unicast, cluster specif u- command was received with an unknown man 0x83 UNSUP_MANUF_CLUSTER_COMMAND g- facturer code, or the manufacturer code was reco nized but the command is not supported. A manufacturer specific unicast, ZCL specific u- command was received with an unknown man 0x84 UNSUP_MANUF_GENERAL_COMMAND f acturer code, or the manufacturer code was reco g- nized but the command is not supported. n- At least one field of the command contains an i correct value, according to the specification the INVALID_FIELD 0x85 device is implemented to. 0x86 The specified attribute does not exist on the device. UNSUPPORTED_ATTRIBUTE Out of range error, or set to a reserved value. A t- 0x87 INVALID_VALUE tribute keeps its old value. Copyright , The ZigBee Alliance. All rights reserved. 2 - 50 Page  2007 - 2016

95 ZigBee Cluster Library Specification Chapter 2 075123 ZigBee Document Foundation – Description Value Enumerated Status Note that an attribute value may be out of range if an h minimum attribute is related to another, e.g., wit and maximum attributes. See the individual attribute descriptions for specific details. 0x88 READ_ONLY Attempt to write a read only attribute. an insufficient amount of failed due to An operation INSUFFICIENT_SPACE 0x89 11 . free space available An attempt to create an entry in a table failed due to DUPLICATE_EXISTS 0x8a a duplicate entry already being present in the table. The requested information (e.g., table entry) could 0x8b NOT_FOUND not be found. 0x8c UNREPORTABLE_ATTRIBUTE Periodic reports cannot be issued for this attribute. The data type given for an attribute is incorrect. 0x8d INVALID_DATA_TYPE Command not carried out. INVALID_SELECTOR . The selector for an attribute is incorrect 0x8e A request has been made to read an attribute that the 0x8f WRITE_ONLY requestor is not authorized to read. No action taken. Setting the requested values would put the device in 0x90 INCONSISTENT_STARTUP_STATE an inconsistent state on startup. No action taken. An attempt has been made to write an attribute that is present but is defined using an out of - band - DEFINED_OUT_OF_BAND 0x91 method and not over the air. The supplied values (e.g., contents of table cells) are INCONSISTENT 0x92 inconsistent. The credentials presented by the device sending the ACTI 0x93 ON_DENIED command are not sufficient to perform this action. The exchange was aborted due to excessive response TIMEOUT 0x94 time. Failed case when a client or a server decides to abort ABORT 0x95 the upgrade process. Invalid OTA upgrade image (ex. failed signature 0x96 INVALID_IMAGE validation or signer information check or CRC check). WAIT_FOR_DATA Server does not have data block available yet. 0x97 No OTA upgrade image available for a particular NO_IMAGE_AVAILABLE 0x98 client. The client still requires more OTA upgrade image 0x99 REQUIRE_MORE_IMAGE 11 CCB 2092 2016 51  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 2 -

96 Chapter 2 ZigBee Cluster Library Specification ZigBee Document – 075123 Foundation Description Value Enumerated Status files in order to successfully upgrade. o- The command has been received and is being pr NOTIFICATION_PENDING 0x9a cessed. operation was unsuccessful due to a hardware An HARDWARE_FAILURE 0xc0 failure. An operation was unsuccessful due to a software 0xc1 SOFTWARE_FAILURE failure. An error occurred during calibration. 0xc2 CALIBRATION_ERROR 12 0xc3 The cluster is not supported UNSUPPORTED_CLUSTER 12 CCB 1485 and 1319 Copyright , The ZigBee Alliance. All rights reserved. 2 - 52 Page  2007 - 2016

97 ZigBee Cluster Library Specification Chapter 3 075123 General ZigBee Document – NERAL GE CHAPTER 3 The ZigBee Cluster Library is made of individual chapters such as this one. See Document Control in the ZigBee Cluster Library for a list of all chapters and documents . References between chapters are made using is the sub to external - a X.Y Y notation where X is the chapter and section within that chapter. References documents are contained in Chapter 1 and are made using [ Rn ] notation. General Description 3.1 3.1.1 Introduction ntly general to be of use The clusters specified in this document are included here because they are sufficie Many of these clusters are utility clusters. across a wide range of application domains. Cluster List 3.1.2 3 3 Table 3 - 1 to Table The clusters defined in this document are listed in - . Table 3 - 1 . Device Configuration and Installation Clusters Description Cluster Name ID Attributes for determining basic information about a device, setting ion of location, and enabling a user device information such as descript 0x0000 Basic device. a- Attributes for determining more detailed information about a device’s Power C onfigur 0x0001 power source(s), and for configuring under/over voltage alarms. tion Device T Attributes fo m- r determining information about a device’s internal te emperature 0x0002 configuration perature, and for configuring under/over temperature alarms. Attributes and commands for putting a device into Identification mode Identify 0x0003 ( flashing a light) e.g., , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 1

98 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General . Typical Usage of Device Configuration and Installation Clusters 1 - 3 Figure . Groups and Scenes Clusters - 3 Table 2 Name Description ID Attributes and commands for allocatin g a device to one or more of a number of groups Groups 0x0004 of devices, where each group is addressable by a group address. Attributes and commands for setting up and recalling a number of scenes for a device. 0x0005 Scenes Each scene corresponds to a set of stored v alues of specified device attributes. 3 - 3 Table . On/Off and Level Control Clusters Name ID Description 0x0006 On/O ff Attributes and commands for switching devices between ‘On’ and ‘Off’ states. n/Off Switch O Attributes and commands for configuring on/off switching devices 0x0007 onfiguration C Attributes and commands for controlling a characteristic of devices that can be 0x0008 Level C ontrol set to a level between fully ‘On’ and fully ‘Off’.  3 - 2 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

99 ZigBee Cluster Library Specification Chapter 3 – General ZigBee Document 075123 . Typical Usage of On/Off and Level Control Clusters 2 - 3 Figure 3 Table - 4 . Alarms Cluster ID Description Name Attributes and commands for sending alarm Alarms notifications and configuring alarm fun c- 0x0009 tionality. Figure . Typical Usage of the Alarms Cluster 3 - 3 Table 3 - 5 . Other Clusters Description Name ID - Attributes and commands that provide an interface to a real e Tim 0x000a time clock. , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 3

100 Chapter 3 ZigBee Cluster Library Specification General ZigBee Document – 075123 n- Attributes and commands for exchanging location information and cha n- nel parameters among devices, and (optionally) reporting data to a ce Location RSSI 0x000b u- collects data from devices in the network and calc tralized device that lates their positions from the set of collected data. Attributes and commands that provide an interface to diagnostics of the 0x0b05 Diagnostics ZigBee stack hat provide an interface to control the polling of Attributes and commands t Poll Control 0x0020 sleeping end device Attributes and commands that provide an interface to the power profile of 0x001a Power Profile a device meter identification Meter Identification Attributes and commands that provide an interface t o 0x0b01 Figure 3 - 4 . Typical Usage of the Location Cluster with Centralized Device . Generic Clusters 6 Table 3 - ID Cluster Name Description An interface for reading the value of an analog measurement and accessing Analog Input 00c 0x0 various characteristics of that measurement. (basic) i- An interface for setting the value of an analog output (typically to the env Analog Output 0x000d nt) and accessing various characteristics of that value. (basic) ronme Analog Value An interface for setting an analog value, typically used as a control system 0x000e (basic) parameter, and accessing various characteristics of that value. An interface for reading the value of a binary measurement and accessing Binary Input 0x000f ) (basic various characteristics of that measurement.  3 - 4 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

101 ZigBee Cluster Library Specification Chapter 3 075123 General ZigBee Document – Cluster Name Description ID An interface for setting the value of a binary output (typically to the env Binary Output i- 0x0010 (basic) ronment) and accessing various characteristics of that value. An interface for setting a binary value, typically used as a control system Binary Value 0x0011 (basic) parameter, and accessing various characteristics of that value. An interface for rea ding the value of a multistate measurement and accessing Multistate Input 0x0012 various characteristics of that measurement. (basic) Multistate Ou t- An interface for setting the value of a multistate output (typically to the e n- 0x0013 put (basic) istics of that value. vironment) and accessing various character Multistate Value An interface for setting a multistate value, typically used as a control system 0x0014 (basic) parameter, and accessing various characteristics of that value. - 5 Figure 3 . Example Usage of the Input, Output and Value Clusters Basic 3.2 3.2.1 Overview Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classification, identification, etc. r physical device. It provides a supports an interface to the node o This cluster ttributes and commands for determining basic information to factory defaults. and resetting information such as location, , setting user , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 5

102 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General Where a multiple endpoints it will often be the case that many of these settings will node supports Note: apply to the whole node, that is node . In such cases they can be , they are the same for every endpoint on the implemented once for the node, and mapped to each endpoint. Re 3.2.1.1 vision History Rev Description Cluster Revision attribute 1 added; mandatory global ZCLVersion set to 0x02 3.2.1.2 Classification Code PICS Hierarchy Role Base B Utility 3.2.1.3 Cluster Identifiers Identifier Name 0x0000 Basic 3.2.2 Server 3.2.2.1 Dependencies For the alarms func e- tionality of this cluster to be operational, the Alarms cluster server SHALL be impl mented on the same endpoint. 3.2.2.2 Attributes The Basic cluster attributes are summarized in Table 3 - 7 . Table 3 - 7 . Attributes of the Basic Cluster Data Ident i- Name Default Access Range Type M/O fier Read Only 0x00 – 0xff uint8 0x0 2 M 0x0000 ZCLVersion O uint8 0x00 – 0xff Read Only 0x00 ApplicationVersion 0x0001 O 0x00 uint8 0x00 – 0xff Read O nly 0x0002 StackVersion uint8 0x00 – 0xff Read Only 0x00 O 0x0003 HWVersion 32 bytes 0 – string Read Only Empty string O 0x0004 ManufacturerName O Empty string string 0 – 32 bytes Read Only ModelIdentifier 0x0005 – 0 O string string Empty Read Only 16 bytes 0x0006 DateCode Page 3 - 6 Copyright  2007 - 2016 , The ZigBee Alliance. All rights reserved.

103 ZigBee Cluster Library Specification Chapter 3 075123 General – ZigBee Document Data Ident i- Name Type Range Access Default fier M/O 0xff M enum8 0x00 – Read Only 0x00 PowerSource 0x0007 0 O Read Write 16 bytes string Empty string – 0x0010 LocationDescription O 0x00 Read Write enum8 0x00 – 0xff 0x0011 PhysicalEnvironment 0x01 O 0x00 – 0x01 Read Write bool DeviceEnabled 0x0012 0x00 Read Write 000000xx O map8 AlarmMask 0x0013 map8 O 0x00 Read Write 000000xx 0x0014 DisableLocalConfig SWBuildID string Read Only Empty string O 0x4000 Up to 16 bytes 3.2.2.2.1 ZCLVe rsio n At t rib ute bute The attr i ZCLVersion represents a published set of fo undation items (in Chapter 2) , such as global . 2 be set to 0x0 SHALL this attribute For this version of the ZCL, descriptions. com mands and functional 3.2.2.2.2 App licati onVersi o n At t rib ute The ApplicationVersion attribute is 8 bits in length and specifies the version number of the application software contained in the device. The usage of this attribute is manufacturer dependent. bute StackVersio n At t ri 3.2.2.2.3 StackVersion The attribute is 8 bits in length and specifies the version number of the implementation of the ZigBee stack contained in the device. The usage of this attribute is manufacturer dependent. At t rib ute 3.2.2.2.4 HWVe rsion HWVersion The bits in length and specifies the version number of the hardware of the device. attribute is 8 The usage of this attribute is manufacturer dependent. 3.2.2.2.5 Manu fac ture rNam e At tri bu te The ManufacturerName attribute is a maximum of 32 bytes in length and specifies the name of the man u- facturer as a ZigBee character string. At trib ute 3.2.2.2.6 Mode lIden ti fier The attribute is a maximum of 32 bytes in length and specifies the model number (or other ModelIdentifier identifier) assigned by the manufacturer as a ZigBee character string. At t rib ut e e Date Co d 3.2.2.2.7 The DateCode attribute is a ZigBee character string with a maximum length of 16 bytes. The first 8 cha r- acters specify the date of manufacturer of the device in international date notation according to ISO 8601, i.e., YYYYMMDD, e.g., 20060814. T he final 8 characters MAY include country, factory, line, shift or other related information at the option of the manufacturer. The format of this information is manufacturer dependent. , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 7

104 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General PowerSo urce At t ri bute 3.2.2.2.8 PowerSource The nd specifies the source(s) of power available to the device. Bits attribute is 8 bits in length a b indicates whether the device b of this attribute represent the primary power source of the device and bit b 0 7 6 – has a secondary power source in the form of a battery backup. . 8 - 3 Table reserved values listed in - this attribute SHALL be set to one of the non of Bits b b – 0 6 Attribute PowerSource . Values of the 8 - 3 Table Description b0 - Attribute Value b6 0x00 Unknown 0x01 Mains (single phase) 0x02 Mains (3 phase) 0x03 Battery 0x04 DC source Emergency mains constantly powered 0x05 0x06 Emergency mains and transfer switch of this attribute SHALL be set to 1 if the device has a secondary power source in the form of a battery Bit b 7 backup. Otherwise, bit b SHALL be set to 0. 7 At t ri bu te Locat ion Descri pti on 3.2.2.2.9 The attribute is a maximum of 16 bytes in length and describes the physical location of LocationDescription the device as a ZigBee character string. This location desc ription MAY be added into the device during commissioning. 3.2.2.2.10 PhysicalEnvir onm ent At t ri bu te attribute is 8 bits in length and specifies the type of physical environment in which The PhysicalEnvironment one of the non - . All 9 3 Table reserved values listed in - the device will operate. This attribute SHALL be set to values are valid for endpoints supporting all profiles except when noted. 3 te Attribu Table PhysicalEnvironment - 9 . Values of the PhysicalEnvironment Description Attribute Value Unspecified environment 0x00 0x01 Mirror (ZSE Profile) Atrium 0x01 Bar 0x02 Courtyard 0x03 0x04 Bathroom 0x05 Bedroom Billiard Room 0x06 0x07 Utility Room  3 - 8 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

105 Chapter 3 ZigBee Cluster Library Specification ZigBee Document General – 075123 PhysicalEnvironment Description Attribute Value 0x08 Cellar 0x09 Storage Closet 0x0a Theater Office 0x0b 0x0c Deck 0x0d Den Dining Room 0x0e Electrical Room 0x0f Elevator 0x10 Entry 0x11 Family Room 0x12 Main Floor 0x13 0x14 Upstairs Downstairs 0x15 0x16 Basement/Lower Level 0x17 Gallery 0x18 Game Room 0x19 Garage 0x1a Gym Hallway 0x1b House 0x1c 0x1d Kitchen 0x1e Laundry Room Library 0x1f 0x20 Master Bedroom 0x21 Mud Room (small room for coats and boots) Nursery 0x22 Pantry 0x23 Office 0x24 Outside 0x25 0x26 Pool Porch 0x27 0x28 Sewing Room , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 9

106 Chapter ZigBee Cluster Library Specification 3 General ZigBee Document 075123 – PhysicalEnvironment Description Attribute Value 0x29 Sitting Room 0x2a Stairway 0x2b Yard Attic 0x2c 0x2d Hot Tub 0x2e Living Room Sauna 0x2f Shop/Workshop 0x30 Guest Bedroom 0x31 Guest Bath 0x32 Powder Room (1/2 bath) 0x33 Back Yard 0x34 0x35 Front Yard 0x36 Patio 0x37 Driveway Sun Room 0x38 Room 0x39 Living 0x3a Spa Whirlpool 0x3b 0x3c Shed 0x3d Equipment Storage 0x3e Hobby/Craft Room 0x3f Fountain Pond 0x40 0x41 Reception Room 0x42 Breakfast Room Nook 0x43 Garden 0x44 Balcony 0x45 0x46 Panic Room Terrace 0x47 Roof 0x48 Toilet 0x49  3 - 10 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

107 Chapter 3 ZigBee Cluster Library Specification ZigBee Document General – 075123 PhysicalEnvironment Description Attribute Value 0x4a Toilet Main 0x4b Outside Toilet 0x4c Shower room Study 0x4d 0x4e Front Garden 0x4f Back Garden Kettle 0x50 Television 0x51 Stove 0x52 Microwave 0x53 Toaster 0x54 Vacuum 0x55 0x56 Appliance Front Door 0x57 0x58 Back Door 0x59 Fridge Door 0x6 0 Medication Cabinet Door 0x61 Wardrobe Door 0x62 Front Cupboard Door Other Door 0x63 Waiting Room 0x64 Triage Room 0x65 0x66 Doctor’s Office Patient’s Private Room 0x67 0x68 Consultation Room 0x69 Nurse Station Ward 0x6a Corridor 0x6b 0x6c rating Theatre Ope 0x6d Dental Surgery Room 0x6e Medical Imaging Room Decontamination Room 0x6f Unknown environment 0xff , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 11

108 Chapter ZigBee Cluster Library Specification 3 ZigBee Document 075123 General – 3.2.2.2.11 DeviceEnable d At t ribu te The DeviceEnabled attribute is a Boolean and specifies whether the device is enabled or disabled. This - 3 Table reserved values listed in . 10 attrib ute SHALL be set to one of the non - 3 - 10 . Values of the DeviceEnable Table Attribute DeviceEnable Attribute Value Description 0x00 Disabled Enabled 0x01 'Disabled' means that the device does not send or respond to application level commands, other than co m- mands to read or write attributes. Values of attributes which depend on the operation of the application MAY be invalid, and any functionality triggered by writing to such attributes MAY be disabled. ZigBee networking functionality remains operational. If implemented, the identify cluster cannot be disabled, i.e., it remains functional regardless of this setting. 3.2.2.2.12 At t rib ute Alarm Mask attribute is 8 bits in length and specifies which of a number of general alarms MAY be Mask Alarm The 11 - 3 Table generated, as listed in . A ‘1’ in each bit position enables the associated alarm. Table - 11 . Values of the AlarmMask Attribute 3 Attribute Bit Number Alarm Code Alarm 0 0 General hardware fault 1 1 General software fault These alarms are provided as basic alarms that a device MAY use even if no other clusters with alarms are presen t on the device. Attribute 3.2.2.2.13 Disable Local Con fi g The DisableLocalConfig attribute allows a number of local device configuration functions to be disabled. 3 12 . Values of the DisableLocalConfig Attribute - Table At tribute Bit Number Description 0 = Reset (to factory defaults) enabled 0 1 = Reset (to factory defaults) disabled 0 = Device configuration enabled 1 1 = Device configuration disabled The intention of this attribute is to allow disabling of any local co nfiguration user interface, for example to prevent reset or binding buttons being activated by non - authorized persons in a public building. Bit 0 of the attribute disables any factory reset button (or equivalent) on the device. Bit 1 DisableLocalConfig for example, a bind button. — ables any device configuration button(s) (or equivalent) dis At t ri bu te SWB uild ID 3.2.2.2.14 SWBuildID The specific reference to the version of the software. - attribute represents a detailed, manufacturer  3 - 12 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

109 ZigBee Cluster Library Specification Chapter 3 075123 General ZigBee Document – Commands Received 3.2.2.3 3 Table e Basic cluster are listed in The command IDs for th . 13 - 13 . Received Command IDs for the Basic Cluster - Table 3 Command Identifier M/O Description O Reset to Factory Defaults 0x00 Defa ults Co mman d Reset to Fact or y 3.2.2.3.1 This command does not have a payload. E f f e c t o n R e c e i p t 3 . 2 . 2 . 3 . 1 . 1 On receipt of this command, the device resets all the attributes of all its clusters to their factory defaults. are not affected by this r other persistent data , groups, o bindings , Note that ZigBee networking functionality command. Commands Generated 3.2.2.4 No commands are generated by the server cluster. Client 3.2.3 The client has no dependencies or attributes. No cluster specific commands are received by the client. The cluster specific commands generated by the client cluster are those received by the server, as required by the application. 3.3 Power Configuration 3.3.1 Overview Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classification, tion, etc. identifica Attributes for determining detailed information about a device’s power source(s) and for configuring u n- der/over voltage alarms. 3.3.1.1 Revision History Rev Description ClusterRevision power lost alarm mains added to ; global mandatory attribute added 1 MainsAlarmMask ; CCB 1809 Classification 3.3.1.2 Hierarchy PICS Code Role Utility Base PC , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 13

110 Chapter ZigBee Cluster Library Specification 3 – General ZigBee Document 075123 3.3.1.3 Cluster Identifiers Name Identifier Power Configuration 0x000 1 Server 3.3.2 3.3.2.1 Dependencies Any endpoint that implements this server cluster SHALL also implement the Basic server cluster. For the alarm functionality described in this cluster to be operational, any endpoint that implements the ). Alarms clause - Power Configuration server cluster must also implement the Alarms server cluster (see sub Attributes 3.3.2.2 For convenience, the attributes defined in this specification are arranged into sets of related attributes; each b- set can contain up to 16 attributes. Attribute identifiers are encoded such that the most significant three ni bles specify th e attribute set and the least significant nibble specifies the attribute within the set. The currently Table defined attribute sets are listed in 3 - 14 . Attribute Sets 3 Table 14 - . Power Configuration Description Attribute Set Identifier 0x000 Mains Information Mains Settings 0x001 Battery Information 0x002 0x003 Battery Settings 0x004 Battery Source 2 Information 0x005 Battery Source 2 Settings Battery Source 3 Information 0x006 Battery Source 3 Settings 0x007 3.3.2.2.1 Mains I nf orma tio n At tri bu te Se t The Mains Information attribute set contains the attributes summarized in Table 3 - 15 . Table 3 - 15 . Attributes of the M ains Information Attribute Set Default Access Range Type M/O Name Identifier – O uint16 0x0000 0x0000 0xffff Read Only - MainsVoltage Read Only 0xff – 0x00 O - 0x0001 uint8 MainsFrequency 3 . 3 . 2 . 2 . 1 . 1 At t r i b u t e Ma i n s V o l t a g e MainsVoltage length and specifies the actual (measured) RMS voltage (or DC attribute is 16 bits in The voltage in the case of a DC supply) currently applied to the device, measured in units of 100mV.  3 - 14 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

111 ZigBee Cluster Library Specification Chapter 3 075123 General – ZigBee Document Ma i n s F r e q u e n c y At t r i b u t e 3 . 3 . 2 . 2 . 1 . 2 MainsFrequency attribute is 8 bits in length and represents the fr equency, in Hertz, of the mains as The determined by the device as follows: = 0.5 x measured frequency MainsFrequency MainsFrequency Where 2 Hz <= measured frequency <= 506 Hz, corresponding to a in the range 1 to 0xfd. ws is 2 Hz. The maximum resolution this format allo MainsFrequency apply. The following special values of 0x00 indicates a frequency that is too low to be measured. 0xfe indicates a frequency that is too high to be measured. 0xff indicates that the frequency could not be measured. In the case of a DC supply, this attribute SHALL also have the value zero. 3.3.2.2.2 Mains Se tt ings At t ribu te Se t Table . - 16 The Mains Settings attribute set contains the attributes summarized in 3 3 - 16 . Attributes of the Mains Settings Attribute Set Table Identifier Name Type Range Access Default M/ O 0x0010 MainsAlarmMask map8 0b 0000 00xx Read Write 0b 0000 0000 O 0xffff – 0x0000 uint16 O 0x0000 Read Write 0x0011 MainsVoltageMinThreshold MainsVolt ageMaxThreshold uint16 0x0000 – 0xffff Read Write 0xffff O 0x0012 0x0013 MainsVoltageDwellTripPoint uint16 0x0000 – 0xffff Read Write 0x0000 O see D - e- The alarm settings in this table require the Alarms cluster to be implemented on the same device pendencies. If the Alarms cluster is not present on the same device they MAY be omitted. 3 . 3 . 2 . 2 . 2 . 1 At t r i b u t e Ma i n s A l a r m Ma s k MainsAlarmMask attribute is 8 bits in length and specifies which mains alarms MAY be generated, as The Table listed in 3 - 17 . A ‘1’ in each bit position enables the alarm. Attribute MainsAlarmMask Table 3 - 17 . Values of the MainsAlarmMask Attribute Bit Number Alarm Rev 0 0 3.3.2.2.2.2 ) Mains Voltage too low ( 0 ) 1 Mains Voltage too high ( 3.3.2.2.2.3 2 Mains power supply lost/unavailable 1 13 (i.e., device is running on battery) 13 0553 ZHA 1.2 Errata - CCB 1809 13 , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 15

112 Chapter ZigBee Cluster Library Specification 3 – ZigBee Document 075123 General At t r i b u t e 3 . 3 . 2 . 2 . 2 . 2 Ma i n s V o l t a g e Mi n T h r e s h o l d MainsVoltageMinThreshold attrib ute is 16 bits in length and specifies the lower alarm threshold, The MainsVoltage attribute. The value of this attribute measured in units of 100mV, for the SHALL be less than MainsVoltageMaxThreshold. If the value of MainsVoltage drops below the threshold sp ecified by MainsVoltageMinThreshold, the device start a timer to expire after MainsVoltageDwellTripPoint seconds. If the value of this attribute i n- SHALL SHALL creases to greater than or equal to MainsVoltageMinThreshold before the timer expires, the device SHALL stop and reset the timer. If the timer expires, an alarm be generated. ) included in the generated alarm SHALL be 0x00. The Alarm Code field (see 3.11.2.4.1 If this attribute takes the value 0xffff then this alarm SHALL N OT be generated. Ma i n s V o l t a g e Ma x T h r e s h o l d At t r i b u t e 3 . 3 . 2 . 2 . 2 . 3 The MainsVoltageMaxThreshold attribute is 16 bits in length and specifies the upper alarm threshold, er measured in units of 100mV, for the MainsVoltage attribute. The value of this attribute SHALL be great than MainsVoltageMinThreshold. rises above the threshold specified by , the device MainsVoltageMaxThreshold If the value of MainsVoltage seconds. If the value of this attribute drops SHALL start a timer to expire after MainsVoltageDwellTripPoint MainsVoltageMaxThreshold before the timer expires, the device SHALL stop and than or equal to to lower reset the timer. If the timer expires, an alarm SHALL be generated. The Alarm Code field (see alarm SHALL be 0x01. ) included in the generated 3.11.2.4.1 If this attribute takes the value 0xffff then this alarm SHALL NOT be generated. 3 . 3 . 2 . 2 . 2 . 4 At t r i b u t e Ma i n s V o l t a g e D w e l l T r i p P o i n t The attribute is 16 bits in length and specifies the length of time, in seconds MainsVoltageDwellTripPoint value of MainsVoltage MAY exist beyond either of its thresholds before an alarm is generated. that the If this attribute takes the value 0xffff then the associated alarms SHALL NOT be generated. 3.3.2.2.3 Bat ter y I nf orma tio n At t rib ute Se t The Battery Information attribute s et contains the attributes summarized in Table 3 - 18 . Table 3 - 18 . Attributes of the Battery Information Attribute Set Default Identifier Name Type Range Access M/O – BatteryVolta O - Read Only 0x00 0xff 0x0020 ge uint8 Read Only 0 0xff – 0x00 0x0021 BatteryPercentageRemaining uint8 O Reportable Manufacturers SHOULD measure the battery voltage and capacity at a consistent moment (e.g., the moment of radio transmission (i.e., peak dema nd)) in order to avoid unnecessary fluctuation in reporting the attribute, which can confuse users and make them call into question the quality of the device. Manufacturers SHOULD employ a hysteresis algorithm appropriate for their battery type in order to smooth battery reading fluctuations and avoid sending multiple battery warning messages when crossing the voltage thresholds defined for warnings. At t r i b u t e 3 . 3 . 2 . 2 . 3 . 1 B a t t e r y V o l t a g e attribute is 8 bits in length and specifies the current actual The BatteryVoltage (measured) battery voltage, in units of 100mV.  3 - 16 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

113 ZigBee Cluster Library Specification Chapter 3 075123 General – ZigBee Document The value 0xff indicates an invalid or unknown reading. 3 . 3 . 2 . 2 . 3 . 2 B a t t e r y P e r c e n t a g e R e m a i n i n g At t r i b u t e Specifies the remaining battery life as a half integer percentage of the full battery capacity (e.g., 34.5%, 45%, 68.5%, 90%) with a range between zero and 100%, with 0x00 = 0%, 0x64 = 50%, and 0xC8 = 100%. This is particularly suited for devices with rech argeable batteries. an invalid or unknown reading. The value 0xff indicates or attribute reporting. This attribute SHALL be configurable f Bat ter y Se tti ngs Att ribu te Se t 3.3.2.2.4 3 - 19 Table . Attributes of the Battery Settings Attribute Set Id Name Type Range Access Default M/O string 0 – 16 bytes 0x0030 Read Wr ite Empty string O BatteryManufacturer 0x0031 BatterySize enum8 0x00 – 0xff Read Write 0xff O 0xffff 0x0032 uint16 0x0000 – BatteryAHrRating Read Write - O 0x0033 BatteryQuantity uint8 0x00 – 0xff Read Write - O 0x0034 BatteryRatedVoltage uint8 0x00 – 0xff Read Write - O 0x0035 BatteryAlarmMask map8 0b 0000 000x Read Write 0b 0000 0000 O 0xff – 0x00 uint8 O 0x0000 Read Write 0x0036 Ba tteryVoltageMinThreshold 0x0037 uint8 0x00 – 0xff BatteryVoltageThreshold1 Read*Write 0x00 O 0 BatteryVoltageThreshold2 uint8 0x00 – xff Read*Write 0x00 O 0x0038 0x0039 BatteryVoltageThreshold3 uint8 0x00 – 0xff Read*Write 0x00 O 0x003a BatteryPercentageMinThreshold uint8 0x00 – 0xff Read*Write 0x00 O – 0xff O 0x003b BatteryPercentageThreshold1 uint8 0x00 0x00 Read*Write 0x003c BatteryPerc entageThreshold2 uint8 0x00 – 0xff Read*Write 0x00 O 0x00 0x003d BatteryPercentageThreshold3 uint8 0x00 – 0xff Read*Write O Read 0x003e map32 0x00...x BatteryAlarmState 0x000...0 O 3 . 3 . 2 . 2 . 4 . 1 B a t t e r y Ma n u f a c t u r e r A t t r i b u t e The BatteryManufacturer attribute is a maximu m of 16 bytes in length and specifies the name of the battery manufacturer as a ZigBee character string. B a t t e r y S i z e At t r i b u t e 3 . 3 . 2 . 2 . 4 . 2 attribute is an enumeration which specifies the type of battery being used by the device. This BatterySize The attribute SHALL . 20 - 3 Table reserved values listed in - be set to one of the non , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 17

114 Chapter ZigBee Cluster Library Specification 3 – ZigBee Document General 075123 Attribute 3 - 20 . Values of the BatterySize Table Description Attribute Value 0x00 No battery 0x01 Built in Other 0x02 0x03 AA 0x04 AAA C 0x05 0x06 D CR2 (IEC: CR17355 / ANSI: 5046LC) 0x07 CR123A (IEC: CR17345 / ANSI: 5018LC) 0x08 0xff Unknown At t r i b u t e B a t t e r y A H r R a t i n g 3 . 3 . 2 . 2 . 4 . 3 attribute is 16 bits in length and specifies the Ampere e battery, BatteryAHrRating The hour rating of th - measured in units of 10mAHr. At t r i b u t e B a t t e r y Q u a n t i t y 3 . 3 . 2 . 2 . 4 . 4 BatteryQuantity The attribute is 8 bits in length and specifies the number of battery cells used to power the device. B a t t e r y R a t e d V o l t a g e A t t r i b u t e 3 . 3 . 2 . 2 . 4 . 5 BatteryRatedVoltage attribute is 8 b its in length and specifies the rated voltage of the battery being used The in the device, measured in units of 100mV. B a t t e r y A l a r m Ma s k 3 . 3 . 2 . 2 . 4 . 6 At t r i b u t e as listed in The attribut e specifies which battery alarms must be generated, BatteryAlarmMask Table 3 - 21 . A ‘1’ in each bit position enables the alarm. 3 BatteryAlarmMask . Values of the 21 - Table Attribute BatteryAlarmMask m- Attribute Bit Nu ber * Description w to continue operating the device’s radio (i.e., Battery voltage too lo 0 BatteryVoltageMinThreshold value has been reached) 1 Battery Alarm 1 (i.e., Battery Voltage Threshold 1 or Battery Percentage Threshold 1 value has been reached) o r Battery Percentage 2 Battery Alarm 2 (i.e., Battery Voltage Threshold 2 value has been reached) 2 Threshold or Battery Percentage 3 3 (i.e., Battery Voltage Threshold 3 Battery Alarm value has been reached) 3 Threshold  3 - 18 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

115 ZigBee Cluster Library Specification Chapter 3 075123 General – ZigBee Document which the alarms are Manufacturers are responsible for determining the capability to sense and levels at generated. See Section 10.3.2, References, for additional recommendations on measuring battery voltage. 3 . 3 . 2 . 2 . 4 . 7 B a t t e r y V o l t a g e Mi n T h r e s h o l d At t r i b u t e Specifies the low battery alarm threshold, measured in units of 100mV at which the device can no voltage lon ger operate or transmit via its radio (i.e., last gasp). If the value of BatteryVoltage drops below the threshold specified by BatteryVoltageMinThresh old , an a p- be generated and/or the corresponding bit SHALL propriate alarm be updated in the SHALL BatteryAlarmState attribute. In order to report to Power Configuration clients, servers that implement BatteryVoltageMinThreshold a t- tribute SHALL implement al arming via the Alarm Cluster, attribute reporting via the BatteryAlarmState attribute, or both. For servers that implement alarming via the Alarm Cluster, the appropriate alarm is specified in the Alarm - Table Code field (see 3.11.2.3.1 ) included in the generated alarm and SHALL be one of the values in 3 . 22 attribute and the BatteryAlarmMask The host determines which alarm code to populate based on the attribute reached. For example, when the BatteryVoltage attribute reaches the BatteryVoltageMinThreshold value specified by the BatteryVoltageMinThreshold attribute, an alarm with the Alarm Code Field Enume r- ation “0x10” SHALL be generated. attribute, the bit corresponding For servers that implement battery alarm reporting vi a the BatteryAlarmState BatteryAlarmState be set to TRUE. See the attribute details for more to the threshold level reached SHALL information. Table erations for Battery Alarms . Alarm Code Field Enum 22 - 3 Description m Enu BatteryVoltageMinThreshold or BatteryPercentageMinThreshold reached for Battery Source 1 0x10 BatteryVoltageThreshold1 or BatteryPercentageThreshold1 0x11 reached for Battery Source 1 0x12 BatteryVoltageThre shold2 or BatteryPercentageThreshold2 reached for Battery Source 1 0x13 BatteryVoltageThreshold3 or BatteryPercentageThreshold3 reached for Battery Source 1 0x20 BatteryVoltageMinThreshold or BatteryPercentageMinThreshold reached for Battery Source 2 0x BatteryPercentageThreshold1 reached for Battery Source 2 or 21 BatteryVoltageThreshold1 BatteryVoltageThreshold2 or BatteryPercentageThreshold2 reached Battery Source 2 0x22 rce 2 0x23 BatteryVoltageThreshold3 or BatteryPercentageThreshold3 reached Battery Sou 0x30 BatteryVoltageMinThreshold or BatteryPercentageMinThreshold reached for Battery Source 3 BatteryVoltageThreshold1 or BatteryPercentageThreshold1 reached for Battery Source 3 0x31 re ached Battery Source 3 BatteryPercentageThreshold2 0x32 BatteryVoltageThreshold2 or reached Battery Source 3 BatteryPercentageThreshold3 or BatteryVoltageThreshold3 0x33 , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 19

116 Chapter 3 ZigBee Cluster Library Specification – 075123 General ZigBee Document Description Enu m 14 0x3a Mains power supply lost/unavailable (i.e., device is running on battery) Alarm 0xff be generated SHALL NOT t r i b u t e s 3 . 3 . 2 . 2 . 4 . 8 B a t t e r y V o l t a g e T h r e s h o l d 1 - 3 At Specify the low voltage alarm thresholds, measured in units of 100mV, for the attribute. BatteryVoltage If the value of drops below the threshold specified by a BatteryVoltageThreshold , an a p- BatteryVoltage propriate alarm SHALL be generated and/o r the corresponding bit SHALL be updated in the BatteryAlarmState attribute. The BatteryVoltageThreshold1 - 3 attributes SHALL be ordered in ascending order such that the BatteryVoltage level specified to trigger:  BatteryVoltageThreshold3 is higher than th e level specified to trigger BatteryVoltageThreshold2  BatteryVoltageThreshold2 is higher than the level specified to trigger BatteryVoltageThreshold  BatteryVoltageThreshold1 is higher than the level specified to trigger BatteryVoltageMinThreshold The appro priate alarm is specified in the Alarm Code field (see 3.11.2.3.1 ) included in the generated alarm 3 . The host determines which alarm code to po pulate based on Table - 22 and SHALL be one of the values in attribute reached. 3 - BatteryVoltageThreshold1 attribute and the BatteryAlarmMask the If this attribute takes the value 0xff then this alarm SHALL NOT be generated. B a t t e r y P e r c e n t a g e M i n T h r e s h o l d At t r i b u t e 3 . 3 . 2 . 2 . 4 . 9 Specifies the low battery percentage alarm threshold, measured in percentage (i.e., zero to 100%), for the attribute (see sub - clause 3.3.2.2.3.2 ). BatteryPercentageRemaining BatteryPercentageRemaining If the value of drops below the threshold specified by a Batte ryPercentageThreshold , an appropriate alarm SHALL be generated. The appropriate alarm is specified in the Alarm Code field (see ) included in the generated alarm 3.11.2.3.1 and SHALL be the value in Table 3 - 22 that corresponds with this threshold being reached for a given battery source. The host determines which alarm code to populate based on the BatteryAlarmMask attribute. If this attribute takes the value 0xff then this alarm SHALL NOT be generated. 3 . 3 . 2 . 2 . 4 . 1 0 B a t t e r y P e r c e n t a g e T h r e s h o l d 1 At t r i b u t e s 3 - Specify the low battery percentage alarm thresholds, measured in percentage (i.e., zero to 100%), for the ) attribute (see sub - clause 3.3.2.2.3.2 BatteryPercentageRemaining . If the value of BatteryPercentageRemaining drops below the threshold specified by a BatteryPercentageThreshold , an appropriate alarm SHALL be generated. 3 BatteryPercentageThreshold1 attributes SHALL be ordered in ascending order such that the - The Batter yPercentageRemaining level specified to trigger:  BatteryPercentageThreshold3 is higher than the level specified to trigger BatteryPercentageThreshold2  BatteryPercentageThreshold2 is higher than the level specified to trigger BatteryPercentageThreshold eryPercentageThreshold1 is higher than the level specified to trigger Batt  BatteryPercentageMinThreshold 14 ZHA 1.2 Errata 0553 - 13 CCB 1809  3 - 20 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

117 ZigBee Cluster Library Specification Chapter 3 075123 General ZigBee Document – The appropriate alarm is specified in the Alarm Code field (see 3.11.2.3.1 ) included in the generated alarm . The host determines which alarm code to populate based on 22 - and S HALL be one of the values in Table 3 the BatteryAlarmMask attribute and the BatteryPercentageThreshold1 - 3 attribute reached. If this attribute takes the value 0xff then this alarm SHALL NOT be generated. At t r i b u t e 3 . 3 . 2 . 2 . 4 . 1 1 B a t t e r y A l a r m S t a t e e- Specifies the current state of the device's battery alarms. This attribute provides a persistent record of a d vice's battery alarm conditions as well as a mechanism for reporting changes to t hose conditions, including the elimination of battery alarm states (e.g., when a battery is replaced). If implemented, the server SHALL support attribute reporting for attribute. This provides BatteryAlarmState clients with a mechanism for reading the curr ent state in case they missed the initial attribute report and also reduces network and battery use due to repeated polling of this attribute when it has not changed. It also provides a way of notifying clients when battery alarm conditions no longer exist (e.g., when the batteries have been replaced). Table 3 - 23 . BatteryAlarmState Enumerations Bit Description 0 BatteryVoltageMinThreshold or BatteryPercentageMinThreshold reached for Battery Source 1 Battery VoltageThreshold1 or BatteryPercentageThreshold1 reached for Battery Source 1 1 or BatteryPercentageThreshold2 reached for Battery Source 1 2 BatteryVoltageThreshold2 BatteryVoltageThreshold3 3 reached for Battery Source 1 BatteryPercentageThreshold3 or BatteryPercentageMinThreshold 1 BatteryVoltageMinThreshold or reached for Battery Source 2 0 or BatteryVoltageThreshold1 BatteryPercentageThreshold1 reached for Battery Source 2 11 12 BatteryVoltageThreshold2 or BatteryPercentageThreshold2 reached Battery Source 2 13 BatteryVoltageThreshold3 or BatteryPercentageThreshold3 reached Battery Source 2 BatteryPercentageMinThreshold 20 BatteryVoltageMinThreshold or reached for Battery Source 3 21 or BatteryPercentageThreshold1 reached f or Battery Source 3 BatteryVoltageThreshold1 BatteryVoltageThreshold2 or BatteryPercentageThreshold2 reached Battery Source 3 22 23 BatteryVoltageThreshold3 or BatteryPercentageThreshold3 reached Battery Source 3 15 30 Mains power supply lost/unavailable (i.e., device is running o n battery) Manufacturers are responsible for determining the capability to sense and levels at which the alarms are for additional recommendations on measuring battery voltage. generated. See 3.3.2.2.3 15 0553 - 13 1809 CCB ZHA 1.2 Errata , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 21

118 Chapter ZigBee Cluster Library Specification 3 – ZigBee Document 075123 General 3.3.2.2.5 At t rib ute Se t Bat ter y I nf orma tio n 2 This attribute set is an exact replica of all the attributes, commands, and behaviors contained within the Battery Information Attribute Set and provides a host with the ability to represent battery information for a secondary battery bank or cell. Bat ter y Se tti ngs 2 At tri bu te Se t 3.3.2.2.6 This attribute set is an exact replica of all the attributes, commands, and behaviors contained within the dary Battery Settings Attribute Set and provides a host with the ability to represent battery settings for a secon battery bank or cell. 3.3.2.2.7 Bat ter y I nf orma tio n 3 At t rib ute Se t This attribute set is an exact replica of all the attributes, commands, and behaviors contained within the Battery Information Attribute Set and provides a host with the ability to represent ba ttery information for a tertiary battery bank or cell. 3.3.2.2.8 Bat ter y Se tti ngs 3 At tri bu te Se t This attribute set is an exact replica of all the attributes, commands, and behaviors contained within the bility to represent battery settings for a tertiary Battery Settings Attribute Set and provides a host with the a Commands Received battery bank or cell. 3.3.2.3 Received Commands No commands are received by the server. Commands Generated 3.3.2.4 The server generates no commands. 3.3.3 Client attributes. The client has no dependencies or cluster spec There are no cluster specific commands that are ific generated or received by the client Device Temperature Configuration 3.4 Overview 3.4.1 Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classification, tification, etc. iden Attributes for determining information about a device’s internal temperature, and for configuring under/over temperature alarms for temperatures that are outside the device's operating range.  3 - 22 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

119 ZigBee Cluster Library Specification Chapter 3 ZigBee Document General – 075123 3.4.1.1 Revision History Description Rev attribute added ClusterRevision atory global mand 1 3.4.1.2 Classification PICS Code Hierarchy Role Base Utility DTMP Identifiers 3.4.1.3 Cluster Identifier Name Device Temperature Configuration 2 0x000 Server 3.4.2 Dependencies 3.4.2.1 operational, any endpoint that implements the For the alarm functionality described in this cluster to be SHALL Device Temperature Configuration server cluster also implement the Alarms server cluster (see 3.11 ). Attributes 3.4.2.2 specification are arranged into sets of related attributes; each For convenience, the attributes defined in this set can contain up to 16 attributes. Attribute identifiers are encoded such that the most significant three ni b- bles specify the attribute set and the least significant nibble specifies the at tribute within the set. The currently defined attribute sets are listed in Table 3 - 24 . Table - 24 . Device Temperature Configuration Attribute Sets 3 Attribute Set Ide n- tifier Description Device Temperature Information 0x000 0x001 Device Temperature Settings 3.4.2.2.1 De vice Tem perat u re In forma ti on At t ribu te Se t Table The Device Temperature Information attribute set contains the attributes summarized in - 25 . 3 Table 3 - 25 . Device Temperature Information Attribute Set Id Name Type Range Access Def M/O Read Only 200 to +200 - int16 CurrentTemperature M - 0x0000 , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 23

120 Chapter ZigBee Cluster Library Specification 3 – ZigBee Document 075123 General Id Name Type Range Access Def M/O 200 to +200 0x0001 MinTempExperienced int16 - Read Only - O Read Only 200 to +200 - int16 O - 0x0002 M axTempExperienced 0x0000 O 0x0003 OverTempTotalDwell uint16 – 0xffff Read Only 0 C u r r e n t T e m p e r a t u r e 3 . 4 . 2 . 2 . 1 . 1 A t t r i b u t e The CurrentTemperature attribute is 16 bits in length and specifies the current internal temperature, in d e- es Celsius, of the device. This attribute SHALL be specified in the range – gre 200 to +200. The value 0xffff indicates an invalid reading. At t r i b u t e 3 . 4 . 2 . 2 . 1 . 2 Mi n T e m p E x p e r i e n c e d MinTempExperienced The emperature, in attribute is 16 bits in length and specifies the minimum internal t degrees Celsius, the device has experienced while powered. This attribute SHALL be specified in the range 200 to +200. – The value 0xffff indicates an invalid reading. 3 . 4 . 2 . 2 . 1 . 3 At t r i b u t e Ma x T e m p E x p e r i e n c e d in length and specifies the maximum internal temperature, in attribute is 16 bits MaxTempExperienced The degrees Celsius, the device has experienced while powered. This attribute SHALL be specified in the range 200 to +200. – The value 0xffff indicates an invalid reading. 3 . 4 . 2 . 2 . 1 . 4 A t t r i b u t e O v e r T e m p T o t a l D w e l l OverTempTotalDwell The attribute is 16 bits in length and specifies the length of time, in hours; the device HighTempThreshold attribute has spent above the temperature specified by the 2.2.3 , cumulative over 3.4.2. the lifet ime of the device. The value 0xffff indicates an invalid time. 3.4.2.2.2 De vice Tem perat u re Set tin gs At t rib ute Se t The Device Temperature Settings attribute set contains the attributes summarized in 3 - 26 . Table Table 3 - 26 . Device Temperature Settings Attribute Set Name Acc M/O Type Range Id Default map8 0x0010 O 0000 0000 0b 0000 00xx 0b DeviceTempAlarmMask RW O int16 200 to +200 0x0011 - - RW LowTempThreshold 0x0012 int16 - 200 to +200 - O HighTempThreshold RW 0x0013 O uint24 0x000000 – 0xffffff - RW LowTempDwellTripPoint O – 0xffffff uint24 0x000000 0x0014 - RW HighTempDwellTripPoint  3 - 24 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

121 ZigBee Cluster Library Specification Chapter 3 075123 ZigBee Document General – d- see Depen All attributes in this table require the Alarms cluster to be implemented on the same device - enci es. If the Alarms cluster is not present on the same device they MAY be omitted. 3 . 4 . 2 . 2 . 2 . 1 D e v i c e T e m p A l a r m Ma s k At t r i b u t e attribute is 8 bits in length and specifies which alarms MAY be generated, as The DeviceTempAlarmMask 3 Table listed in . A ‘1’ in each bit position enables the corresponding alarm. 27 - DeviceTempAlarmMask Table 3 - 27 . Values of the Attribute Alarm Attribute Bit Number Device Temperature too low 0 Device Temperature too hig h 1 3 . 4 . 2 . 2 . 2 . 2 L o w T e m p T h r e s h o l d A t t r i b u t e The LowTempThreshold attribute is 16 bits in length and specifies the lower alarm threshold, measured in attribute. The value of this attribute 200°C to 200°C), for the CurrentTemperature degrees Celsius (range - s than HighTempThreshold. SHALL be les CurrentTemperature drops below the threshold specified by LowTempThreshold , the device If the value of seconds. If the value of this attribute increases LowTempDwellTripPoint SHALL start a timer to expire after LowTempThreshold equal to to greater than or before the timer expires, the device SHALL stop and reset the timer. If the timer expires, an alarm SHALL be generated. The Alarm Code field (see 3.11.2.4.1 ) included in the generated alarm SHALL be 0x 00. If this attribute takes the value 0x8000 then this alarm SHALL NOT be generated. 3 . 4 . 2 . 2 . 2 . 3 H i g h T e m p T h r e s h o l d A t t r i b u t e The HighTempThreshold attribute is 16 bits in length and specifies the upper alarm threshold, measured in degrees Celsius (range - 200°C to 200 °C), for the CurrentTemperature attribute. The value of this attribute SHALL be greater than LowTempThreshold. HighTempThreshold rises above the threshold specified by , the device If the value of CurrentTemperature seconds. If the value of this attribute drops to SHALL start a timer to expire after HighT empDwellTripPoint HighTempThreshold lower than or equal to before the timer expires, the device SHALL stop and reset the timer. If the timer expires, an alarm SHALL be generated. The Alarm Code field (see 3.11.2.4.1 ) included in the generated alarm SHALL be 0x01. If this attribute takes the value 0x8000 then this alarm SHALL NOT be generated. 3 . 4 . 2 . 2 . 2 . 4 L o w T e m p D w e l l T r i p P o i n t At t r i b u t e The LowTempDwellTripPoint and specifies the length of time, in seconds, that attribute is 24 bits in length LowTempThreshold the value of CurrentTemperature MAY exist below before an alarm is generated. If this attribute takes the value 0xffffff then this alarm SHALL NOT be generated. At t r i b u t e 3 . 4 . 2 . 2 . 2 . 5 H i g h T e m p D w e l l T r i p P o i n t HighTempDwellTripPoint attribute is 24 bits in length and specifies the length of time, in seconds, that The CurrentTemperature exist above HighTempThreshold before an alarm is generated. MAY the value of If this attribute takes the value 0xfffff be generated. SHALL NOT f then this alarm , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 25

122 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General 3.4.2.3 Commands Received No commands are received by the server. 3.4.2.4 Commands Generated The server generates no commands. 3.4.3 Client mands that are There are no cluster specific com attributes. The client has no dependencies or cluster specific generated or received by the client . 3.5 Identify Overview 3.5.1 Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classification, identification, etc. cation mode (e.g., flashing a light), that indicates to Attributes and commands to put a device into an Identifi – an observer which of several devices it is, also to request any device that is identifying - e.g., an installer itself to respond to the initiator. Note that this cluster cannot be disabled, and rem DeviceEnable ains functional regardless of the setting of the attribute in the Basic cluster. 3.5.1.1 Revision History Description Rev 1 ClusterRevision attribute added global mandatory Classification 3.5.1.2 PICS Code Role Hierarchy I Base Utility 3.5.1.3 Cluster Identifiers Name Identifier Identify 0x0003 3.5.2 Server 3.5.2.1 Dependencies None  3 - 26 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

123 ZigBee Cluster Library Specification Chapter 3 075123 General – ZigBee Document Attributes 3.5.2.2 Table The server supports the attribute shown in - 28 . 3 Table 3 - 28 . Attributes of the Identify Server Cluster Range Type Name ntifier Ide M/O Default Access Read Write 0x0000 0xffff M 0x0000 – IdentifyTime uint16 0x0000 3.5.2.2.1 Iden tify Time At t ri bute attribute specifies the remaining length of time, in seconds, that the device will continue to IdentifyTime The identify itse lf. If this attribute is set to a value other than 0x0000 then the device SHALL enter its identification procedure, in order to indicate to an observer which of several devices it is. It is recommended that this procedure co n- a period of 0.5 seconds. The sists of flashing a light with attribute SHALL be decremented every IdentifyTime second. If this attribute reaches or is set to the value 0x0000 then the device SHALL terminate its identification procedure. 3.5.2.3 Commands Received The server side of the identify c luster is capable of receiving the commands listed in Table 3 - 29 . 3 Table - 29 . Received Command IDs for the Identify Cluster Command Identifier Description M/O Identify M 0x00 M Identify Query 0x01 O Trigger effect 0x40 3.5.2.3.1 Iden tif y Co mman d The identify command starts or stops the receiving device identifying itself. P a y l o a d F o r m a t 3 . 5 . 2 . 3 . 1 . 1 . 6 3 Figure The identify query response command payload SHALL be formatted as illustrated in - Figure Payload . Format of Identify Query Response Command 6 - 3 2 Octets uint16 Data Type Identify Time Field Name 3 . 5 . 2 . 3 . 1 . 2 E f f e c t o n R e c e i p t On receipt of this command, the device SHALL set the Ident ifyTime attribute to the value of the Identify 3.5.2.2.1 Time field. This then starts, continues, or stops the device's identification procedure as detailed in . , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 27

124 3 Chapter ZigBee Cluster Library Specification – 075123 ZigBee Document General 3.5.2.3.2 Iden tif y Quer y Co mmand The identify query command allows the sendi ng device to request the target or targets to respond if they are currently identifying themselves. This command has no payload. 3 . 5 . 2 . 3 . 2 . 1 E f f e c t o n R e c e i p t On receipt of this command, if the device is currently identifying itself then it SHALL generate an appr o- te Identify Query Response command, see 3.5.2.4.1 and unicast it to the requestor. If the device is not pria currently identifying itself it SHALL take no further action. 3.5.2.3.3 Trig ger E ffec t Co mmand It is ser, such as a certain light effect. command allows the support of feedback to the u Trigger Effect The used to allow an implementation to provide visual feedback to the user under certain circumstances such as a color light turning green when it has successfully connected to a network. The use of this command and the effects themselves are entirely up to the implementer to use whenever a visual feedback is useful but it is not the same as and does not replace the identify mechanism used during commissioning. Figure ated in 7 The payload of this command SHALL be formatted as illustr - 3 . Figure . Format of the Trigger Effect Command 7 - 3 1 1 Octets uint8 uint8 T Data ype Effect variant Effect identifier Field N ame 3 . 5 . 2 . 3 . 3 . 1 E f f e c t I d e n t i f i e r F i e l d Effec t Identifier field is 8 - bits in length and specifies the identify effect to use. This field SHALL contain The Table one of the nonreserved values listed in . 3 - 30 . Values of the Command Table 3 - 30 Effect Identifier Field of the Trigger Effect 16 Notes Effect Identifier Effect Field Value .g., Light is turned on/off once. Blink e 0x00 0x01 Breathe e .g., Light turned on/off over 1 second and repeated 15 times. Okay .g., Colored light tu e 0x02 rns green for 1 second; noncolored light flashes twice. Channel change 0x0b .g., Colored light turns orange for 8 seconds; noncolored light e switches to maximum brightness for 0.5s and then minimum brightness for 7.5s. rent effect sequence before terminating. e .g., if in Complete the cur Finish effect 0xfe the middle of a breathe effect (as above), first complete the current 1s breathe effect and then terminate the effect. Terminate the effect as soon as possible. 0xff Stop effect 16 Implementers SHOULD indicate during testing how they handle each effect.  3 - 28 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

125 ZigBee Cluster Library Specification Chapter 3 075123 ZigBee Document General – V a r i a n t F i E f f e c t 3 . 5 . 2 . 3 . 3 . 2 e l d T he effect v ariant - bits in length and is used to indicate which variant of the effect, indicated in the field is 8 field, SHOULD be triggered. If a device does not support the given variant, it SHALL use the effect identifier . default variant. This field SHA LL contain one of the non - reserved values listed in Table 3 - 31 Command Trigger Effect Field of the - Effect Variant Table 3 . Values of the 31 Description Effect Variant Field Value 0x 00 Default 3 . 5 . 2 . 3 . 3 . 3 E f f e c t o n R e c e i p t On receipt of this command, the device SHALL execute the trigger effect indicated in the Effect Identifier fields. If the field specifies a variant that is not supported on the device, it Effect Variant and Effect Variant LL execute the default variant. SHA Commands Generated 3.5.2.4 32 The server side of the identify cluster is capable of generating the commands listed in Table 3 - . Table 3 - 32 . Generated Command I Ds for the Identify Cluster Command Identifier Field M/O Description Value Identify Query Response 0x00 M Iden tif y Quer y Re sponse Com man d 3.5.2.4.1 The identify query response command is generated in response to receiving an Identify Query command, see 3.5.2.3.2 , in the case that the device is currently identifying itself. P a y l o a d F o r m a t 3 . 5 . 2 . 4 . 1 . 1 . - The identify query response command payload SHALL be formatted as illustrated in Figure 3 8 - 3 Figure . Format of Identify Query Response Command Payload 8 2 Octets uint16 Data Type Timeout Field Name 3 . 5 . 2 . 4 . 1 . 2 T i m e o u t F i e l d attribute, and specifies the length of time, in The Timeout field contains the current value of the IdentifyTime s econds, that the device will continue to identify itself. E f f e c t o n R e c e i p t 3 . 5 . 2 . 4 . 1 . 3 On receipt of this command, the device is informed of a device in the network which is currently identifying itself. This information MAY be particularly beneficial in situations w here there is no commissioning tool. Note that there MAY be multiple responses. , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 29

126 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General Client 3.5.3 The client has no cluster specific attributes. The client generates the cluster specific commands detailed in 3.5.2.3 uired by the application. The client receives the cluster specific response commands detailed in , as req 3.5.2.4 . Groups 3.6 3.6.1 Overview , classification, Please see Chapter 2 for a general cluster overview defining cluster architecture, revision identification, etc. The ZigBee specification provides the capability for group addressing. That is, any endpoint on any device MAY be assigned to one or more groups, each labeled with a 16 0xfff7), which acts - – bit identifier (0x0001 all intents and purposes like a network address. Once a group is established, frames, sent using the for DATA.request primitive and having a DstAddrMode of 0x01, denoting group addressing, will be APSDE - delivered to every endpoint assigned to the group addres s named in the DstAddr parameter of the outgoing DATA.request primitive on every device in the network for which there are such endpoints. - APSDE Management of group membership on each device and endpoint is implemented by the APS, but the air mess - the - over ages that allow for remote management and commissioning of groups are defined here in the cluster library on the theory that, while the basic group addressing facilities are integral to the operation of the stack, not every device will need or want to impl ement this management cluster. Furthermore, the placement of the management commands here allows developers of proprietary profiles to avoid impl e- menting the library cluster but still exploit group addressing. Commands are defined here for discovering the group membership of a device, adding a group, removing a group and removing all groups. Finally, the group cluster allows application entities to store a name string for each group to which they are assigned and to report that name string in response to a client request. Note that configuration of group addresses for outgoing commands is achieved using the APS binding mechanisms, and is not part of this cluster. leeping end which macRxOnWhenIdle = TRUE, s As Groupcasts are made on a broadcast to all devices for devices will not be able to benefit from the features of the Groups and Scenes server Cluster. For example, a door lock which would typically be a sleeping end device would not be able to receive the datagrams required to commission a scene or change f or example, to a night scene. It is therefore not Mandatory but only optional to support the Groups and Scenes Server cluster if the device is a Sleeping end device (even when listed as Mandatory). 3.6.1.1 Revision History Description Rev 1 attribute added 1745 2100 ; CCB global mandatory Clust erRevision 3.6.1.2 Classification Hierarchy PICS Code Role Base G Utility  3 - 30 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

127 ZigBee Cluster Library Specification Chapter 3 075123 General ZigBee Document – Identifiers Cluster 3.6.1.3 Identifier Name Groups 0x0004 3.6.1.4 Securit y In order to ensure that only authorized devices are able to set up groups (particularly if appl ication link keys are to be used) the following approach SHOULD be employed. The security Permissions Configuration Table (see [Z1]) provides a mechanism by which certain commands can be restricted to specified authorized ia the Groups cluster SHOULD use the ApplicationSettings permissions devices. Configuration of groups v entry of this table to specify from which devices group configuration commands MAY be received, and whether a link key is required. 3.6.2 Server Each ZigBee device that implements this cluster MAY be thought of as a group management server in the sense that it responds to information requests and configuration commands regarding the contents of its group table. must be addressed Note that, since these commands are simply data frames sent using the APSDE_SAP, they with respect to device and endpoint. In particular the destination device and endpoint of a group management command must be unambiguous at the time of the issuance of the primitive either because: 1. DstAddr and DstEndpoint parameters of the primitive. They are explicitly spelled out in the be derived from the binding table in the APS of the MAY They are not explicitly spelled out but 2. sending device. 3. dpoint Broadcast addressing is being employed, either with respect to the device address or the en identifier. 4. Group addressing is being employed. On receipt of a group cluster command, the APS will, at least conceptually, deliver the frame to each de s- tination endpoint spelled out in the addressing portion of the APS header and, again conceptuall y speaking, the application entity resident at that endpoint will process the command and respond as necessary. From an implementation standpoint, of course, this MAY be done in a more economical way that does not involve g, e.g., by providing a hook in the APS whereby group cluster commands duplication and separate processin could be delivered to a special application entity without duplication. 3.6.2.1 Dependencies For correct operation of the 'Add group if identifying' command, any endpoint that implements the Gr oups server cluster SHALL also implement the Identify server cluster. 3.6.2.2 Attributes The server supports the attribute shown in Table - 33 . 3 Table - 33 . Attributes of the Groups Server Clu ster 3 Name Type Range Access Default M/O Identifier Read Only 000000 0 x map8 M - NameSupport 0x0000 , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 31

128 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General At t r ibu te NameSu ppo rt 3.6.2.2.1 NameSupport The most significant bit of the attribute indicates whether or not group names are supported. A value of 1 indicates that they are supported, and a value of 0 indicates that they are not supported. 3.6.2.2.2 Grou p Na mes Group names are between 0 and 16 characters long. Support of group names is optional, and is indicated by attribute. Group names, if supported, must be NameSupport the stored in a separate data structure managed by the application in which the entries correspond to group table entries. Commands Received 3.6.2.3 The groups cluster is concerned with management of the group table on a device. In practice, the group table m- is manage d by the APS and the table itself is available to the next higher layer as an AIB attribute. A co o- mand set is defined here and the implementation details of that command set in terms of the facilities pr e cluster library itself. vided by the APS is left up to the implementer of th 3 - 34 . Table The server side of the groups cluster is capable of receiving the commands listed in . Received Command IDs for the Groups Cluster 34 - 3 Table Comm and Identifier Field Value M/O Description Add group M 0x00 0x01 View group M 0x02 Get group membership M 0x03 Remove group M 0x04 M Remove all groups M 0x05 Add group if identifying 3.6.2.3.1 Generic Usa ge N o tes Add Group command frames via the groupcast or broadcast move Group Re , or On receipt of the View Group , transmission service, no response SHALL be given. 3.6.2.3.2 Ad d Gro up Co mm and The Add Group command allows the sending device to add group membership in a particular group for one iving device. or more endpoints on the rece P a y l o a d F o r m a t 3 . 6 . 2 . 3 . 2 . 1 Figure The Add Group command payload SHALL be formatted as illustrated in . 9 - 3  3 - 32 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

129 ZigBee Cluster Library Specification Chapter 3 075123 ZigBee Document General – . Format of the Add Group Command Payload 9 - Figure 3 Variable 2 Octets uint16 string Dat a Type Group Name Group ID Field Name 3 . 6 . 2 . 3 . 2 . 2 E f f e c t o n R e c e i p t On receipt of this command, the device SHALL (if possible) add the Group ID and Group Name to its Group SHALL Ex be ignored cept for the restrictions Table. I f Group Name is not supported, the Group Name field . , the device SHALL then generate an appropriate Add Group Response command ind listed in 3.6.2.3.1 i- cating success or failure. See 3.6.2.4.1 . View Group Com m and 3.6.2.3.3 The view group command allows the sending device to request that the receiving entity or entities respond with a view group response command containing the application name string for a particular group. 3 . 6 . 2 . 3 . 3 . 1 P a y l o a d F o r m a t The View Group command payload SHALL : 10 - 3 Figure be formatted as illustrated in . Format of the View Group Command Payload 3 - 10 Figure 2 Octets uint16 Data Type Group ID Field Name E f f e c t o n R e c e i p t 3 . 6 . 2 . 3 . 3 . 2 Except for the r estrictions listed in 3.6.2.3.1 , the device, on receipt of this command, SHALL generate an . appropriate View Group Response command 3.6.2.4.2 3.6.2.3.4 Get Gr oup Mem be rship Co mman d membership command allows the sending device to inquire about the group membership of the The get group receiving device and endpoint in a number of ways. P a y l o a d F o r m a t 3 . 6 . 2 . 3 . 4 . 1 Figure The get group membership command payload SHALL be formatted as illustrated in 3 - 11 . 3 11 - Figure . Format of Get Group Membership Command Payload 1 Variable Octets - bit integers List of 16 uint8 Data Type Group count Group list Field Name E f f e c t o n R e c e i p t 3 . 6 . 2 . 3 . 4 . 2 get group membership command, each receiving entity SHALL respond with group On receipt of the : follows as membership information using the get group membership response frame , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 33

130 Chapter 3 ZigBee Cluster Library Specification – 075123 General ZigBee Document the the command frame has a value of 0 indicating that the group list field is empty, If the group count field of entity SHALL respond with all group identifiers of which the entity is a member. If t he group list field of the command frame contains at least one group of which th e entity is a member , the . entity SHALL respond with each entity group identifier that match a group in the group list field does not - zero, and the group list field of the command frame If the group count is non con tain any group of , the entity SHALL only respond if the command is unicast. The response member which the entity is a 17 SHALL return a group count of zero. Remo ve G rou p Co mmand 3.6.2.3.5 er to request that the receiving entity or entities remove their The remove group command allows the send membership, if any, in a particular group. Note that if a group is removed the scenes associated with that group SHOULD be removed. 3 . 6 . 2 . 3 . 5 . 1 P a y l o a d F o r m a t rmatted as illustrated in . 12 - 3 Figure The Remove Group command payload SHALL be fo . Format of the Remove Group Command Payload 12 - 3 Figure 2 Octets uint16 Data Type Group ID Field Name 3 . 6 . 2 . 3 . 5 . 2 E f f e c t o n R e c e i p t ommand, the device SHALL (if possible) remove the Group ID and Group Name from its On receipt of this c , the device SHALL then generate an appropriate Group Table. Except for the restrictions listed in 3.6.2.3.1 . 3.6.2.4.4 ting success or failure. See Remove Group Response command indica 3.6.2.3.6 Remo ve Al l G rou p s Com mand The remove all groups command allows the sending device to direct the receiving entity or entities to remove all group associations. ving all groups necessitates the removal of all associated scenes as well. (Note: scenes not Note that remo associated with a group need not be removed). 3 . 6 . 2 . 3 . 6 . 1 P a y l o a d F o r m a t The Remove All Groups command has no payload. E f f e c t o n R e c e i p t 3 . 6 . 2 . 3 . 6 . 2 SHALL remove all groups on this endpoint from its Group Table. On receipt of this command, the device 3.6.2.3.7 Ad d Gro up I f I den tif yi ng Co mman d The add group if identifying command allows the sending device to add group membership in a particular , on condition that it is identifying itself. Identifying group for one or more endpoints on the receiving device ). 3.5 functionality is controlled using the identify cluster, (see ommissioning This command might be used to assist configuring group membership in the absence of a c tool. P a y l o a d F o r m a t 3 . 6 . 2 . 3 . 7 . 1 3 The Add Group If Identifying command payload SHALL be formatted as illustrated in - 13 . Figure 17 CCB 2100  3 - 34 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

131 ZigBee Cluster Library Specification Chapter 3 075123 ZigBee Document General – Payload . Add Group If Identifying Command 13 Figure 3 - 2 Variable Octets uint16 string Data Type Group Name Group ID Field Name E f f e c t o n R e c e i p t 3 . 6 . 2 . 3 . 7 . 2 On receipt of this command, the device SHALL first check whether it is currently identifying itself. If so then nd Group Name to its Group Table. If the device it not the device SHALL (if possible) add the Group ID a currently identifying itself then no action SHALL be taken. No response is defined as this command is EXPECTED to be multicast or broadcast. Commands Generated 3.6.2.4 The commands generated by the server si , are responses to the 35 - 3 Table de of the group cluster, as listed in clause 3.6.2.3 . - received commands listed in sub . Generated Command IDs f 3 - 35 or the Groups Cluster Table Command Identifier Field Value Description M/O 0x00 Add group response M View group response M 0x01 0x02 Get group membership response M Remove group response 0x03 M Note: There is no need for a response to the Remove all Groups command, as, at an application level, this command always succeeds. 3.6.2.4.1 Ad d Gro up Resp o nse Co mman d The add group response is sent by the groups cluster server in response to an add group command. P a y l o a d F o r m a t 3 . 6 . 2 . 4 . 1 . 1 Figure formatted as illustrated in The Add Group Response command payload SHALL be . 14 - 3 , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 35

132 3 Chapter ZigBee Cluster Library Specification General – 075123 ZigBee Document Figure 3 - 14 . Format of the Add Group Response Command Payload 1 2 Octets uint16 enum8 Data Type Status Group ID Field Name 3 . 6 . 2 . 4 . 1 . 2 W h e n G e n e r a t e d This command is generated in response to a received Add Group command . The Status field is set to SUCCESS, DUPLICATE_EXISTS, or INSUFFICIENT_SPACE as appropriate. The Group ID field is set to the Group ID field of the received Add Group command. V 3.6.2.4.2 iew Group Respo nse Co mman d The view group response command is sent by the groups cluster server in response to a view group command. P a y l o a d F o r m a t 3 . 6 . 2 . 4 . 2 . 1 Figure The View Group Response command payload SHALL be formatted as illustrated in 3 . - 15 . Format of the View Group Response Command Payload 15 - 3 Figure 2 1 Variable Octets string uint16 enum8 Data Type Group Name Group ID Status Field Name W h e n G e n e r a t e d 3 . 6 . 2 . 4 . 2 . 2 . The Status field is set to sponse to a received View Group command This command is generated in re SUCCESS or NOT_FOUND as appropriate. The Group ID field is set to the Group ID field of the received View Group command. If the status is SUCCESS, and group names are supported, the Group Name field is set to the Group Name associated with that Group ID in the Group Table; otherwise it is set to the null (empty) string, i.e., a single octet of value 0. 3.6.2.4.3 Get Gr oup Mem be rship Resp onse C omman d The get group membership response command is sent by the groups cluster server in response to a get group membership command. 3 . 6 . 2 . 4 . 3 . 1 P a y l o a d F o r m a t 16 The payload of the get group membership response command is formatted as shown in Figure 3 - . Figure Payload . Format of the Get Group Membership Response Command 3 - 16 1 Variable 1 Octets List of 16 bit group ID uint8 uint8 - Data Type Group count Group list Capacity Field Name ave the following semantics: The fields of the get group membership response command h  3 - 36 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

133 ZigBee Cluster Library Specification Chapter 3 075123 General – ZigBee Document contain the remaining capacity of the group table of the device. The following The Capacity field SHALL values apply: 0 No further groups MAY be added. 0 < Capacity < 0xfe Capacity holds the number of groups that MAY be added MAY At least 1 further group 0xfe be added (exact number is unknown) It is unknown if any further groups MAY 0xff be added The Group count field SHALL contain the number of groups contained in the group list field. the identifiers either of all the groups in the group table (in the case contain SHALL The Group list field where the group list field of the received get group membership command was empty) or all the groups from the group list field of the received get group membership command which are i n the group table. If the total to be exceeded, then the Group ZigBee frame number of groups will cause the maximum payload length of a 18 list field shall contain only as many groups as will fit . 3 . 6 . 2 . 4 . 3 . 2 W h e n G e n e r a t e d 19 See Get Group Membership Comma . Effect on Receipt 3.6.2.3.4.2 nd Remo ve G rou p Response Com man d 3.6.2.4.4 The remove group response command is generated by an application entity in response to the receipt of a remove group command. 3 . 6 . 2 . 4 . 4 . 1 P a y l o a d F o r m a t The Remove Group Response command payload SHALL be formatted as illustrated in Figure 3 - 17 . Payload . Format of Remove Group Response Command 3 17 - Figure 2 1 Octets uint16 enum8 Data Type Group ID Status Field Name W h e n G e n e r a t e d 3 . 6 . 2 . 4 . 4 . 2 This command is generated in response to a received Remove Group command . The Status field is set to p ID field is set to the Group ID field of the received SUCCESS or NOT_FOUND as appropriate. The Grou Remove Group command. 3.6.3 Client e- The Client cluster has no cluster specific attributes. The client generates the cluster specific commands d . The client rece 3.6.2.3 3.6.2.4 tailed in . ives the cluster specific response commands detailed in Scenes 3.7 3.7.1 Overview Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classification, identification, etc. 18 CCB 1745 19 CCB 2100 , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 37

134 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General e- e scenes cluster provides attributes and commands for setting up and recalling scenes. Each scene corr Th sponds to a set of stored values of specified attributes for one or more clusters on the same end point as the scenes cluster. associated with a particular group ID. Scenes MAY also exist without a group, in In most cases scenes are which case the value 0x0000 replaces the group ID. Note that extra care is required in these cases to avoid a scene ID collision, and that commands related to scenes without a group MAY only be unicast, i.e., they MAY not be multicast or broadcast. 3.7.1.1 Revision History Rev Description ; CCB 1745 ClusterRevision global mandatory 1 attribute added Classification 3.7.1.2 PICS Code Role Hierarchy Primary Transaction Application S Type 1 Base (client to server) Identifiers 3.7.1.3 Cluster Name Identifier 0x0005 Scenes 3.7.2 Server 3.7.2.1 Dependencies Any endpoint that implements the Scenes server cluster SHALL also implement the Groups server cluster. 3.7.2.2 Attributes For convenience, the attributes defined in this s pecification are arranged into sets of related attributes; each set can contain up to 16 attributes. Attribute identifiers are encoded such that the most significant three ni b- bles specify the attribute set and the least significant nibble specifies the att ribute within the set. The currently . - 36 defined attribute sets are listed in Table 3 - . Scenes Attribute Sets 3 36 Table Description Attribute Set Identifier formation Scene Management In 0x000  3 - 38 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

135 ZigBee Cluster Library Specification Chapter 3 075123 General ZigBee Document – Scene Mana geme nt I nf orma tio n At t ribu te Se t 3.7.2.2.1 3 - 37 . Table The Scene Management Information attribute set contains the attributes summarized in 3 - 37 . Scene Management Inf ormation Attribute Set Table Type Range Access Name Default M/O Id uint8 0x0000 SceneCount M 0x00 – 0xff (see 3.7.2.3.2 ) Read Only 0x00 uint8 CurrentScene 0x00 – 0x0001 0xff (see 3.7.2.3.2) Read Only 0x00 M uint16 0x0002 CurrentGroup M 0x0000 – 0xfff7 Read Only 0x00 bool 0x00 Read Only 0x01 – 0x00 M 0x0003 SceneValid map8 Read Only 0x0004 NameSupport x0000000 - M EUI64 LastConfiguredBy - 0x0005 Read Only - O 3 . 7 . 2 . 2 . 1 . 1 S c e n e C o u n t At t r i b u t e SceneCount attribute specifies the number of scenes currently in the device's scene table. The C u r r e n t S c e n e 3 . 7 . 2 . 2 . 1 . 2 At t r i b u t e The CurrentScene attribute holds the Scene ID of the scene last invoked. C u r r e n t G r o u p 3 . 7 . 2 . 2 . 1 . 3 At t r i b u t e CurrentGroup attribute holds the Group ID of the scene last invoked, or 0x0000 if the scene last invoked The not associated with a group. is 3 . 7 . 2 . 2 . 1 . 4 S c e n e V a l i d At t r i b u t e attribute indicates whether the state of the device corresponds to that associated with the The SceneValid CurrentScene dicates attributes. TRUE indicates that these attributes are valid, FALSE in CurrentGroup and that they are not valid. Before a scene has been stored or recalled, this attribute is set to FALSE. After a successful Store Scene or Recall Scene command it is set to TRUE. If, after a scene is stored or recalled, the state of the device is fied, this attribute is set to FALSE. modi 3 . 7 . 2 . 2 . 1 . 5 N a m e S u p p o r t At t r i b u t e The most significant bit of the attribute indicates whether or not scene names are supported. A NameSupport not supported. value of 1 indicates that they are supported, and a value of 0 indicates that they are At t r i b u t e L a s t C o n f i g u r e d B y 3 . 7 . 2 . 2 . 1 . 6 LastConfiguredBy The attribute is 64 bits in length and specifies the IEEE address of the device that last configured the scene table. d, or that the address of the device The value 0xffffffffffffffff indicates that the device has not been configure that last configured the scenes cluster is not known. Scene Table 3.7.2.3 The scene table is used to store information for each scene capable of being invoked on a device. Each scene is defined for a particular group. , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 39

136 Chapter ZigBee Cluster Library Specification 3 – ZigBee Document General 075123 The fiel ds of each scene table entry consist of a number of sets. The base set consists of the first four fields of Table 3 - 38 . A set of extension fields can be added by each additional cluster implemented on a device. Table - 38 . Fields of a Scene Table Entry 3 Field Type Valid Range Description 0xfff7 – 0x0000 The group ID for which this scene applies, Scene group ID uint16 or 0x0000 if the scene is not associated with a group. uint 8 The identifier, unique within this group, 0x00 – 0xff Scene ID 3.7.2.3.2 ) (see which is used to identify this scene. – Scene name string 0 16 characters The name of the scene (optional) 0x0000 0xffff T he amount of time, in seconds, it will take – Scene transition time uint16 for the device to change from its current state to the requested scene. See the Scene Table Extensions subsections Variable Variable Extension field sets of individual clusters. Each extension field set holds a set of values of attributes for a cluster implemented on the device. The sum of all such sets defines a scene. TransitionTime100ms Together with the scene transition time uint8 0x00 – 0x09 element, this allows the transition time to be hs of a second. specified in tent 3.7.2.3.1 Scene Names Scene names are between 0 and 16 characters long. Support of scene names is optional, and is indicated by the NameSupport attribute. If scene names are not supported, any commands that write a scene name SHALL simply discard th e name, and any command that returns a scene names SHALL return the null string. Maximu m N umbe r of Sce nes 3.7.2.3.2 The number of scenes capable of being stored in the table is defined by the profile in which this cluster is of specification by the profile, is 16. used. The default maximum, in the absence 3.7.2.4 Commands Received . The received command IDs for the Scenes cluster are listed in Table 3 - 39 uster Table 3 - 39 . Received Command IDs for the Scenes Cl Command Identifier Description M/O Field Value 0x00 Add Scene M M 0x01 View Scene Remove Scene M 0x02 M Remove All Scenes 0x03 0x04 M Store Scene  3 - 40 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

137 ZigBee Cluster Library Specification Chapter 3 075123 ZigBee Document – General Command Identifier Description Field Value M/O Recall Scene M 0x05 0x06 Get Scene Membership M O Enhanced Add Scene 0x40 0x41 Enhanced View Sc ene O 0x42 Copy Scene O 3.7.2.4.1 Generic Usa ge N o tes Scene identifier 0x00, along with group identifier 0x0000, is reserved for the global scene used by the OnOff cluster. On receipt of the Add Scene , View Scene , nced Add , Remove All Scenes , Store Scene , Enha Remove Scene command frames via the groupcast or broadcast transmission or , Copy Scene Scene Enhanced View Scene service, no response SHALL be given. Scene Transition Time command, the Add Scene On receipt of the element of the scene table SHALL be updated wit field and the TransitionTime100ms element SHALL be set to Transition Time h the value of the zero. 3.7.2.4.2 Ad d Scene Comm and 3 . 7 . 2 . 4 . 2 . 1 P a y l o a d F o r m a t 3 The payload SHALL be formatted as illustrated in Figure - 18 . Figure 3 - 18 . Format of the Add Scene Command Payload Variable Variable 2 2 1 Octets Variable uint16 string uint8 uint16 Data Type (multiple types) Extension field sets, Transition time Scene ID Group ID Scene Name Field Name one per cluster The format of each extension field set is a 16 bit field carrying the cluster ID, followed by an 8 bit length field and the set of scene extension fields specified in the relevant cluster. The length field holds the length in octets of that extension fie ld set. Extension field sets = 1, length 1, {extension field set 1}}, { 2, length 2, {extension field set 2}} ...}. clusterId clusterId {{ The attributes included in the extension field set for each cluster are defined in the specification for that cluster in this document (the ZigBee Cluster Library). The field set consists of values for these attributes concatenated together, in the order given in the cluster specification, with no attribute identifiers or data type indicators. reception of this command SHALL allow for the possible future addition of other For forward compatibility, attributes to the trailing ends of the lists given in the cluster specifications (by ignoring them). Similarly, it ). 3.7.2.4.7.2 e trailing ends of these lists (see SHALL allow for one or more attributes to be omitted from th , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 41

138 Chapter 3 ZigBee Cluster Library Specification – ZigBee Document 075123 General It is not mandatory for a field set to be included in the command for every cluster on that endpoint that has a ted, including the case of no field sets at all. defined field set. Extension field sets MAY be omit E f f e c t o n R e c e i p t 3 . 7 . 2 . 4 . 2 . 2 On receipt of this command, the device SHALL (if possible) create an entry in the Scene Table with fields copied from the command payload. If there is already a scene in the table with the same Scene ID and Group ID, it SHALL overwrite it, (i.e., it SHALL first remove all information included in the original scene entry). e- Scene R Except for the restrictions in 3.7.2.4.1 , the device SHALL then generate an appropriate Add . 3.7.2.5.1 sponse command indicating success or failure. See View Scene Comm and 3.7.2.4.3 P a y l o a d F o r m a t 3 . 7 . 2 . 4 . 3 . 1 19 Figure The payload SHALL be formatted as illustrated in - . 3 19 - 3 Figure . Format of the View Scene Command Payload 2 1 Octets uint8 uint16 Data Type Scene ID Group ID Field Name E f f e c t o n R e c e i p t 3 . 7 . 2 . 4 . 3 . 2 , the device SHALL generate an appr On receipt of this command, except for the restrictions in 3.7.2.4.1 o- priate View Scene Response command. See 3.7.2.5.2 . 3.7.2.4.4 Remo ve Sce ne C o mmand 3 . 7 . 2 . 4 . 4 . 1 P a y l o a d F o r m a t . The Remove Scene command payload SHALL be formatted as illustrated in Figure 3 - 20 3 20 - Figure . Format of the Remove Scene Command Payload 2 1 Octets uint8 uint16 Data Type Group ID Scene ID Field Name 3 . 7 . 2 . 4 . 4 . 2 E f f e c t o n R e c e i p t On receipt of this command, the device SHAL L (if possible) remove from its Scene Table the entry with this Scene ID and group ID. If the command was addressed to a single device (not a group) then it SHALL . 3.7.2.5.3 generate an appropriate Remove Scene Response command indicating success or failure. See Remo ve Al l Scene s Com mand 3.7.2.4.5 P a y l o a d F o r m a t 3 . 7 . 2 . 4 . 5 . 1 The Remove All Scenes command payload SHALL be formatted as illustrated in . 21 - 3 Figure  3 - 42 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

139 ZigBee Cluster Library Specification Chapter 3 075123 General ZigBee Document – . Format of the Remove All Scenes Command Payload 21 - 3 Figure 2 Octets uint16 Data Type Group ID Field Name E f f e c t o n R e c e i p t 3 . 7 . 2 . 4 . 5 . 2 On receipt of this command, the device SHALL, if possible, remove from its Scene Table all entries with this Group ID. If the comm and was addressed to a single device (not to a group) it SHALL then generate an 3.7.2.5.4 appropriate Remove All Scenes Response command indicating success or failure. See . Store Sce ne C om mand 3.7.2.4.6 P a y l o a d F o r m a t 3 . 7 . 2 . 4 . 6 . 1 Store Scene command payload SHALL be formatted as illustrated in . 22 - 3 Figure The - 3 Figure . Format of the Store Scene Command Payload 22 2 1 Octets uint16 uint8 Data Type Scene ID oup ID Gr Field Name 3 . 7 . 2 . 4 . 6 . 2 E f f e c t o n R e c e i p t On receipt of this command, the device SHALL (if possible) add an entry to the Scene Table with the Scene ID and Group ID given in the command, and all extension field sets corresponding to the current state of ters on the device. other clus If an entry already exists with the same Scene ID and Group ID, as a result of a previous Add Scene co m- t- mand, the extension field sets are overwritten (i.e., completely replaced) with the current values of the a ion fields on clusters that are on the same endpoint , but the transition time field and the tributes that are extens scene name field are left unaltered. If no such entry exists, the transition time field SHALL be set to 0, and the scene name field SHALL be set to the null string. Note that, accordingly, if a scene to be stored requires a transition time field and/ or a scene name field, these must be set up by a prior Add Scene command, e.g., with no scene extension field sets. not a member of this group, the scene will not be added. If the Group ID field is not zero, and the device is If the command was addressed to a single device (not to a group) then it SHALL generate an appropriate . Store Scene Response command indicating success or failure. See 3.7.2.5.5 Recall Scene Com mand 3.7.2.4.7 P a y l o a d F o r m a t 3 . 7 . 2 . 4 . 7 . 1 23 - 3 Figure The Recall Scene command payload SHALL be formatted as illustrated in . , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 43

140 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General ommand Payload . Format of the Recall Scene C 23 - 3 Figure 2 1 Octets uint8 uint16 Data Type Group ID Scene ID Field Name E f f e c t o n R e c e i p t 3 . 7 . 2 . 4 . 7 . 2 On receipt of this command, the device SHALL (if possible) locate the entry in its Scene Table with the Group ID and Scene ID given in the command. For each other cluster on the device, it SHALL then retrieve any corresponding extension fields from the Scene Table and set the attributes and corresponding state of the cluster accordingly. x- If there is no extension field set for a cluster, the state of that clus ter SHALL remain unchanged. If an e tension field set omits the values of any trailing attributes, the values of these attributes SHALL remain unchanged. ter state to The scene transition time field of the entry indicates how long the transition takes from the old clus the new cluster state. It is recommended that, where possible (e.g., it is not possible for attributes with Boolean data type), a gradual transition SHOULD take place from the old to the new state over this time. this field is manufacturer dependent. However, the interpretation of This command does not result in a response command. 3.7.2.4.8 Get Scene Mem be rship Co mman d The Get Scene Membership command can be used to find an unused scene number within the group when no commissioning tool is in the networ k, or for a commissioning tool to get used scenes for a group on a single device or on all devices in the group. P a y l o a d F o r m a t 3 . 7 . 2 . 4 . 8 . 1 Figure . - 24 The Get Scene Membership command payload SHALL be formatted as illustrated in 3 24 . Format of Get Scene Membership Command Payload Figure 3 - 2 Octets uint16 Data Type Group ID Field Name 3 . 7 . 2 . 4 . 8 . 2 E f f e c t o n R e c e i p t ropriate Get On receipt of this command, the device SHALL if addressed to a single device generate an app Scene Membership Response command; otherwise it SHALL only generate an appropriate Get Scene Membership Response command if an entry within the Scene Table corresponds to the Group ID. See . 3.7.2.5.6 Enhance d Ad d Sc ene Co mman d 3.7.2.4.9 the Enhanced Add Scene command allows a scene to be added using a finer scene transition time The than Add Scene . command command, specified in The payload of this command SHALL be formatted in the same way as the ene Add Sc : difference cluster, with the following cenes the ZCL S Transition Time The field SHALL be measured in tenths of a second rather than in seconds.  3 - 44 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

141 ZigBee Cluster Library Specification Chapter 3 075123 General – ZigBee Document E f f e c t o n 3 . 7 . 2 . 4 . 9 . 1 R e c e i p t On receipt of this command, the device SHALL (if possible) create an entry in the scene table with fields Scene Identifier and copied from the command payload. If there is already a scene in the table with the same Group Identifie r , it SHALL overwrite it, (i.e., it SHALL first remove all information included in the original scene entry). The Transition Time (measured in tenths of a second) SHALL be separated into whole seconds for the Transition Time field, as field of the scene table entry and the new TransitionTime100ms standard ZCL specified in this specification. If the Enhanced Add Scene command was received via the unicast data service, the S cenes cluster server c Add Scene Response Enhanced SHALL then generate and transmit an ommand back to the originator. Otherwise, no response SHALL be given. 3.7.2.4.10 Enhance d View Scene Co mman d The Enhanced View Scene command allows a scene to be retrieved using a finer scene transition time than the View Scene command . The payload of this command SHALL be formatted in the same way as the View Scene command . 3 . 7 . 2 . 4 . 1 0 . 1 E f f e c t o n R e c e i p t On receipt of this command, the device SHALL generate an appropriate enhanced view scene response command. 3.7.2.4.11 Cop y Scene C om mand The Copy Scene command allows a device to efficiently copy scenes from one group/scene identifier pair to another group/scene identifier pair. 3 - 25 . The payload of this command SHALL be formatted as illustrated in Figure 25 - 3 Figure Command Copy Scene . Format of the 1 1 2 1 2 Octets uint16 uint8 uint8 uint8 uint16 Data Type Group identifier Scene identifier Group identifier r Scene identifie Mode Field Name to from from to 3 . 7 . 2 . 4 . 1 1 . 1 M o d e F i e l d - mode The field is 8 bits in length and contains information of how the scene copy is to proceed. This field SHALL be formatted as illustrated in Figure 3 - 26 . Figure 3 - 26 . Format of the Mode Field of the Copy Scene Command - Bits: 1 Bits: 0 7 Reserved Copy All Scenes The Copy All Scenes subfield is 1 - bit in length and indicates whether all scenes are to be copied. If this value Scene Identifier From Scene Identifier To fields SHALL be is set to 1, all scenes are to be copied and the and ignored. Otherwise this field is set to 0. G r o u p I d e n t i f i e r F r o m F i e l d 3 . 7 . 2 . 4 . 1 1 . 2 Group Identifier From field is 16 The - bits in length and specifies the identifier of the group from which the is to be copied. Together with the field, this field uniquely identifies the scene to Scene Identifier From scene copy from the scene table. , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 45

142 3 Chapter ZigBee Cluster Library Specification ZigBee Document 075123 General – S c e n e I d e n t i f i e r F r o m F i e ld 3 . 7 . 2 . 4 . 1 1 . 3 The Scene Identifier From field is 8 - bits in length and specifies the identifier of the scen e from which the scene is to be copied. Together with the field, this field uniquely identifies the scene to Group Identifier From copy from the scene table. 3 . 7 . 2 . 4 . 1 1 . 4 G r o u p I d e n t i f i e r T o F i e ld field is 16 Group Identifier To The ntifier of the group to which the scene is bits in length and specifies the ide - to be copied. Together with the field, this field uniquely identifies the scene to copy to the Scene Identifier To scene table. 3 . 7 . 2 . 4 . 1 1 . 5 S c e n e I d e n t i f i e r T o F i e l d The Scene Identifier To bits in length and speci field is 8 - fies the identifier of the scene to which the scene is to be copied. Together with the Identifier To field, this field uniquely identifies the scene to copy to the Group scene table. 3 . 7 . 2 . 4 . 1 1 . 6 E f f e c t o n R e c e i p t field is set to 1, the Copy All S ode - sub cenes On receipt of the Copy Scene command, if the field of the M Group Identifier cluster server SHALL copy all its available scenes with group identifier equal to the cenes S To Group Identifier field under the group identifier specified in the From cene identifiers field, leaving the s and Scene Identifier To fields are ignored. If a scene already Scene Identifier From the same. In this case, the exists under the same group/scene identifier pair, it SHALL be overwritten. If the Copy Scene command was received via the uni cast data service, the S cenes cluster server SHALL then Copy Scene Response generate and transmit a command back to the originator. Otherwise, no response SHALL be given. 3.7.2.5 Commands Generated Table 3 - 40 . The generated command IDs for the Scenes cluster are listed in 40 Table 3 - . Generated Command IDs for the Scenes Cluster Command Identifier Field Value Description M/O Add Scene Response M 0x00 0x01 View Scene Response M ene Response 0x02 Remove Sc M Remove All Scenes Response M 0x03 0x04 Store Scene Response M M 0x06 Get Scene Membership Response O 0x40 Enhanced Add Scene Response O Enhanced View Scene Response 0x41 O Copy Scene Response 0x42  3 - 46 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

143 ZigBee Cluster Library Specification Chapter 3 075123 ZigBee Document General – Ad d Scene Respo nse Co mman d 3.7.2.5.1 P a y l o a d F o r m a t 3 . 7 . 2 . 5 . 1 . 1 The Add Scene Response command payload SHALL be formatted as illustrated in 3 Figure - 27 . . Format of the Add Scene Response Command Payload Figure 3 - 27 1 1 2 Octets uint8 en um8 uint16 Data Type Scene ID Group ID Status Field Name W h e n G e n e r a t e d 3 . 7 . 2 . 5 . 1 . 2 . The Status field is set to This command is generated in response to a received Add Scene command 3.7.2.4.2 group is not present in the Group Table) as SUCCESS, INSUFFICIENT_SPACE or INVALID_FIELD (the appropriate. The Group ID and Scene ID fields are set to the corresponding fields of the received Add Scene command. View Scene Respo nse Co mman d 3.7.2.5.2 P a y l o a d F o r m a t 3 . 7 . 2 . 5 . 2 . 1 rmatted as illustrated in . 28 - 3 Figure The View Scene Response command payload SHALL be fo 3 Figure . Format of the View Scene Response Command Payload 28 - 1 0 / 2 2 1 0 / Variable 0 / Variable Octets enum8 uint16 uint8 uint1 6 string Variable Data (multiple types) Type Extension field sets, one Scene Name Scene ID Transition Status Group ID Field per cluster time Name The format of each extension field set is a 16 bit field carrying the cluster ID, followed by an 8 bit data length field and the set of scene extension fields specified in the relevant cluster. These fields are concatenated together in the order given in the cluster. Extension field sets = 2, length 2, {ex {{ clusterId 1, length 1, {extension field set 1}}, { clusterId tension field set 2}},}. W h e n G e n e r a t e d 3 . 7 . 2 . 5 . 2 . 2 3.7.2.4.3 This command is generated in response to a received View Scene command . The entry in the Scene Table with Scene ID and Group ID given in the received View Scene command is loca ted (if possible). The Status field is set to SUCCESS, NOT_FOUND (the scene is not present in the Scene Table) or INVALID_FIELD (the group is not present in the Group Table) as appropriate. The Group ID and Scene ID fields are set to the corresponding fiel ds in the received View Scene command. If the status is SUCCESS, the Transition time, Scene Name and Extension field fields are copied from the corresponding fields in the table entry, otherwise they are omitted. 3.7.2.5.3 Remo ve Sce ne Re sponse Com man d at P a y l o a d F o r m 3 . 7 . 2 . 5 . 3 . 1 . 29 - 3 Figure The Remove Scene Response command payload SHALL be formatted as illustrated in , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 47

144 Chapter ZigBee Cluster Library Specification 3 General – 075123 ZigBee Document Figure 3 - 29 . Format of Remove Scene Response Command Payload 2 1 1 Octets uint8 uint16 um8 en Data Type Status Group ID Scene ID Field Name W h e n G e n e r a t e d 3 . 7 . 2 . 5 . 3 . 2 . The Status field is 3.7.2.4.4 This command is generated in response to a received Remove Scene command the Scene Table) or INVALID_FIELD (the set to SUCCESS, NOT_FOUND (the scene is not present in group is not present in the Group Table) as appropriate. The Group ID and Scene ID fields are set to the corresponding fields of the received Remove Scene command. 3.7.2.5.4 Remo ve Al l Scene s Respo nse C om mand 3 . 7 . 2 . 5 . 4 . 1 P a y l o a d F o r m a t . Figure - 3 30 Th e Remove All Scenes Response command payload SHALL be formatted as illustrated in 30 3 Figure - . Format of the Remove All Scenes Response Command Payload 1 2 Octets enum8 uint16 Type Data Group ID Status Field Name W h e n G e n e r a t e d 3 . 7 . 2 . 5 . 4 . 2 3.7.2.4.5 This command is generated in response to a received Remove All Scenes command, see . The Status field is set to SUCCESS or INVALID_FIELD (the group is not present in the Group Table) as appropriate. The Group ID field is set to the corresponding field of the received Remove All Scenes command. 3.7.2.5.5 Store Sce ne Res p onse C omma nd 3 . 7 . 2 . 5 . 5 . 1 P a y l o a d F o r m a t The Store Scene Response command payload SHALL be formatted as illustrated in Figure 3 - 31 . 3 31 - Payload . Format of the Store Scene Response Command Figure 1 2 1 Octets uint16 uint8 enum8 Data Type Scene ID Group ID Status Field Name G e n e r a t e d W h e n 3 . 7 . 2 . 5 . 5 . 2 This command is generated in response to a received Store Scene command 3.7.2.4.6. The Status field is set to SUCCESS, INSUFFICIENT_SPACE or INVALID_FIELD (the group is not present in the Group Table) lds are set to the corresponding fields of the received Store as appropriate. The Group ID and Scene ID fie Scene command. Get Scene Mem be rship Resp onse C omman d 3.7.2.5.6 P a y l o a d F o r m a t 3 . 7 . 2 . 5 . 6 . 1 . 32 - 3 Figure The Get Scene Membership Response command payload SHALL be formatted as illustrated in  3 - 48 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

145 Chapter 3 ZigBee Cluster Library Specification 075123 General – ZigBee Document 3 - 32 . Format of the Get Scene Membership Response CommandPayload Figure Variable 1 2 1 0/1 Octets uint16 uint8 uint8 x N enum8 uint8 Data Type Scene list Capacity Group ID Scene count Status Field Name e fields of the get scene membership response command have the following semantics: Th The Capacity field SHALL contain the remaining capacity of the scene table of the device (for all groups). The following values apply: be added. 0 MAY No further scenes 0 < Capacity < 0xfe Capacity holds the number of scenes that MAY be added At least 1 further scene MAY be added (exact number is unknown) 0xfe It is unknown if any further scenes MAY be added 0xff (the group is not present in the Group contain SUCCESS or INVALID_FIELD SHALL The Status field Table) as appropriate. he Group ID field SHALL be set to the corresponding field of the T received Get Scene Membership co m- mand. If the status is not SUCCESS, then the Scene count and Scene list field are omitted, els e SHALL The Scene count field contain the number of scenes contained in the Scene list field. The Scene list field SHALL contain the identifiers of all the scenes in the scene table with the corresponding Group ID. If the total number of scenes associated with this Group ID will cause the maximum payload Scene s as will to be exceeded, then the scene shall contain only as many list field length of a Z igBee frame 20 . fit 3 . 7 . 2 . 5 . 6 . 2 W h e n G e n e r a t e d This command is generated in response to a received Get Scene Membership co mmand, 3.7.2.4.8 . 3.7.2.5.7 Enhance d Ad d Sc ene Resp onse Co mmand Scene Add Enhanced co m- The Enhanced Add Scene Response command allows a device to respond to an mand. command, The payload of this command SHALL be formatted in the sam e way as the Add Scene Response specified in the ZCL scenes cluster. Enhance d View Scene Resp onse Co mmand 3.7.2.5.8 The Enhanced View Scene command allows a device to respond to an Enhanced View Scene Response t was available in the ZCL. command using a finer scene transition time tha View Scene Response The payload of this command SHALL be formatted in the same way as the command, difference with the following : Transition Time enths of a second rather than in seconds. field SHALL be measured in t The 20 CCB 1745 , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 49

146 Chapter ZigBee Cluster Library Specification 3 – ZigBee Document 075123 General 3 . 7 . 2 . 5 . 8 . 1 W h e n G e n e r a t e d Enhanced View The Enhanced View Scene Response command is generated in response to a received Scene n- command. The entry in the scene table with scene identifier and group identifier given in the recei ved E field is set to SUCCESS, NOT_FOUND atus command is located (if possible). The hanced View Scene St (the scene is not present in the scene table) or INVALID_FIELD (the group is not present in the group table) e- ene identifier fields are set to the corresponding fields in the r as appropriate. The group identifier and sc Enhanced View Scene ceived command. and E ransition Time , Scene N ame T If the status is SUCCESS, the xtension Field fields are copied from the corresponding fields in the table entry, otherwi se they are omitted. (measured in tenths of a second) SHALL be calculated from the standard transition time The Transition Time TransitionTime100ms field of the scene table entry (measured in seconds) and the new field, as specified in this specification. 3.7.2.5.9 Cop y Scene Res p onse C omma nd Copy The Scene Response command allows a device to respond to a Copy Scene command. . 33 - The payload of this command SHALL be formatted as illustrated in Figure 3 . Format of the Command 3 Figure 33 Copy Scene Response - 1 2 1 Octets uint16 uint8 uint8 Data Type Status Group identifier from Scene identifier from Field Name 3 . 7 . 2 . 5 . 9 . 1 S t a t u s f i e l d 3 . 7 . 2 . 5 . 9 . 1 The field is 8 - bits in length and SHALL contain the st atus of the copy scene attempt. This field SHALL status be set to one of the non reserved values listed in Table 3 - 41 . - . Values of the Status Field of the Copy Scene Response Comma 41 - Table nd 3 21 Status Field Value Description Success SUCCESS Invalid scene specified INVALID_FIELD INSUFFICIENT_SPACE Insufficient space in the scene table 3 . 7 . 2 . 5 . 9 . 2 G r o u p I d e n t i f i e r F r o m F i e l d The ier of the group from which the bits in length and specifies the identif - field is 16 Group Identifier From field, Copy Scene command. Together with the Scene Identifier From scene was copied, as specified in the this field uniquely identifies the scene that was copied from the scene table. 3 . 7 . 2 . 5 . 9 . 3 S c e n e I d e n t i f i e r F r o m F i e l d - bits in length and specifies the identifier of the scene from which the field is 8 The Scene Id entifier From Copy Scene field, scene was copied, as specified in the Group Identifier From command. Together with the ed from the scene table. this field uniquely identifies the scene that was copi 21 for an enumerated list of status values. See Chapter 2  3 - 50 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

147 ZigBee Cluster Library Specification Chapter 3 075123 General ZigBee Document – 3 . 7 . 2 . 5 . 9 . 4 W h e n G e n e r a t e d Copy Scene Response The Copy Scene command is generated in response to a received command. If, during tatus S the copy, there is no more space in the scene table for the entire next scene to be copied, the field SHALL be set to INSUFFICIENT_SPACE and the scenes already copied SHALL be kept. If the group identifier from and scene identifier from fields do not specify a scene that exists in the scene table, the Status S field SHALL be set to INVALID_FIELD. Otherwise, if th field SHALL be tatus e copy was successful, the set to SUCCESS. The group identifier from and scene identifier from fields SHALL be set to the same values as in the corresponding fields of the received command. Copy Scene 3.7.3 Client cluster specific attributes. The client generates the cluster specific commands d e- The Client cluster has no 3.7.2.4 tailed in , as required by the application. The client receives the cluster specific response commands . 3.7.2.5 detailed in 3.8 On/Off 3.8.1 Overview Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classification, identification, etc. ’ states. Attributes and commands for switching devices between ‘On’ and ‘Off Revision History 3.8.1.1 Rev Description 1 global mandatory ClusterRevision attribute added ; CCB 1555 3.8.1.2 Classification PICS Code Primary Transaction Hierarchy Role Application Base OO Type 1 (client to server) Identifiers Cluster 3.8.1.3 Identifier PICS Code Name On/Off OO 0x0006 Server 3.8.2 Dependencies 3.8.2.1 None Effec t o n Recei pt of Le ve l C on trol C luster Co mman ds 3.8.2.1.1 OnTime attribute to be set to 0x00, the OnOff cluster command that causes the Level Control On receipt of a attribute SHALL be set to 0x0000. , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 51

148 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General a cluster command that causes the OnOff attribute to be set to 0x01, if the value of On receipt of Level Control OnTime attribute is equal to 0x0000, the device SHALL set the OffWaitTime the attribute to 0x0000. 3.8.2.2 Attributes Table . - 42 The server supports the attributes shown in 3 3 - 42 . Attributes of the On/Off Server Cluster Table Identifier Name Type Range Access Default M/O Read Only M f bool 0x00 – 0x01 0x0000 OnOf Reportable 0x00 Scene 0x4000 Gl obalScene Control bool – 0x01 Read Only 0x01 O 0x00 Read Write 0xffff – 0x0000 uint16 O 0x0000 0x4001 OnTime 0x4002 uint16 0x0000 – 0xffff Read Write OffWaitTime 0x0000 O OnOf f 3.8.2.2.1 At t ri bu te The OnOff attribute has the following values: 0 = Off, 1 = On. 3.8.2.2.2 GlobalSce neCo n tr ol At t rib ute In order to support the use case where the user gets back the last setting of the devices (e.g. level settings for lamps), a global scene is introduced which is stored when the devices are turned off and recalled w hen the devices are turned on. The global scene is defined as the scene that is stored with group identifier 0 and scene identifier 0. command storing the The GlobalSceneControl attribute is defined in order to prevent a second off - scene, and to prevent a second t- command destroying the current se on uation as a global off sit - devices all tings by going back to the global scene. The GlobalScene Control command which causes attribute SHALL be set to TRUE after the reception of a n the OnOff attribute to be se t to TRUE , such as a standard O m- command, a Move to level (with on/off) co a R ecall s cene mand, command or a On with recall global scene command (s ee Section 3.8.2.3.5 ) . 22 O afte o FALSE command set t . ff with effect The GlobalSceneControl attribute is r reception of a 22 CCB 1555  3 - 52 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

149 ZigBee Cluster Library Specification Chapter 3 General – ZigBee Document 075123 3 - 34 . These concepts are illustrated in Figure 23 - . State Behavior of Store and Recall Global Scene 3 Figure 34 e s e R t e h t i w f f O t c e f f a S r e g l o b o l s c e n e t O t h e r r e h t O o d n a m m o c s m m a n d s c = l G = l o r t n o C e n e c S l a b o l o r t G l o b a l S c e n e C o n e F e a l s u T r 1 n O e n e g R o l l l a c e b a l s c l l a c e r h t i w n O s l a b o l e e n c g o t e 1 : A n y c o m m a n d w h i c h c a u s e s t h e O n O f f a t t r i b u t e t o b e s e t t o 0 x 0 1 e x e p t O n w i t h r e c a l l g l o b a l s c e n e , e . g . O n o r T o g g l e . N At t ribu te 3.8.2.2.3 OnTime n- The OnTime attribute specifies the length of time (in 1/10ths second) that the “on” state SHALL be mai n with timed off tained before automatically transitioning to the “off” state when using the O command. If this set to 0x0000 or 0xffff, the device SHALL remain in its current state. attribute is 3.8.2.2.4 Off Wai tTi me At t ri bute attribute specifies the length of time (in 1/10ths second) that the “off” state SHALL be The OffWait Time dev guarded to prevent an on command turning the back to its “on” state (e.g., when leaving a room, the ice lights are turned off but an occupancy sensor detects the leaving person and attempts to turn the lights back on). If this attribute is set to 0x0000, the device ate. SHALL remain in its current st 3.8.2.3 Commands Received 43 On/Off cluster are listed in Table 3 - The command IDs for the . Table 3 - 43 . Command IDs for the On/Off Cluster Command Identifier Field Value M/O Description M Off 0x00 On M 0x01 M Toggle 0x02 0x40 O Off with effect O On with recall global scene 0x41 23 CCB 1555 , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 53

150 Chapter ZigBee Cluster Library Specification 3 – General ZigBee Document 075123 Command Identifier Field Value Description M/O On with timed off 0x42 O Off Co mman d 3.8.2.3.1 This command does not have a payload. 3 . 8 . 2 . 3 . 1 . 1 E f f e c t o n R e c e i p t On receipt of this command, a device SHALL enter its ‘Off’ state . This state is device dependent, but it is command, the recommended that it is used for power off or similar functions. On receipt of the Of f OnTime attribute SHALL be set to 0x0000. On C omma nd 3.8.2.3.2 This command does not have a payload. 3 . 8 . 2 . 3 . 2 . 1 E f f e c t o n R e c e i p t On re ceipt of this command, a device SHALL enter its ‘On’ state. This state is device dependent, but it is n recommended that it is used for power on or similar functions. On receipt of the O command, if the value of attribute to 0x0000. OffWaitTime device SHALL set the attribute is equal to 0x0000, the the OnTime Tog gle C omma nd 3.8.2.3.3 This command does not have a payload. 3 . 8 . 2 . 3 . 3 . 1 E f f e c t o n R e c e i p t On receipt of this command, if a device is in its ‘Off’ state it SHALL enter its ‘On’ state. Otherwise, if it is in OnOff command, if the value of the oggle T it SHALL enter its ‘Off’ state. On receipt of the its ‘On’ state attribute is equal to 0x00 and if the value of the attribute is equal to 0x0000, the device SHALL set OnTime attribute is equal to 0x01, the the attribute to 0x0000. If the value of th e OnOff OffWaitTime OnTime attribute SHALL be set to 0x0000. 3.8.2.3.4 Off W ith Ef fect Co mmand The command allows devices to be turned off using enhanced ways of fading. Off With Effect strated in Figure 3 - 35 . The payload of this command SHALL be formatted as illu 35 - Command Off With Effect 3 . Format of the Figure 1 1 Octets uint8 uint8 Data T ype Effect identifier Effect variant ame Field N E f f e c t I d e n t i f i e r F i e l d 3 . 8 . 2 . 3 . 4 . 1 The Effect Identifier field is 8 - bits in length and specifies the fading effect to use when switching the device - reserved values listed in Table 3 - 44 . off. This field SHALL contain one of the non 44 - 3 Command Off With Effect Field of the Effect Identifier . Values of the Table Effect Identifier Field Value Description Delayed All Off 0x00 Dying Light 0x01  3 - 54 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

151 ZigBee Cluster Library Specification Chapter 3 – 075123 General ZigBee Document Effect Identifier Field Value Description 0x02 – 0xff Reserved E f f e c t V a r i a n t F i e l d 3 . 8 . 2 . 3 . 4 . 2 The Effect Variant field is 8 - bi ts in length and is used to indicate which variant of the effect, indicated in the Effect Identifier field, SHOULD be triggered. If a device does not support the given variant, it SHALL use the default variant. This field is dependent on the value of the E ffect Identifier field and SHALL contain one 3 Table of the nonreserved values listed in . 45 - Table - 45 . Values of the Effect Variant 3 Field of the Off With Effect Command Effect Variant Effect Ident ifier Description Field Value Field Value Fade to off in 0.8 seconds 0x00 (default) 0x01 No fade 0x00 0x02 50% dim down in 0.8 seconds then fade to off in 12 seconds – 0x03 Reserved 0xff de to off in 1 second 20% dim up in 0.5s then fa 0x00 (default) 0x01 0x01 Reserved 0xff – 0xff 0x02 0xff 0x00 – – Reserved 3 . 8 . 2 . 3 . 4 . 3 E f f e c t o n R e c e i p t GlobalSceneControl On receipt of the Off With Effect command and if the attribute is equal to TRUE, the application on the associated endpoint SHALL store its settings in its global scene then set the GlobalSceneControl attribute to FALSE. The application SHALL then enter its “off” state, update the OnOff attribute accordingly and set the OnTime attribute to 0x0000. In all other cases, the application on the as sociated endpoint SHALL enter its “off” state and update the OnOff attribute accordingly. On W it h Recall Gl obal Scene Co mm and 3.8.2.3.5 The was turned off. device settings when the command allows the On With Recall Global Scene recall of the ers. The Recall Global Scene command SHALL have no paramet On With 3 . 8 . 2 . 3 . 5 . 1 E f f e c t o n R e c e i p t GlobalSceneControl On receipt of the On With Recall Global Scene command, if the attribute is equal to 24 TRUE, the application on the associated endpoint SHALL discard the command. If the GlobalSceneControl attribute is equal to FALSE, the application on the associated endpoint SHALL recall its global scene, entering the appropriate state and updating the OnOff attribute accordingly. It SHALL OnTime f the value of the i In Addition, TRUE. attribute to attribute is equal then set the GlobalSceneControl to 0x0000, the device SHALL then set the OffWaitTime a ttribute to 0x0000. 24 CCB 1555 , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 55

152 Chapter ZigBee Cluster Library Specification 3 – 075123 ZigBee Document General On W it h Time d O ff Com man d 3.8.2.3.6 With to be turned on for a specific duration with a guarded off devices command allows The O n Timed Off nds, device be subsequently switched off, further On With Timed Off comma duration so that SHOULD the e- devices back on. Note that the device can be p received during this time, are prevented from turning the s, e.g., from an on/off sensor. On With Timed Off command riodically re - kicked by subsequent . 36 - 3 Figure d as illustrated in The payload of this command SHALL be formatte 3 - 36 . Format of the On With Timed Off Command Figure 2 1 2 Octets uint16 uint16 uint8 Data Type On Time Off Wait Time On/off Control Field Name On / O f f C o n t r o l F i e l d 3 . 8 . 2 . 3 . 6 . 1 The On/Off Control field is 8 - bits in length and contains information on how the device is to be ope r ated. 3 . - 37 This field SHALL be formatted as illustrated in Figure . Format of the On/Off Control Field of the 37 - 3 Figure Command On With Timed Off 7 Bits: 0 1 - Reserved Accept Only When On command sub - field is 1 bit in length and specifies whether the On With Timed Off Accept Only When On The is to be processe d unconditionally or only when the OnOff attribute is equal to 0x01. If this sub - field is set to attribute is equal to 0x01. If this 1, the On With Timed Off command SHALL only be accepted if the OnOff sub - HALL be processed unconditionally. command S field is set to 0, the On With Timed Off O n T i m e F i e l d 3 . 8 . 2 . 3 . 6 . 2 The On Time field is 16 bits in length and specifies the length of time (in 1/10ths second) that the device is to remain “on”, i.e., with its OnOff attribute equal to 0x01, before automatically turning “ off”. This field 0xfffe. SHALL be specified in the range 0x0000 – 3 . 8 . 2 . 3 . 6 . 3 O f f W a i t T i m e F i e l d The Off Wait Time device field is 16 bits in length and specifies the length of time (in 1/10ths second) that the OnOff SHALL remain “off”, i.e., with its attribute e qual to 0x00, and guarded to prevent an on command back “on”. This field SHALL be specified in the range 0x0000 – 0xfffe. device turning the E f f e c t o n R e c e i p t 3 . 8 . 2 . 3 . 6 . 4 On receipt of this command, if the accept only when on sub - field of the on/off control field is set to 1and the value of the OnOff attribute is equal to 0x00 (off), the command SHALL be discarded. OffWaitTime attribute is equal to OnOff attribute is greater than zero and the value of the If the value of the attribute and Off WaitTime attribute to the minimum of the OffWaitTime 0x00, then the device SHALL set the the value specified in the off wait time field. In all other cases, the device SHALL set the OnTime attribute to the maximum of the OnTime attribute and field, set the the value specified in the on time attribute to the value specified in the off wait time OffWaitTime attribute to 0x01 (on). OnOff field and set the attributes are both less than 0xffff, the device SHALL then OnTime If the values of the OffWaitTime and th OnTime OffWaitTime and second until both the attributes are equal to 0x0000, y 1/10 update the device ever as follows:  3 - 56 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

153 ZigBee Cluster Library Specification Chapter 3 – General ZigBee Document 075123 attribute is greater OnTime attribute is equal to 0x01 (on) and the value of the  If the value of the OnOff attribute. If the value of the than zero, the device SHALL decrement the value of the OnTime OnTime attributes to 0x0000 and and attribute reaches 0x0000, the device SHALL set the OffWaitTime OnOff 0x00, respectively. OnOff If the value of the  attribute is me OffWaitTi attribute is equal to 0x00 (off) and the value of the greater than zero, the device SHALL decrement the value of the OffWaitTime attribute. If the value of the OffWaitTime attribute reaches 0x0000, the device SHALL terminate the update. 3.8.2.4 State Description The operation of the on/off cluster wit h respect to the on, off, and on with timed off commands is illustrated . In this diagram, the values X and Y correspond to the on time and off wait time fields, r e- 38 - 3 Figure in “Timed On” state, the OnTime attribute is decremented spectively, of the on with timed off command. In the th every 1/10 OffWaitTime second. Similarly, in the “Delayed Off” state, the attribute is decremented every th 1/10 second. ration State Machine - 38 3 . On/Off Cluster Ope Figure Commands Generated 3.8.2.5 The server generates no commands. , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 57

154 Chapter 3 ZigBee Cluster Library Specification ZigBee Document 075123 General – Scene Table Extensions 3.8.2.6 If the Scenes server cluster (11) is implemented, the following extension field is added to the Scenes table: OnOff 3.8.2.7 Attribute Reporting upport attribute reporting using the Report Attributes command and according to the This cluster SHALL s t- minimum and maximum reporting interval settings described in Chapter 2, Foundation. The following a tribute SHALL be reported: OnOff Client 3.8.3 The client has no cluster specif ic attributes. The client generates the cluster specific commands received by ) , as required by the application. No cluster specific commands are received by the 3.8.2.3 the server (see client. 3.9 On/Off Switch Configuration iew Overv 3.9.1 Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classification, identification, etc. Attributes and commands for configuring On/Off switching devices. 3.9.1.1 Revision History . Rev Description 1 global mandatory Cl usterRevision attribute added Classification 3.9.1.2 Hierarchy Primary Transaction PICS Code Role Type 2 (server to client) OOSC Application Base 3.9.1.3 Cluster Identifiers Identifier Name 0x0007 On /Off Switch Configuration Server 3.9.2 Dependencies 3.9.2.1 Any endpoint that im plements this server cluster SHALL also implement the On/Off client cluster.  3 - 58 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

155 ZigBee Cluster Library Specification Chapter 3 General – ZigBee Document 075123 Attributes 3.9.2.2 For convenience, the attributes defined in this specification are arranged into sets of related attributes; each set can contain up to 16 attributes. Attribute identifi b- ers are encoded such that the most significant three ni bles specify the attribute set and the least significant nibble specifies the attribute within the set. The currently defined attribute sets are listed in Table - 46 . 3 Table 3 - 46 . On/Off Switch Configuration Attribute Sets Attribute Set Identifier Description Switch Information 0x000 0x001 Switch Settings 3.9.2.2.1 Sw itch In for mati o n At t rib ute Se t The switch information attribute set cont Table 3 - 47 . ains the attributes summarized in Table 3 - 47 . Attributes of the Switch Information Attribute Set Name Identifier M/O Default Access Range Type - M enum8 0x0 0 – 0x01 Read Only 0x0000 SwitchType 3.9.2.2.2 Switch Type At t ri b ute The SwitchType attribute specifies the basic functionality of the On/Off switching device. This attribute . 3 SHALL be set to one of the nonreserved values listed in Table 48 - - Table 3 Attribute SwitchType . Values of the 48 Details Attribute Value Description Toggle A switch with two physical states. An action by the user (e.g., 0x00 toggling a rocker switch) moves the switch from state 1 to state 2. The switch then remains in that state until another action from the user returns it to state 1. 0x01 A switch with two physical states. An action by the user (e.g., Momentary pressing a button) moves the switch from state 1 to state 2. ser ends his action (e.g., releases the button) the When the u switch returns to state 1. Multifunction A switch that behaves differently depending on user input. 0x02 send a toggle or in some other MAY Under some conditions it or of the switch is conditions a move command. The behavi - application specific but the nature of the switch is clear: it is a multifunction switch. , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 59

156 Chapter ZigBee Cluster Library Specification 3 – ZigBee Document 075123 General 3.9.2.2.3 Sw itch Set tin gs Att ribu te Se t The switch settings attribute set contains the attributes summarized in Table 3 - 49 . Table . Attributes of the Switch Settings Attribute Set 49 - 3 M/O Identifier Name Type Range Access Default 0x00 M 0x0010 0x00 enum8 – 0x02 Read Write SwitchActions 3 . 9 . 2 . 2 . 3 . 1 At t r i b u t e S w i t c h A c t i o n s ute is 8 bits in length and specifies the commands of the On/Off cluster (see 3.8) to attrib SwitchActions The 3 Table be generated when the switch moves between its two states, as detailed in . 50 - Values of the 50 . - SwitchActions 3 Attribute Table Command Generated Command Generated Attribute Value When Arriving at State 2 From State 1 When Arriving at State 1 From State 2 0x00 On Off On 0x01 Off Toggle 0x02 Toggle Commands Received 3.9.2.3 No commands are receiv ed by the server. 3.9.2.4 Commands Generated The server generates no commands. 3.9.3 Client The client has no cluster specific attributes. No cluster specific commands are generated or received by the client. Level Control 3.10 3.10.1 Overview Please see Chapter 2 for a general clu ster overview defining cluster architecture, revision, classification, identification, etc. This cluster provides an interface for controlling a characteristic of a device that can be set to a level, for sure of a door, or the power output of a heater. example the brightness of a light, the degree of clo Revision History 3.10.1.1 Description Rev 1 attribute added ClusterRevision global mandatory  3 - 60 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

157 ZigBee Cluster Library Specification Chapter 3 – 075123 General ZigBee Document 3.10.1.2 Classification Hierarchy Role PICS Code Primary Transaction Base Application LC Type 1 (client to server) 3.10.1.3 ifiers Ident Cluster Name Identifier Level Control 0x0008 3.10.2 Server Dependencies 3.10.2.1 For many applications, a close relationship between this cluster and the OnOff cluster is needed. This section describes the dependencies that are required when an endpoint that implements t he Level Control server cluster also implements the On/Off server cluster (see section 3.8). The OnOff attribute of the On/Off cluster and the CurrentLevel attribute of the Level Control cluster are intrinsically independent variables, as they are on diff erent clusters. However, when both clusters are i m- plemented on the same endpoint, dependencies MAY be introduced between them. Facilities are provided to introduce dependencies if required. Effec t o f O n/O ff C omman ds o n t he A t- 3.10.2.1.1 Curre nt Level trib ute ) determines whether commands of the On/Off cluster have a permanent 3.10.2.3.4 (see OnLevel bute The attri CurrentLevel attribute or not. If this attribute is defined (i.e., implemented and not 0xff) they do effect on the have a permanen t effect, otherwise they do not. There is always a temporary effect, due to fading up / down. The effect on the Level Control cluster on receipt of the various commands of the On/Off cluster are as - detailed in Table 3 51 . In this table, and throughout this cluster specification, 'level' means the value of the CurrentLevel attribute (see 0 ). 3 . Actions on Receipt for On/Off Commands, when Associate 51 - d with Level Control Table Command Action On Receipt CurrentLevel. Temporarily store On Set CurrentLevel to the minimum level allowed for the device. or to the stored level if OnLevel is not defined, over the OnLevel, to Move CurrentLevel sitionTime . time period OnOffTran . Off Temporarily store CurrentLevel Move to the minimum level allowed for the device over the time period CurrentLevel . OnOffTransitionTime If OnLevel CurrentLevel to the stored level. is not defined, set the attribute has OnOff If the the value Off, proceed as for the On command. Otherwise proceed Toggle as for the Off command. , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 61

158 Chapter ZigBee Cluster Library Specification 3 – 075123 ZigBee Document General Effec t o f Le ve l C o ntr ol Comma nds o n t he OnO f f A 3.10.2.1.2 t- trib ute There are two sets of commands provided in the Level Control cluster. These are identical, except that the fi rst set (Move to Level, Move and Step) SHALL NOT affect the attribute, whereas the second set OnOff ('with On/Off' variants) SHALL. OnOff The first set is used to maintain independence between the attributes, so changing CurrentLevel and has no effect on the OnOff attribute. As examples, this represents the behavior of a volume CurrentLevel control with a mute button, or a 'turn to set level and press to turn on/off' light dimmer. CurrentLevel The second set is used to link the and OnOff attributes. When the level is reduced to its mi n- imum the OnOff attribute is automatically turned to Off, and when the level is increased above its minimum attribute is automatically turned to On. As an example, this represents the behavior of a light OnOff the no independent on/off switch. dimmer with Generic Usage Notes 3.10.2.2 or , Move , Step Move To Level If a Stop command is received while the device is in its off state, i.e., the OnOff attribute of the On/Off cluster is equal to 0x00, the command SHALL be ignored. ff) command is received that causes a or If a M ove to L evel (with O n/ o ff) , M ove (with o n/ O ff) O S tep (with O n/ O change to the value of the OnOff attribute of the GlobalSceneControl n/ O ff cluster, the value of the attribute 25 . of the O n/ O ff c luster SHALL be updated according to section 3.8.2.2.2 Attributes 3.10.2.3 Table . 52 - 3 The attributes of the Level Control server cluster are summarized in ntrol Server Cluster . Attributes of the Level Co 52 - 3 Table Identifier Type Range Access Name Default M/O Read Only CurrentLevel uint8 0x00 – 0xf e M 0x0000 Reportable - Scene 0x0001 RemainingTime uint16 0x0000 0xffff Read Only 0x0000 O – 0x0010 OnOffTransitionTime uint16 0x0000 – 0xffff Read Write 0x0000 O f uint8 O f 0xf Read Write 0xf 0x0011 OnLevel 0x0 1 – OnTransitionTime uint16 0x0000 – 0x0012 0xfffe Read Write -- O uint16 O 0x0000 0x0013 OffTransitionTime -- – 0xfffe Read Write uint16 -- O 0x0014 DefaultMoveRate 0x00 – 0xFE Read Wri te Curre nt Level 3.10.2.3.1 At t ri bute The CurrentLevel attribute represents the current level of this device. The meaning of 'level' is device d e- pendent. 25 CCB 1555  3 - 62 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

159 Chapter 3 ZigBee Cluster Library Specification 075123 – ZigBee Document General 3.10.2.3.2 Remaini ng Time At trib ute is complete it is attribute represents the time remaining until the current command The RemainingTime - specified in 1/10ths of a second. OnOf fT ransi tio nTi me At tr ibu te 3.10.2.3.3 OnOffTransitionTime The attribute represents the time taken to move to or from the target level when On of int. It is specified in 1/10ths of a second. Off commands are received by an On/Off cluster on the same endpo The actual time taken SHOULD be as close to OnOffTransitionTime as the device is able. N.B. If the device is not able to move at a variable rate, the OnOffTransitionTime attribute SHOULD not be implemented. Level On At t ri bu te 3.10.2.3.4 attribute OnOff OnLevel attribute determines the value that the CurrentLevel attribute is set to when the The of an On/Off cluster on the same endpoint is set to On. If the OnLevel attribute is not implemented, or is set to 0xff, it has no effect. For more details see 3.10.2.1.1 . OnTra nsiti on Time At tri bu te 3.10.2.3.5 The the minimum level attribute represents the time taken to move the current level from OnTransitionTime y an On/Off cluster on the same endpoint. It is when an On command is received b the maximum level to specified in 10ths of a second. If this command is not implemented, or contains a value of 0xffff, the On/OffTransitionTime will be used instead. 3.10.2.3.6 At tri bu te Off Trans iti on Time OffTransitionTime attribute re presents the time taken to move the current level from the maximum level The the minimum level when an Off command is received by an On/Off cluster on the same endpoint. It is to value of 0xffff, the specified in 10ths of a second. If this command is not implemented, or contains a On/OffTransitionTime will be used instead. 3.10.2.3.7 Defa ult Move Rate At t ri bu te The DefaultMoveRate attribute determines the movement rate, in units per second, when a Move command is received with a Rate parameter of 0xFF. 3.10.2.4 Commands Received command IDs for the Level Control cluster are listed in Table 53 . - 3 The 3 - 53 . Command IDs for the Level Control Cluster Table Command Ident i- fier Field Value Description M/O Level 0x00 Move to M Move M 0x01 0x02 Step M M 0x03 Stop M Move to Level (with On/Off) 0x04 M Move (with On/Off) 0x05 0x06 M Step (with On/Off) , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 63

160 Chapter ZigBee Cluster Library Specification 3 – 075123 ZigBee Document General Command Ident i- fier Field Value Description M/O Stop 0x07 M 3.10.2.4.1 Mo ve to Le vel C o mmand P a y l o a d F o r m a t 3 . 1 0 . 2 . 4 . 1 . 1 ustrated in The Move to Level command payload SHALL be formatted as ill - Figure 3 39 . 3 Figure . Format of the Move to Level Command Payload 39 - 2 1 Octets uint16 uint8 Data Type Transition time Level Field Name E f f e c t o n R e c e i p t 3 . 1 0 . 2 . 4 . 1 . 2 f this command, a device SHALL move from its current level to the value given in the Level On receipt o e.g., for a light it MAY mean brightness level. – field. The meaning of ‘level’ is device dependent The movement SHALL be as continuous as technically practical, i.e ., not a step function, and the time taken to move to the new level SHALL be equal to the value of the Transition time field, in tenths of a second, or as close to this as the device is able. If the Transition time field takes the value 0xffff then the tim e taken to move to the new level SHALL instead be determined by the OnOffTransitionTime attribute. If OnOffTransitionTime , which is an optional attribute, is not present, the device SHALL move to its new level as fast as it is able. If the device is not ab le to move at a variable rate, the Transition time field MAY be disregarded. 3.10.2.4.2 Mo ve Com mand 3 . 1 0 . 2 . 4 . 2 . 1 P a y l o a d F o r m a t 40 - . The Move command payload SHALL be formatted as illustrated in Figure 3 40 - 3 Figure . Format of the Move Command Payload 1 1 Octets enum8 uint8 Data Type Rate Move mode Field Name 3 . 1 0 . 2 . 4 . 2 . 2 M o v e M o d e F i e l d . 3 - 54 The Move mode field SHALL be one of the non - reserved values in Table - 3 . Values of the Move Mode Field Table 54 Fade Mode Value Description Up 0x00 0x01 Down  3 - 64 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

161 Chapter 3 ZigBee Cluster Library Specification General – ZigBee Document 075123 R a t e F i e l d 3 . 1 0 . 2 . 4 . 2 . 3 The Rate field specifies the rate of movement in units per second. The actual rate of movement SHOULD be attribute DefaultMoveRate evice is able. If the Rate field is 0xFF, then the value in as close to this rate as the d attribute is not supported, then the device DefaultMoveRate SHALL be used. If the Rate field is 0xFF and the be MAY to move at a variable rate, this field move as fast as it is able. If the device is not able SHOULD disregarded. 3 . 1 0 . 2 . 4 . 2 . 4 E f f e c t o n R e c e i p t On receipt of this command, a device SHALL move from its current level in an up or down direction in a . - 3 le Tab continuous fashion, as detailed in 55 . Actions on Receipt for Move Command 55 - 3 le Tab Action on Receipt Fade Mode Increase the device’s level at the rate given in the Rate field. If Up the level reaches the maximum allowed for the device, stop. Decrease the device’s level at the rate given in the Rate field. If own D the level reaches the minimum allowed for the device, stop. 3.10.2.4.3 Step Com mand 3 . 1 0 . 2 . 4 . 3 . 1 P a y l o a d F o r m a t 3 . 41 The Step command payload SHALL be formatted as illustrated in Figure - 41 Figure 3 - . Format of the Step Command Payload 2 1 1 Octets enum8 uint16 uint8 Data Type Step mode Step size Transition time Field Name Table 56 - 3 in . The Step mode field SHALL be one of the non - reserved values Table . Values of the Step Mode Field 56 - 3 Description Fade Mode Value Up 0x00 Down 0x01 The Transition time field specifies the time that SHALL be taken to perform the step, in tenths of a second. A of 'Step size' units. The actual time taken SHOULD be as close to this CurrentLevel step is a change in the as the device is able. If the Transition time field is 0xffff the device SHOULD move as fast as it is able. e device is not able to move at a variable rate, the Transition time field MAY be disregarded. If th , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 65

162 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General E f f e c t o n R e c e i p t 3 . 1 0 . 2 . 4 . 3 . 2 On receipt of this command, a device SHALL move from its current level in an up or down direction as detailed in Table 3 - 57 . Table . Actions on Receipt for Step Command 57 - 3 Fade Mode Action on Receipt Up Increase CurrentLevel by 'Step size' units, or until it reaches the maximum level d in the process. In the latter case, the transition allowed for the device if this reache time SHALL be proportionally reduced. by 'Step size' units, or until it reaches the minimum level CurrentLevel Decrease Down he transition allowed for the device if this reached in the process. In the latter case, t time SHALL be proportionally reduced. Sto p C omma nd 3.10.2.4.4 This command has no payload. Upon receipt of this command, any Move to Level, Move or Step command (and their 'with On/Off' variants) currently in process SHALL be terminated. The value of CurrentLevel SHALL be left at its value upon receipt of the Stop command, and RemainingTime SHALL be set to zero. - 5 , one for the Move to Level, Move and Set commands, and one for This command has two entries in Table 3 h On/Off' counterparts. This is solely for symmetry, to allow easy choice of one or other set of their 'wit commands the Stop commands are identical. – 3.10.2.4.5 'W ith O n/O ff' Co m mands The Move to Level (with On/Off), Move (with On/Off) and Step (with On/Off) commands have id entical payloads to the Move to Level, Move and Step commands respectively. They also have the same effects, except for the following additions. Before commencing any command that has the effect of increasing CurrentLevel, the OnOff attribute of the f cluster on the same endpoint, if implemented, be set to On. SHALL On/Of If any command that decreases CurrentLevel reduces it to the minimum level allowed by the device, the set to Off. be SHALL OnOff attribute of the On/Off cluster on the same endpoint, if implemented, 3.10.2.5 Commands Generated The server generates no commands. Scene Table Extensions 3.10.2.6 If the Scenes server cluster Section 3.7 is implemented, the following extension field is added to the Scenes table: CurrentLevel 3.10.2.7 Attribute Reporting ommended that this cluster supports attribute reporting using the Report Attributes command It is highly rec and according to the minimum and maximum reporting interval and reportable change settings described in te SHALL be reported: Chapter 2, Foundation 2. If supported, the following attribu CurrentLevel  3 - 66 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

163 ZigBee Cluster Library Specification Chapter 3 075123 General ZigBee Document – Client 3.10.3 The client has no cluster specific attributes. The client generates the cluster specific commands received by ), as required by the application. No cluster speci 3.10.2.5 the server (see fic commands are received by the client. 3.11 Alarms Overview 3.11.1 Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classification, identification, etc. Attributes and commands for sending alarm notifications and configur ing alarm functionality. Alarm conditions and their respective alarm codes are described in individual clusters, along with an alarm larm notifications are reported to subscribed targets using binding. A mask field. is implemented, all alarms, masked or otherwise, are recorded and MAY be retrieved Where an alarm table on demand. Alarms MAY either reset automatically when the conditions that cause are no longer active, or MAY need to be explicitly reset. Revision History 3.11.1.1 Rev Description 1 ClusterRevision attribute added global mandatory 3.11.1.2 Classification Hierarchy Role PICS Code Primary Transaction ALM Base Application Type 2 (server to client) Identifiers Cluster 3.11.1.3 Identifier Name Alarms 0x0009 Server 3.11.2 Dependencies 3.11.2.1 lements time stamping SHALL also implement the Time server cluster. Any endpoint which imp 3.11.2.2 Attributes For convenience, the attributes defined in this specification are arranged into sets of related attributes; each b- ncoded such that the most significant three ni set can contain up to 16 attributes. Attribute identifiers are e bles specify the attribute set and the least significant nibble specifies the attribute within the set. The currently 3 Table defined attribute sets are listed in . 58 - , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 67

164 Chapter ZigBee Cluster Library Specification 3 General – ZigBee Document 075123 Table 3 - 58 . Alarms Cluster Attribute Sets Attribute Set Identifier Description 0x000 Alarm Information 3.11.2.2.1 Al arm I nf orma ti on At tri bu te Se t Table The Alarm Information attribute set contains the attributes summarized in . 59 - 3 Table 3 - 59 . Attributes of the Alarm Information Attribute Set Default M/O Identifier Name Type Range Access maximum 0x00 – Read Only O 0x00 0x0000 AlarmCount uint16 defined in profile A l a r m C o u n t At t r i b u t e 3 . 1 1 . 2 . 2 . 1 . 1 The AlarmCount attribute is 16 bits in length and specifies the number of entries currently in the alarm table. This attribute SHALL be specified in the range 0x00 to the maximum defined in the profile using this cluster. ogging is not implemented this attribute SHALL always take the value 0x00. If alarm l 3.11.2.3 Alarm Table The alarm table is used to store details of alarms generated within the devices. Alarms are requested by clusters which have alarm functionality, e.g., when attributes t ake on values that are outside ‘safe’ ranges. The maximum number of entries in the table is device dependent. earliest entry When an alarm is generated, a corresponding entry is placed in the table. If the table is full, the is replaced by the new entry. O nce an alarm condition has been reported the corresponding entry in the table is removed . 3.11.2.3.1 Al arm Table For m at The format of an alarm table entry is illustrated in Table - 60 Format of the Alarm Table . 3 Table 3 - 60 . Format of the Alarm Table Type Valid Range Description Field 0xff enum8 0x00 – Identifying code for the cause of the alarm, as given in Alarm code the s pecification of the cluster whose attribute gene r- ated this alarm. Cluster ide The identifier of the cluster whose attribute generated n- clusterId 0x0000 – 0xffff this alarm. tifier – red or 0xffffffff if no The time at which the alarm occur Time stamp uint32 0x00000000 0xffffffff time information is available. This time is taken from a Time server cluster, which must be present on the same endpoint. Commands Received 3.11.2.4 . 61 - 3 Table The received command IDs for the Alarms cluster are listed in  3 - 68 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

165 Chapter 3 ZigBee Cluster Library Specification 075123 General ZigBee Document – Table 3 - 61 . Received Command IDs for the Alarms Cluster Command Identifier Field Value Description M/O M Reset Alarm 0x00 Reset all alarms M 0x01 0x02 Get Alarm O 0x03 Reset alarm log O 3.11.2.4.1 rm Co m mand Reset Al a This command resets a specific alarm. This is needed for some alarms that do not reset automatically. If the m- alarm condition being reset was in fact still active then a new notification will be generated and, where i d to the alarm log. plemented, a new record adde 3 . 1 1 . 2 . 4 . 1 . 1 P a y l o a d F o r m a t The Reset Alarm command payload SHALL be formatted as illustrated in . 42 - 3 Figure Figure . Format of the Reset Alarm Command Payload 42 - 3 1 2 Octets clusterId enum8 Data Type Cluster identifier Alarm code Field Name 3.11.2.4.2 Reset Al l Al arms Comma nd This command resets all alarms. Any alarm conditions that were in fact still active will cause a new notif i- cation to be generated and, where implemented, a new record added to the alarm log. 3.11.2.4.3 Get Ala rm Com ma nd generated alarm entry This command causes the alarm with the earliest in the alarm table to be reported in a get alarm response command ommand enables the reading of logged alarm conditions from . This c 3.11.2.5.2 the alarm table. Once an alarm condition has been reported the corresponding entry in the table is removed. This command does not have a payload. 3.11.2.4.4 Reset Al arm Lo g Comma nd This command causes the ala rm table to be cleared, and does not have a payload. 3.11.2.5 Commands Generated . The generated command IDs for the Alarms cluster are listed in Table 3 - 62 3 Table r the Alarms Cluster . Generated Command IDs fo 62 - Command Identifier Field Value M/O Description Alarm 0x00 M , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 69

166 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General Command Identifier M/O Description Field Value O Get alarm response 0x01 3.11.2.5.1 Al arm Com man d The alarm command signals an alarm situation on the sending device. ctionality detects an alarm condition, An alarm command is generated when a cluster which has alarm fun e.g., an attribute has taken on a value that is outside a ‘safe’ range. The details are given by individual cluster specifications. P a y l o a d F o r m a t 3 . 1 1 . 2 . 5 . 1 . 1 - 3 . Figure 43 The alarm command payload SHALL be formatted as illustrated in 3 . Format of the Alarm Command Payload 43 - Figure 2 1 Octets clusterId enum8 Data Type Cluster identifier Alarm code Field Name 3.11.2.5.2 Get Ala rm Respo n se Com mand The get alarm respo nse command returns the results of a request to retrieve information from the alarm log, along with a time stamp indicating when the alarm situation was detected. 3 . 1 1 . 2 . 5 . 2 . 1 P a y l o a d F o r m a t . The get alarm response command payload SHALL be formatted as illustrated in Figure 3 - 44 44 - . Format of the Get Alarm Response Command Payload 3 Figure 1 0/1 0/2 0/4 Octets uint32 clusterId enum8 enum8 Data Type Cluster identifier Alarm code Status Time stamp Field Name If there is at least one alarm record in the alarm table then the status field is set to SUCCESS. The alarm code, cluster identifier and time stamp fields SHALL all be present and SHALL take their values from the item in they are reporting. the alarm table that If there are no more alarms logged in the alarm table then the status field is set to NOT_FOUND and the alarm code, cluster identifier and time stamp fields SHALL be omitted. 3.11.3 Client ent generates the cluster specific commands received by The client has no cluster specific attributes. The cli 3.11.2.4 the server (see ), as required by the application. The client receives the cluster specific commands 3.11.2.5 generated by the server (see ).  3 - 70 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

167 Chapter 3 ZigBee Cluster Library Specification ZigBee Document General – 075123 3.12 Time Overview 3.12.1 Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classification, identification, etc. MAY be read and also written, in This cluster provides a basic interface to a real - time clock. The clock time order to synchronize the clock (as close as practical) to a time standard. This time standard is the number of st January 2000 UTC (Universal Coordinated Time). seconds since 0 hrs 0 mins 0 sec on 1 s basic functionality for local time zone and daylight saving time. The cluster also include Revision History 3.12.1.1 Rev Description global mandatory attribute added 1 ClusterRevision 3.12.1.2 Classification Hierarchy Role PICS Code T Application Base Identifiers Cluster 3.12.1.3 Name Identifier Time 0a 0x00 3.12.2 Server Dependencies 3.12.2.1 None 3.12.2.2 Attributes The server supports the attributes shown in Table 3 - 63 . Table 3 - 63 . Attributes of the Time Server Cluster s Identifier Name Type Range Acces Default M/O 0x0000 Time UTC 0x00000000 – 0xfffffffe Read Write - M 0000 xxxx 0x0001 TimeStatus map8 0b Read Write 0b00000000 M +86400 - 86400 - int32 O 0x00000000 Read Write 0x0002 TimeZone , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 71

168 Chapter 3 ZigBee Cluster Library Specification ZigBee Document 075123 General – Name Range Acces s Type Default M/O Identifier DstStart uint32 0x00000000 – 0xfffffffe 0x0003 - O Read Write uint32 0x00000000 – 0xfffffffe DstEnd Read Write - O 0x0004 0x0005 DstShift int32 - 86400 +86400 Read Write 0x00000000 O - 0x0006 StandardTime uint32 0x00000000 – Read Only - O 0xfffffffe 0x0007 LocalTime uint32 0x00000000 – 0xfffffffe Read Only - O 26 f LastSetTime UTC 0x00000000 – 0xfffffff 0x0008 Read Only 0xffffffff O 27 0xfffffff – 0x00000000 O 0xffffffff Read Write 0x0009 f ValidUntilTime UTC 3.12.2.2.1 Time At t rib u te The Time attribute is 32 bits in length and holds the time value of a real time clock. T his attribute has data type UTCTime, but note that it MAY not actually be synchronized to UTC - see discussion of the TimeStatus attribute. TimeStatus If the Master bit of the attribute has a value of 0, writing to this attribute SHALL set the real time cl ock to the written value, otherwise it cannot be written. The value 0xffffffff indicates an invalid time. 3.12.2.2.2 TimeSta tus At t rib ute The attribute holds a number of bit fields, as detailed in Table 3 - 64 Bit Values of the . TimeStatus TimeStatus . Bit Values of the Attribute Table 3 - 64 Attribute Bit Number Values Meaning Master 1 – 0 master clock 0 – not master clock – 1 Synchronized synchronized 1 – not synchronized 0 – 2 MasterZoneDst 1 master for Time Zone and DST 0 – not master for Time Zone and DST 1 – time synchronization SHOULD 3 Superseding be superseded time synchronization SHOULD 0 - not be superseded 26 CCB 1647 27 CCB 1647  3 - 72 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

169 ZigBee Cluster Library Specification Chapter 3 075123 ZigBee Document General – Time attribute conforms The Master and Synchronized bits toget her provide information on how closely the to the time standard. The Master bit specifies whether the real time clock corresponding to the Time attribute is internally set to the time standard. This bit is not writeable – if a value is written to the TimeStatus attribute, this bit does not change. has been set over the ZigBee network to synchronize it (as close Time The Synchronized bit specifies whether ). This bit must be explicitly written to indicate this 3.12.1 as MAY be practical) to the time standard (see – i.e., it is not set automatically on writing to the Time attribute. If the Master bit is 1, the value of this bit is 0. clock has no defined relationship to the time If both the Master and Synchronized bits are 0, the real time standard (e.g., it MAY record the number of seconds since the device was initialized). attributes are set The MasterZoneDst bit specifies whether the TimeZone, DstStart, DstEnd and DstShift internally to corre t- ct values for the location of the clock. If not, these attributes need to be set over the ne attribute, this bit does not change. – if a value is written to the TimeStatus work. This bit is not writeable Devices SHALL synchronize to a Time server with the highest rank according to the following rules, listed in order of precedence: A server with the Superseding bit set SHALL be chosen over a server without the bit set.   A server with the Master bit SHALL be chosen over a server without the bit set. rver with the lower short address SHALL be chosen (note that this means a coordinator with the The se  Superseding and Master bit set will always be chosen as the network time server). chosen as the network A Time server with neither the Master nor Synchronized bits set SHOULD not be  time server. TimeZ one 3.12.2.2.3 At t ri bu t e The attribute indicates the local time zone, as a signed offset in seconds from the Time attribute TimeZone value. The value 0xffffffff indicates an invalid time zone. The local Standard Time, i.e., th e time adjusted for the time zone, but not adjusted for Daylight Saving Time (DST) is given by Standard Time = Time + TimeZone The range of this attribute is +/ - one day. Note that the actual range of physical time zones on the globe is much smaller than this, so the manufacturer has the option to impose a smaller range. If the MasterZoneDst bit of the TimeStatus attribute has a value of 1, this attribute cannot be written. 3.12.2.2.4 DstS tar t At t rib ute attribute indicates the DST start time in seconds. The DstStart The value 0xffffffff indicates an invalid DST 28 DstStart For semantic purposes start time. are actually type UTCTime. DstEnd and The Local Time, i.e., the time adjusted for both the time zone and DST, is given by DstEnd <= Time <= ) Local Time = Standard Time + DstShift (if D stStart DstStart Local Time = Standard Time (if Time < or Time > DstEnd ) DstShift Note that the three attributes are optional, but if any one of them is impl e- and DstStart, DstEnd mented the other two must also be implemented. this attribute SHOULD be set to a new value once every year. Note that attribute has a value of 1, this attribute cannot be written. TimeStatus If the MasterZoneDst bit of the 28 CCB 1498 , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 73

170 3 Chapter ZigBee Cluster Library Specification ZigBee Document 075123 General – DstE nd At t ri bu te 3.12.2.2.5 ffffffff indicates an invalid DST attribute indicates the DST end time in seconds. The value 0x The DstEnd 29 DstEnd For semantic purposes DstStart and end time. are actually type UTCTime. Note that this attribute SHOULD be set to a new value once every year, and SHOULD be written synchr o- attribute. nously with the DstStart attribute has a value of 1, this attribute cannot be written. TimeStatus MasterZoneDst bit of the If the At t ri bu te DstS hif t 3.12.2.2.6 attribute represents a signed offset in seconds from the standard time, to be applied between the The DstShift and t o calculate the Local Time (see ). The value 0xffffffff indicates an 2.2.2.4 3.1 times DstStart DstEnd invalid DST shift. The range of this attribute is +/ - one day. Note that the actual range of DST values employed by countries is much smaller than this, so the manufacturer has the option to impose a smaller range. TimeStatus If the MasterZoneDst bit of the attribute has a value of 1, this attribute cannot be written. 3.12.2.2.7 At t r ibu te Standa rd Time l- The local Standard Time is given by the equation in . Another device on the network MAY ca 3.12.2.2.3 attributes and adding them together. If implemented TimeZone and Time culate this time by reading the StandardTime however, the optional e 0xffffffff indicates an attribute indicates this time directly. The valu invalid Standard Time. 3.12.2.2.8 LocalTi me At t rib u te . Another device on the network MAY calculate this The Local Time is given by the equation in 3.12.2.2.4 attributes and performing the calculation. time by reading the Time , TimeZone, DstStart, DstEnd and DstShift LocalTime attribute indicates this time directly. The value 0xffffffff If implemented however, the optional indicates an invalid Local Time. LastSe tTime 3.12.2.2.9 At t ri bute attribute was set, either internally or The LastSetTime attribute indicates the most recent time that the Time over the ZigBee network (thus it holds a copy of the last value that was set to). This attribute is set Time d LastSetTime . automatically, so is Read Only. The value 0xffffffff indicates an invali ValidU nti lTime 3.12.2.2.10 At t ribu te attribute MAY The ValidUntilTime attribute indicates a time, later than LastSetTime, up to which the Time Time attribute and the true UTC time . ‘Trusted’ means that the difference between the be trusted is less than an acceptable error. The acceptable error is not defined by this cluster specification, but MAY be defined by the application profile in which devices that use this cluster are specified. attribute SHOULD be set to Note: depends both on the acceptable error The value that the ValidUntilTime and the drift characteristics of the real time clock in the device that implements this cluster, which must therefore be known by the application entity that sets this value. alidUntilTime The value 0xffffffff indicates an invalid . V Commands Received 3.12.2.3 The server receives no commands except those to read and write attributes. 3.12.2.4 Commands Generated The server generates no cluster specific commands. 29 CCB 1498  3 - 74 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

171 ZigBee Cluster Library Specification Chapter 3 – General ZigBee Document 075123 3.12.3 Client mands are No cluster specific com The client has no cluster specific attributes. generated or received by the client. 3.13 RSSI Location 3.13.1 Overview Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classification, identification, etc. This cluster provides a means for exchanging Received Si gnal Strength Indication (RSSI) information among one hop devices as well as messages to report RSSI data to a centralized device that collects all the 45 - Figure 3 . RSSI data in the network. An example of the usage of RSSI location cluster is shown in Figure . Example of Usage of RSSI Location Cluster 3 - 45 Revision History 3.13.1.1 Description Rev ClusterRevision global mandatory 1 attribute added , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 75

172 Chapter ZigBee Cluster Library Specification 3 – ZigBee Document 075123 General Classification 3.13.1.2 Role PICS Code Hierarchy se Ba Utility RSSI Cluster Identifiers 3.13.1.3 Name Identifier 0x000b RSSI 3.13.2 Server 3.13.2.1 Dependencies None 3.13.2.2 Attributes For convenience, the attributes defined in this specification are arranged into sets of related attributes; each set can contain up to 16 attributes. Att ribute identifiers are encoded such that the most significant three ni b- bles specify the attribute set and the least significant nibble specifies the attribute within the set. The currently . defined attribute sets are listed in Table - 65 3 Table - 65 . Location Attribute Sets 3 Attribute Set Identifier Description 0x000 Location Information 0x001 Location Settings 3.13.2.2.1 Locat ion In for mati on At t ri bu te Set - 66 . contains the attributes summarized in Table 3 The Location Information attribute set Table . Attributes of the Location Information Attribute Set 66 - 3 Access Identifier Type Range Name Def M/O 0x0000 M data 8 0000xxxx Read Write - LocationType 0x0001 M enum8 0x00 – 0xff Read Write - LocationMethod - uint16 O 0x0002 Read Only 0xffff 0x0000 – LocationAge O 0x0003 uint8 0x00 – 0x64 Read Only - QualityMeasure 0x0004 - uint8 O – 0xff Read Only 0x00 NumberOfDevices 3 . 1 3 . 2 . 2 . 1 . 1 L o c a t At t r i b u t e i o n T y p e LocationType The attribute is 8 bits long and is divided into bit fields. The meanings of the individual bit 67 - 3 Table fields are detailed in .  3 - 76 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

173 ZigBee Cluster Library Specification Chapter 3 075123 General – ZigBee Document - 3 . Bit Valu es of the LocationType Attribute Table 67 Bit Field (Bit Numbers) Values Meaning 1 0 Absolute location Absolute – 0 – Measured location D - Two dimensional – 1 1 2 0 – Three dimensional - Rectangular (installation specific 2 - 3 Coordinate System 0 – origin and ori entation) - 1 3 – Reserved The Absolute bit field indicates whether the location is a known absolute location or is calculated. dimensional. If the location or three - The 2 - D bit field indicates whether the location information is two - - information is two dim ensional, Coordinate 3 is unknown and SHALL be set to 0x8000. The Coordinate System bit field indicates the geometry of the system used to express the location coord i- s- ngular coordinate sy nates. If the field is set to zero, the location coordinates are expressed using the recta tem. All other values are reserved. 3 . 1 3 . 2 . 2 . 1 . 2 At t r i b u t e L o c a t i o n Me t h o d The attribute SHALL be set to one of the non - reserved values in Table 3 - 68 . LocationMethod Table 3 - 68 . Values of the LocationMethod Attribute Value Method Description 0x00 Lateration A method based on RSSI measurements from three or more sources. 0x01 Signposting The location reported is the location of the neighboring device with the strongest received signal. 0x02 RF fingerprinting RSSI signatures are collected into a database at commissioning time. The location reported is the location taken from the RSSI signature database that most closely matches the device’s own RSSI signature. band device (that is, - of - The location is obtained by accessing an out Out of band 0x03 the device providing the location is not part of the ZigBee network). he location is performed in a centralized way ( Centralized T e.g., by the GW) by 0x04 a device on the ZigBee networ k. Different from the above because the device performing the localization is part of the ZigBee network. – 0x40 Reserved for manufacturer specific location methods. 0xff - At t r i b u t e L o c a t i o n A g e 3 . 1 3 . 2 . 2 . 1 . 3 sured in seconds, that has transpired since the The LocationAge attribute indicates the amount of time, mea location information was last calculated. This attribute is not valid if the Absolute bit of the LocationType attribute is set to one. 3 . 1 3 . 2 . 2 . 1 . 4 At t r i b u t e Q u a l i t y Me a s u r e QualityMeasure nfidence in the corresponding location information. The attribute is a measure of co The higher the value, the more confident the transmitting device is in the location information. A value of 0x64 no fixed co indicates complete (100%) confidence and a value of 0x00 indicates zero confidence. (Note: n- the metric MAY be application and manufacturer dependent.) – fidence metric is mandated , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 77

174 Chapter ZigBee Cluster Library Specification 3 – General ZigBee Document 075123 attribute is set to one. LocationType This field is not valid if the Absolute bit of the N u m b e r O f D e v i c e s 3 . 1 3 . 2 . 2 . 1 . 5 At t r i b u t e NumberOfDevices attribute is the num ber of devices whose location data were used to calculate the last The attribute. location value. This attribute is related to the QualityMeasure Locat ion Set tin gs At t ri bu te Set 3.13.2.2.2 Table The Location Settings attribute set contains the attributes summarized in 69 . 3 - - 69 . Attributes of the Location Settings Attribute Set Table 3 Name Type Range Identifier Def M/O Access Read Write 0x0010 M Coordinate1 int16 0x8000 – 0x7fff - Read Write 0x7fff te2 int16 0x8000 – Coordina - M 0x0011 Read Write Coordinate3 int16 0x8000 0x7fff – 0x0012 - O Read Write 0x0013 Power int16 0x8000 – 0x7fff M - Read Write - – 0xffff M 0x0000 uint16 0x0014 PathLossExponent Read /Write 0x0015 uint16 0x0000 – ff 0xff ReportingPeriod - O Read Write uint16 0x0016 CalculationPeriod - O 0x0000 – 0xffff Read Write uint8 - M 0x0017 NumberRSSIMeasurements 0x01 – 0xff C o o r d i n a t e 1 , 2 , 3 At t r i b u t e s 3 . 1 3 . 2 . 2 . 2 . 1 r- The Coordinate1, Coordinate2 and Coordinate3 attributes are signed 16 - bit integ ers, and represent o thogonal linear coordinates x, y, z in meters as follows. / 10 x = Coordinate1 / 10, y = Coordinate2 / 10, z = Coordinate3 The range of x is - 3276.7 to 3276.7 meters, corresponding to Coordinate1 between 0x8001 and 0x7fff. The same range applies to y and z. A value of 0x8000 for any of the coordinates indicates that the coordinate is unknown. P o w e r 3 . 1 3 . 2 . 2 . 2 . 2 At t r i b u t e The Power attribute specifies the value of the average power P , measured in dBm, received at a reference 0 distance of one mete r from the transmitter. = P / 100 Power 0 is unknown. A value of 0x8000 indicates that Power A t t r i b u t e 3 . 1 3 . 2 . 2 . 2 . 3 P a t h L o s s E x p o n e n t The attribute specifies the value of the Path Loss Exponent n, an exponent that describes PathLossExponent l power decays with increasing distance from the transmitter. the rate at which the signa / 100 PathLossExponent = n is unknown. PathLossExponent A value of 0xffff indicates that The signal strength in dBm at a distance d meters from the transmitter is given by  3 - 78 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

175 ZigBee Cluster Library Specification Chapter 3 075123 ZigBee Document General – (d) 10n x log P = P – 0 10 where P is the power in dBm at the receiving device. P0 is the average power in dBm received at a reference distance of 1meter from the transmitter. n is the path loss exponent. eceiving device. d is the distance in meters between the transmitting device and the r R e p o r t i n g P e r i o d At t r i b u t e 3 . 1 3 . 2 . 2 . 2 . 4 The ReportingPeriod attribute specifies the time in seconds between successive reports of the device's loc a- tion by means of the Location Data Notification command. The minimum value this attribute can take is a- spec ified by the profile in use. If ReportingPeriod is zero, the device does not automatically report its loc tion. Note that location information can always be polled at any time. C a l c u l a t i o n P e r i o d At t r i b u t e 3 . 1 3 . 2 . 2 . 2 . 5 CalculationPeriod attribute specifies the time The in milliseconds between successive calculations of the device's location. If CalculationPeriod is less than the physically possible minimum period that the calcul a- o- tion can be performed, the calculation will be repeated as frequently as possible. In case of centralized l attribute equal to attribute specifies the period cation ( C entralized) the CalculationPeriod LocationMethod between successive RSSI ping commands. At t r i b u t e N u m b e r R S S I Me a s u r e m e n t s 3 . 1 3 . 2 . 2 . 2 . 6 The attribute specifies the number of RSSI measurements to be used to generate NumberRSSIMeasurements one location estimate. The measurements are averaged to improve accuracy. NumberRSSIMeasurements must be greater than or equal to 1. In the case of centralized location ( LocationMethod attribute equal to m- Centralized ) the NumberRSSIMeasurements attribute specifies the number of successive RSSI Ping co mands to be sent . by the server side of location cluster 3.13.2.3 Commands Received The received command IDs for the Location cluster are listed in Table 3 - 70 . 3 70 . Received Command IDs for the Location Cluster - Table M/O Description Command Identifier Field Value Set Absolute Location M 0x00 0x01 Set Device Configuration M 0x02 M Get Device Configuration 0x03 Get Location Data M O 0x04 RSSI Response 0x05 O Send Pings Anchor Node Announce O 0x06 Set Ab sol ute Loca tio n C omma nd 3.13.2.3.1 This command is used to set a device’s absolute (known, not calculated) location and the channel parameters t location. corresponding to tha , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 79

176 Chapter ZigBee Cluster Library Specification 3 ZigBee Document 075123 – General P a y l o a d F o r m a t 3 . 1 3 . 2 . 3 . 1 . 1 - Figure 3 46 . The Set Absolute Location command payload SHALL be formatted as illustrated in 3 - 46 . Format of the Set Absolute Location Command Paylo ad Figure 2 2 2 2 2 Octets uint16 int16 int16 int16 int16 Data Type Path Loss Exponent Coordinate 3 Coordinate 2 Coordinate 1 Power Field Name The fields of the payload correspond directly to the attributes with the same names. For details of their ranges see the descriptions of the individual attributes. meaning and The three coordinate fields SHALL contain the absolute location (known, not calculated) of the destination device. If any coordinate field(s) is not known, the value(s) SHALL be set to 0x8000. e c t o n R e c e i p t E f f 3 . 1 3 . 2 . 3 . 1 . 2 On receipt of this command, the device SHALL update the attributes corresponding to (i.e., with the same names as) the payload fields. 3.13.2.3.2 Set De vice Co nf ig urati on Co mman d This command is used to set a device’s location parameters, which will be used for calculating and reporting measured location. This command is invalid unless the Absolute bit of the LocationType attribute has a value of 0. P a y l o a d F o r m a t 3 . 1 3 . 2 . 3 . 2 . 1 The Set Device Configuration command payload SHALL be formatted as illustrated in Figure 3 - 47 . Figure 3 - 47 . Format of the Set Device Configuration Payload 1 2 2 2 2 Octets uint16 uint8 uint16 uint16 int16 Data Type Number RSSI Reporting Period Power Path Loss Calculation Measurements Exponent Period Field Name The fields of the payload correspond directly to the attributes with the same names. For details of their meaning and ranges see the descriptions of the individual attributes. 3 . 1 3 . 2 . 3 . 2 . 2 E f f e c t o n R e c e i p t command, the device SHALL update the attributes corresponding to (i.e., with the same On receipt of this names as) the payload fields. Get De vice Co nf ig urati on Co mman d 3.13.2.3.3 This command is used to request the location parameters of a device. The location parameters are used for calculating and reporting measured location. P a y l o a d F o r m a t 3 . 1 3 . 2 . 3 . 3 . 1 3 Figure The Get Device Configuration command payload SHALL be formatted as illustrated in . 48 -  3 - 80 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

177 ZigBee Cluster Library Specification Chapter 3 075123 ZigBee Document General – Figure 3 - 48 Get Device Configuration Payload . Format of the 8 Octets EUI64 Data Type Target Address Field Name The Target Address field contains the 64 bit IEEE address of the device for which the location parameters are - sending device, the address of the receiving being requested. This field MAY contain the address of the device or the address of a third device. Note: one reason a device MAY request its own configuration is that there MAY be a designated device commissioning time. It is also possible that which holds the configurations of other devices for distribution at the device MAY lose its configuration settings for some other reason (loss of power, reset). In the case of a third device, that device MAY sleep a lot and not be easily accessible. 3 . 1 3 . 2 . 3 . 3 . 2 E f f e c t o n R e c e i p t of this command, the device SHALL generate a Device Configuration Response command On receipt ). 3.13.2.4.1 ( 3.13.2.3.4 Get L ocati on Data Com mand as This command is used to request a device’s location information and channel parameters. It MAY be sent a unicast, multicast or broadcast frame. When sent as a broadcast frame, care SHOULD be taken to minimize in particular, it is recommended that the broadcast radius is set to 1. - the risk of a broadcast 'storm' devices MAY or MAY not acquire an Note: ( d store information on other devices' locations such that this information MAY be requested by another device. This is application dependent.) P a y l o a d F o r m a t 3 . 1 3 . 2 . 3 . 4 . 1 - The Get Location Data command payload SHALL be formatted as illustrated in Figure 3 . 49 Figure 3 - 49 . Format of the Get Location Data Payload 1 8 1 1 0 / 64 1 3 1 Bits uint8 EUI64 map8 Data Type l- d- Number o- Abs Target A R e- Compact Reca Broadcast Broadcast cul Responses dress lute served R e- Response ate Indicator Field Name sponse Only The highest 3 bits of the first octet are reserved and SHALL be set to zero. The Absolute Only field (bit 0 of the first octet) specifies the type of location information being requested. If Only field is set to one, the device is only requesting absolute location information (a device the Absolute MAY want to gather absolute node locations for use in its own location calculations, and MAY not be i n- terested in neighbors with calculated values). Otherwise, if the field is set to zero, the device is requesting all location information (absolute and calculated). , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 81

178 3 Chapter ZigBee Cluster Library Specification ZigBee Document 075123 General – The Recalculate field (bit 1 of the first octet) indicates whether the device is requesting that a new location d is set to zero, the device is requesting the currently stored location calculation be performed. If the fiel information. Otherwise, if the field is set to one, the device is requesting that a new calculation be performed. This field is only valid if the Absolute Only field is set to zero. he Broadcast Indicator field (bit 2 of the first octet) indicates whether the command is being sent as a T unicast, multicast or broadcast frame. If the field is set to one, the command is sent as a broadcast or mu l- ticast, else it is sent as a unicast. The B roadcast Response field (bit 3 of the first octet) indicates whether subsequent responses after the first (where the Number Responses field is greater than one) SHALL be unicast or broadcast. Broadcast responses can be used as a 'location beacon'. act Response field (bit 4 of the first octet) indicates whether subsequent responses after the first The Comp (where the Number Responses field is greater than one) SHALL be sent using the Location Data Notification or the Compact Location Data Notification command . The Number Responses field indicates the number of location responses to be returned. The information to be returned is evaluated this number of times, with a period equal to the value of the attribute, ReportingPeriod and a separate response is sent for each evaluation. This field SHALL have a minimum value of one. Values greater than one are typically used for situations where locations are changing. - bit IEEE address of the device for which the location informati on The Target Address field contains the 64 and channel parameters are being requested. If the Broadcast Indicator field is set to zero (i.e., the command is sent as a unicast) this field MAY contain the address of the receiving device, the address of the sending r device. If the Broadcast Indicator field is set to one (i.e., the command is device or the address of any othe sent as a broadcast or multicast) the target address is implicitly that of the receiving device, so this field SHALL be omitted. 3 . 1 3 . 2 . 3 . 4 . 2 E f f e c t o n R e c e i p t the Location Type field is set to zero, only a receiving device(s) that knows its On receipt of this command, if absolute location SHALL respond by generating a Location Data Response command. If the Location Type field is set to one, all devices receiving this command SHALL respond by generating a Location Data R e- sponse command. If the command is sent as a unicast, information for the device specified in the Target Address field SHALL tion is not be returned, if the receiving device has or can obtain the information for that device. If the informa available, the Status field of the Location Data Response command SHALL be set to NOT_FOUND. If the command is sent as a broadcast or multicast, receiving devices SHALL send back their own info r- mation (there is no IEEE target address in this ca se). If the Number Responses field is greater than one, the subsequent location readings/calculations SHALL be sent using the Location Data Notification or the Compact Location Data Notification command, depending d. on the value of the Reduced Response fiel 3.13.2.3.5 RSSI Res po nse C omman d This command is sent by a device in response to an RSSI Request command. P a y l o a d F o r m a t 3 . 1 3 . 2 . 3 . 5 . 1 . 50 - 3 Figure The command payload SHALL be formatted as illustrated in  3 - 82 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

179 ZigBee Cluster Library Specification Chapter 3 General – ZigBee Document 075123 3 - 50 . Format of the RSSI Response Command Payload Figure 8 2 2 2 1 1 Octets int8 int16 int16 int16 EUI64 uint8 Data Type Field NumberRSSIMeasurements RSSI Z Y X Replying Device Name The fields of the payload have the following meanings: ies neighbor that repl ce: The IEEE address of the Replying Devi to the RSSI request X, Y, Z: The coordinates of the replying node to the radio link expressed in dBm, between itself s registered by the replying node that refer , RSSI: The RSSI ed the RSSI request and the neighbor that perform packets How many : NumberRSSIMeasurements were considered to give the RSSI value (=1 meaning no mean is supported) 3 . 1 3 . 2 . 3 . 5 . 2 E f f e c t o n R e c e i p t On receipt of this command, the server side of the location cluster will wait for CalculationPeriod time and generate a Report RSSI Measurement command . 3.13.2.3.6 Send Pi ngs Com m and can This command is used to ple packets so that all its one - hop neighbors alert a node to start sending multi calculate the mean RSSI value of the radio link . 3 . 1 3 . 2 . 3 . 6 . 1 P a y l o a d F o r m a t - . The address field contains the IEEE Send Pings comm and SHALL be formatted as illustrated in Figure 3 51 address of the node that have to perform the blasting (the destination node of this command) and the other directly to the attributes with the same names. For details of their meaning fields of the payload correspond and ranges see the descriptions of the individual attributes. 3 51 . Format of the Send Pings Command Payload Figure - 1 2 8 Octets uint16 EUI64 uint8 D ata Type CalculationPeriod Target Address NumberRSSIMeasurements Field Name The Target Address field contains the IEEE address of the intended target node. This is included because there can be cases when the sender does not definitel y know the short address of the intended target (see below for effect on receipt). The other fields of the payload correspond directly to the attributes with the same names. For details of their meaning and ranges see the descriptions of the individual att ributes. 3 . 1 3 . 2 . 3 . 6 . 2 E f f e c t o n R e c e i p t On receipt of this command, the device SHALL update the attributes corresponding to (i.e., with the same names as) the payload fields and generate a number of RSSI Ping commands equal to time ationPeriod Calcul waiting for NumberRSSIMeasurements between successive transmission of pings. , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 83

180 3 Chapter ZigBee Cluster Library Specification ZigBee Document 075123 General – 3.13.2.3.7 An ch or No de An n ounce Co mman d This command is sent by an anchor node when it joins the network, if it is already commissioned with the s the exact position of that device. know s- This me coordinates, to announce itself so that the central device sage SHOULD be either unicast to the central node or broadcast in the case that of unknown destination address. 3 . 1 3 . 2 . 3 . 7 . 1 P a y l o a d F o r m a t Into the payload there are both the short and long addresses of the joining node as well as the coordinates of the node itself. 0xffff SHOULD be used if coordinates are not known. Figure The command payload SHALL be formatted as in 3 - 52 . Figure 3 - 52 . Format of the A nchor Node Announce Command Payload 2 2 2 8 Octets int16 int16 int16 EUI64 Data Type Y Anchor Node IEEE Address X Z Field Name The Anchor Node Address field contains the IEEE address of the anchor node. The other fields of the payload ly to the attributes with the same names. For details of their meaning and ranges see the correspond direct descriptions of the individual attributes. If any coordinate is unknown, it SHOULD be set to 0x8000. 3.13.2.4 Commands Generated Table 3 - 71 . Generated Command IDs for the RSSI Location Cluster Command Identifier M/O Description Field Value Device configuration response 0x00 M Location data response M 0x01 0x02 Location data notification M M 0x03 Compact location data notification RSSI Ping 0x04 M O RSSI Request 0x05 0x06 O Report RSSI Measurements Request Own Location 0x07 O De vice C on fig urat ion Respo nse C o mmand 3.13.2.4.1 This command is sent by a device in response to a Get Device Configuration command ( ). 3.13.2.3.3  3 - 84 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

181 ZigBee Cluster Library Specification Chapter 3 – 075123 General ZigBee Document 3 . 1 3 . 2 . 4 . 1 . 1 P a y l o a d F o r m a t The Device Configuration Response command payload SHALL be formatted as illustrated in Figure 3 - 53 . All payload fields are relevant to the device for which the location parameters have bee n requested. Figure 3 - 53 . Format of the Device Configuration Response Payload 0 / 1 0 / 2 0 / 2 0 / 2 0 / 2 1 Octets uint16 enum8 int16 uint16 uint8 uint16 Data Type Power Reporting Period Number RSSI Calculation Path Loss Status Measurements Expone nt Period Field Name The fields of the payload (other than Status) correspond directly to the attributes with the same names. For utes. details of their meaning and ranges see the descriptions of the individual attrib The Status field indicates whether the response to the request was successful or not. If the field is set to SUCCESS, the response was successful. If the field is set to NOT_FOUND, the receiving device was unable to provide the location parameters of the device for which the location parameters were requested. If the field is set to NOT_FOUND, all other payload fields SHALL NOT be sent. 3.13.2.4.2 Locat ion Da ta Res ponse Co mman d This command is sent by a device in response to a request for location information a nd channel parameters. 3 . 1 3 . 2 . 4 . 2 . 1 P a y l o a d F o r m a t Figure The Location Data Response command payload SHALL be formatted as illustrated in . All 54 - 3 payload fields are relevant to the device for which the location parameters have been requested . 3 - Figure . Format of the Location Data Response Payload 54 O c- 0 / 2 1 0 / 1 0 / 2 0 / 2 0 / 2 0 / 2 0 / 2 0 / 1 0 / 1 tets Data uint16 uint8 enum8 uint16 int16 enum8 data8 int16 int16 int16 Type l- Qua Loc a- Loc a- - Loca ity Coord i- Coord i- Path Loss Coord i- Field tion tion tion Status Power nate 2 nate 1 nate 3 - Mea Exponent Name Age Method Type sure The fields of the payload correspond directly to the attributes with the same names. For details of their nges see the descriptions of the individual attributes. meaning and ra If the Absolute bit of the Location Type field is set to 1, the Location Method, Quality Measure and Location Age fields are not applicable and SHALL NOT be sent. field is set to 1, the Coordinate 3 field SHALL NOT be sent. D bit of the Location Type - If the 2 , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 85

182 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General The Status field indicates whether the response to the request was successful or not. If the field is set to device was unable SUCCESS, the response was successful. If the field is set to NOT_FOUND, the receiving to provide the location parameters of the device for which the location parameters were requested. If the field is set to NOT_FOUND, all other payload fields SHALL NOT be sent. 3.13.2.4.3 Locat ion Da ta N ot ificat ion Co mman d odically by a device to announce its location information and channel parameters. This command is sent peri ReportingPeriod attribute. The period is equal to the value of the The location data notification command MAY be sent as a unicast or as a broadcast frame. When sent as a bro adcast frame, it is recommended that the broadcast radius is set to 1. 3 . 1 3 . 2 . 4 . 3 . 1 P a y l o a d F o r m a t The Location Data Notification command payload SHALL be formatted as illustrated in Figure - 55 . 3 Figure - 55 . Format of the Location Data Notification Payload 3 Octets 1 2 2 0 / 2 2 2 0 / 1 0 / 1 0 / 2 uint8 enum8 uint16 int16 int16 int16 uint16 int16 data8 Data Type Location Quality Location Path Loss Power i- Coord i- Coord r- Coo a- Loc nate 2 Measure Method dinate 1 tion onent Exp nate 3 Age Field Type Name The fields of the payload correspond directly to the attributes with the same names. For details of their meaning and ranges see the descriptions of the individual attributes. ion Type field is set to 1, the Coordinate 3 field SHALL NOT be sent. If the 2 D bit of the Locat - If the Absolute bit of the Location Type field is set to 1, the Location Method, Quality Measure and Location Age fields are not applicable and SHALL NOT be sent. o ti ficati on Comma nd Com pact Loca tio n Data N 3.13.2.4.4 This command is identical in format and use to the Location Data Notification command, except that the Power, Path Loss Exponent and Location Method fields are not included. RSSI Pin g Comma nd 3.13.2.4.5 e to enable listening devices to measure the received signal This command is sent periodically by a devic ReportingPeriod strength in the absence of other transmissions from that device. The period is given by the attribute. sent as a broadcast frame, The RSSI Ping command MAY be sent as a unicast or as a broadcast frame. When it is recommended that the broadcast radius is set to 1. P a y l o a d F o r m a t 3 . 1 3 . 2 . 4 . 5 . 1 56 - 3 Figure The RSSI Ping command payload SHALL be formatted as illustrated in .  , The ZigBee Alliance. All rights reserved. 3 - 86 Copyright Page 2007 - 2016

183 ZigBee Cluster Library Specification Chapter 3 General – 075123 ZigBee Document Figure 3 . Format of the RSSI Ping Command Payload 56 - 1 Octets data8 Data Type Location Type Field Name LocationType The Location Type field holds the value of the attribute. 3.13.2.4.6 RSSI Re ques t C o mmand ne A device uses this command to ask one, more, or all its o - hop neighbors for the (mean) RSSI value they hear from itself. 3 . 1 3 . 2 . 4 . 6 . 1 P a y l o a d F o r m a t The message is empty and MAY be used in broadcast (typical usage is broadcast with radius equal to one). 3 . 1 3 . 2 . 4 . 6 . 2 E f f e c t o n R e c e i p t by generating an RSSI Response command back to On receipt of this command, the device SHALL respond the sender of this request. Repo rt RSSI Meas uremen ts Comma nd 3.13.2.4.7 This command is sent by a device to report its measurements of the link between itself and one or more o, the device that sends this command is the device that needs to neighbors. In a centralized location scenari be localized. 3 . 1 3 . 2 . 4 . 7 . 1 P a y l o a d F o r m a t The Report RSSI measurement command SHALL be formatted as in Figure 3 - 57 . - . Figure 3 Command Payload 57 Format of the Report RSSI Measurements 8 1 N Octets Variable [E1] EUI64 uint8 Data Type NeighborsInfo N Neighbors Measuring Device Field Name - 3 Figure structure is reported in nfo sI Neighbor . 58 , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 87

184 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General Figure 3 - 58 . Neighbor Info Structure 2 1 1 2 2 8 Octets uint8 int8 int16 int16 int16 EUI64 Data Type NumberRSSI RSSI Z Y X Neighbor Field Name Measurements The fields in the payload have the following meanings: hop neighbours that reported the RSSI; indicates how many - rs: Numbers of one N Neighbo NeighborsInfo fields are present in the message. i.e., of the device that report the measurements ( Measuring Device: IEEE address the one that started the blast procedure) Neighbo rs information: Coordinates (if present) of the neighbor X,Y,Z: Neighbor: IEEE addr used to identify it if coordinates are either not present or not ess of the neighbor valid RSSI: RSSI value registered by the neighbor that refer to the radio link between i tself and measuring device is packets were considered to give the RSSI value (=1 meaning How many NumberRSSIMeasurements : that no mean is supported) 3.13.2.4.8 Reques t Ow n Loc atio n C omma nd to the device that performs the This command is sent by a node wishing to know its own location and it is sent centralized localization algorithm. 3 . 1 3 . 2 . 4 . 8 . 1 P a y l o a d F o r m a t command payload SHALL be formatted as illustrated in 3 Figure Request Own Location The The only . 59 - field in the payload contains the IEEE addres s of the blind node, i.e., the node that wishes to know about its own location. - 3 Figure . Format of the Command Payload 59 Request Own Location 8 Octets EUI64 Data Type Node IEEE Address of the Blind Field Name 3 . 1 3 . 2 . 4 . 8 . 2 E f f e c t O n R e c e i p t The node receiving the command will then reply with a Set Absolute Location Request Own Location command, telling the requesting entity its location.  3 - 88 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

185 ZigBee Cluster Library Specification Chapter 3 075123 General ZigBee Document – Client 3.13.3 specific commands received by - uster The client has no cluster specific attributes. The client generates the cl - specific commands ), as required by the application. The client receives the cluster 3.13.2.3 the server (see ). 3.13.2.4 generated by the server (see 3.14 Input, Output and Value Clusters 3.14.1 Overview Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classification, identification, etc. ’ properties of the Input, Output and This section specifies a number of clusters which are based on ‘Basic Value objects specified by BACnet (see [A1]). The clusters specified herein are for use typically in ZigBee Commercial Building applications, but MAY be used in any application domain. Analog Input (Basic) 3.14.2 The Analog Input (Basic) cluster provides an interface for reading the value of an analog measurement and istics of that measurement. The cluster is typically used to implement a sensor that accessing various character measures an analog physical quantity. Revision History 3.14.2.1 Rev Description ClusterRevision 1 attribute added mandatory global 3.14.2.2 Classification Hierarchy Role PICS Code Primar y Transaction Application Type 2 (server to client) AI Base 3.14.2.3 Cluster Identifiers Name Identifier 0x000c Analog Input Server 3.14.2.4 3.14.2.4.1 Depen dencies None At t ri bu tes 3.14.2.4.2 - 3 Table The attributes of this cluster are detailed in . 72 , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 89

186 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General - 72 . Attributes of the Analog Input (Basic) Server Cluster Table 3 Name Type Range Identifier Default M/O Access 0x001C Description string - R*W Null string O 0x0041 MaxPresentValue single - R*W - O R*W 0x0045 single - MinPresentValue - O 0x0051 OutOfService bool False (0) or True (1) R*W False (0) M 0x0055 PresentValue single - RWP - M - enum8 Reliability 0x0067 O 0x00 R*W 0x006A Resolution single - R*W - O 0x006F StatusFlags map8 0x00 - 0x0f RP 0 M See section gUnits Engineerin O - R*W enum16 0x0075 3.14.11.10 0xffffffff O - R - 0x0100 ApplicationType uint32 0 0 . For an explanation of the attributes, see section C o m m a n d s 3 . 1 4 . 2 . 4 . 2 . 1 No cluster specific commands are received or generated. 3 . 1 4 . 2 . 4 . 2 . 2 A t t r i b u t e R e p o r t i n g This cluster SHALL support attribute reporting using the Report Attributes and Configure Reporting co m- mum and maximum reporting interval, value and timeout settings. mands, according to the mini StatusFlags, PresentValue The following attributes SHALL be reported: Clien t 3.14.2.4.3 The client has no dependencies and no cluster specific attributes. The client does not receive or generate any ter specific commands. clus Analog Output (Basic) 3.14.3 The Analog Output (Basic) cluster provides an interface for setting the value of an analog output (typically to the environment) and accessing various characteristics of that value.  3 - 90 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

187 ZigBee Cluster Library Specification Chapter 3 075123 General – ZigBee Document 3.14.3.1 Revision History Rev Descrip tion 1 mandatory global ClusterRevision attribute added 3.14.3.2 Classification Hierarchy Role PICS Code Primary Transaction Base Application A O Type 2 (server to client) Identifiers 3.14.3.3 Cluster Identifier Name 0x000 d Analog Output Server 3.14.3.4 3.14.3.4.1 Depen dencies None 3.14.3.4.2 At t ri b u tes The attributes of this cluster are detailed in Table 3 - 73 . Table 3 - 73 . Attributes of the Analog Output (Basic) Server Cluster A c- Identifier Name Type Range M/O cess Default O Null R*W - string C 0x001 Description string O single - 0x0041 R*W - MaxPresentValue 0x0045 O single - R*W - MinPresentValue M False bool 0x0051 R*W False (0) OutOfService (0) or True (1) single - 0x0055 M - RWP PresentValue O Array of 16 structures - 0x0057 RW 16 x PriorityArray of (bool, single) (0, 0.0) 0x0067 O enum8 - R*W 0x00 Reliability O 0x0068 - single - R*W RelinquishDefault - 0x006A O R*W - single Resolution 2016  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 3 - 91

188 Chapter ZigBee Cluster Library Specification 3 – ZigBee Document General 075123 A c- Type Range cess Identifier Default M/O Name 0x0f map8 0x00 - 0x006F RP 0 M StatusFlags 0x0075 O enum16 See sec tion - R*W EngineeringUnits 3.14.11.10 0xffffffff - 0 uint32 O - R 0x0100 ApplicationType For an explanation of the attributes, see section 0 . 3.14.3.4.3 Comma nds No cluster specific commands are received or generated. 3.14.3.4.4 At t ri bu te Re por ti n g This cluster SHALL support attribute reporting using the Report Attributes and Configure Reporting co m- mands, according to the minimum and maximum reporting interval, v alue and timeout settings. The following attributes SHALL be reported: StatusFlags, PresentValue 3.14.3.5 Client The client has no dependencies and no cluster specific attributes. The client does not receive or generate any cluster specific commands. 3.14.4 Analog Value ( Basic) The Analog Value (Basic) cluster provides an interface for setting an analog value, typically used as a control system parameter, and accessing various characteristics of that value. 3.14.4.1 Revision History Rev Description attribute added ion 1 mandatory global ClusterRevis Classification 3.14.4.2 Hierarchy Role PICS Code Primary Transaction Type 2 (server to client) Base Application A V Identifiers 3.14.4.3 Cluster Name Identifier Value Analog e 0x000 Page - 92 Copyright  3 2007 - 2016 , The ZigBee Alliance. All rights reserved.

189 ZigBee Cluster Library Specification Chapter 3 075123 General – ZigBee Document 3.14.4.4 Server 3.14.4.4.1 Depen dencies None 3.14.4.4.2 At t ri bu tes e detailed in . 3 - 74 The attributes of this cluster ar Table 3 - 74 . Attributes of the Analog Value (Basic) Server Cluster Table M/O Access Identifier Name Type Range Default R*W string - Description Null string O 0x001C False (0) OutOfService bool M R*W False (0) 0x0051 or True (1) M 0x0055 PresentValue single - R/W - Array of 16 16 x 0x0057 R/W O structures of - PriorityArray (0, 0.0) (bool, single) Reliability enum8 O R*W 0x00 0x0067 - 0x0068 RelinquishDefault single - R*W - O M 0x006F StatusFlags map8 0x00 - 0x0f R 0 See section O enum16 EngineeringUnits - R*W 0x0075 3.14.11.10 - R O - 0x0100 ApplicationType uint32 0 0xffffffff . For an explanation of the attributes, see section 0 Comma nds 3.14.4.4.3 No cluster specific commands are received or generated. 3.14.4.4.4 At t ri bu te Re por ti n g the Report Attributes and Configure Reporting co This cluster SHALL support attribute reporting using m- mands, according to the minimum and maximum reporting interval, value and timeout settings. The following attributes SHALL be reported: StatusFlags, PresentValue 3.14.4.5 Client The client has no dependencies and no cluster specific attributes. The client does not receive or generate any cluster specific commands. , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 93

190 Chapter ZigBee Cluster Library Specification 3 – ZigBee Document 075123 General Binary Input (Basic) 3.14.5 The Binary Input (Basic) cluster provides an interface for reading the value of a binary measurement and accessing various characteris tics of that measurement. The cluster is typically used to implement a sensor that measures a two - state physical quantity. 3.14.5.1 Revision History Rev Description attribute added ClusterRevision 1 mandatory global 3.14.5.2 Classification Role PICS Code Primar y Transaction Hierarchy Base Application BI Type 2 (server to client) 3.14.5.3 Identifiers Cluster Identifier Name f 0x000 Binary Input 3.14.5.4 Server 3.14.5.4.1 Depen dencies None 3.14.5.4.2 At t ri bu tes The attributes of this cluster are detailed in . 75 - 3 Table . Attributes of the Binary Input (Basic) Server Cluster 75 - 3 Table Access Identifier Type Range Name Default M/O 0x0004 ActiveText string - R*W Null string O 0x001C Description string - R*W Null string O 0x002E InactiveTex t string - R*W Null string O R*W 0x0051 bool False (0) or True (1) OutOfService False (0) M 0x0054 Polarity enum8 - R 0 O 0x0055 PresentValue bool - R*W - M R*W - enum8 0x0067 Reliability O 0x00  3 - 94 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

191 ZigBee Cluster Library Specification Chapter 3 General – ZigBee Document 075123 Name Identifier Range Access Default M/O Type 0 R 0x0f - M 0x006F StatusFlags map8 0x00 uint32 O - R 0x0100 0xffffffff Applic ationType 0 - 0 . For an explanation of the attributes, see section Comma nds 3.14.5.4.3 . No cluster specific commands are received or generated At t ri bu te Re por ti n g 3.14.5.4.4 This cluster SHALL support attribute reporting using the Report Attributes and Configure Reporting co m- mands, according to the minimum and maximum reporting interval, value and timeout settings. The following attributes SHALL be report ed: StatusFlags, PresentValue 3.14.5.5 Client The client has no dependencies and no cluster specific attributes. The client does not receive or generate any cluster specific commands. 3.14.6 Binary Output (Basic) The Binary Output (Basic) cluster provides an interface for setting the value of a binary output, and accessing various characteristics of that value. Revision History 3.14.6.1 Rev Description mandatory global 1 ClusterRevision attribute added 3.14.6.2 Classification Role Hierarchy Primary Transaction PICS Code Type 2 (server to client) Base Application BO Cluster Identifiers 3.14.6.3 Name Identifier 10 Binary Output 0x00 Server 3.14.6.4 Depen dencies 3.14.6.4.1 None , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 95

192 Chapter ZigBee Cluster Library Specification 3 – General ZigBee Document 075123 At t ri bu tes 3.14.6.4.2 3 The attributes of this cluster are detailed in 76 . Table - 3 - 76 . Attributes of the Binary Output (Basic) Server Cluster Table Name Type Range Access Default M/O Identifier Null string - R*W ActiveText 0x0004 O string Null Description string - R*W 0x001C O string Null R*W string - 0x002E InactiveText O string 0x0042 MinimumOffTime uint32 - R*W 0xffffffff O 0x0043 MinimumOnTime uint32 - R*W 0xffffffff O False (0) or True (1) bool OutOfService 0x0051 M False (0) R*W R 0x0054 enum8 - Polarity 0 O PresentValue - bool - R*W 0x0055 M Array of 16 stru c- 16 x (0, 0x0057 PriorityArray tures of O - R/W 0) (bool, bool) 0x00 O R*W - enum8 0x0067 Reliability - RelinquishDefault bool 0x0068 R*W - O M 0 0x006F StatusFlags map8 R 0x00 - 0x0f O R 0x0100 ApplicationType 0xffffffff uint32 0 - - . 0 For an explanation of the attributes, see section 3.14.6.4.3 Comma nds No cluster specific commands are received or generated. At t ri bu te Re por ti n g 3.14.6.4.4 g using the Report Attributes and Configure Reporting co m- This cluster SHALL support attribute reportin mands, according to the minimum and maximum reporting interval, value and timeout settings. StatusFlags, PresentValue The following attributes SHALL be reported:  3 - 96 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

193 ZigBee Cluster Library Specification Chapter 3 – 075123 General ZigBee Document 3.14.6.5 Client The client has no dependencies , no attributes, and receives or generates no cluster specific commands. 3.14.7 Binary Value (Basic) The Binary Value (Basic) cluster provides an interface for setting a binary value, typically used as a control system parameter, and accessing various characteris tics of that value. 3.14.7.1 Revision History Rev Description ClusterRevision mandatory global 1 attribute added Classification 3.14.7.2 Hierarchy Role PICS Code Primary Transaction Type 2 (server to client) Base Application BV 3.14.7.3 Cluster Identifiers Identifier Name Binary Value 11 0x00 3.14.7.4 Server 3.14.7.4.1 Depen dencies None At t ri bu tes 3.14.7.4.2 77 - 3 Table The attributes of this cluster are detailed in . - 77 . Attributes of the Binary Value (Basic) Server Cluster 3 Table ifier Name Default Type Range Access Ident M/O 0x0004 O string - R*W Null string ActiveText O 0x001C string - R*W Null string Description O string - 0x002E R*W Null string InactiveText 0x0042 O uint32 - R*W 0xffffffff MinimumOffTime O 0x0043 0xffffffff uin t32 - R*W MinimumOnTime False (0) bool 0x0051 M False (0) R*W OutOfService or True (1) , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 97

194 Chapter ZigBee Cluster Library Specification 3 – 075123 ZigBee Document General Name Type Ident Range Access Default M/O ifier 0x0055 bool - R*W - M PresentValue 16 x (0, 0) Array of 16 stru c- 0x0057 - R/W O PriorityArray tures of (bool, bool) 0x0067 O enum8 - R*W 0x00 Reliability 0x0068 O - bool - R*W nquishDefault Reli R 0x0f - 0x00 map8 M 0 0x006F StatusFlags 0x0100 O uint32 0 - 0xffffffff R - ApplicationType For an explanation of the attributes, see section 0 . 3.14.7.4.3 Comma nds No cluster specific commands are received or generated. 3.14.7.4.4 At t ri bu te Re por ti n g This cluster SHALL support attribute reporting using the Report Attributes and Configure Reporting co m- orting interval, value and timeout settings. mands, according to the minimum and maximum rep The following attributes SHALL be reported: StatusFlags, PresentValue 3.14.7.5 Client The client has no dependencies and no cluster specific attributes. The client does not receive or generate any cluster specific comman ds. 3.14.8 Multistate Input (Basic) The Multistate Input (Basic) cluster provides an interface for reading the value of a multistate measurement and accessing various characteristics of that measurement. The cluster is typically used to implement a sensor that me asures a physical quantity that can take on one of a number of discrete states. 3.14.8.1 Revision History Rev Description 1 mandatory global ClusterRevision attribute added 3.14.8.2 Classification Primary Transaction PICS Code Hierarchy Role I M Application Base erver to client) Type 2 (s Page - 98 Copyright  3 2007 - 2016 , The ZigBee Alliance. All rights reserved.

195 ZigBee Cluster Library Specification Chapter 3 075123 General – ZigBee Document Cluster Identifiers 3.14.8.3 Identifier Name 12 Multistate Input 0x00 3.14.8.4 Server 3.14.8.4.1 Depen dencies None At t ri bu tes 3.14.8.4.2 The attributes of this cluster are detailed in Table 3 - 78 . Table 3 - 78 . Attributes of the Multistate Input (Basic) Server Cluster A c- Identifier Range Type Name Default MO cess Array of StateText - R*W Null O 0x000E character string 0x001C Description string - R*W Null string O 0xffff - 1 uint16 M 0 R*W 0x004A NumberOfStates R*W 0x0051 bool False (0) or True (1) OutOfService False (0) M 0x0055 PresentValue uint16 - R*W - M 0x0067 Reliability enum8 - R*W 0x00 O 0x0f - M 0 R 0x00 0x006F StatusFlags map8 - O - R 0xffffffff 0x0100 ApplicationType uint32 0 . 0 For an explanation of the attributes, see section Comma nds 3.14.8.4.3 No cluster specific commands are received or generated. At t ri bu te Re por ti n g 3.14.8.4.4 m- bute reporting using the Report Attributes and Configure Reporting co This cluster SHALL support attri mands, according to the minimum and maximum reporting interval, value and timeout settings. The following attributes SHALL be reported: StatusFlags , PresentValue 3.14.8.5 Client The client has no dependencies and no cluster specific attributes. The client does not receive or generate any cluster specific commands. , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 99

196 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General Multistate Output (Basic) 3.14.9 The Multistate Output (Basic) cluster provides an interface for setting the value of an output that can take one of a number of discrete values, and accessing characteristics of that value. Revision History 3.14.9.1 Description Rev 1 mandatory global ClusterRevision attribute added 3.14.9.2 Classification Role Hierarchy PICS Code Primary Transaction Base Application MO Type 2 (server to client) 3.14.9.3 Identifiers Cluster Identifier Name 13 0x00 Multistate Output 3.14.9.4 Server 3.14.9.4.1 Depen dencies None 3.14.9.4.2 At t ri bu tes The attributes of this cluster are detailed in Table 3 - 79 . Table 3 - 79 . Attributes of the Multistate Output (Basic) Server Cluster Default Access Range Type Name Identifier M/O Array of 0x000E StateText O - R*W Null character string 0x001C Description string - R*W Null string O 0x004A NumberOfStates uint16 1 - 0xfff f R*W 0 M False (0) or 0x0051 bool OutOfService R*W False (0) M True (1) 0x0055 PresentValue uint16 - R/W - M Array of 16 structures - PriorityArray 0x0057 O R/W 16 x (0, 0) of (bool, uint16) Reliability O 0x00 R*W 0x0067 - enum8  3 - 100 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

197 ZigBee Cluster Library Specification Chapter 3 General – ZigBee Document 075123 Name Identifier Range Access Default M/O Type - R*W - uint16 O 0x0068 RelinquishDefa ult - 0x0f StatusFlags map8 0x00 0x006F R 0 M - 0 R - O 0xffffffff 0x0100 ApplicationType uint32 . 0 For an explanation of the attributes, see section 3.14.9.4.3 Comma nds No cluster specific commands are received or generated. 3.14.9.4.4 At t ri bu te Re por ti n g This cluster SHALL support attribute reporting using the Report Attributes and Configure Reporting co m- mands, according to the minimum and maximum reporting i nterval, value and timeout settings. StatusFlags, PresentValue The following attributes SHALL be reported: Client 3.14.9.5 The client has no dependencies and no cluster specific attributes. The client does not receive or generate any cluster specific commands. istate Value (Basic) 3.14.10 Mult The Multistate Value (Basic) cluster provides an interface for setting a multistate value, typically used as a control system parameter, and accessing characteristics of that value. 3.14.10.1 Revision History Rev Description attribute added ClusterRevision mandatory global 1 3.14.10.2 Classification Role Hierarchy Primary Transaction PICS Code Application Type 2 (server to client) Base MV 3.14.10.3 Identifiers Cluster Name Identifier 0x00 14 Multistate Value Server 3.14.10.4 Dependencies 3.14.10.5 None , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 101

198 Chapter ZigBee Cluster Library Specification 3 – General ZigBee Document 075123 At t ri bu tes 3.14.10.5.1 this cluster are detailed in Table 3 The attributes of 80 . - 3 - 80 . Attributes of the Multistate Value (Basic) Server Cluster Table Name Type Range Access Default M/O Identifier Array of cha r- - 0x000E StateText R*W Null O acter string R*W 0x001C string - Description Null string O 0x004A NumberOfStates uint16 1 - 0xffff R*W 0 M 0x0051 OutOfService bool False (0) or True (1) R*W False (0) M PresentValue 0x0055 M - R/W - uint16 Arr ay of 16 - O structures of PriorityArray R/W 16 x (0, 0) 0x0057 (bool, uint16) 0x0067 Reliability enum8 - R*W 0x00 O 0x0068 RelinquishDefault uint16 - R*W - O StatusFlags R 0x0f - M 0 0x006F 0x00 map8 O - R 0x0100 ApplicationType uint32 0 - 0xffffffff . For an explanation of the attributes, see section 0 3.14.10.5.2 Comma nds No cluster specific commands are received or generated. 3.14.10.5.3 At t ri bu te Re por ti n g eporting using the Report Attributes and Configure Reporting co m- This cluster SHALL support attribute r mands, according to the minimum and maximum reporting interval, value and timeout settings. StatusFlags, PresentValue The following attributes SHALL be reported: 3.14.10.6 Client The client has no depen dencies and no cluster specific attributes. The client does not receive or generate any cluster specific commands. Attribute Descriptions 3.14.11 Note: These attributes are based on BACnet properties with the same names. For more information, refer to eference manual [A1]. the BACnet r  3 - 102 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

199 ZigBee Cluster Library Specification Chapter 3 – 075123 General ZigBee Document Attribute 3.14.11.1 OutOfService OutOfService The attribute, of type Boolean, indicates whether (TRUE) or not (FALSE) the physical input, output or value that the cluster represents is not in service. For an Input cluster, when OutOfService is TRUE the attribute is decoupled from the physical input and will not track changes to the physical PresentValue OutOfService is TRUE the PresentValue input. For an Output cluster, when attribute is decoupled from the will not affect the physical output. For a Value cluster, when physical output, so changes to PresentV alue OutOfService PresentValue is TRUE the attribute MAY be written to freely by software local to the device that the cluster resides on. PresentValue 3.14.11.2 At tribute PresentValue The icates the current value of the input, output or value, as appropriate for the attribute ind cluster. For Analog clusters it is of type single precision, for Binary clusters it is of type Boolean, and for bit integer. - multistate clusters it is of type Unsigned 16 esentValue attribute of an input cluster SHALL be writable when is TRUE. The Pr OutOfService SHALL be equivalent to writing PresentValue attribute is implemented, writing to PriorityArray When the , i.e., with a priority of 16. PriorityArray to element 16 of 3.14.11.3 Statu sFlags Attribute This attribute, of type bitmap, represents four Boolean flags that indicate the general “health” of the analog sensor. Three of the flags are associated with the values of other optional attributes of this cluster. A more detailed status c ould be determined by reading the optional attributes (if supported) that are linked to these flags. The relationship between individual flags is not defined. The four flags are Bit 0 = IN ALARM, Bit 1 = FAULT, Bit 2 = OVERRIDDEN, Bit 3 = OUT OF SERVICE wh ere: attribute has a value of NORMAL, otherwise logical IN ALARM Logical FALSE (0) if the EventState - TRUE (1). This bit is always 0 unless the cluster implementing the EventState attribute is implemented on the same endpoint. Reliability Logical TRUE (1) if the FAULT - attribute is present and does not have a value of NO FAULT DETECTED, otherwise logical FALSE (0). OVERRIDDEN Logical TRUE (1) if the cluster has been overridden by some mechanism local to the - device. Otherwise, the value is logical FALSE (0). In this context, for an input cluster, “overridden” is taken to mean that the PresentValue and Reliability (optional) attributes are no longer tracking changes to the physical input. For an Output cluster, “overridden” is taken to mean that the physic PresentValue attribute and the al output is no longer tracking changes to the attribute is no longer a reflection of the physical output. For a Value cluster, “overridden” is taken Reliability to mean that the PresentValue attribute is not writeable. OutOfService OUT O attribute has a value of TRUE, otherwise logical F SERVICE Logical TRUE (1) if the - FALSE (0). 3.14.11.4 Attribute Description attribute, of type Character string, MAY be used to hold a description of the usage of the Description The t- alue, as appropriate to the cluster. The character set used SHALL be ASCII, and the a input, output or v e- tribute SHALL contain a maximum of 16 characters, which SHALL be printable but are otherwise unr stricted. , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 103

200 Chapter ZigBee Cluster Library Specification 3 – ZigBee Document 075123 General Attribute 3.14.11.5 MaxPresentValue attribute, of ty The MaxPresentValue pe Single precision, indicates the highest value that can be reliably obtained for the PresentValue attribute of an Analog Input cluster, or which can reliably be used for the attribute of an Analog Output or Analog Value cluster. PresentValue 3.14.11.6 Attribute y PriorityArra The PriorityArray attribute is an array of 16 structures. The first element of each structure is a Boolean, and the second element is of the same type as the PresentValue attribute of the corresponding cluster. lues for the holds potential va PresentValue attribute of the corresponding cluster, in order of PriorityArray e- decreasing priority. The first value in the array corresponds to priority 1 (highest), the second value corr nds to priority 16 (lowest). sponds to priority 2, and so on, to the sixteenth value that correspo The Boolean value in each element of the array indicates whether (TRUE) or not (FALSE) there is a valid value at that priority. All entries within the priority table are continuously monitored in order to locate the entry with the highest priority valid value, and PresentValue is set to this value. PriorityArray When MAY be written to indirectly by writing to the PresentValue is supported, PriorityArray is written to directly, a default prior PresentValue ity of 16 (the lowest , as described above. If PriorityArray . priority) SHALL be assumed, and the value is entered into the 16th element of When a value at a given priority is marked as invalid, by writing FALSE to its corresponding Boolean value, it is said to be relinquished. In BACnet, each element of PriorityArray consists of a single value, which MAY be Informative note: ( either of the same type as or MAY be of type NULL to indicate that a value is not present. In PresentValue ZigBee an attribute cannot have a variable data t ype, thus an extra Boolean value is associated with each element of the array to indicate whether or not it is null). 3.14.11.7 RelinquishDefault Attribute RelinquishDefault attribute is the default value to be used for the PresentValue attribute when all el e- The PriorityArray ts of the men attribute are marked as invalid. 3.14.11.8 MinPresentValue Attribute The MinPresentValue attribute, of type Single precision, indicates the lowest value that can be reliably o b- tained for the PresentValue attribute of an Analog Input cluster, or which can reliably be used for the PresentValue attribute of an Analog Output or Analog Value cluster. Attribute Reliability 3.14.11.9 bit enumeration, provides an indication of whether the Reliability attribute, of type 8 - The PresentValue or the physical input, output or value in question (as appropriate for the cluster) is “reliable” as far operation of the attribute MAY have any of the following values: Reliability as can be determined and, if not, why not. The - FAULT - DETECTED (0) NO - NO - SENSOR (1) for input c lusters only OVER - RANGE (2) - RANGE (3) UNDER LOOP (4) - OPEN LOOP (5) - SHORTED - NO for input clusters only - OUTPUT (6)  3 - 104 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

201 Chapter 3 ZigBee Cluster Library Specification 075123 General ZigBee Document – UNRELIABLE - OTHER (7) PROCESS - ERROR (8) for multistate clusters only FAULT (9) MULTI - STATE - - ERROR (10) - CONFIGURATION 3.14.11.10 EngineeringUnits Attrib ute attribute indicates the physical units associated with the value of the PresentValue The EngineeringUnits attribute of an Analog cluster. Values 0x0000 to 0x00fe are reserved for the list of engineering units with corresponding values specified in Cla use 21 of the BACnet standard [A1]. 0x00ff represents 'other'. Values 0x0100 to 0xffff are available for proprietary use. If the ApplicationType attribute is implemented, and is set to a value with a defined physical unit, the physical EngineeringUnits . unit defined in Appl icationType takes priority over This attribute is defined to be Read Only, but a vendor can decide to allow this to be written to if ApplicationType is also supported. If this attribute is written to, how the device handles invalid units (e.g., specific operation (upon the - changing Deg F to Cubic Feet per Minute), any local display or other vendor change) is a local matter. 3.14.11.11 Attribute Resolution This attribute, of type Single precision, indicates the smallest recognizable change to Presen tValue. Attribute 3.14.11.12 ActiveText This attribute, of type Character string, MAY be used to hold a human readable description of the ACTIVE state of a binary . For example, for a Binary Input cluster, if the physical input is a switch PresentValue he contact, then t ActiveText attribute might be assigned a value such as “Fan 1 On”. If either the ActiveText InactiveText attribute or the attribute are present, then both of them SHALL be present. The character set used SHALL be ASCII, and the attribute SHALL contain a maximum of 16 characters, which SHALL be printable but are otherwise unrestricted. 3.14.11.13 InactiveText Attribute This attribute, of type Character string, MAY be used to hold a human readable description of the INACTIVE state of a binary le, for a Binary Input cluster, if the physical input is a switch . For examp PresentValue InactiveText contact, then the attribute might be assigned a value such as “Fan 1 Off”. If either the be present. attribute or the attribute are present, then both of them SHALL InactiveText ActiveText The character set used SHALL be ASCII, and the attribute SHALL contain a maximum of 16 characters, which SHALL be printable but are otherwise unrestricted. MinimumOffTime 3.14.11.14 Attribute minimum number of seconds that a binary This property, of type 32 - bit unsigned integer, represents the SHALL remain in the INACTIVE (0) state after a write to causes it to assume the PresentValue PresentValue INACTIVE state. MinimumOnTime Attribute 3.14.11.15 This property, of type 32 - bit unsigned integer, represents the minimu m number of seconds that a binary causes it to assume the SHALL remain in the ACTIVE (1) state after a write to PresentValue PresentValue ACTIVE state. , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 105

202 Chapter ZigBee Cluster Library Specification 3 General – ZigBee Document 075123 3.14.11.16 Polarity Attribute This attribute, of type enumeration, indicates the relationship between the physical state of the input (or output as appropriate for the cluster) and the logical state represented by a binary PresentValue attribute, Polarity OutOfService attribute is NORMAL (0), then the ACTIVE (1) state of the when is FALSE. If the PresentValue Polarity is also the ACTIVE or ON state of the physical input (or output). If the attribute attribute is REVERSE (1), then the ACTIVE (1) state of the PresentValue attribute is the INACTIVE or OFF state of the physical input (or output). is OutOfService Thus, when attribute Polarity FALSE, for a constant physical input state a change in the attribute. If attribute Polarity SHALL produce a change in the PresentValue is TRUE, then the OutOfService PresentValue SHALL have no effect on the attribute. 3.14.11.17 ribute Att NumberOfStates PresentValue bit integer, defines the number of states that a multistate This attribute, of type Unsigned 16 - property SHALL always have a value greater than zero. If the value of this NumberOfStates MAY have. The array, if present, SHALL also be changed to the same value. The StateText property is changed, the size of the states are numbered consecutively, starting with 1. 3.14.11.18 StateText Attribute This attribute, of type Array of Character strings, holds descriptions of all possible states of a multistate PresentValue . The number of descriptions matches the number of states defined in the NumberOfStates property. The PresentValue , interpreted as an integer, serves as an index into the array. If the size of this array is changed, the NumberOfStates property SHALL also be changed to the same value. The character set used SHALL be ASCII, and the attribute SHALL contain a maximum of 16 characters, which SHALL be printable but are otherwise unrestricted. 3.14.11.19 ApplicationType Attribute ApplicationType an unsigned 32 bit integer that indicates the specific application usage for The attribute is this cluster. ( Note: This attribute has no BACnet equivalent.) is subdivided into Group, Type and an Index number, as follows. ApplicationType Group = Bits 24 - 31 An indicatio n of the cluster this attribute is part of. 23 - Type = Bits 16 For Analog clusters, the physical quantity that the Present Value attribute of the cluster represents. For Binary and Multistate clusters, the application usage domain. - 15 Index = Bits 0 The specific application usage of the cluster. 3.14.11.19.1 An alo g I npu t ( AI ) T yp es Group = 0x00. The following sub clauses describe the values when Type = 0x00 - 0x0E. Types 0x0F to 0xFE are reserved, - Type = 0xFF indicates other. s C T yp e = 0 x 0 0 : T e m p e r a t u r e i n d e g r e e 3 . 1 4 . 1 1 . 1 9 . 1 . 1 . AI Types, Type = 0x00: Temperature in Degrees C 81 - 3 Table Index Application Usage  3 - 106 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

203 ZigBee Cluster Library Specification Chapter 3 075123 General ZigBee Document – Application Usage Index 2 Pipe Entering Water Temperature AI 0x0000 2 Pipe Leaving Water Temperature AI 0x0001 0x0002 ature AI Boiler Entering Temper 0x0003 Boiler Leaving Temperature AI Chiller Chilled Water Entering Temp AI 0x0004 Chiller Chilled Water Leaving Temp AI 0x0005 0x0006 Chiller Condenser Water Entering Temp AI Chiller Condenser Water Leaving Temp AI 0x0007 Temperature AI Cold Deck 0x0008 0x0009 Cooling Coil Discharge Temperature AI Cooling Entering Water Temperature AI 0x000A 0x000B Cooling Leaving Water Temperature AI 0x000C Condenser Water Return Temperature AI 0x000D Condenser Water Supply Temperature AI Deco 0x000E uple Loop Temperature AI 0x000F Building Load AI Decouple Loop Temperature AI 0x0010 0x0011 Dew Point Temperature AI Discharge Air Temperature AI 0x0012 0x0013 Discharge Temperature AI 0x0014 Exhaust Air Temperature After Heat Recovery AI Exh aust Air Temperature AI 0x0015 0x0016 Glycol Temperature AI 0x0017 Heat Recovery Air Temperature AI 0x0018 Hot Deck Temperature AI Heat Exchanger Bypass Temp AI 0x0019 Heat Exchanger Entering Temp AI 0x001A , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 107

204 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General Application Usage Index Heat Exchanger Leaving Temp AI 0x001B anical Room Temperature AI Mech 0x001C Mixed Air Temperature AI 0x001D 0x001E Mixed Air Temperature AI Outdoor Air Dewpoint Temp AI 0x001F Outdoor Air Temperature AI 0x0020 0x0021 Preheat Air Temperature AI Preheat Entering Water Temperature AI 0x0022 eheat Leaving Water Temperature AI Pr 0x0023 0x0024 Primary Chilled Water Return Temp AI Primary Chilled Water Supply Temp AI 0x0025 0x0026 Primary Hot Water Return Temp AI 0x0027 Primary Hot Water Supply Temp AI 0x0028 Reheat Coil Discharge Temperature AI 029 0x0 Reheat Entering Water Temperature AI 0x002A Reheat Leaving Water Temperature AI Return Air Temperature AI 0x002B 0x002C Secondary Chilled Water Return Temp AI Secondary Chilled Water Supply Temp AI 0x002D 0x002E Secondary HW Return Temp AI 0x002F Secondary HW Supply Temp AI 0x0030 Sideloop Reset Temperature AI 0x0031 Sideloop Temperature Setpoint AI 0x0032 Sideloop Temperature AI 0x0033 Source Temperature Supply Air Temperature AI 0x0034 Supply Low Limit Temperature AI 0x0035  3 - 108 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

205 Chapter 3 ZigBee Cluster Library Specification ZigBee Document General – 075123 Index Application Usage 0x0036 Tower B asin Temp AI Two Pipe Leaving Water Temp AI 0x0037 0x0038 Reserved Zone Dewpoint Temperature AI 0x0039 0x003A Zone Sensor Setpoint AI Zone Sensor Setpoint Offset AI 0x003B 0x003C Zone Temperature AI Vendor defined 0xFFFE 0x0200 - 0xFFFF Other = 0 x 0 1 : R e l a t i v e H u m i d i t y i n % T yp e 3 . 1 4 . 1 1 . 1 9 . 1 . 2 82 - 3 Table . AI Types, Type = 0x01: Relative Humidity in % Application Usage Index 0x0000 Discharge Humidity AI 0x0001 Exhaust Humidity AI 0x0002 Hot Deck Humidity AI 0x0003 Mixed Air Humidity AI 0x0004 Outdoor Air Humidity AI Return Humidity AI 0x0005 0x0006 Sideloop Humidity AI 0x0007 Space Humidity AI 0x0008 Zone Humidity AI - 0x0200 Vendor defined 0xFFFE 0xFFFF Other T yp e = 0 x 0 2 : P r e s s u r e i n P a s c a l 3 . 1 4 . 1 1 . 1 9 . 1 . 3 3 . AI Types, Type = 0x02: Pressure in Pascal - Table 83 Application Usage Index 0x0000 Boiler Pump Differential Pressure AI , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 109

206 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General Application Usage Index Building Static Pressure AI 0x0001 Cold Deck Differential Pressure Sensor AI 0x0002 0x0003 d Water Building Differential Pressure AI Chille 0x0004 Cold Deck Differential Pressure AI Cold Deck Static Pressure AI 0x0005 Condenser Water Pump Differential Pressure AI 0x0006 0x0007 Discharge Differential Pressure AI I Discharge Static Pressure 1 A 0x0008 Discharge Static Pressure 2 AI 0x0009 0x000A Exhaust Air Differential Pressure AI 0x000B Exhaust Air Static Pressure AI 0x000C Exhaust Differential Pressure AI 0x000D Exhaust Differential Pressure AI 0x000E Hot Deck Differential Pressure AI Hot Deck Differential Pressure AI 0x000F Hot Deck Static Pressure AI 0x0010 0x0011 Hot Water Bldg Diff Pressure AI 0x0012 Heat Exchanger Steam Pressure AI Minimum Outdoor Air Differential Pressure AI 0x0013 0x0014 Outdoor Air Differential Pressure AI 0x001 Primary Chilled Water Pump Differential Pressure AI 5 Primary Hot water Pump Differential Pressure AI 0x0016 0x0017 Relief Differential Pressure AI 0x0018 Return Air Static Pressure AI Return Differential Pressure AI 0x0019 ter Pump Differential Pressure AI Secondary Chilled Wa 0x001A Secondary Hot water Pump Differential Pressure AI 0x001B  3 - 110 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

207 ZigBee Cluster Library Specification Chapter 3 075123 General ZigBee Document – Application Usage Index Sideloop Pressure AI 0x001C 0x001D Steam Pressure AI Supply Differential Pressure Sensor AI 0x001E Vendor defined 0xFFFE - 0x0200 0xFFFF Other 3 . 1 4 . 1 1 . 1 9 . 1 . 4 T yp e = 0 x 0 3 : F l o w i n L i t e r s / S e c o n d . AI Types, Type = 0x03: Flow in Liters/Second 3 Table - 84 Application Usage Index Chilled Water Flow AI 0x0000 0x0001 Chiller Chilled Water Flow AI Chiller Condenser Water Flow AI 0x0002 0x0003 Cold Deck Flow AI 0x0004 Decouple Loop Flow AI 0x0005 Discharge Flow AI Exhaust Fan Flow AI 0x0006 0x0007 Exhaust Flow AI 0x0008 Fan Flow AI 0x0009 Hot Deck Flow AI Hot Water Flow AI 0x000A 0x000B Minimum Outdoor Air Fan Flow AI 0x000C Min imum Outdoor Air Flow AI 0x000D Outdoor Air Flow AI 0x000E Primary Chilled Water Flow AI 0X000F Relief Fan Flow AI 0x0010 Relief Flow AI Return Fan Flow AI 0x0011 Return Flow AI 0x0012 , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 111

208 3 Chapter ZigBee Cluster Library Specification General ZigBee Document 075123 – Index Application Usage Secondary Chilled Water Flow AI 0x0013 0x0014 I Supply Fan Flow A 0x0015 Tower Fan Flow AI Vendor defined 0xFFFE 0x0200 - 0xFFFF Other 3 . 1 4 . 1 1 . 1 9 . 1 . 5 T yp e = 0 x 0 4 : P e r c e n t a g e % 85 . AI Types, Type = 0x04: Percentage % - Table 3 Index Application Usage 0x0000 AI Chiller % Full Load Amperage 0x0200 Vendor defined 0xFFFE - Other 0xFFFF 3 . 1 4 . 1 1 . 1 9 . 1 . 6 T yp e = 0 x 0 5 : P a r t s p e r M i l l i o n P P M 86 Table 3 - . AI types, Type = 0x05: Parts per Million PPM Index Application Usage 0x0000 Return Carbon Dioxide AI 0x0001 Zone Carbon Dioxide AI 0xFFFE 0x0200 - Vendor defined 0xFFFF Other 3 . 1 4 . 1 1 . 1 9 . 1 . 7 T yp e = 0 x 0 6 : R o t a t i o n a l S p e e d i n R P M Table 3 - 87 . AI Types, Type = 0x06: Rotational Speed in RPM Index Application Usage Exhaust Fan Remote Speed AI 0x0000 Heat Recovery Wheel Remote Speed AI 0x0001 Min Outdoor Air Fan Remote Speed AI 0x0002 Relief Fan Remote Speed AI 0x0003  3 - 112 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

209 ZigBee Cluster Library Specification Chapter 3 General – ZigBee Document 075123 Application Usage Index 0x0004 Return Fan Remote Speed AI Supply Fan Remote Speed AI 0x0005 0x0006 Variable Speed Drive Motor Speed AI Variable Speed Drive Speed Setpoint AI x0007 0 0xFFFE 0x0200 - Vendor defined 0xFFFF Other T yp e = 0 x 0 7 : C u r r e n t i n Am p s 3 . 1 4 . 1 1 . 1 9 . 1 . 8 88 . AI Types, Type = 0x07: Current in Amps - 3 Table Application Usage Index r Amps AI Chille 0x0000 - 0xFFFE Vendor defined 0x0200 0xFFFF Other 3 . 1 4 . 1 1 . 1 9 . 1 . 9 T yp e = 0 x 0 8 : F r e q u e n c y i n H z 89 - 3 . AI Types, Type = 0x08: Frequency in Hz Table Index Application Usage Variable Speed Drive Output Frequency AI 0x0000 Vendor defined 0x0200 - 0xFFFE 0xFFFF Other 3 . 1 4 . 1 1 . 1 9 . 1 . 1 0 T yp e = 0 x 0 9 : P o w e r i n W a t t s . AI Types, Type = 0x09: Power in Watts Table - 3 90 Application Usage Index Power Consumption AI 0x0000 0x0200 Vendor defined FFFE - 0 Other xFFFF , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 113

210 Chapter ZigBee Cluster Library Specification 3 General ZigBee Document 075123 – 3 . 1 4 . 1 1 . 1 9 . 1 . 1 1 T yp e = 0 x 0 A: P o w e r i n k W - 91 Table 3 . AI Types, Type = 0x0A: Power in kW Index Application Usage 0x0000 Absolute Power AI 0x0001 Power Consumption AI - 0xFFFE Vendor defined 0x0200 0xFFFF Other 3 . 1 4 . 1 1 . 1 9 . 1 . 1 2 T yp e = 0 x 0 B : E n e r g y i n k W H 92 . AI Types, Type = 0x0B: Energy in kWH - Table 3 Application Usage Index Variable Speed Drive Kilowatt Hours AI 0x0000 FFFE - 0x0200 Vendor defined 0xFFFF Other T yp e = 0 x 0 C : C o u n t – U n i t l e s s 3 . 1 4 . 1 1 . 1 9 . 1 . 1 3 Table 3 - 93 . AI Types, Type = 0x0C: Count - Unitless Index Application Usage 0x0000 Count 0xFFFE 0x0200 - Vendor defined 0xFFFF Other 3 . 1 4 . 1 1 . 1 9 . 1 . 1 4 T yp e = 0 x 0 D : E n t h a l p y i n K J o u l e s / K g . AI Types, Type = 0x0D: Enthalpy in KJoules/Kg Table 94 - 3 Index Application Usage 0x0000 Outdoor Air Enthalpy AI Return Air Enthalpy AI 0x0001 Space Enthalpy 0x0002 0xFFFE - 0x0200 Vendor defined  3 - 114 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

211 ZigBee Cluster Library Specification Chapter 3 ZigBee Document General – 075123 Index Application Usage Other 0xFFFF 3 . 1 4 . 1 1 . 1 9 . 1 . 1 5 e i n S e c o n d s T yp e = 0 x 0 E : T i m Table 3 - 95 . AI types, Type = 0x0E: Time in Seconds Index Application Usage 0x0000 Relative time AI 0xFFFE Vendor defined 0x0200 - 0xFFFF Other 3.14.11.19.2 An alo g O ut pu t ( AO) t yp es Group = 0x01. - clauses describe the values when Type = 0x00 - ing sub The follow 0x0E. Types 0x0F to 0xFE are reserved, Type = 0xFF indicates other. 3 . 1 4 . 1 1 . 1 9 . 2 . 1 T yp e = 0 x 0 0 : T e m p e r a t u r e i n D e g r e e s C Table 3 - 96 . AO Types, Type = 0x00: Temperature i n Degrees C Index Application Usage Boiler AO 0x0000 0x0001 Boiler Setpoint AO Cold Deck AO 0x0002 0x0003 Chiller Setpoint AO Chiller Setpoint AO 0x0004 0x0005 Hot Deck AO 0x0006 Cooling Valve AO 0x0007 Zone Temperature Setpoint AO Offset AO Setpoint 0x0008 Setpoint Shift AO 0x0009 Vendor defined 0xFFFE - 0x0200 Other 0xFFFF , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 115

212 Chapter ZigBee Cluster Library Specification 3 General ZigBee Document 075123 – 3 . 1 4 . 1 1 . 1 9 . 2 . 2 T yp e = 0 x 0 1 : R e l a t i v e H u m i d i t y i n % - 97 Table 3 . AO Types, Type = 0x01: Relative Humidity in % Index Application Usage Humidification AO 0x0000 0x0001 Zone Relative Humidity Setpoint AO 0x0200 - 0xFFFE Vendor defined 0xFFFF Other 3 . 1 4 . 1 1 . 1 9 . 2 . 3 T yp e = 0 x 0 2 : P r e s s u r e P a s c a l 3 Table . AO Types, Type = 0x02: Pressure Pascal 98 - sage cation U i Appl Index Vendor defined 0xFFFE - 0x0200 Other 0xFFFF 3 . 1 4 . 1 1 . 1 9 . 2 . 4 T yp e = 0 x 0 3 : F l o w i n L i t e r s / S e c o n d Table 3 - 99 . AO Types, Type = 0x03: Flow in Liters/Second Index Application Usage 0xFFFE Vendor defined 0x0200 - 0xFFFF ther O 3 . 1 4 . 1 1 . 1 9 . 2 . 5 T yp e = 0 x 0 4 : P e r c e n t a g e % 100 Table . AO Types, Type = 0x04: Percentage % - 3 Application Usage Index Face & Bypass Damper AO 0x0000 Heat Recovery Valve AO 0x0001 0x0002 Heat Recovery Wheel AO 0x0003 eating Valve AO H 0x0004 Hot Deck Damper AO 2 Pipe Damper AO 0x0005 2 Pipe Valve AO 0x0006  3 - 116 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

213 ZigBee Cluster Library Specification Chapter 3 075123 General ZigBee Document – Application Usage Index Boiler Mixing Valve AO 0x0007 Box Cooling Valve AO 0x0008 0x0009 Box Heating Valve AO Chilled Water Bypass Valve AO 0x000A Cold Deck Damper AO 0x000B C 0x000C ooling Damper AO Cooling Valve AO 0x000D Damper AO 0x000E Exhaust Air Damper AO 0x000F Exhaust Damper AO 0x0010 Hot Water Bypass Valve AO 0x0011 0x0012 Hot Water Mixing Valve AO 0x0013 Minimum Outside Air Damper AO 0x0014 O Minimum Outside Air Fan A 0x0015 Mixed Air Damper AO Mixing Valve AO 0x0016 Outside Air Damper AO 0x0017 0x0018 Primary Chilled Water Pump AO 0x0019 Primary Hot Water Pump AO Primary Heat Exchange Pump AO 0x001A 0x001B Preheat Damper AO 0x001C Preheat Valve AO eat Valve 1 AO Reh 0x001D Reheat Valve AO 0x001E Return Air Damper AO 0x001F , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 117

214 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General Application Usage Index Secondary Chilled Water Pump AO 0x0020 0x0021 Sequenced Valves AO 0x0022 Secondary Hot Water Pump AO 0x0023 Secondary Heat Exchange Pump AO 0x0024 Sideloop AO alve AO Supply Heating V 0x0025 0x0026 Supply Damper AO 0x0027 Tower Bypass Valve AO Tower Fan AO 0x0028 Valve AO 0x0029 Zone 1 Damper AO 0x002A Zone 1 Heating Valve AO 0x002B Heat Recovery Exhaust Bypass Damper AO 0x002C 0x002D Heat Recovery Outside Air Bypass Damper AO 0xFFFE Vendor defined - 0x0200 0xFFFF Other 3 . 1 4 . 1 1 . 1 9 . 2 . 6 T yp e = 0 x 0 5 : P a r t s p e r M i l l i o n P P M . AO Types, Type = 0x05: Parts per Million PPM Table 3 - 101 Index Application Usage 0x0000 Space Carbon Dioxide limit AO - Vendor defined 0xFFFE 0x020 0 Other 0xFFFF T yp e = 0 x 0 6 : R o t a t i o n a l S p e e d R P M 3 . 1 4 . 1 1 . 1 9 . 2 . 7 . AO Types, Type = 0x06: Rotational Speed RPM 102 - 3 Table Index Application Usage  3 - 118 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

215 ZigBee Cluster Library Specification Chapter 3 General – ZigBee Document 075123 Application Usage Index 0x0000 Exhaust Fan Speed AO Fan Speed AO 0x0001 Relief Fan Speed AO 0x 0002 0x0003 Return Fan Speed AO 0x0004 Supply Fan Speed AO - 0x0200 Vendor defined 0xFFFE Other 0xFFFF T yp e = 0 x 0 7 : C u r r e n t i n Am p s 3 . 1 4 . 1 1 . 1 9 . 2 . 8 . AO Types, Type = 0x07: Current in Amps 103 - 3 Table Application Usage ndex I - 0xFFFE Vendor defined 0x0200 0xFFFF Other 3 . 1 4 . 1 1 . 1 9 . 2 . 9 T yp e = 0 x 0 8 : F r e q u e n c y i n H z Table 3 - 104 . AO Types, Type = 0x08: Frequency in Hz Application Usage Index 0x01FF - 0x0000 Reserved 0xFFFE Vendor defined - 0x0200 0xFFFF Other 3 . 1 4 . 1 1 . 1 9 . 2 . 1 0 T yp e = 0 x 0 9 : P o w e r i n W a t t s 3 . AO Types, Type = 0x09: Power in Watts 105 - Table Index Application Usage Vendor defined 0xFFFE - 0x0200 0xFFFF Other , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 119

216 Chapter ZigBee Cluster Library Specification 3 – ZigBee Document 075123 General 3 . 1 4 . 1 1 . 1 9 . 2 . 1 1 T yp e = 0 x 0 A: P o w e r i n k W - . AO Types, Type = 0x0A: Power in kW Table 3 106 Index Application Usage Vendor defined - 0xFFFE 0x0200 0xFFFF Other 3 . 1 4 . 1 1 . 1 9 . 2 . 1 2 T yp e = 0 x 0 B : E n e r g y i n k W h 3 - 107 . AO Table Types, Type = 0x0B: Energy in kWh Index Application Usage 0x0200 Vendor defined - 0xFFFE Other 0xFFFF T yp e = 0 x 0 C : C o u n t 3 . 1 4 . 1 1 . 1 9 . 2 . 1 3 U n i t l e s s – - - 108 . AO Types, Type = 0x0C: Count 3 Unitless Table Application U s- Index a ge 0x0200 - 0xFFFE Vendor defined 0xFFFF Other T yp e = 0 x 0 D : E n t h a l p y i n K J o u l e s / K g 3 . 1 4 . 1 1 . 1 9 . 2 . 1 4 . AO Types, Type = 0x0D: Enthalpy in KJoules/Kg 109 - 3 Table Application Usage Index Vendor defined 0x0200 - 0xFFFE 0xFFFF her Ot 3 . 1 4 . 1 1 . 1 9 . 2 . 1 5 T yp e = 0 x 0 E : T i m e i n S e c o n d s 3 Table . AO Types, Type = 0x0E: Time in Seconds 110 - s- Application U age Index Relative time AO 0x0000 Vendor defined 0xFFFE - 0x0200 0xFFFF Other  3 - 120 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

217 ZigBee Cluster Library Specification Chapter 3 General – ZigBee Document 075123 An alo g Val ue ( AV ) T yp es 3.14.11.19.3 Grou p = 0x02. - clauses describe the values when Type = 0x00 - The following sub 0x03. Types 0x04 to 0xFE are reserved, Type = 0xFF indicates other. 3 . 1 4 . 1 1 . 1 9 . 3 . 1 T yp e = 0 x 0 0 : T e m p e r a t u r e i n D e g r e e s C - 3 Table = 0x00: Temperature in Degrees C . AV Types, Type 111 Application Usage Index 0x0000 Setpoint Offset AV Temp Deadband AV 0x0001 Occupied Heating Setpoint AV 0x0002 Unoccupied Heating Setpoint AV 0x0003 0x0004 Occupied Cooling Setpoint AV Unoccupied Cooling Setpoi nt AV 0x0005 Standby Heat Setpoint AV 0x0006 0x0007 Standby Cooling Setpoint AV 0x0008 Effective Occupied Heating Setpoint AV Effective Unoccupied Heating Setpoint AV 0x0009 Effective Occupied Cooling Setpoint AV 0x000A Setpoint AV Effective Unoccupied Cooling 0x000B 0x000C Effective Standby Heat Setpoint AV Effective Standby Cooling Setpoint AV 0x000D 0x000E Setpoint Offset AV 0x000F Setpoint Shift AV - 0x0200 Vendor defined FFFE Other 0xFFFF T yp e = 0 x 0 1 : Ar e a i n S q u a r e M e t r e s 3 . 1 4 . 1 1 . 1 9 . 3 . 2 Table . AV Types, Type = 0x01: Area in Square Metres 112 - 3 Application U s- Index age , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 121

218 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General s- Application U age Index 0x0000 Duct Area AV 0x0200 - 0xFFFE Vendor defined Other 0xFFFF 3 . 1 4 . 1 1 . 1 9 . 3 . 3 T yp e = 0 x 0 2 : M u l t i p l i e r - N u m b e r - Number Table 3 - 113 . AV Types, Type = 0x02: Multiplier Application Usage Index Gain multiplier AV 0x0000 0xFFFE - 0x0200 Vendor defined 0xFFFF Other T yp e 0 x 0 3 : F l o w i n L i t r e s / S e c o n d 3 . 1 4 . 1 1 . 1 9 . 3 . 4 114 . AV Types, Ty pe = 0x03: Flow in Litres/Second Table 3 - Index Application Usage 0x0000 Minimum Air Flow AV Maximum Air Flow AV 0x0001 0x0002 Heating Minimum Air Flow AV Heating Maximum Air Flow AV 0x0003 Standby Minimum Air Flow AV 0x0004 0x0005 Standby Maximum Air Flow AV FFFE - 0x0200 Vendor defined Other 0xFFFF Binar y I np uts ( BI) T yp es 3.14.11.19.4 Group = 0x03. 0x01. Types 0x02 to 0xFE are reserved, - clauses describe the values when Type = 0x00 - The following sub Type = 0xFF indicates other. f, Normal Present Value = 0 represents False, Of Present Value = 1 represents True, On, Alarm  3 - 122 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

219 ZigBee Cluster Library Specification Chapter 3 075123 General ZigBee Document – T yp e = 0 x 0 0 : Ap p l i c a t i o n D o m a i n H V AC 3 . 1 4 . 1 1 . 1 9 . 4 . 1 3 Table . BI Types, Type = 0x00: Application Domain HVAC 115 - Application Usage Index 0x0000 2 Pipe Pump Status BI Air Proving Switch BI 0 x0001 Alarm Reset BI 0x0002 0x0003 Boiler Status BI Boiler Flow Status BI 0x0004 Boiler General Alarm BI 0x0005 Boiler High Temperature Alarm BI 0x0006 0x0007 Boiler Isolation Valve Status BI Boiler Maintenance Switch BI 0x0008 0x0009 Boiler Pump Overload BI 0x000A Boiler Pump Status BI 0x000B Boiler Status BI Box Heating Alarm BI 0x000C 0x000D Chiller Alarm BI 0x000E Chiller Chilled Water Flow Status BI 0x000F Chiller Chilled Water Isolation Valve Status BI 0x0010 er Condenser Water Flow Status BI Chill 0x0011 Chiller Condenser Water Isolation Valve Status BI Chiller Maintenance Switch BI 0x0012 Chiller Status BI 0x0013 0x0014 Chilled Water Expansion Tank Alarm BI rm BI Chilled Water Expansion Tank High Pressure Ala 0x0015 Chilled Water Expansion Tank Low Pressure Alarm BI 0x0016 Chilled Water Expansion Tank Status BI 0x0017 , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 123

220 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General Application Usage Index Combustion Damper Status BI 0x0018 Cooling Alarm BI 0x0019 0x001A Cooling Pump Maintenance Switch BI 0x001B Cooling Pump Overload BI 0x001C Cooling Pump Status BI 0x001D Condenser Water Expansion Tank Alarm BI 0x001E Condenser Water Expansion Tank High Pressure Alarm BI 0x001F Condenser Water Expansion Tank Low Pressure Alarm BI Condenser Water Expansion Tank Status BI 0x0020 enser Water Pump Maintenance Switch BI Cond 0x0021 Condenser Water Pump Overload BI 0x0022 0x0023 Condenser Water Pump Status BI 0x0024 Decouple Loop Flow Direction BI 0x0025 Discharge Smoke BI 0x0026 Door Status BI Economizer Command BI 0x0027 Emergen 0x0028 cy Shutdown BI 0x0029 Equipment Tamper BI 0x002A Energy Hold Off BI 0x002B Exhaust Fan Maintenance Switch BI 0x002C Exhaust Fan Overload BI Exhaust Fan Status BI 0x002D 0x002E Exhaust Filter Status BI Exhaust Smoke BI 0x002F Alarm BI Expansion Tank 0x0030  3 - 124 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

221 ZigBee Cluster Library Specification Chapter 3 075123 General ZigBee Document – Application Usage Index Expansion Tank High Pressure Alarm BI 0x0031 Expansion Tank Low Pressure Alarm BI 0x0032 0x0033 Expansion Tank Status BI Fan Control By Others BI 0x0034 Fan Overload BI 0x0035 0x0036 Filter Monitoring BI 0x0037 Final Filter Status BI Free Cooling Availability BI 0x0038 Heat Recovery Pump Status BI 0x0039 Heat Recovery Wheel Alarm BI 0x003A Heat Recovery Wheel Maintenance Switch BI 0x003B 0x003C Heat Recovery Wheel Overload BI 0x003D Heat Recovery Wheel Status BI 0x003E eating Alarm BI H 0x003F Heating/Cooling Pump Maintenance Switch BI Heating/Cooling Pump Overload BI 0x0040 High Humidity Limit BI 0x0041 0x0042 High Static Pressure Fault BI High Temperature Limit Fault BI 0x0043 Humidifier Alarm BI 0x0044 0x00 45 Humidifier Maintenance Switch BI Humidifier Overload BI 0x0046 0x0047 Humidifier Status BI Heat Exchanger Alarm BI 0x0048 Heat Exchanger Isolation Valve Status BI 0x0049 , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 125

222 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General Application Usage Index Heat Exchanger Maintenance Switch BI 0x004A Lighting Status BI 0x004B 0x004C Low Static Pressure Fault BI 0x004D Low Temperature Limit Fault BI 0x004E Minimum Outdoor Air Damper End Switch BI 0x004F Minimum Outdoor Air Fan Maintenance Switch BI 0x0050 Minimum Outdoor Air Fan Overload BI 0x0051 Fan Status BI Minimum Outdoor Air Minimum Outdoor Air Fan Variable Frequency Drive Fault BI 0x0052 0x0053 Occupancy BI 0x0054 Occupancy Sensor BI Primary Chilled Water Pump Maintenance Switch BI 0x0055 0x0056 Primary Chilled Water Pump Overload BI Primary Chilled Water Pump Status BI 0x0057 Primary Chilled Water Pump Maintenance Switch BI 0x0058 0x0059 Primary Chilled Water Pump Overload BI 0x005A Primary Chilled Water Pump Status BI Pre Filter Status BI - 0x005B Preheat Alarm BI 0x005C Preheat Bo nnet Switch BI 0x005D Preheat Pump Maintenance Switch BI 0x005E 0x005F Preheat Pump Overload BI Preheat Pump Status BI 0x0060 Refrigerant Alarm BI 0x0061 0x0062 Reheat Alarm BI  3 - 126 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

223 ZigBee Cluster Library Specification Chapter 3 075123 General ZigBee Document – Application Usage Index Reheat Bonnet Switch BI 0x0063 Reheat Pump Maintenance Switch BI 0x0064 0x0065 Reheat Pump Overload BI 0x0066 Reheat Pump Status BI 0x0067 Relief Fan Maintenance Switch BI 0x0068 Relief Fan Overload BI 0x0069 Relief Fan Status BI 0x006A Relief Fan Variable Frequency Drive Fault BI Return Air Smoke BI 0x006B Return Fan Maintenance Switch BI 6C 0x00 Return Fan Overload BI 0x006D 0x006E Return Fan Status BI Return Fan VFD Fault BI 0x006F Return Smoke BI 0x0070 Secondary Chilled Water Pump 1 Maintenance Switch BI 0x0071 0x0072 1 Overload BI Secondary Chilled Water Pump Secondary Chilled Water Pump 1 Status BI 0x0073 0x0074 Secondary Chilled Water Pump 1 Maintenance Switch BI 0x0075 Secondary Chilled Water Pump 1 Overload BI Secondary Chilled Water Pump 1 Status BI 0x0076 0x0077 Sideloop BI Generic Status BI 0x0078 0x0079 Summer Winter BI Supplemental Heating Alarm BI 0x007A Supplemental Heating Pump Maintenance Switch BI 0x007B , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 127

224 Chapter 3 ZigBee Cluster Library Specification ZigBee Document 075123 General – Application Usage Index Supplemental Heating Pump Overload BI 0x007C 0x007D Supplemental Heating Pump Status BI 0x007E intenance Switch BI Supply Fan Ma 0x007F Supply Fan Overload BI 0x0080 Supply Fan Status BI Supply Fan Variable Frequency Drive Fault BI 0x0081 Temporary Occupancy BI 0x0082 Tower Level Alarm BI 0x0083 Tower Level Status BI 0x0084 Tower Temp BI 0x0085 6 0x008 Tower Vibration Alarm Status BI 0x0087 Tower Level Alarm BI 0x0088 Tower Level Switch BI Tower Temp Switch BI 0x0089 Tower Fan Isolation Valve Status BI 0x008A Tower Fan Maintenance Switch BI 0x008B Tower Fan Overload BI 0x008C 0x008D Towe r Fan Status BI Unit Enable BI 0x008E Unit Reset BI 0x008F 0x0090 Window Status BI 0x0091 Zone Sensor Temporary Occupancy BI 0x0092 Air Proving Switch BI Primary Heating Status BI 0x0093 Primary Cooling Status BI 0x0094  3 - 128 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

225 ZigBee Cluster Library Specification Chapter 3 075123 General ZigBee Document – Application Usage Index 0xFFFE - 0x0200 ed Vendor defin Other 0xFFFF 3 . 1 4 . 1 1 . 1 9 . 4 . 2 T yp e = 0 x 0 1 : Ap p l i c a t i o n D o m a i n S e c u r i t y Table . BI Types, Type = 0x01: Application Domain Security 116 - 3 Application Usage Index Glass Breakage Detection 0x0000 0x0001 Intrusion Detection Motion Detection 0x0002 Glass Breakage Detection 0x0003 Zone Armed 0x0004 Glass Breakage Detection 0x0005 0x0006 Smoke Detection 0x0007 Carbon Dioxide Detection 0x0008 Heat Detection 0xFFFE - 0x0200 Vendor defined 0xFFFF Other yp es Binar y Ou tpu t (BO ) T 3.14.11.19.5 Group = 0x04. clauses describe the values when Type = 0x00 - - 0x01. Types 0x02 to 0xFE are reserved, The following sub Type = 0xFF indicates other. Present Value = 0 represents False, Off, Normal Present Value = 1 represents True, On, Alarm T yp e = 0 x 0 0 : Ap p l i c a t i o n D o m a i n H V AC 3 . 1 4 . 1 1 . 1 9 . 5 . 1 3 Table . BO Types, Type = 0x00: Application Domain HVAC 117 - Application Usage Index 2 Pipe Circulation Pump BO 0x0000 2 Pipe Valve BO 0x0001 , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 129

226 Chapter 3 ZigBee Cluster Library Specification ZigBee Document 075123 General – Application Usage Index 2 Pipe Valve Command BO 0x0002 0x0003 Boiler BO 0x0004 Boiler Isolation Valve BO Boiler Pump BO 0x0005 0x0006 Box Cooling 2 Position BO Box Heating 2 Position BO 0x0007 Box Heating Enable BO 0x0008 Box Heating Stage 1 BO 0x0009 Box Heating Stage 2 BO 0x000A 0x000B Box Heating Stage 3 BO 0x000C Chiller 1 Isolation Valve BO 0x000D Chiller BO Chiller Chilled Water Isolation Valve BO 0x000E Chiller Condenser Water Isolation Valve BO 0x000F 0x0010 Combustion Damper BO 0x0011 Compressor Stage 1 BO Compressor Stage 2 BO 0x0012 0x0013 Cooling Circulation Pump BO Cooling Stage 1 BO 0x0014 Cooling Stage 2 BO 0x0015 0x0016 Cooling Stage 3 BO Cooling Stage 4 BO 0x0017 Cooling Stage 5 BO 0x0018 Cooling Stage 6 BO 0x0019 Cooling Stage 7 BO 0x001A  3 - 130 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

227 ZigBee Cluster Library Specification Chapter 3 – General ZigBee Document 075123 Application Usage Index 0x001B Cooling Stage 8 BO 0x001C Cool ing Valve BO 0x001D Cooling Valve Command BO 0x001E Chilled Water Pump BO Economizer Enable BO 0x001F Exhaust Air Damper BO 0x0020 Exhaust Fan BO 0x0021 Fan BO 0x0022 Fan Speed 1 BO 0x0023 0x0024 Fan Speed 2 BO Fan Speed 3 BO 0x0025 0x0026 Heat R ecovery Pump BO Heat Recovery Valve BO 0x0027 Heat Recovery Wheel BO 0x0028 0x0029 Heating Stage 1 BO 0x002A Heating Stage 2 BO Heating Stage 3 BO 0x002B 0x002C Heating Valve BO Heating Valve Command BO 0x002D Hot Gas Bypass Valve BO 0x002E 0x002F Humidification Stage 1 BO Humidification Stage 2 BO 0x0030 Humidification Stage 3 BO 0x0031 Humidification Stage 4 BO 0x0032 Humidifier Enable BO 0x0033 , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 131

228 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General Application Usage Index Heat Exchanger Isolation Valve BO 0x0034 0x0035 Lighting BO O Minimum Outside Air Damper B 0x0036 0x0037 Minimum Outside Air Fan BO 0x0038 Outside Air Damper BO Primary Chilled Water Pump 1 BO 0x0039 and - Plate Frame Heat Exchanger Isolation Valve BO 0x003A - Primary Hot Water Pump BO 0x003B Primary Heat Exchange Pump BO 0x003C Preheat Cir culation Pump BO 0x003D 0x003E Preheat Enable BO 0x003F Preheat Stage 1 BO 0x0040 Preheat Stage 2 BO Preheat Stage 3 BO 0x0041 Preheat Stage 4 BO 0x0042 Preheat Stage 5 BO 0x0043 Preheat Stage 6 BO 0x0044 0x0045 Preheat Stage 7 BO BO Preheat Stage 8 0x0046 Preheat Valve BO 0x0047 0x0048 Reheat Circulation Pump BO 0x0049 Reheat Enable BO 0x004A Reheat Stage 1 BO Reheat Stage 2 BO 0x004B Reheat Stage 3 BO 0x004C  3 - 132 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

229 ZigBee Cluster Library Specification Chapter 3 075123 General ZigBee Document – Application Usage Index Reheat Stage 4 BO 0x004D Reheat Stage 5 BO 0x004E 0x004F Reheat Stage 6 BO at Stage 7 BO Rehe 0x0050 Reheat Stage 8 BO 0x0051 0x0052 Relief Fan BO Return Fan BO 0x0053 Reversing Valve 1 BO 0x0054 Reversing Valve 2 BO 0x0055 Secondary Chilled Water Pump BO 0x0056 0x0057 Secondary Hot Water Pump BO 0x0058 Secondary Heat Exchange Pump B O 0x0059 Sideloop BO Sideloop Stage 1 BO 0x005A 0x005B Sideloop Stage 2 BO Sideloop Stage 3 BO 0x005C Sideloop Stage 4 BO 0x005D 0x005E Sideloop Stage 5 BO 0x005F Sideloop Stage 6 BO Sideloop Stage 7 BO 0x0060 0x0061 Sideloop Stage 8 BO eam Isolation Valve BO 0x0062 St 0x0063 Supplemental Heating 2 Position BO Supplemental Heating Stage 1 BO 0x0064 Supplemental Heating Valve BO 0x0065 , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 133

230 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General Application Usage Index Supplemental Heating Enable BO 0x0066 Supplemental Heating Pump BO 0x0067 0x0068 Supply Fan BO Basin Heater BO Tower 0x0069 Tower Basin Makeup BO 0x006A 0x006B Tower Basin Heater BO Tower Basin Makeup BO 0x006C Tower Isolation Valve BO 0x006D Tower Fan BO 0x006E Tower Fan Speed 1 BO 0x006F Tower Fan Speed 2 BO 0x0070 0x0071 Tower Fan Speed 3 BO 0x0072 Z one Heating Stage 1 BO 0x0073 Zone Heating Stage 2 BO Zone Heating Stage 3 BO 0x0074 Zone Heating Valve BO 0x0075 2 Pipe Circulation Pump BO 0x0076 0xFFFE Vendor defined - 0x0200 0xFFFF Other T yp e = 0 x 0 2 : Ap p l i c a t i o n D o m a i n S e c u r i t y 3 . 1 4 . 1 1 . 1 9 . 5 . 2 3 . BO Types, Type = 0x02: Application Domain Security 118 - Table Index Application Usage 0x0000 Arm Disarm Command BO Occupancy Control BO 0x0001 Enable Control BO 0x0002  3 - 134 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

231 ZigBee Cluster Library Specification Chapter 3 075123 General ZigBee Document – Application Usage Index Access Control BO 0x0003 Vendor de fined 0x0200 - 0xFFFE 0xFFFF Other Binar y Val ue (BV ) T yp es 3.14.11.19.6 Group = 0x05. clauses describe the values when Type = 0x00. Types 0x01 to 0xFE are reserved, Type = The following sub - 0xFF indicates other. Present Value = 0 represents False, Off, Normal sents True, On, Alarm Present Value = 1 repre 3 . 1 4 . 1 1 . 1 9 . 6 . 1 T yp e = 0 x 0 0 . BV Types, Type = 0x00 119 - 3 Table Index Application Usage 0x0200 - 0xFFFE Vendor defined 0xFFFF Other 3.14.11.19.7 Mul tis tate I np ut ( MI) T ypes Group = 0x0D. scribe the values when Type = 0x00. Types 0x01 to 0xFE are reserved, Type = clauses de - The following sub 0xFF indicates other. 3 . 1 4 . 1 1 . 1 9 . 7 . 1 T yp e = 0 x 0 0 : Ap p l i c a t i o n D o m a i n H V AC . MI Types, Type = 0x00: Application Domain HVAC 120 - 3 Table ion Usage Applicat [Number of States] States Index [3] Off, On, Auto 0x0000 0x0001 [4] Off, Low, Medium, High [7] Auto, Heat, Cool, Off, Emergency Heat, Fan Only, Max Heat 0x0002 [4] Occupied, Unoccupied, Standby, Bypass 0x0003 [3] Inactive, Active, Hold 0x0004 - [8] Auto, Warm 0005 0x up, Water Flush, Autocalibration, Shutdown Open, Shutdown Closed, Low Limit, Test and Balance , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 135

232 Chapter 3 ZigBee Cluster Library Specification ZigBee Document 075123 General – ion Usage Applicat Index [Number of States] States [6] Off, Auto, Heat Cool, Heat Only, Cool Only, Fan Only 0x0006 0x0007 [3] High, Normal, Low 0x0008 [4] Occupied, Unoccupied, Startup, Shut down 0x0009 [3] Night, Day, Hold 0x000A [5] Off, Cool, Heat, Auto, Emergency Heat 0x000B [7] Shutdown Closed, Shutdown Open, Satisfied, Mixing, Cooling, Heating, Supplemental Heat Vendor defined 0x0200 - 0xFFFE Other 0xFFFF Mul tis tate O ut pu t (MO ) T ype s 3.14.11.19.8 Group = 0x0E. clauses describe the values when Type = 0x00. Types 0x01 to 0xFE are reserved, Type = - The following sub 0xFF indicates other. T yp e = 0 x 0 0 : Ap p l i c a t i o n D o m a i n H V AC 3 . 1 4 . 1 1 . 1 9 . 8 . 1 Table 3 - 121 0x00: Application Domain HVAC . MO Types, Type = Application Usage Index [Number of States] States [3] Off, On, Auto 0x0000 0x0001 [4] Off, Low, Medium, High 0x0002 [7] Auto, Heat, Cool, Off, Emerg Heat, Fan Only, Max Heat 0x0003 [4] Occupied, Unoccupied, Standby, Bypas s [3] Inactive, Active, Hold 0x0004 up, Water Flush, Autocalibration, Shutdown Open, Shutdown - [8] Auto, Warm 0x0005 Closed, Low Limit, Test and Balance [6] Off, Auto, Heat Cool, Heat Only, Cool Only, Fan Only 0x0006 [3] High, Normal, Low 0x0007  3 - 136 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

233 ZigBee Cluster Library Specification Chapter 3 075123 General ZigBee Document – Application Usage [Number of States] States Index 0x0008 [4] Occupied, Unoccupied, Startup, Shutdown 0x0009 [3] Night, Day, Hold 0x000A [5] Off, Cool, Heat, Auto, Emergency Heat [7] Shutdown Closed, Shutdown Open, Satisfied, Mixing, Cooling, Heating, 0x000B Suppl Heat 0xFFFE - 0x0200 Vendor defined ther O 0xFFFF 3.14.11.19.9 Mul tis tate Val ue ( MV) T ypes Group = 0x13. The following sub clauses describe the values when Type = 0x00. Types 0x01 to 0xFE are reserved, Type = - 0xFF indicates other. 3 . 1 4 . 1 1 . 1 9 . 9 . 1 T yp e = 0 x 0 0 : Ap p l i c a t i o n D o m a i n H V AC 2 . MV Types, Type = 0x00: Application Domain HVAC 12 Table 3 - Application Usage [Number of States] States Index 0x0000 [3] Off, On, Auto 0x0001 [4] Off, Low, Medium, High 0x0002 [7] Auto, Heat, Cool, Off, Emerg Heat, Fan Only, Max Heat 0x0003 [4] Occu pied, Unoccupied, Standby, Bypass 0x0004 [3] Inactive, Active, Hold [8] Auto, Warm 0x0005 - up, Water Flush, Autocalibration, Shutdown Open, Shutdown Closed, Low Limit, Test and Balance 0x0006 [6] Off, Auto, Heat Cool, Heat Only, Cool Only, Fan Only 07 [3] High, Normal, Low 0x00 [4] Occupied, Unoccupied, Startup, Shutdown 0x0008 0x0009 [3] Night, Day, Hold , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 137

234 Chapter ZigBee Cluster Library Specification 3 – General ZigBee Document 075123 Application Usage Index [Number of States] States 0x000A [5] Off, Cool, Heat, Auto, Emergency Heat 0x000B [7] Shutdown Closed, Shutdown Open, Satisfied, Mixing, Cooling, Heating, Suppl Heat - 0x0200 0xFFFE Vendor defined 0xFFFF Other All other group values are currently reserved Diagnostics 3.15 Overview 3.15.1 Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classification, identification, etc. ter provides access to information regarding the operation of the ZigBee stack over time. The diagnostics clus This information is useful to installers and other network administrators who wish to know how a particular device is functioning on the network. The Diagnostics Clus ter needs to understand the performance of the network over time in order to isolate network routing issues. While it is not absolutely essential, it is recommended that server attributes be stored in persistent memory. This especially makes sense if for i nstance some stack behavior were causing a device to reset. Without storing the associated server attributes in persistent memory there would be no way to analyze what was causing the reset behavior. 3.15.1.1 Revision History Rev Description sterRevision Clu attribute added 1 global mandatory 3.15.1.2 Classification Hierarchy PICS Code Role Base DIAG Utility  3 - 138 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

235 ZigBee Cluster Library Specification Chapter 3 075123 General – ZigBee Document Cluster Identifiers 3.15.1.3 Name Identifier 0x0b05 Diagnostics Server 3.15.2 3.15.2.1 Dependencies 3.15.2.2 Attributes tribute sets listed in Table 3 - 123 The server attributes in the diagnostics cluster are broken up into several at . Table 3 - 123 . Server Attribute Sets of the Diagnostics Cluster Attribute Set Identifier Description 0x0000 Hardware Information rk Information 0x0100 Stack/Netwo Hardw are Infor ma tio n At t rib ute Set 3.15.2.2.1 3 - 124 . Hardware Information Attribute Set Table Identifier Name Type Range Access Default M/O 0xffff 0x0000 NumberOfResets uint16 0x0000 – Read Only 0x000000 00 O O 0x00000000 Read Only 0xffff – 0x0000 uint16 0x0001 PersistentMemoryWrites 3 . 1 5 . 2 . 2 . 1 . 1 At t r i b u t e N u m b e r O f R e s e t s An attribute that is incremented each time the device resets. A reset is defined as any time the device restarts. SHOULD clear this and all values. This is not the same as a reset to factory defaults, which At t r i b u t e 3 . 1 5 . 2 . 2 . 1 . 2 P e r s i s t e n t Me m o r y W r i t e s This attribute keeps track of the number of writes to persistent memory. Each time that the device stores a token in persistent memory it will increment this value. Stack / Ne tw ork Infor mati on At t ri bu t e Set 3.15.2.2.2 Note that many of the counters in this attribute set ( Table 3 - 125 ) SHOULD be read will wrap quickly. They frequently during periods of network interrogation in order to avoid missing poin ts where the counters roll over. Table 3 - 125 . Stack / Network Information Attribute Set Id Name Type Range Acc Default M O 0x0100 MacRxBcast uint32 0x0000 – 0xffff R 0x0000 O 0x0101 MacTxBcast uint32 0x0000 – 0xffff R 0x0000 O R 0xffff – 0x0000 uint32 O 0x0000 0x0102 MacRxUcast , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 139

236 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General MacTxUcast O uint32 0x0000 – 0xffff R 0x0000 0x0103 uint16 0x0000 – 0xffff R 0x0000 O 0x0104 MacTxUcastRetry MacTxUcastFail uint16 0x0000 – 0xffff R 0x0000 0x0105 O 0x0106 APSRxBc ast uint16 0x0000 – 0xffff R 0x0000 O uint16 0x0000 – 0x0107 0xffff R 0x0000 O APSTxBcast 0xffff 0x0108 uint16 0x0000 – APSRxUcast R 0x0000 O 0x0109 APSTxUcastSuccess uint16 0x0000 – 0xffff R 0x0000 O 0x010A uint16 0x0000 – 0xffff R 0x0 000 O APSTxUcastRetry 0xffff uint16 0x0000 – 0x010B R 0x0000 O APSTxUcastFail 0xffff 0x010C uint16 0x0000 – RouteDiscInitiated R 0x0000 O 0x010D NeighborAdded uint16 0x0000 – 0xffff R 0x0000 O 0xffff 0x010E uint16 0x0000 – NeighborRemoved R 0x0000 O NeighborSt ale uint16 0x0000 – 0xffff R 0x0000 O 0x010F O 0x0000 R 0xffff – 0x0000 uint16 0x0110 JoinIndication 0x0111 uint16 0x0000 – 0xffff R 0x0000 O ChildMoved NWKFCFailure uint16 0x0000 – 0xffff R 0x0000 O 0x0112 uint16 0x0000 – 0xffff APSFCFailure R 0x0000 O 0x0113 0x0114 APSUnauthorizedKey uint16 0x0000 – 0xffff R 0x0000 O 0xffff 0x0115 uint16 0x0000 – NWKDecryptFailures R 0x0000 O APSDecryptFailures uint16 0x0000 – 0xffff R 0x0000 O 0x0116 0x0117 PacketBufferAllocateFailures uint16 0x0000 – 0xffff R 0x0000 O 0xffff – O 0x0000 0x0000 R 0x0118 RelayedUcast uint16 PhytoMACqueuelimitreached uint16 0x0000 – 0xffff R 0x0000 O 0x0119 0x011A PacketValidatedropcount uint16 0x0000 – 0xffff R 0x0000 O 0x0000 R O 0x011B AverageMACRetryPerAPSMessageSent uint16 0x0000 – 0xffff LastMessageLQI int8u 0x00 – 0x011C 0xff R 0x00 O 0x011D LastMessageRSSI int8s 0x00 – 0xff R 0x00 O 3 . 1 5 . 2 . 2 . 2 . 1 Ma c R x B c a s t At t r i b u t e A counter that is incremented each time the MAC layer receives a broadcast. 3 . 1 5 . 2 . 2 . 2 . 2 Ma c T x B c a s t At t r i b u t e ed each time the MAC layer transmits a broadcast. A counter that is increment At t r i b u t e 3 . 1 5 . 2 . 2 . 2 . 3 Ma c R x U c a s t A counter that is incremented each time the MAC layer receives a unicast. At t r i b u t e Ma c T x U c a s t 3 . 1 5 . 2 . 2 . 2 . 4 A counter that is incremented each time the MAC layer transmits a unicast.  3 - 140 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

237 ZigBee Cluster Library Specification Chapter 3 075123 ZigBee Document General – At t r i b u t e 3 . 1 5 . 2 . 2 . 2 . 5 Ma c T x U c a s t R e t r y A counter that is incremented each time the MAC layer retries a unicast. 3 . 1 5 . 2 . 2 . 2 . 6 Ma c T x U c a s t F a i l At t r i b u t e A counter that is incremented each time the MAC layer fails to send a unicast. 3 . 1 5 . 2 . 2 . 2 . 7 At t r i b u t e A P S R x B c a s t A counter that is incremented each time the APS layer receives a broadcast. At t r i b u t e 3 . 1 5 . 2 . 2 . 2 . 8 A P S T x B c a s t A counter that is incremented each time the APS layer transmits a broadcast. A P S R x U c a s t 3 . 1 5 . 2 . 2 . 2 . 9 At t r i b u t e A counter that is incremented each time the APS layer receives a unicast. A t t r i b u t e A P S T x U c a s t S u c c e s s 3 . 1 5 . 2 . 2 . 2 . 1 0 ter that is incremented each time the APS layer successfully transmits a unicast. A coun At t r i b u t e A P S T x U c a s t R e t r y 3 . 1 5 . 2 . 2 . 2 . 1 1 A counter that is incremented each time the APS layer retries the sending of a unicast. 3 . 1 5 . 2 . 2 . 2 . 1 2 At t r i b u t e A P S T x U c a s t F a i l A counter that is incremented each time the APS layer fails to send a unicast. At t r i b u t e R o u t e D i s c I n i t i a t e d 3 . 1 5 . 2 . 2 . 2 . 1 3 A counter that is incremented each time the network layer submits a route discovery message to the MAC. At t r i b u t e N e i g h b o r A d d e d 3 . 1 5 . 2 . 2 . 2 . 1 4 ed to the neighbor table. A counter that is incremented each time an entry is add At t r i b u t e 3 . 1 5 . 2 . 2 . 2 . 1 5 N e i g h b o r R e m o v e d A counter that is incremented each time an entry is removed from the neighbor table. 3 . 1 5 . 2 . 2 . 2 . 1 6 N e i g h b o r S t a l e At t r i b u t e A counter that is incremented each time a neighbor table entry becomes stale because the neigh bor has not been heard from. At t r i b u t e 3 . 1 5 . 2 . 2 . 2 . 1 7 J o i n I n d i c a t i o n A counter that is incremented each time a node joins or rejoins the network via this node. C h i l d Mo v e d 3 . 1 5 . 2 . 2 . 2 . 1 8 At t r i b u t e A counter that is incremented each time an entry is removed from the child table. At t r i b u t e l u r e N W K F C F a i 3 . 1 5 . 2 . 2 . 2 . 1 9 A counter that is incremented each time a message is dropped at the network layer because the APS frame counter was not higher than the last message seen from that source. A P S F C F a i l u r e 3 . 1 5 . 2 . 2 . 2 . 2 0 At t r i b u t e A counter that is incremented each time a mess age is dropped at the APS layer because the APS frame counter was not higher than the last message seen from that source. At t r i b u t e A P S U n a u t h o r i z e d K e y 3 . 1 5 . 2 . 2 . 2 . 2 1 A counter that is incremented each time a message is dropped at the APS layer because it had APS encrypti on but the key associated with the sender has not been authenticated, and thus the key is not authorized for use in APS data messages. , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 141

238 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General A t t r i b u t e N W K D e c r y p t F a i l u r e s 3 . 1 5 . 2 . 2 . 2 . 2 2 e- ause d A counter that is incremented each time a NWK encrypted message was received but dropped bec cryption failed. A P S D e c r y p t F a i l u r e s 3 . 1 5 . 2 . 2 . 2 . 2 3 A t t r i b u t e e- A counter that is incremented each time an APS encrypted message was received but dropped because d cryption failed. 3 . 1 5 . 2 . 2 . 2 . 2 4 P a c k e t B u f f e r A l l o c a t e F a i l u r e s At t r i b u t e A counter that is incremented each time the sta ck failed to allocate a packet buffers. This doesn't necessarily mean that the packet buffer count was 0 at the time, but that the number requested was greater than the number free. At t r i b u t e R e l a y e d U c a s t 3 . 1 5 . 2 . 2 . 2 . 2 5 acket is relayed. A counter that is incremented each time a unicast p At t r i b u t e P a c k e t V a l i d a t e D r o p C o u n t 3 . 1 5 . 2 . 2 . 2 . 2 6 A counter that is incremented each time a packet was dropped due to a packet validation error. This could be due to length or other formatting problems in the packet. i b u t e 3 . 1 5 . 2 . 2 . 2 . 2 7 A v e r a g e MA C R e t r y P e r A P S Me s s a g e S e n t At t r A counter that is equal to the average number of MAC retries needed to send an APS message. 3 . 1 5 . 2 . 2 . 2 . 2 8 L a s t Me s s a g e L Q I At t r i b u t e This is the Link Quality Indicator for the last message received. There is no current agreed upon standard for or some implementations LQI is related directly to RSSI for others it is a function of the calculating the LQI. F number of errors received over a fixed number of bytes in a given message. The one thing that has been agreed is that the Link Quality Indicator is a value between 0 and 255 where 0 indicates the worst possible that for a device reading the Last Message LQI the returned link and 255 indicates the best possible link. Note be the LQI for the read attribute message used to read the attribute itself. value SHALL At t r i b u t e g e R S S I L a s t Me s s a 3 . 1 5 . 2 . 2 . 2 . 2 9 This is the receive signal strength indication for the last message received. As with Last Message LQI, a be the RSSI of the read attribute message SHALL device reading the Last Message RSSI, the returned value used to read the attribute itself. 3.15.2.3 Commands There are no commands received by the server side of the diagnostics cluster. Client 3.15.3 The client has no dependencies and no cluster specific attributes. The client does not receive or generate any c commands. cluster specifi Poll Control 3.16 Overview 3.16.1 Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classification, identification, etc.  3 - 142 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

239 ZigBee Cluster Library Specification Chapter 3 075123 General ZigBee Document – e. For the This cluster provides a mechanism for the management of an end device’s MAC Data Request rat purposes of this cluster, the term “poll” always refers to the sending of a MAC Data Request from the end device to the end device’s parent. This cluster can be used for instance by a configuration device to make an end device responsive for a c ertain period of time so that the device can be managed by the controller. This cluster is composed of a client and server. The end device implements the server side of this cluster. The server side contains several attributes related to the MAC Data Reque st rate for the device. The client side implements commands used to manage the poll rate for the device. The end device which implements the server side of this cluster sends a query to the client on a predetermined to manage the poll period of the end device in question. When the client interval to see if the client would like side of the cluster hears from the server it has the opportunity to respond with configuration data to either put o function normally. the end device in a short poll mode or let the end device continue t 3.16.1.1 Revision History Description Rev ;CCB 1815 1822 1833 attribute added ClusterRevision 1 global mandatory Classification 3.16.1.2 Hierarchy Role PICS Code POLL Utility Base Cluster 3.16.1.3 Identifiers Identifier Name Poll Control 0x0020 Terminology 3.16.2 MAC Data Request Rate: The MAC Data Request rate or simply “poll rate” is the frequency with which an end device sends a MAC Data Request to its parent. A parent device is only required to store a single message for its child for 7.68 seconds. Therefore if an end device wants to retrieve messages from its parent, it must send a MAC Data Request every 7.68 seconds. Generally end devices have two different rates at which they send MAC Data Polls to their parents. A slower rate for when the device is not expe cting data (Long Poll Interval) and a faster rate (Short Poll Interval) for when the device is expecting data. End devices only know that they are expecting data when they have initiated some sort of transaction. This ing this state to make the end device responsive to asynchronous cluster provides a mechanism for forc messaging. p- Long Poll Interval: The amount of time between MAC Data Requests when the device is in its normal o erating state and not expecting any messages. Short Poll Interval: The amount of time between MAC Data Requests when the device is either expecting data or has been put into “Fast Poll Mode” by the controlling device. Fast Poll Mode: When the device is polling frequently to retrieve data from its parent we say that the device is in “F ast Poll Mode”. The entire purpose of this cluster is to provide a means of managing when an end device goes into and out of Fast Poll Mode so that it can be made responsive for a controlling device. , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 143

240 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General Commissioning Process 3.16.3 L configure bindings on the device implementing the Poll Control Cluster Poll Control Cluster Clients SHAL in command on the configured Check - In Interval . This can Server so that they will receive the regular check - Poll Control Cluster Server be done during the configuration period on the end device implementing the during which it is in fast poll mode. The device that implements the Poll Control Cluster Server SHALL - check its bindings on the configured check in Interval. If it has any bindings related to any endpoint and the Poll Control C luster, it will send a check - in command out on that binding. Server 3.16.4 3.16.4.1 Attributes ( Table The server side of this cluster contains certain attributes - 126 ) associated with the poll period. 3 CheckInIntervalMin , LongPollIntervalMin , Fas tPollTimeoutMaximum attributes are optional ; however , if they are not supported , you could end up with a lot of chatter on the network as clients and servers attempt to these attributes be support negotiate the poll period. It is therefore recommended that ed. - 3 . Server Attributes Table 126 Identifier Type Range Acc Default M/O Name 0x0000 Check - inInterval uint32 0x0 – 0x6E0000 RW 0x3840 (1 hr.) M 0x6E0000 0x0001 LongPoll Interval uint32 0x04 – R 0x14 (5 sec) M R 0xffff – 0x01 uint16 M 0x02 (2 qs) 0x0002 ShortPollInterval RW 0x0003 FastPollTimeout uint16 0x01 – 0xffff 0x28 (10 s ec.) M - 0x0004 Check inIntervalMin uint32 - R 0 O 0x0005 LongPollIntervalMin uint32 - R 0 O O 0 0x0006 FastPollTimeoutMax uint16 - R inI nterval At t ri bu te - Check 3.16.4.1.1 The Poll Control server is responsible for checking in with the poll control client periodically to see if the poll control client wants to modify the poll rate of the poll control server. This is due to the fact that the Poll Control server is implemented on an end device that MAY have an unpredictable sleep - wake cycle. The Check - inInterval represents the default amount of time between check - ins by the poll control server with is measured in quarterseconds. A value of 0 indicates that the inInterval the poll control client. The Check - - in with the poll control client. Poll Control Server is turned off and the poll control server will not check The Poll Control Server checks in with the Poll Control Client by sending a Check - in c ommand to the Client. be longer than the attribute. If the Client writes an invalid attribute LongPoll Interval SHOULD This value - value (Example: Out of Range as defined in Table 3 126 or a value smaller than the optional attribute value or a value smaller than the attribute value), the Server LongPollInterval Check - in IntervalMin return Write Attributes Response with an error status not equal to ZCL_SUCCESS(0x00). SHOULD s for the Poll Control Server at the application The Poll Control Client will hold onto the actions or message level until the Poll Control Server checks in with the Poll Control Client. 3.16.4.1.2 At t ri bu te Lon gPoll In terval . attribute LongPollInterval optionally expose a MAY An end device that implements the Poll Control server The Long Poll Interval represents the maximum amount of time in quarterseconds between MAC Data Requests from the end device to its parent.  3 - 144 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

241 ZigBee Cluster Library Specification Chapter 3 – 075123 General ZigBee Document The LongPollInterval defines the frequency of polling that an end device does when it is NOT in fast poll mode. T he LongPollInterval SHOULD be longer than the ShortPollInterval attribute but shorter than the Check inInterval attribute. - A value of 0xffffffff is reserved to indicate that the device does not have or does not know its long poll interval. 3.16.4.1.3 Shor tPoll In terva l At t ri bu te a ShortPollInterval optionally expose the MAY t- An end device that implements the Poll Control server represents the number of quarterseconds that an end device waits between ShortPollInterval tribute. The in fast poll mode). is expecting data ( i.e., MAC Data Requests to its parent when it 3.16.4.1.4 FastPo llTime ou t Att ribu te attribute represents the number of quarterseconds that an end device will stay in fast The FastPollTimeout FastPollTimeout poll mode by default. It is suggested that the attribute value be greater than 7.68 seconds. MAY override this value by indicating a different value in the Fast Poll The Poll Control Cluster Client Duration argument in the Check - in Response command. If the Client writes a value out of range as defined in Table attribute value if supported, the Server 3 - 126 or greater than the optional FastPollTimeoutMax 30 return with a status of INVALID_VALUE a Write Attributes Response . An end device that SHOULD implements the Poll Control server can be put into a fast poll mode during which it will send MAC Data this period of attribute. During ShortPollInterval quests to its parent at the frequency of its configured e R time, fast polling is considered active. When the device goes into fast poll mode, it is required to send MAC Requests to its parent at an accelerated rate and is thus more responsive on the network and can receive Data data asynchronously f rom the device implementing the Poll Control Cluster Client. 3.16.4.1.5 Check - inI nterval M in At t rib ute Check The Poll Control Server MAY optionally provide its own minimum value for the - inInterval to protect against the - inInterval being set too low and draining the battery on the end device implementing the Check Poll Control Server. 3.16.4.1.6 Lon gPoll In tervalM in At t rib ute LongPollInterval to protect MAY The Poll Control Server optionally provide its own minimum value for the t a time resulting in an inadvertent power drain on the against another device setting the value to too shor device. FastPo llTime ou t M ax At tri bu te 3.16.4.1.7 MAY optionally provide its own maximum value for the The Poll Control Server FastPollTimeout to avoid it being set to too high a value resulting in an inadvertent power drain on the device. Attribute Settings and Batter y Life Consider 3.16.4.2 a- tions MAY be battery powered. In order to conserve battery The Poll Control Cluster is used on end devices that life, it is important that the Poll Control Server maintain certain boun daries for the setting of the Check - inInterval , LongPollInterval and the ShortPollInterval . Therefore, whil e these attributes are all powered device might maintain its own boundary for the , it is possible that a battery - Readable and Write able f each of these attributes. The end device implementing the Poll Control Cluster Server min and max o MAY define its own boundaries for these attributes in order to protect itself against a power drain due to improper configuration. 30 0553ZHA 1.2 Errata) - (13 15 CCB 18 , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 145

242 Chapter ZigBee Cluster Library Specification 3 ZigBee Document 075123 General – MAY not allow another device to set its Check - For instance a battery powered device to too short inInterval a value or its to too long an interval because it might cause the device to send too frequent FastPollTimeout check in messages on the network and stay in fast poll mode for too long a time resulting in a drain on the - battery. SHOULD ShortPollInterval and The C be set such that: heck - inInterval , LongPollInterval Check - in Interval >= Long Poll Interval >= Short Poll Interval The default values chosen for this cluster are: in Interva l = Check - 1 hour = 0x3840 quarterseconds Long Poll Interval = 5 seconds = 0x14 quarterseconds Short Poll Interval = 2 quart erseconds = 0x02 quarterseconds Fast Poll Timeout = 1 0 seconds = 0x28 quarterseconds Note alue and does not apply to this equation. in Interval, 0 is a special v that for the Check - Commands 3.16.4.3 . 127 - 3 Table Commands Generated by the Poll Control Server Description Mandatory/Optional Command ID M 0x00 Check - in Command 3.16.4.4 Check - in The Poll Control Clust er server sends out a Check - in command to the devices to which it is paired based on inInterval attribute. It does this to find out if any of the Poll Control Cluster Clients with - the server’s Check which it is paired are interested in having it enter fast poll mode so that it can be managed. This request is sent out based on either the , or the next Check in value in the Fast Poll Stop Request generated - inInterval - Check by the Poll Control Cluster Client. in command expects a Check The Check - - in Response com mand to be sent back from the Poll Control Client. in response back from the Poll Control Client up to7.68 - If the Poll Control Server does not receive a Check seconds it is free to return to polling according to the LongPollInterval . Pa yloa d F orma t 3.16.4.4.1 s no payload for this command. There i 3.16.4.4.2 Effec t o n Recei p t in command, the Poll Control Cluster client will respond with a Check e- - in R Upon receipt of the Check - not begin fast poll mode. or SHOULD sponse command indicating that the server SHOULD Client 3.16.5 Attributes 3.16.5.1 The re are no attributes on the client side of the Poll Control Cluster.  3 - 146 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

243 ZigBee Cluster Library Specification Chapter 3 075123 ZigBee Document General – 3.16.5.2 Commands Table - 128 . Commands Generated by the Poll Control Client 3 Command ID Description Mandatory/Optional M in Response - Check 0x00 M 1 Fast Poll Stop 0x0 0x02 Set Long Poll Interval O 0x03 O Set Short Poll Interval Command 3.16.5.3 Check - in Response in Response is sent in response to the receipt of a Check - The Check in Response is in command. The Check - - used by the Poll Control Client to indica te whether it would like the device implementing the Poll Control Cluster Server to go into a fast poll mode and for how long. If the Poll Control Cluster Client indicates that it ling the device to stop fast polling would like the device to go into a fast poll mode, it is responsible for tel when it is done sending messages to the fast polling device. Response from a client for which there is no binding (u In - If the Poll Control Server receives a Check n- bound), it SHOULD respond with a Default a status value indicating ACTION_DENIED. Response with - In Response from a client for which there is a binding (bound) If the Poll Control Server receives a Check Response with status INV A- with an invalid fast poll interval it SHOULD respond with a Default LID_VALUE. If the Poll Control Server receives a Check - In Response from a bound client after temporary fast poll mode is completed it SHOULD respond with a Default Response with a status value indicating TIMEOUT. 31 In all of the above cases, the Server SHALL respond w ith a Default Response not equal to ZCL_SUCCESS. 3.16.5.3.1 Pa yloa d F orma t in Response Payload - f the Check Format o 60 - . 3 Figure 2 1 Octets bool uint16 Data Type Fast Poll Timeout Start Fast Polling Field Name S t a r t 3 . 1 6 . 5 . 3 . 1 . 1 F a s t P o l l i n g This Boolean value indicates whether or not the Poll Control Server device SHOULD begin fast polling or not. If the Start Fast Polling value is true, the server device is EXPECTED to begin fast polling until the Fast If the Start Fast Polling argument is false, the Poll Control Server continue in MAY Poll Timeout has expired. normal operation and is not required to go into fast poll mode. 31 0553 ZHA 1.2 errata) - CCB 1833 (13 , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 147

244 3 Chapter ZigBee Cluster Library Specification ZigBee Document 075123 General – 3 . 1 6 . 5 . 3 . 1 . 2 F a s t P o l l T i m e o u t The Fast Poll Timeout value indicates the number of quarterseconds during which the devic e SHOULD to continue fast polling EXPECTED continue fast polling. If the Fast Poll Timeout value is 0, the device is until the amount of time indicated it the FastPollTimeout attribute has elapsed or it receives a Fast Poll Stop ignore the Fast Poll Polling argument is false, the Poll Control Server MAY the Start Fast command. If Timeout argument. attribute on the Poll Control The Fast Poll Timeout argument temporarily overrides the FastPollTimeout X- Cluster Server for the fast poll mode induced by the Check - in Response command. This value is not E attribute. PECTED FastPollTimeout to overwrite the stored value in the FastPollTimeoutMax If the FastPollTimeout parameter in the CheckInResponse command is greater than the attribute value, the Server Device respond with a default response of error status not equal to SHALL ZCL_SUCCESS. It is suggested to use the Error Status of ZCL_INVALID_FIELD (0x85). Command Fast Poll Stop 3.16.5.4 The Fast Poll Stop command is used to stop the fast poll mode initiated by the Check esponse. The Fast in r - Poll Stop command has no payload. If the Poll Control Server receives a Fast Poll Stop from an unbound client it SHOULD send back a DefaultResponse with a value field indicating ACTION_DENIED” . The Server SHALL respond with a DefaultResp onse not equal to ZCL_SUCCESS. Poll If the Poll Control Server receives a Fast Stop command from a bound client but it is unable to stop fast polling due to the fact that there is another bound client which has requested that polling continue it pond with a Default Response with a status of “ACTION_DENIED” SHOULD res If a Poll Control Server receives a Fast Poll Stop command from a bound client but it is not FastPolling it 32 SHOULD respond with a Default Response with a status of ACTION_DENIED. Interval Set Long Poll 3.16.5.5 Command The Set Long Poll Interval command is used to set the Read Only LongPollInterval attribute. SHOULD check its internal When the Poll Control Server receives the Set Long Poll Interval Command, it minimal limit and the attributes relationshi p defined in 9.6.4.2 if the new Long Poll Interval is acceptable. If attribute. If the new be saved to the LongPollInterval the new value is acceptable, the new value SHALL value is not acceptable, the Poll Control Server NVALID_VALUE send a default response of I SHALL LongPollInterval attribute value is not updated. (0x87) and the 32 - CCB 1833 13 0553 ZHA 1.2 errata  3 - 148 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

245 ZigBee Cluster Library Specification Chapter 3 – General ZigBee Document 075123 Pa yloa d F orma t 3.16.5.5.1 61 Format of the Set Long Poll Interval Command Payload . Figure 3 - 4 Octets uint32 Data Type NewLongPoll Interval Field Name 3.16.5.6 Command Set Short Poll Interval ShortPollInterval Read Only The Set Short Poll Interval command is used to set the attribute. check its internal When the Poll Control Server receives the Set Short Poll Interval Command, it SHOULD minimal limit an d the attributes relationship defined in 9.6.4.2 if the new Short Poll Interval is acceptable. If ShortPollInterval be saved to the SHALL attribute. If the new the new value is acceptable, the new value send a default response of INVALID_VALUE SHAL L value is not acceptable, the Poll Control Server ShortPollInterval . attribute value is not updated (0x87) and the Pa yloa d F orma t 3.16.5.6.1 - 62 3 Figure . Format of the Set Short Poll Interval Command Payload 2 Octets uint16 e Data Typ New Short Poll Interval Field Name Poll Control Cluster Sequence Diagram 3.16.6 What follows is a typical sequence interaction between the client and server sides of the Poll Control Cluster. , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 149

246 Chapter 3 ZigBee Cluster Library Specification General – 075123 ZigBee Document Poll Control Cluster Sequence Diagram . 63 - 3 Figure In Interval - Guaranteed Consistent Check 3.16.6.1 attribute value stays constant, the interval between two Check In co m- Provided that the Check - inInterval be kept independent re inInterval - - Check mands is guaranteed. The In SHOULD gardless of when the Check Response or Fast Poll Stop command is received.  - 3 - 150 Copyright Page 2016 , The ZigBee Alliance. All rights reserved. 2007

247 ZigBee Cluster Library Specification Chapter 3 075123 ZigBee Document General – Multiple Poll Control Client 3.16.6.2 inInterval In commands to all paired send parallel Check When the Check - expires, the Server SHOULD - client devices. then enter a tem SHOULD The server specific predefined - porary Fast Poll Mode, with a fixed manufacturer check in timeout duration (t1), to wait for the Check - In Response Messages from all paired device. imeout (t1), the Once the server received all the Check - In Response or if the temporary Fast Poll Mode t SHOULD server - In Response messages and determine the then gather the information from all Check longest Fast Poll Timeout (t2) duration. stay in the Fast Poll Mode for the longest Fast Poll Timeout (t2) duration. Th The Server device SHALL e MAY server device end fast poll mode before the longest fast poll timeout if it is able to determine that every start request from the paired device has been stopped explicitly by the Fast Poll Stop command or implicitly by a timeout. For example: Device A implements a poll control server, devices B and C implement poll control clients. Device A sends a in response command requesting a fast in command to both B and C. Both B and C respond with check - - check inutes and C requests fast polling for 10 minutes. If C sends poll start. Assume B requests fast polling for 5 m immediately end fast polling upon receipt of this MAY a fast poll stop command after 7 minutes, device A (before the l period requested by B would have expired after only 5 minutes command since the fast pol command from C was received). 33 3.16.6.3 Check - in Interval Attribute Changed attribute is changed (provided that the new value is valid and within acceptable When the Check - inInterval - SHOULD reset the internal check - in interval timer and send a check range), the device in command according to the new Check - inInterval value. Power Profile 3.17 This section describes the Power Profile cluster. Overview 3.17.1 Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classification, dentification, etc. i This cluster provides an interface for transferring power profile information from a device ( e.g., White Goods) to a controller ( e.g., the Home Gateway). The Power Profile can be solicited by client side (request fied directly from the device (server side). The Power Profile represents a forecast of command) or can be noti of parameters . It is split in multiple energy phases with a specific set the energy that a device is able to predict representing the estimated “energy footprint” of an appliance. The data carried in the Power Profile can be updated during the different states of a Power Profile; since it represents a forecast of energy, duration and hases, it peak power of energy p SHALL be considered as an estimation and not derived by measurements. also be used by an energy management system, together with other specific inte r- MAY The Power Profile operation and to perform energy faces supported by the device, in order to schedule and control the device ower Profile cluster might For more i P management within a home network. nformative examples on how the be used , see Chapter 15 Appliance Management, section 3. 33 CCB 1822 13 0553 ZHA 1.2 errata - , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 151

248 Chapter 3 ZigBee Cluster Library Specification ZigBee Document 075123 General – ical Usage of the Power Profile Cluster Typ . 64 - 3 Figure 3.17.1.1 Revision History Rev Description global mandatory ClusterRevision attribute added 1 Classification 3.17.1.2 PICS Code Role Hierarchy Base PWR Utility 3.17.1.3 Cluster Identifiers Identifier Name Power Profile 0x001a References 3.17.2 The following standards and specifications contain provisions, which through reference in this document constitute provisions of this specification. All the standards and specifications listed are normative refe r- ions indicated were valid. All standards and specifications are ences. At the time of publication, the edit subject to revision, and parties to agreements based on this specification are encouraged to investigate the possibility of applying the most recent editions of the standards and specification s indicated below. General Description 3.17.3 3.17.3.1 Dependencies Appliance Control Cluster for the parts regarding the status Cluster is dependent upon the Profile The Power notification and power management commands. Other specific clusters for actuation for devices d ifferent than Smart Appliances. Due to the possible length of the Power Profile commands, the devices supporting the leverage on Partitioning if required by the application. MAY Power Profile cluster Server Attributes 3.17.4 . The following attributes represent t rofile’s phases. P he parameters for each Power  3 - 152 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

249 ZigBee Cluster Library Specification Chapter 3 – General ZigBee Document 075123 3 uster 129 . Attribu tes of th e Power Profile Cl Table - Default Range Access Name M/O Id Type TotalProfileNum uint8 0x0000 0x01 – 0xfe Read Only 1 M 0x00 bool MultipleScheduling 0x0001 – Read Only FALS E M 0x01 map8 0x0002 M * x01 0 Read Only 0xff – 0x00 EnergyFormatting Read Only 0x0003 TRUE or FALSE EnergyRemote bool FALSE M Reportable Read Write – 0x00 map8 ScheduleMode 0x0004 0x00 M 0xff Reportable 1/10 of W * att Hours represented TotalProfileNum 3.17.4.1 Attribute TotalProfileNum attribute represents the total number of profiles supported by the device. The minimum The SHALL be 1. value for this attribute Attribute 3.17.4.2 MultipleScheduling MultipleScheduling The ecifies if the server side of the Power Profile cluster supports the attribute sp scheduling of multiple Energy Phases or it does support the scheduling of a single energy phase of the Power Profile at a time. If more than a single energy phases MAY be scheduled simult aneously the MultipleScheduling attribute SHALL be set to TRUE. In this case the device supporting the Power Profile server be able to process and manage scheduling commands carrying the schedule of more than one SHALL energy phase. If the EMS) ng attribute is FALSE the device supporting the Power Profile client ( e.g., MultipleScheduli SHALL be allowed to schedule just a single energy phase. EnergyFormatting 3.17.4.3 Attribute The attribute provides a method to properly decipher the number of digits and the decimal EnergyFormatting location of the values found in the Energy Fields carried by the Power Profile Notification and Power Profile Response commands. This attribute is to be decoded as follows:  Bits 0 to 2: Number of Digits to the right of the Decimal Point.  Bi ts 3 to 6: Number of Digits to the left of the Decimal Point. Bit 7: If set, suppress leading zeros.  be used against the Energy fields. SHALL This attribute EnergyRemote Attribute 3.17.4.4 attribute indicates whether the power profile server ( The EnergyRemote e.g., appliance) is configured for remote control ( e.g., by an energy management system).This refers to the selection chosen by the user on the remote control feature of the device. If the value is FALSE, the remote energy management is disabled, SHALL s enabled. If the EnergyRemote is equal to FALSE all the supported PowerProfile otherwise it i set the Power Profile Remote Control field in the PowerProfile record equal to FALSE. If the EnergyRemote n- attribute value is equal to TRUE , at least one PowerProfile SHAL L be remotely co setting the Power Profile Remote Control field in the PowerProfile record to TRUE. trollable 2007 - Page , The ZigBee Alliance. All rights reserved. Copyright - 3 153  2016

250 Chapter ZigBee Cluster Library Specification 3 – 075123 ZigBee Document General Attribute 3 - 130 . EnergyRemote Table Energy Remote Value Description 0x00 FALSE = Remote Energy Man agement disabled 0x01 TRUE = Remote Energy Management enabled ScheduleMode Attribute 3.17.4.5 ScheduleMode The be used by the Power Profile cluster client attribute describes the criteria that SHOULD side ( files. e.g., energy management system) to schedule the power pro Schedule Mode Fie ld Bit Map 3.17.4.5.1 . 131 ScheduleMode Attribute Table 3 - Description Bit bit0 bit0=1 : Schedule Mode Cheapest bit1 bit1 =1: Schedule Mode Greenest Reserved bit2 to bit7 ScheduleMode If the ribute is set to the value 0x00, the scheduling criteria is demanded to the Power att Profile cluster client side, which means that no specific preferences on the schedule mode are requested by . the device supporting the server side of the power Profile cluster If “Schedule Mode Cheapest” is selected then the energy management system SHALL try to schedule the Power Profile to minimize the user’s energy bill. If “Schedule Mode Greenest” is selected then the energy management system try to schedule the SHALL Powe r Profile to provide the highest availability of renewable energy sources. Please note that how the energy management system MAY obtain “cheapest” or “greenest” information and estimate scheduling times is out of scope of this specification. SHALL bitmask, the Power Profile client try to If more than a single bit is selected in the ScheduleMode calculate the schedule following all the selected criteria. su If all the bits are set to zero not specific optimization metrics preferences are requested by the device p- porting the Power Profile server. 3.17.5 Server Commands Received The command IDs for the commands received by the server side of the Power Profile Cluster are listed in Table 3 - 132 . Table Commands Received by the Server 3 - 132 . Cluster - Specific M/O Command Identifier Description Field Value 0x00 PowerProfileRequest M 0x01 M PowerProfileStateRequest 0x02 M GetPowerProfilePriceResponse  3 - 154 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

251 ZigBee Cluster Library Specification Chapter 3 075123 ZigBee Document General – Command Identifier M/O Description Field Value 0x03 GetOverallSchedulePriceResponse M 0x04 Energ yPhasesScheduleNotification M M EnergyPhasesScheduleResponse 0x05 0x06 PowerProfileScheduleConstraintsRequest M 0x07 EnergyPhasesScheduleStateRequest M 0x08 GetPowerProfilePriceExtendedResponse M 3.17.5.1 PowerProfileRequest Command The PowerProfileRequest Com mand is generated by a device supporting the client side of the Power Profile cluster in order to request the Power Profile of a server device. It is possible to request all profiles (without knowing how many Power Profiles the server has) or to request a specific PowerProfileID. SHOULD In the case of multiple profiles the server . send multiple messages, one for each Power Profile ), the Power Profile Response PowerProfileState Although the profile is in a Power Profile running state (see PowerProfileRequest ply to a transmitted as a re i- carry all the energy phases of the est SHALL command mated Power Profile, including the previous energy phases and the current energy phase which is running. The parameters of the Power Profile ( e.g., the ExpectedDuration or th e Energy fields of all the energy phases) MAY be updated for the same Power Profile due to a tuning in the forecast. 3.17.5.1.1 Pa yloa d F orma t 3 Figure be formatted as illustrated in SHALL . 65 - The PowerProfileRequest Command payload Figure 3 - 65 . Format of the PowerProfileRequest Command Payload 1 Octets uint8 Data Type PowerProfileID Field Name D e t a i l s P a y l o a d 3 . 1 7 . 5 . 1 . 1 . 1 PowerProfileRequest Figure . 65 - 3 The payload of the command carries the fields defined in The PowerProfileID field specifies which profile (in the range 1 to TotalProfileNum ) is requested. The sp e- cial value 0x00 of this field does not refer to a particular profile; if 0x00 value is received the device SHOULD d details related to all the available profiles. sen TotalProfileNum. be greater than SHALL NOT The PowerProfileID field W hen Genera ted 3.17.5.1.2 a Home gateway device), e.g., This command is generated when the client side of the Power Profile cluster ( e.g., the power profile to a device supporting the Power Profile cluster server side ( White needs to request Good). , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 155

252 3 Chapter ZigBee Cluster Library Specification ZigBee Document General – 075123 3.17.5.1.3 Effec t o n Recei p t PowerProfileResponse The device that receives the Power Profile Request command SHALL reply with a if supported. If the command is not supp SHALL orted the device reply with a standard ZCL Default response with status UNSUP_CLUSTER_COMMAND 0x81 (as from ZCL specification). SHALL If the requested profile data are not available, the device reply with a standard ZCL response NOT_FOUND 0x8b (accor ding to ZCL specification). Command 3.17.5.2 PowerProfileStateRequest command is generated in order to retrieve the identifiers of current Power PowerProfileStateRequest The Profiles. This command does not have a payload. Effec t o n Recei p t 3.17.5.2.1 generate a SHALL d, the device PowerProfileStateResponse On receipt of this comman command. 3.17.5.3 Command GetPowerProfilePriceResponse The command allows a device (client) to communicate the cost associated GetPowerProfilePriceResponse er) requesting it. If the Price information requested with a defined Power Profile to another device (serv be a ZCL default response with "NOT SHALL related to the Power Profile is not available yet the response FOUND" Status. Pa yloa d F orma t 3.17.5.3.1 - . GetPowerProfilePrice Response command payload SHALL be formatted as illustrated in Figure 3 The 66 Figure 3 - 66 . Format of the GetPowerProfilePriceResponse Command 4 1 2 1 Octets uint32 uint16 uint8 uint8 Data Type ncy railing Digit T Price Price Curre Power Profile ID Field Name P a y l o a d D e t a i l s 3 . 1 7 . 5 . 3 . 1 . 1 PowerProfileID The PowerProfileID field represents the identifier of the specific profile described by the Power Profile. . TotalProfileNum This is typically a sequential and contiguous number ranging from 1 to Currency The Currency field identifies the local unit of currency used in the price field. This field is thought to be useful for displaying the appropriate symbol for a currency ( i.e., $, €). The value of the currency field match the values defin ed by ISO 4217. SHOULD Price The Price field contains the price of the energy of a specific Power Profile measured in base unit of Currency per Unit of Measure (as described in the Metering Cluster, see SE specification) with the decimal point d by the PriceTrailingDigit field when the energy is delivered to the premise. located as indicate Price Trailing Digit  3 - 156 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

253 ZigBee Cluster Library Specification Chapter 3 075123 General ZigBee Document – The PriceTrailingDigit field determines where the decimal point is located in the price field. The right of the decimal point. PriceTrailingDigit indicates the number of digits to the W hen Genera ted 3.17.5.3.2 This command is generated when the command Get Power Profile Price is received. Please refer to Get Power Profile Price command description. 3.17.5.3.3 Effec t o n Recei p t notified of the associated cost of the requested Power On receipt of this command, the originator (server) is Profile, calculated by the client side of the Power Profile (see 9.7.10.1 for sequence diagrams and exa m- ples). 3.17.5.4 Command GetOve rallSchedulePriceResponse co mmand allows a client to communicate the overall cost associated The GetOverallSchedulePrice Response to all Power Profiles scheduled to a server requesting it. If the Price information requested is not available the l cost provided by the be a ZCL default response with “NOT FOUND” Status. The overal response SHALL Power Profile Client side ( energy management system) is intended as the cost of all the scheduled power e.g., profiles. This information be helpful to assess the overall benefit provided by the scheduler, since a MAY heduling of a specific device might change in the sc in some cases increase its associated Power Profile cost. - - provide a global optimization by reducing the overall cost of all the SHALL In fact in that case the schedule bill for the user. scheduled power profiles, then reducing the energy Pa yloa d F orma t 3.17.5.4.1 The Get Overall Schedule Price Response command payload SHALL be formatted as illustrated in Figure . 67 3 - 67 Command Figure 3 - . Format of the GetOverallSched ule PriceResponse 4 1 2 Octets uint16 uint32 uint8 Data Type T railing Digit Price Price Currency Field Name 3.17.5.4.2 Pa yloa d Details See GetPowerProfilePriceResponse command payload details. W hen Genera ted 3.17.5.4.3 is received. rallSchedulePriceRequest GetOve mand This command is generated when the com Effec t o n Recei p t 3.17.5.4.4 On receipt of this command, the originator is notified of the overall cost of the scheduled Power Profiles, side. This information calculated by the Power Profile cluster client MAY the overall be used to assess r- . For more info benefit provided by the scheduler, which might be dependent on the schedule constraints mation, see Chapter 15 Appliance Management, section 3. , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 157

254 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General Energ y Phases Schedule Notification Command 3.17.5.5 command is generated by a device supporting the client side of the The Energy Phases Schedule Notification MAY Power Profile cluster in order to schedule the start of a Power Profile and its energy phases (they be more than one in case of MultipleScheduling attribute equal to TRUE) on a the dev ice supporting the server - solicited” schedule). That happens side of the Power Profile cluster, which did not solicit the schedule (“un when the Power Profile State carries a PowerProfileRemoteControl field equal to TRUE and the Energy Phase has a ationDelay different than 0x0000 (please note that changes on an already scheduled MaxActiv SHOULD be applied just in case of sensible advantages). The energy phase or power profile are possible but mechanisms designed to find the proper schedule are not part of th e description of this command. MultipleScheduling attribute is FALSE (which means that the server side of Please consider that, in case the SHALL support the schedule of only a single energy phase at once), the Energy the Power Profile cluster Phases Sched ule Notification command SHOULD also be used to set a pause between two energy phases (energy pause behavior). In this case the Power Profile State MAY have any values but the command SHALL PowerProfileRemoteControl is set to TRUE and the Energy Phase has a be issued only if the MaxActivationDelay different than 0x0000. Pa yloa d F orma t 3.17.5.5.1 SHALL The Energy Phases Schedule Notification command payload be formatted as illustrated in Figure 3 - 68 . Figure 3 - 68 . Format of the EnergyPhasesScheduleNotification Command Payload 2 1 1 1 ... 1 2 Octets Data ... uint16 uint8 uint8 uint8 uint16 uint8 Type Num of S Energy Scheduled Energy cheduled Power Field ... Scheduled PhaseID Time Time ProfileID PhaseID Name n n n n Phases 3 . 1 7 . 5 . 5 . 1 . 1 P a y l o a d D e t a i l s Figure The payload of the command carries the fields defined in 3 - 68 EnergyPhasesScheduleNotification . gy include only one Power Profile and the ener SHALL message EnergyPhasesScheduleNotification Each phases of that Power Profile that needs to be scheduled. In case this command needs to be sent to a device MultipleScheduling supporting the server side of the power Profile Cluster with the attribute set to false, the carry just one phase and the Scheduled EnergyPhasesScheduleNot ification command SHALL payload of Time field SHALL indicate the time scheduled for the whole Power Profile to start (in case the Power Profile is not started yet). If the Power Profile is in ENERGY_PHASE_RUNNING state and the s erver side of the EnergyPhasesScheduleNotification attribute set to false, the MultipleScheduling command cluster has the SHALL carry the scheduled time of the next energy phase. PowerProfileID command. PowerProfileNotification See definition in eduled Phases Num of Sch The Num of Scheduled Phases field represents the total number of the energy phases of the Power Profile that need to be scheduled by this command. SHALL NOT The Energy phases that are not required to be scheduled be counted in Num of Schedule d attribute set MultipleScheduling Phases field. The Num of Scheduled Phases SHALL be equal to 1 in case the SHALL to FALSE (only one energy phase be Num of Scheduled Phases The be scheduled at a time). MAY greater than 1in case the multiple energy phases at f MultipleScheduling attr ibute set to TRUE (scheduling o the same time). EnergyPhaseID 3 , The ZigBee Alliance. All rights reserved. 2016 - 2007 -  Copyright 158 Page

255 ZigBee Cluster Library Specification Chapter 3 075123 ZigBee Document General – command. See definition in PowerProfileNotification Scheduled Time s energy The Scheduled Time field represents the relative time scheduled in respect to the end of the previou phase. The unit is the minute. The Scheduled Time for the first Energy phase represents the scheduled time (expressed in relative encoding in respect to the current time) for the start of the Power Profile. The Sche d- uled Time fields for the subseq uent Energy phases represent the relative time in minutes in respect to the n- previous scheduled Energy phase. The Energy phases that are not required to be scheduled will not be i nly the Power Profile cluded in the commands and not be counted in Num of Scheduled Phases field. O carrying a Power Profile Remote Control field equal to TRUE (as indicated in Power Profile State Notific a- tion command) and the Energy Phases supporting be SHALL different than 0x0000 MaxActivationDelay er Profile Notification command). schedulable (as indicated in Pow W hen Genera ted 3.17.5.5.2 a Home gateway device), This command is generated when the client side of the Power Profile cluster ( e.g., has calculated a specific schedule for a Power Profile and needs to send the schedule ( cited” “unsoli i.e., schedule) to a device supporting the Power Profile cluster server side ( e.g., White Goods). This command be generated only if the recipient devices support schedulable Power Profiles ( SHALL i.e., only if the Power MaxActivationDelay different than 0x0000). Profile carries the first Energy Ph ase with a Effec t o n Recei p t 3.17.5.5.3 EnergyPhasesScheduleNotification The device that receives the SHALL reply with a standard command command or cation EnergyPhasesScheduleNotifi Default response only if requested in the ZCL header of the there is an error (as from ZCL specification). EnergyPhasesScheduleNotification If the device that receives the command cannot schedule the energy phases because the activation delay of any of carried phases is equal to zero, it rep ly with a standard SHALL Default response with the error code NOT_AUTHORIZED (0x7e). In case the scheduling state of the recipient entity changes after the reception of this command, the recipient will issue an Energy Phases Schedule State Notification. Command 3.17.5.6 EnergyPh asesScheduleResponse This command is generated by the client side of Power Profile cluster as a reply to the command. EnergyPhasesScheduleRequest 3.17.5.6.1 Pa yloa d F orma t The EnergyPhasesScheduleResponse command payload SHALL have the same payload as command, but “solici EnergyPhasesScheduleNotification t- ( Energy PhasesScheduleNotification command command) EnergyPhasesScheduleRequest ed” schedule because it is triggered by the . For more information, see Chapter 15, Appliance Management, section 3. 3 . 1 7 . 5 . 6 . 1 . 1 P a y l o a d D e t a i ls same The payload of the EnergyPhasesScheduleResponse command carries the fields as the t- command, but “solici EnergyPhasesScheduleNotification ( EnergyPhasesScheduleNotification command. EnergyPhasesScheduleReque command) ed” schedule because it is triggered by the st 3.17.5.6.2 W hen Genera ted e.g., This command is generated when the server side of the Power Profile cluster ( a White Goods device), EnergyPhasesScheduleReques has requested, using the t , the schedule of a specific power profile to a device SHALL Home gateway) which e.g., ower Profile cluster client side ( supporting the P calculate the schedules . EnergyPhasesScheduleResponse (“solicited” schedule) and reply with the , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 159

256 Chapter 3 ZigBee Cluster Library Specification – 075123 General ZigBee Document 3.17.5.6.3 Effec t o n Recei p t SHALL command y with a standard D repl The device that receives the EnergyPhasesScheduleResponse e- EnergyPhasesScheduleResponse fault response only if requested in the ZCL header of the command. If the reception of SHALL command is not supported the device reply with a EnergyPhasesScheduleResponse standard ZCL Default response with s tatus UNSUP_CLUSTER_COMMAND 0x81 (as from ZCL specif i- cation). In case the scheduling state of the recipient entity changes after the reception of this command, the recipient will issue an . EnergyPhasesScheduleStateNotification tsRequest 3.17.5.7 PowerProfileScheduleConstrain Command PowerProfileScheduleConstraintsRequest command is generated by client side of the Power Profile The cluster in order to request the constraints of the Power Profile of a server, in order to set the proper boundaries n calculating the schedules. for the scheduling whe 3.17.5.7.1 Pa yloa d F orma t The command payload is the same as the one used for PowerProfileScheduleConstraintsRequest . For more information, see Chapter 15, Appliance Management, section 3. command PowerProfileRequest 3 . 1 7 . 5 . 7 . 1 . 1 P a y l o a d D e t a i l s The payload of the PowerProfileScheduleConstraintsRequest command carries the fields defined in PowerProfileRequest c ommand. The Power Profile ID field specifies which profile (among TotalProfileNum total profiles number) the co n- straints are referring to. 3.17.5.7.2 Wh en Genera ted This command is generated when the client side of the Power Profile cluster ( e.g., a Home gateway device), needs to request the constraints of the power profile to a device supporting the Power Profile cluster server Whitegood). side ( e.g., Ef fec t o n Recei p t 3.17.5.7.3 reply with a SHALL The device that receives the Power Profile Schedule Constraints Request command Power Profile Schedule Constraints Response if supported. If the command is not supported, the device SHALL reply with a standard ZCL Default response with status UNSUP_CLUSTER_COMMAND 0x81 (as from ZCL specification). reply with a standard ZCL response If the requested profile data are not available, the device SHALL NOT_FOUND 0x8b (according to ZCL specification). EnergyPhasesScheduleStateReq 3.17.5.8 Command uest EnergyPhasesScheduleStateRequest command is generated by a device supporting the client side of the The Power Profile cluster to check the states of the scheduling of a power profile, which is supported in the device align the schedules - implementing the server si de of Power Profile cluster. This command can be used to re after a client reset). e.g., between server and client ( 3.17.5.8.1 Pa yloa d F orma t EnergyPhasesScheduleStateRequest The command payload is the same as the one used for PowerProfileRequest . For more information, see Chapter 15, Appliance Management, section 3. command  3 - 160 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

257 ZigBee Cluster Library Specification Chapter 3 075123 ZigBee Document General – P a y l o a d D e t a i l s 3 . 1 7 . 5 . 8 . 1 . 1 same The payload of the EnergyPhasesScheduleStateRequest command carries the fields defined in the r 15, Appliance Management, section 3 . For more information, see Chapte command . PowerProfileRequest TotalProfileNum n- total profiles number) the co The Power Profile ID field specifies which profile (among straints are referring to. 3.17.5.8.2 W hen Genera ted This command is generated when the client side of the Power Profile cl uster ( e.g., a Home gateway device), needs to check the schedules of the Power Profile to a device supporting the Power Profile cluster server side ( e.g., White Good). Effec t o n Recei p t 3.17.5.8.3 The server that receives the command SHALL reply to the client with EnergyPhasesScheduleStateRequest an EnergyPhasesScheduleStateResponse , if supported. If the command is not supported, the servers SHALL reply with a standard ZCL Default response with status UNSUP_CLUSTER_COMMAND 0x81 (as from ZCL specification). reply with a e.g., ested profile data are not available ( invalid Power Profile ID), the server SHALL If the requ standard ZCL response NOT_FOUND 0x8b (according to ZCL specification). heduleStateResponse EnergyPhasesSc reply with a SHALL If the server does not have any schedules set, it carrying equal to zero (see Format of the EnergyPhasesScheduleStateResponse in NumofScheduledPhases case of no scheduled phases). GetPowerProfile PriceExtendedResponse Co m- 3.17.5.9 mand The GetPowerProfilePriceExtendedResponse command allows a dev ice (client) to communicate the cost associated to all Power Profiles scheduled to another device (server) requesting it according to the specific EnergyPhasesScheduleStateResponse . If the Price information requested is not options contained in the availab le the response SHALL be a ZCL default response with "NOT FOUND" Status. , 3.17.5.9.1 Pa yloa d F orma t command payload be formatted as the SHALL The EnergyPhasesScheduleStateResponse GetPowerProfilePriceResponse command. 3.17.5.9.2 Pa yloa d Details See GetPowerProfilePriceResponse command payload details. 3.17.5.9.3 W hen Genera ted is received. This command is generated when the command GetPowerProfilePriceExtendedResponse 3.17.5.9.4 Effec t o n Recei p t On receipt of this command, the originator is notified of cost of the scheduled Power Profiles, calculat ed by the Power Profile cluster server side according to the specific option transmitted in the EnergyPhasesScheduleStateResponse command ( e.g., cost at specific PowerProfileStartTime). For more information, see Chapter 15, Appliance Management, section 3. Server Commands Generated 3.17.6 . 133 - 3 Table , as shown in commands are generated by the server specific - Cluster , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 161

258 Chapter ZigBee Cluster Library Specification 3 – ZigBee Document 075123 General Table 3 - 133 . Cluster - S pecific Commands Sent by the Server Command Identifie Description M/O r Field Value 0x00 PowerProfileNotification M 0x01 PowerProfileResponse M M PowerProfileStateResponse 0x02 GetPowerProfilePrice O 0x03 0x04 PowerProfilesStateNotification M 0x05 GetOverallSchedulePrice O M 0x06 EnergyPhasesSchedule Request EnergyPhasesScheduleStateResponse M 0x07 EnergyPhasesScheduleStateNotification M 0x08 0x09 PowerProfileScheduleConstraintsNotification M 0x0A PowerProfileScheduleConstraintsResponse M O GetPowerProfilePriceExtended 0x0B PowerProfile 3.17.6.1 Command ation Notific The command is generated by a device supporting the server side of the Power PowerProfileNotification Profile cluster in order to send the information of the specific parameters (such as Peak power and others) belonging to each phase. Pa yloa d F orma t 3.17.6.1.1 The PowerProfileNotification command payload SHALL be formatted as illustrated in Figure 3 - 69 . Figure 3 - 69 . Format of the Power ProfileNotification Command Payload (1 of 2) 1 2 1 1 2 2 1 1 Oc tets Data uint16 uint16 uint16 uint8 uint8 uint8 uint8 uint8 Type Num of Total s- Tran Energy Peak Expected Macro Power Field Profile Energy 1 Duration ProfileID PhaseID Power ferred PhaseID 1 1 1 1 Name Num Phases  3 - 162 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

259 ZigBee Cluster Library Specification Chapter 3 General – ZigBee Document 075123 2 2 ... 1 1 2 2 2 Octets Data uint16 uint16 uint16 ... uint8 uint8 uint16 uint16 T ype MaxActivationD Peak Expected Macro MaxActivat Energy Field Energy ... n Duration elay ionDelay PhaseID PhaseID Power n n 1 n n n Name P a y l o a d D e t a i l s 3 . 1 7 . 6 . 1 . 1 . 1 PowerProfileNotification The payload of the . Each 69 - 3 Figure e fields defined in command carries th PowerProfileNotification message SHALL include only one Power Profile. If multiple phases are transferred within a single i.e., command ( Number of PowerProfileNotification Transferred Phases ExpectedDuration , etc ) , PhaseID . g reater than 1), the parameters of the other phases ( SHOULD be carried in the payload. Each phase has a fixed number of parameters and the total length is 10 octets, so that the total length of the payload could be calculate d with the following formula: Total Payload Length = 1 + 1 + 1 + (Num of Transferred Phases * 10) TotalProfileNum For more information, see Chapter 15, Appliance Management, section 3. PowerProfileID The PowerProfileID field represents the identifier of t he specific profile described by the Power Profile. . This field contains a sequential and contiguous number ranging from 1 to TotalProfileNum Num of Transferred Phases This field represents the number of the energy phases of the Power Profile. MacroPhaseID displayed) described by - The MacroPhaseID field represents the identifier of the specific phase (operational the Power Profile. This reference could be used in conjunction with a table of ASCII strings, describing the label of the fun c- tional phase. This ta MAY be not fun ble is not described in the contest of the Power Profile because it c- tionally linked with energy management. EnergyPhaseID The EnergyPhaseID field indicates the identifier of the specific energy phase described by the Power Profile. a sequential and contiguous number ranging from 1 to the maximum number of phases belonging to This is the Power Profile. be used to specify invalid energy phase ( SHALL The value 0xFF for a Power Profile in IDLE state). e.g., ExpectedDuration field represents the estimated duration of the specific phase. Each unit is a minute. The ExpectedDuration PeakPower The PeakPower field represents the estimated power for the specific phase. Each unit is a Watt. Energy , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 163

260 Chapter ZigBee Cluster Library Specification 3 – ZigBee Document General 075123 The Energy field represents the estimated energy consumpt ion for the accounted phase. Each unit is Watt per . For more information, see hours, according to the formatting specified in the EnergyFormatting attribute Chapter 15, Appliance Management, section 3. The Energy value fulfills the following equation: Ener gy ≤ PeakPowe r(Watt) * ExpectedDuration(sec) MaxActivationDelay The MaxActivationDelay field indicates the maximum interruption time between the end of the previous phase and the beginn ing of the specific phase. Each unit is a minute. The special value 0x0 000 means that it is not possible to insert a pause between the two consecutive phases. The MaxActivationD be set to the value SHALL elay field of the first energy phase of a Power Profile 0xFFFF. W hen Genera ted 3.17.6.1.2 e of the Power Profile cluster ( e.g., a White Good device), This command is generated when the server sid need to send the representation of its power profile to a controller device supporting the Power Profile cluster e.g., Home Gateway). client side ( 3.17.6.1.3 Effec t o n Recei p t The device that receives the Po reply with a standard Default command SHALL werProfileNotification command. response if requested in the ZCL header of the PowerProfileNotification 3.17.6.2 PowerProfileResponse Command This command is generated by the server side of Power Profile cluster as a repl Request PowerProfile y to the SHALL command is not supported the device Request PowerProfile command. If the reception of reply with a standard ZCL Default response with status UNSUP_CLUSTER_COMMAND 0x81 (as from ZCL spec i- fication). If the profile data reque sted are not available, the device SHALL reply with a standard ZCL response I N- VALID_VALUE 0x87 (as ZCL specification). 3.17.6.2.1 Pa yloa d F orma t PowerProfileResponse The Command payload SHALL be formatted as illustrated in Figure 3 - 69 (same as PowerProfileNotification command). P a y l o a d D e t a i l s 3 . 1 7 . 6 . 2 . 1 . 1 PowerProfileResponse - 3 Figure command carries the fields defined in The payload of the 69 (the same as command). PowerProfileNotification 3.17.6.2.2 W hen Genera ted White Good) as a reply to the This command is generat ed by the server side of Power Profile cluster ( e.g., command sent by the client side ( a Home gateway device). e.g., PowerProfileRequest 3.17.6.2.3 Effec t o n Recei p t SHALL command with a standard Default r reply e- The device that receives the PowerProfileResponse command. PowerProfileResponse sponse if requested in the ZCL header of the reply with a standard ZCL Default PowerProfileResponse The device that receives the SHALL command ZCL specification) if the reception of response with status UNSUP_CLUSTER_COMMAND 0x81 (as from this command is not supported. reply with a standard ZCL response I SHALL If the profile data requested are not available, the device N- VALID_VALUE 0x87 (as ZCL specification).  3 - 164 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

261 Chapter 3 ZigBee Cluster Library Specification General ZigBee Document – 075123 PowerProfileStateResponse Command 3.17.6.3 o- command allows a device (server) to communicate its current Power Pr The Powe rProfileStateResponse file(s) to another device (client) that previously requested them. 3.17.6.3.1 Pa yloa d F orma t . The PowerProfileStateResponse command payload SHALL be formatted as illustrated in Figure 3 - 70 PowerProfileStateResponse Format of the . 70 - 3 Figure Command Frame 4 4 1 4 ... Octets P ... Power Profile Power Profile ower Profile Power Profile Field Name ecord 2 R ecord 1 n R ecord R Count Figure Each Power Profile record SHALL be formatted as illustrated in 3 - 71 . . Format of the Power Profile Record Field - 71 Figure 3 1 1 1 1 Octets bool enum8 uint8 nt8 ui Data Type PowerProfile Energy Phase Power Profile PowerProfile Field Name ID ID State RemoteControl 3 . 1 7 . 6 . 3 . 1 . 1 P a y l o a d D e t a i l s Power Profile Count The Power Profile Count is the number of Power Profile Records that follow in the message. Power Profile Re cord The Power Profile record support s the following fields: Power Profile ID: T he identifier of the Power Profile as requested .  SHALL be set to  Energy Phase ID: The current Energy Phase ID of the specific Profile ID; this value ileState indicates a Power Profile in POWER_PROFILE_IDLE state invalid 0xFF when PowerProf . PowerProfileRemoteControl: I t indicates if the PowerProfile is currently remotely controllable or not;  . if the Power Profile is not remotely controllable it cannot be scheduled by a Power Profi le client Table  PowerProfileState: A n enumeration field representing the current state of the Power Profile (see 134 ) - . 3 3 - 134 . PowerProfileState Table Enumeration Field Enumeration Value Description The PP is not defined in its parameters. 0x00 POWER_PROFILE_IDLE The PP is defined in its parameters but without a POWER_PROFILE_PROGRAMMED 0x01 scheduled time reference An energy phase is running 0x03 ENERGY_PHASE_RUNNING ENERGY_PHA The current energy phase is paused 0x04 SE_PAUSED , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 165

262 Chapter 3 ZigBee Cluster Library Specification General – 075123 ZigBee Document Description Value Enumeration ENERGY_PHASE_WAITING_TO_START 0x05 The Power Profile is in between two energy phases (one ended, the other not yet started). If the first Energy Phase is considered, this state indicates that the whole pow er profile is not yet started, but it has been already programmed to start ENERGY_PHASE_WAITING_PAUSED The Power Profile is set to Pause when being in the 0x06 ENERGY_PHASE_WAITING_TO_START state. POWER_PROFILE_ENDED 0x07 The whole Power Profile is termi nated  3 - 166 Copyright Page , The ZigBee Alliance. All rights reserved. 2016 - 2007

263 ZigBee Cluster Library Specification Chapter 3 – 075123 General ZigBee Document Power Profile States . 72 - 3 Figure . 73 - 3 Figure Power Profile State Diagram 2016 3 167 - Page , The ZigBee Alliance. All rights reserved. - 2007  Copyright

264 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General 3.17.6.3.2 W hen Genera ted Copyright 2007 - 2016 , The ZigBee Alliance. All rights reserved.  Page - 3 168

265 ZigBee Cluster Library Specification Chapter 3 075123 ZigBee Document General – r- This command is generated when the command PowerProfileSta teRequest is received. For more info mation, see Chapter 15, Appliance Management, section 3. 3.17.6.3.3 Effec t o n Recei p t On receipt of this command, the originator is notified of the results of its Read Current Power Profiles attempt ( i.e., receives the Power Profi les currently running in the server device). 3.17.6.4 Command Price GetPowerProfile White Goods) in order to retrieve the command is generated by the server ( e.g., GetPowerProfilePrice The cost associated to a specific Power Profile. This command has the same payloa d as the Power Profile Request command . For more information, see Chapter 15, Appliance Management, section 3. 3.17.6.4.1 Effec t o n Recei p t m- co GetPowerProfilePriceResponse generate a On receipt of this command, the recipient device SHALL mand . For more information, s ee Chapter 15, Appliance Management, section 3. 3.17.6.5 PowerProfileStateNotification Command command is generated by the server ( White Goods) in order to e.g., The PowerProfileStateNotification update the state of the power profile and the current energy phase. I t has the same payload as the command but it is an unsolicited command. PowerProfileStateResponse Effec t o n Recei p t 3.17.6.5.1 On receipt of this command, the recipient device will update its information related to the PowerProfile of the it will update e.g., device ( the forecasts of the durations of the Power Profile’s energy phases with the actual data). 3.17.6.6 GetOverallSchedulePrice Command The GetOverallSchedulePrice command is generated by the server ( e.g., White Goods) in order to retrieve the overall cost associated to all the Power Profiles scheduled by the scheduler (the device supporting the Power Profile cluster client side) for the next 24 hours. This command has no payload. 3.17.6.6.1 Effec t o n Recei p t On receipt of this command, the recipient device SHALL generate a GetOv erallSchedulePriceResponse command. For more information, see Chapter 15, Appliance Management, section 3. EnergyPhasesScheduleRequest Command 3.17.6.7 Command is generated by the server ( EnergyPhasesScheduleRequest The White Goods) in order to e.g., the scheduler ( e.g., Home Gateway) the schedule (if available) associated to the specific Power retrieve from Profile carried in the payload. This command has the same payload as the Power Profile Request. For more information, see Chapter 15, Appliance Management, sect ion 3. Effec t o n Recei p t 3.17.6.7.1 EnergyPhasesScheduleResponse On receipt of this command, the recipient device SHALL generate an command in order to notify the proper scheduling to the server side of the Power Profile cluster (“solicited” If the schedule is a mation, see Chapter 15, Appliance Management, section 3. c- schedule). For more infor N- e.g., cepted by the PowerProfile server side ( have the state E SHALL the appliance) the PowerProfile ERGY_PHASE_WAITING_TO_START (delay start set for the first energy phase of th e power profile). If command cannot accept the schedule of the energy EnergyPhasesScheduleResponse the device receiving the SHALL phases because the activation delay related to any of carried phases is equal to zero, it reply with a se with the error code NOT_AUTHORIZED (0x7e). standard Default respon , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 169

266 Chapter ZigBee Cluster Library Specification 3 ZigBee Document 075123 General – Co m- 3.17.6.8 EnergyPhas es ScheduleStateResponse mand command is generated by the server ( EnergyPhasesScheduleStateResponse The White Goods) in order e.g., EnergyPhasesScheduleStateRe quest command to reply to an about the scheduling states that are set in the The payload of this server side. For more information, see Chapter 15, Appliance Management, section 3. . In case command is the same as EnergyPhasesScheduleNotification the of no scheduled energy phases , payload shown in Figure 3 - 74 SHALL be used. - 3 Figure EnergyPhasesScheduleStateResponse in Case of No Scheduled Phases . 74 Format of 1 1 Octets uint8 uint8 Data Type Num of Scheduled Energy Phases=0x00 PowerProfileID Field Name Effec t o n Recei p t 3.17.6.8.1 On receipt of this command, the recipient device will be notified about the scheduling activity of the server side of the Power Profile Cluster. Please note that the schedules MAY be set by the schedulin g commands listed in this cluster or by the users ( delay start of an appliance). e.g., 3.17.6.9 EnergyPhasesScheduleStateNotification Co m- mand White Goods) in The EnergyPhasesScheduleStateNotification command is generated by the server ( e.g., order to notify (un sol icited command) a client side about the scheduling states that are set in the server side. - The payload of this command is the same as EnergyPhasesScheduleStateResponse . 3.17.6.9.1 Effec t o n Recei p t On receipt of this command, the recipient devices will be notified a bout the scheduling activity of the server side of the Power Profile Cluster. 3.17.6.10 PowerProfileScheduleConstraintsNotification Command The PowerProfileScheduleConstraintsNotification command is generated by a device supporting the server side of the Power Profi le cluster to notify the client side of this cluster about the imposed constraints and let the scheduler ( i.e., the entity supporting the Power Profile cluster client side) to set the proper boundaries for the scheduling. Pa yloa d F orma t 3.17.6.10.1 75 - 3 Figure command payload is reported in heduleConstraintsNotification . PowerProfileSc The  3 - 170 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

267 ZigBee Cluster Library Specification Chapter 3 – 075123 ZigBee Document General Figure 3 - 75 . Format of the PowerProfileScheduleConstraintsNotification Command Frame 2 1 2 Octets uint8 uint16 uint16 Data Type PowerProfileID Start After Stop Before Field Name 3 . 1 7 . 6 . 1 0 . 1 . 1 P a y l o a d D e t a i l s command carries the following fields: The payload of the PowerProfileScheduleConstraintsNotification TotalPr The Power Profile ID field specifies which profile (among total profiles number) the  ofileNum constraints are referring to. parameter represents the relative time in minutes (in respect to the time of the reception of StartAfter The  this command), that limits the start of the Power Profile; it means that the Pow be SHOULD er Profile ; if this value is not specified by the device the StartAfter scheduled to start after a period of time equal to be 0x0000; SHALL value  The StopBefore parameter represents the relative time in minutes (in respect to the time of the rece ption of this command), that limits the end of the Power Profile; it means that the Power Profile SHOULD be scheduled to end before a period of time equal to StopBefore ; if this value is not specified by the device the value SHALL be 0xFFFF. 3.17.6.10.2 W hen Genera ted This command is generated when the server side of the Power Profile cluster ( e.g., a White Goods device), needs to notify a change in the constraints of the Power Profile ( e.g., the user selected boundaries for the specific behavior of the device). o n Recei p t 3.17.6.10.3 Effec t PowerProfileScheduleConstraintsNotification The device that receives the n- use the i SHALL command formation carried in the payload of this command to refine the proper schedule of the specific Power Profile d in order to meet the constraints. indicated in the Power Profile ID fiel PowerProfileScheduleConstraintsResponse 3.17.6.11 Command The command is generated by a device supporting the server Response PowerProfileScheduleConstraints er which sent a side of the Power Profile cluster to reply to a client side of this clust . The payload carries the selected constraints to let the scheduler Request PowerProfileScheduleConstraints i.e., the entity supporting the Power Profile client cluster) to set the proper boundaries for completing or ( refining the scheduling. 3.17.6.11.1 Pa yloa d F orma t . For more information, see Chapter 15, PowerProfileScheduleConstraints Notification Same as command Appliance Management, section 3. W hen Genera ted 3.17.6.11.2 This command is generated as a reply to the Power Profile Schedule Constraints Request. , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 171

268 Chapter 3 ZigBee Cluster Library Specification – 075123 General ZigBee Document 3.17.6.11.3 Effe c t o n Recei p t use the i SHALL ponse command s The device that receives the Power Profile Schedule ConstraintsRe n- formation carried in the payload of this command to refine the proper schedule of the specific Power Profile d. indicated in the Power ProfileID fiel GetPowerProfilePriceExtended Command 3.17.6.12 White Goods) in order to GetPowerProfilePriceExtended command is generated by the server ( e.g., The retrieve the cost associated to a specific Power Profile considering specific conditions described in the option a specific time). fie ld ( e.g., 3.17.6.12.1 Pa yloa d F orma t SHALL The GetPowerProfilePriceExtended c ommand payload . be formatted as illustrated in Figure 3 - 76 Command Payload GetPowerProf 76 - 3 Figure Format of the ilePriceExtended . 0/2 1 1 Octets uint16 uint8 map8 Data Type PowerProfileID PowerProfileStartTime Options Field Name . 135 - 3 Table Options Field Bit Description 0 Bit0=1 : PowerProfileStartT ime Field Present 1 Bit1=0 : provide an estimation of the price considering the power profile with contiguous energy phases Bit1=1 : provide an estimation of the price considering the power profile as scheduled ( i.e., taking in account delays between Ener gy phases set by the EMS) Options The Options field represents the type of request of extended price is requested to the client side of the power profile cluster ( e.g., to an energy management system). PowerProfileStartTime The PowerProfileStartTime fiel d represents the relative time (expressed in relative encoding in respect to the current time) when the overall Power Profile can potentially start. The unit is the minute. 3.17.6.12.2 Effec t o n Recei p t a of receipt On the device recipient SHALL generate this command, command GetPowerProfilePriceExtendedResponse . For more information, see Chapter 15, Appliance Management, section 3.  3 - 172 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

269 ZigBee Cluster Library Specification Chapter 3 075123 General ZigBee Document – Client Attributes 3.17.7 attributes. cluster specific The client has no 3.17.8 Client Commands Received Description is in server side commands generated (sent) description. 3.17.9 Client Commands Generated Description is in server side commands received description. er Example of Device Interactions Using the Pow 3.17.10 Profile (Informative Section) 3.17.10.1 Price Information Retrieved b y the White Goods appliance program is estimated by the Home gateway/EMS, calculated using the The price of a specific PowerProfileStartTime contained in the Power Profile forecast provided by the appliance and the How the Home GetPowerProfilePriceExtended which indicates when the appliance program will start. Gateway/EMS retrieves from the utility the information related to tariff schemes and price changes over time is out of scope of this specification. e.g., MAY e set ( The appliance then show to the user on the display the price associated to a specific cycl a washing machine program “Cotton 90 °C” will cost you “1.15€”). . 77 - 3 Figure Visualization of Price Associated to a Power Profile , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 173

270 Chapter 3 ZigBee Cluster Library Specification ZigBee Document 075123 General – Interaction w ith When 3.17.10.2 Pow er Profile Cluster s rollable ot Remotel y Cont Appliance I N Figure 3 78 . Energy Remote Disabled: Example of Sequence Diagram with User Interaction - Copyright , The ZigBee Alliance. All rights reserved. 2016 - 2007  174 - 3 Page

271 ZigBee Cluster Library Specification Chapter 3 – ZigBee Document 075123 General Profile Cluster When Pow er Interaction w ith 3.17.10.3 Appliance I s Remotel y Controllable (Scheduling of Appliance) . 79 - re Figu 3 Energy Remote Enabled: Example of Sequence Diagram with User Interaction 3.18 Meter Identification 3.18.1 Overview Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, c lassification, identification, etc. , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright 175 - 3 Page

272 ZigBee Cluster Library Specification Chapter 3 – 075123 ZigBee Document General This cluster provides a ttributes and commands for determining advanced information about utility metering device , as shown in Figure 3 - 80 . ndpoints it will often be the case that many of these : Note Where a physical ZigBee node supports multiple e settings will apply to the whole node, that is they are the same for every endpoint on the device. In such cases they can be implemented once for the node, and mapped to each endpoint. Figure - 80 . Typical Usage of the Meter Identification 3 Cluster 3.18.1.1 Revision History Rev Description attribute added 1 global mandatory ClusterRevision 3.18.1.2 Classification Primary Transaction PICS Code Hierarchy Role MTRID ion Applicat Base Type 2 (server to client) 3.18.1.3 Identifiers Cluster Identifier Name 0x0b01 Meter Identification 3.18.2 Server 3.18.2.1 Meter Identification Attribute Set The Meter Identification server cluster contains the attributes summarized in Table 3 - 136 . Table 136 3 - . Attributes of the Meter Identification Server Cluster Access Identifier Type Range Name Def M/O CompanyName string 0 to 16 Octets Read Only - M 0x0000 - Read Only ffff 0x – uint16 0x0000 M 0x0001 MeterTypeID  3 - 176 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

273 ZigBee Cluster Library Specification Chapter 3 075123 General – ZigBee Document Name Type Range Access Def M/O Identifier DataQualityID uint16 0x0004 – 0xffff Read Only - M 0x0000 0x0005 Customer Name string 0 to 16 Octets Read Write - O 0x0006 Model octstr 0 to 16 Octets Read Only - O Read Only 0x0007 octstr 0 to 16 Octets PartNumber - O 0x0008 Product Revision octstr 0 to 6 Octets Read Only - O 0x000A SoftwareRevision octstr 0 to 6 Octets Read Only - O Read Only 0 to 16 Octets string Name Utility O - 0x000B 0x000C POD string 0 to 16 Octets Read Only - M 0x000000 to 0xfffff 0x000D AvailablePower int24 f Read Only - M 0x000000 to 0xffffff PowerThreshold int24 0x000E Read Only - M 3.18.2.2 Attribute CompanyName i- CompanyName is a ZCL Octet String field capable of storing up to 16 character string (the first Octet ind cates length) encoded in the UTF any Name defines the meter manufacturer name, decided 8 format. Comp - by manufacturer. 3.18.2.3 MeterTypeID Attribute MeterTypeID defines the Meter installation features, decided by manufacturer. Table 3 - 137 provides Meter Type IDs field content. 3 Meter Type IDs 137 . Table - Meter Type ID Device 0x0000 Utility Primary Meter Utility Production Meter 0x0001 0x0002 Utility Secondary Meter Private Primary Meter 0x0100 Private Production Meter 0x0101 0x0102 Secondary Meters Private 0x0110 Generic Meter DataQualityID 3.18.2.4 Attribute defines the Meter Simple Metering information certification type, decided by manufacturer. DataQualityID , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 177

274 Chapter ZigBee Cluster Library Specification 3 ZigBee Document – 075123 General Table 3 - 138 provides Data Quality IDs field content. Data Quality IDs . 138 - 3 Table Meter Type ID Device All Data Certified 0x0000 Only Instantaneous Power not Certified 0x0001 Only Cumulated Consumption not Certified 0x0002 Not Certified data 0x0003 3.18.2.5 Cust omerName Attribute is a ZCL Character String field capable of storing up to 16 character string (the first Octet CustomerName indicates length) encoded in the ASCII format. Attribute Model 3.18.2.6 acter string (the first Octet indicates length) is a ZCL Octet String field capable of storing up to 16 char Model defines the meter model name, decided by manufacturer. Model 8 format. - encoded in the UTF Attribute PartNumber 3.18.2.7 PartNumber is a ZCL Octet String field capable of storing up to 16 character string (the first Oc tet indicates PartNumber defines the meter part number, decided by manufacturer. 8 format. length) encoded in the UTF - 3.18.2.8 Attribute ProductRevision ProductRevision is a ZCL Octet String field capable of storing up to 6 character string (the first Octet ind i- defines the meter revision code, decided by es length) encoded in the UTF - 8 format. ProductRevision cat manufacturer. Attribute SoftwareRevision 3.18.2.9 SoftwareRevision n- is a ZCL Octet String field capable of storing up to 6 character string (the first Octet i dicates defines the meter software revision code, SoftwareRevision 8 format. - length) encoded in the UTF decided by manufacturer. UtilityName 3.18.2.10 Attribute is a ZCL Character String field capable of storing up to 16 character string (the first Octet i UtilityName n- tes length) encoded in the ASCII format. dica POD Attribute 3.18.2.11 POD (Point of Delivery) is a ZCL Character String field capable of storing up to 16 character string (the first of the premise Octet indicates length) encoded in the ASCII format. POD is the unique identification ID connection point. It is also a contractual information known by the clients and indicated in the bill.  3 - 178 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights reserved.

275 ZigBee Cluster Library Specification Chapter 3 – General ZigBee Document 075123 Attribute AvailablePower 3.18.2.12 3.3KW represents the InstantaneousDemand that can be distributed to the customer ( e.g., AvailablePower power) wi thout any risk of overload. The Available Power SHALL use the same formatting conventions as the one used in the simple metering cluster formatting attribute set for the InstantaneousDemand attribute, the UnitOfMeasure and DemandFormatting . i.e., 3.18.2.13 Attribute shold PowerThre 4.191KW) represents a threshold of InstantaneousDemand distributed to the customer ( e.g., PowerThreshold that will lead to an imminent risk of overload. The PowerThreshold SHALL use the same formatting co n- attributes and therefore in the simple metering cluster fo r- ventions as the one used in the ilablePower Ava matting attribute set for the InstantaneousDemand and UnitOfMeasure the i.e., attribute, . DemandFormatting Commands Received 3.18.2.14 - No cluster specific commands are received by the server. mands Generated Com 3.18.2.15 specific commands are generated by the server. - No cluster 3.18.3 Client The client has no dependencies and no cluster specific attributes. The client does not receive or generate any cluster specific commands. , The ZigBee Alliance. All rights reserved.  2007 - 2016 Copyright Page 3 - 179

276

277 ZigBee Cluster Library Specification Chapter 4 – Measurement and Sensing ZigBee Document 075123 ING MEASUREMENT AND SENS CHAPTER 4 The ZigBee C luster Library is made of individual chapters such as this one. See Document Control in the ZigBee Cluster Library for a list of all chapters and documents . References between chapters are made using a is the sub Y to external ection within that chapter. References s - is the chapter and X.Y notation where X documents are contained in Chapter 1 and are made using [ ] notation. Rn General Description 4.1 4.1.1 Introduction ciently The clusters specified in this document are generic measurement and sensing interfaces that are suffi general to be of use across a wide range of application domains. 4.1.2 Cluster List This section lists the clusters specified in this document, and gives examples of typical usage for the purpose of clarification. . 3 - 4 Table to 1 - 4 Table The clusters specified in the Measureme nt and sensing functional domain are listed in Illuminance Measurement and Level Sensing 4.1.2.1 l Sensing Clusters 4 Table 1 . Illuminance Measurement and Leve - Cluster ID Cluster Name Description Attributes and commands for configuring the measurement of 0x0400 Illuminance Measurement illuminance, and reporting illuminance measurements for configuring the sensing of Attributes and commands Illuminance Level Sensing 0x0401 illuminance levels, and reporting whether illuminance is above, below, or on target 2016 1  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 4 -

278 Chapter 4 ZigBee Cluster Library Specification easurement and Sensing – 075123 M ZigBee Document Typical Usage of Illuminance Measurement and Level Sensing . 1 - 4 Clusters Figure 4.1.2.2 Temperat ure, Pressure and Flow Measurement - 4 Table . Pressure and Flow Measurement Clusters 2 Cluster Name Description ID s- Attributes and commands for configuring the mea Temperature Measurement urement of tem perature, and reporting temperature 0x0402 measurements s- Attributes and commands for configuring the mea 0x0403 e- urement of pressure, and reporting pressure measur Pressure Measurement ments s- Attributes and commands for configuring the mea Flow Measurement 0x0404 urement of flow, and reporting flow rates Attributes and commands for configuring the mea s- Relative Humidity Measurement urement of relative humidity, and reporting relative 0x0405 humidity measurements  served. 4 - 2 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights re

279 ZigBee Cluster Library Specification 4 Chapter – ZigBee Document 075123 Measurement and Sensing Typical Usage of Temperature, Pressure and Flow Measurement Clusters . 2 - 4 Figure 4.1.2.3 Occupanc y Sensing 3 4 Table - Occupancy Sensing Clusters . Description ID Cluster Name Attributes and comm ands for configuring occupancy sensing, and r e- Occupancy Sensing 0x0406 porting occupancy status 2016 Page  2007 - Copyright , The ZigBee Alliance. All rights reserved. 3 - 4

280 4 Chapter ZigBee Cluster Library Specification M ZigBee Document 075123 easurement and Sensing – Figure 4 - 3 . Typical Usage of Occupancy Sensing Cluster Electrical Measurement 4.1.2.4 . 4 Electrical Measurement Clusters - 4 Table Cluster Name Description Cluster ID Attributes and commands for measuring electrical usage Electrical Measurement 0x0b04 Illuminance Measurement 4.2 4.2.1 Overview Please see Chapter 2 for a general cluster overview defining clu ster architecture, revision, classification, identification, etc. The server cluster provides an interface to illuminance measurement functionality, including configuration and provision of notifications of illuminance measurements. 4.2.1.1 Revision History Rev scription De added attribute mandatory global ClusterRevision 1 ; CCB 2048 2049 2050 4.2.1.2 Classification PICS Code Primary Transaction Role Hierarchy Base Type 2 (server to client) ILL Application  served. 4 - 4 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights re

281 ZigBee Cluster Library Specification 4 Chapter 075123 Measurement and Sensing – ZigBee Document 4.2.1.3 Identifiers Cluster Identifier Name 00 0x0 4 Illuminance Measurem ent Server 4.2.2 4.2.2.1 Dependencies None 4.2.2.2 Attributes The Illuminance Measurement attributes summarized in Table 4 - 5 . - 4 Table . Illuminance Measurement Attributes 5 Id Name Type Range MO Def Acc 34 uint16 0 x0000 MeasuredValue x0000 0x0000 to 0xffff M R 0 uint16 ms M 0x0001 MinMeasuredValue 0x0001 – 0xfffd R P (MinMeasuredValue R M ms 0x0002 MaxMeasuredValue uint16 35 + 1) to 0xfffe 0x0003 Tolerance u int16 0x0000 – 0x0800 R ms O 0x0004 LightSensorType enum8 0x00 – 0xff R 0xff O 4.2.2.2.1 Measure dValue At trib ute MeasuredValue represents the Illuminance in Lux (symbol lx) as follows: = 10,000 x log Illuminance + 1 MeasuredValue 10 MeasuredValue .576 Mlx, corresponding to a Where 1 lx <= Illuminance <=3 in the range 1 to 0xfffe. 36 MeasuredValue attribute can take the following values The .  0x0000 indicates a value of Illuminance that is too low to be measured. suredValue ≤ MaxMeasuredValue under normal circumstan c-  MinMeasuredValue ≤ Mea es. 0xffff indicates that the Illuminance measurement is invalid.  MeasuredValue is updated continuously as new measurements are made. At tri bu te 4.2.2.2.2 Min Measure dValu e that can be measured. A the minimum value of MeasuredValue The MinMeasuredValue attribute indicates value of 0xffff indicates that this attribute is not defined. 34 2049 CCB 2048 35 8 2049 CCB 204 36 CCB 2048 2049 2016 5  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 4 -

282 Chapter 4 ZigBee Cluster Library Specification ZigBee Document – 075123 M easurement and Sensing 4.2.2.2.3 MaxMeasu redVal u e At tri bu te MeasuredValue attribute indicates the maximum value of The MaxMeasuredValue that can be measured. A 0xffff indicates that this attribute is not defined. value of MaxMeasuredValue shall be greater than MinMeasuredValue. and MaxMeasuredValue define the range of the sensor. MinMeasuredValue 4.2.2.2.4 Tolera nce At t rib ut e The Tolerance attribute indicates the magnitude of the possible error that is associated with MeasuredValue . + ) to ( Tolerance ). Tolerance MeasuredValue The true value is located in the range ( MeasuredValue – Ligh tSens orTy pe 4.2.2.2.5 At t ri bu te LightSensorType attribute specifies the electronic type of the light se nsor. This attribute shall be set to The . one of the non - reserved values listed in Table 4 - 6 Attribute Table - 6 . Values of the LightSensorType 4 Attribute Value Description e Photodiod 0x00 CMOS 0x01 0x40 – Reserved for manufacturer specific light sensor types 0xfe 0xff Unknown Commands Received 4.2.2.3 No cluster specific commands are received by the server cluster. Commands Generated 4.2.2.4 uster. No cluster specific commands are generated by the server cl Attribute Reporting 4.2.2.5 This cluster shall support attribute reporting using the Report Attributes command and according to the minimum and maximum reporting intervals and reportable change settings described in the ZCL Foundation .7). The following attributes shall be reported: specification (see 2.4 37 MeasuredValue 4.2.3 Client e- The client cluster has no dependencies, cluster specific attributes nor specific commands generated or r ceived. 37 CCB 2050  served. 4 - 6 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights re

283 Chapter ZigBee Cluster Library Specification 4 ZigBee Document Measurement and Sensing – 075123 4.3 Illuminance Level Sensing Overview 4.3.1 general cluster overview defining cluster architecture, revision, classification, Please see Chapter 2 for a identification, etc. The server cluster provides an interface to illuminance level sensing functionality, including configuration and provision of notifications of whether t he illuminance is within, above or below a target band. 4.3.1.1 Revision History Rev Description attribute added 1 mandatory global ClusterRevision 4.3.1.2 Classification PICS Code Primary Transaction Hierarchy Role Application Base Type 2 (server to client) ILLVL Identifiers ster 4.3.1.3 Clu Identifier Name 01 Illuminance Level Sensing 0x0 4 Server 4.3.2 4.3.2.1 Dependencies None Attributes 4.3.2.2 For convenience, the attributes defined in this specification are arranged into sets of related attributes; each tribute identifiers are encoded such that the most significant three ni set can contain up to 16 attributes. At b- bles specify the attribute set and the least significant nibble specifies the attribute within the set. The currently . 7 - 4 Table defined attribute sets are listed in 4 . Illuminance Level Sensing Attribute Sets 7 - Table Attribute Set Ident i- Description fier Illuminance Level Sensing Information 0x000 0x001 Illuminance Level Sensing Settings 2016 7  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 4 -

284 Chapter ZigBee Cluster Library Specification 4 ZigBee Document 075123 easurement and Sensing M – Illuminance Level Sensin g Information Attribute 4.3.2.3 Set Table 4 - 8 . The light sensor configuration attribute set contains the attributes summarized in 4 8 . Illuminance Level Sensing Information Attribute Se t Table - Type Id Range M/O Default Access Name Read Only M 0x0000 LevelStatus - enum8 0x00 – 0xfe Reportable O - 0x0001 LightSensorType enum8 0x00 – 0xfe Read Only At t ri b ute LevelSta tus 4.3.2.3.1 attribute indicates whether the measured illuminance is a The LevelStatus bove, below, or within a band 9 - . around IlluminanceTargetLevel (see 4.3.2 .4.1 ). It may have any non - reserved value shown in Table 4 9 - 4 Table Attribute LevelStatus he . Values of t Attribute Value Description Illuminance on target 0x00 0x01 Illuminance below target 0x02 Illuminance above target 4.3.2.3.2 Ligh tSens orTy pe At t ri bu te The LightSensorType attribute specifies the electronic type of the light sensor. This attribute shall be set to one of the non reserved values listed in Table 4 - 10 . - Table 4 - 10 . Values of the LightSensorType Attribute Attribute Value Description 0x00 Photodiode 0x01 CMOS – 0xfe Reserved for manufacturer specific light sensor types 0x40 0xff Unknown 4.3.2.4 Illuminance Level Sensing Settings Attribute Set The light sensor configuration attribute set contains the attributes summarized in Table 4 - 11 Illuminance Level Sensing Settings Attribute Set . Table 4 - 11 . Illuminance Level Sensing Settings Attribute Set Id M/O Type Range Def Access Name 0xfffe – 0x0000 uint16 M - RW 0x0010 IlluminanceTarget Level  served. 4 - 8 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights re

285 ZigBee Cluster Library Specification 4 Chapter 075123 Measurement and Sensing ZigBee Document – At t rib ute Illumi nanceTar ge t Level 4.3.2.4.1 IlluminanceTargetLevel The attribute specifies the target illuminance level. This target level is taken as the centre of a 'dead band', which must be sufficient in width, with hysteresis bands at both top and bottom, to provide reliable notifications without 'chatter'. Such a dead band and hysteresis bands must be provided by any implementation of this cluster. (N.B. Manufacturer specific attributes may be provided to configure these). represents illuminance in Lux (symbol lx) as follows: luminanceTargetLevel Il = 10,000 x log Illuminance IlluminanceTargetLevel 10 in the range 0 to 0xfffe. Where 1 lx <= Illuminance <=3.576 Mlx, corresponding to a MeasuredValue A value of 0xffff indicates t hat this attribute is not valid. 4.3.2.5 Commands Received No cluster specific commands are received by the server. 4.3.2.6 Commands Generated No cluster specific commands are generated by the server cluster. 4.3.2.7 Attribute Reporting This cluster shall support attribute repor ting using the Report Attributes command and according to the minimum and maximum reporting interval settings described in the ZCL Foundation Specification (see 2.4.7). The following attribute shall be reported: LevelStatus 4.3.3 Client The client cluster has no dependencies, specific attributes nor specific commands generated or received. 4.4 Temperature Measurement 4.4.1 Overview Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classification, identification, etc. uster provides an interface to temperature measurement functionality, including configuration The server cl and provision of notifications of temperature measurements. 4.4.1.1 Revision History Description Rev attribute added 1 mandatory global ClusterRevision 4.4.1.2 Classification PICS Code Primary Transaction H ierarchy Role Application Base Type 2 (server to client) TMP 2016 9  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 4 -

286 4 Chapter ZigBee Cluster Library Specification – 075123 easurement and Sensing M ZigBee Document 4.4.1.3 Cluster Identifiers Identifier Name 0x0402 Temperature Measurement 4.4.2 Server 4.4.2.1 Dependencies None 4.4.2.2 Attributes For convenience, the attributes defined in this specificat ion are arranged into sets of related attributes; each set can contain up to 16 attributes. Attribute identifiers are encoded such that the most significant nibble specifies the attribute set and the least significant nibble specifies the attribute within the set. The currently 12 - . defined attribute sets are listed in Table 4 Table 12 . Temperature Measurement Attribute Sets - 4 Attribute Set Identifier Description 0x000 Temperature Meas urement Information 4.4.2.2.1 Tempera tu re Meas uremen t I nf orma ti on At t ri bu te Set 4 The Temperature Measurement Information attribute set contains the attributes summariz e d in Table - 13 . Table 4 - 13 . Temperature Measurement Information Attribute Set O M / Id Def Type Range Access Name – MinMeasuredValue P R M int16 0 0x0000 MeasuredValue MaxMeasuredValue 0x0001 MinMeasuredValue int16 0x954d 0x7ffe R - M – 0x0002 MaxMeasuredValue int16 0x954e – 0x7f ff R - M - P R 0x0800 O 0x0003 Tolerance uint16 0x0000 – Me a s u r e d V a l u e At t r i b u t e 4 . 4 . 2 . 2 . 1 . 1 MeasuredValue represents the temperature in degrees Celsius as follows: MeasuredValue = 100 x temperature in degrees Celsius. in the range 0x954d to Where MeasuredValue orresponding to a - 273.15°C <= temperature <= 327.67 ºC, c 0x7fff. The maximum resolution this format allows is 0.01 ºC. A MeasuredValue of 0x8000 indicates that the temperature measurement is invalid. are made. is updated continuously as new measurements MeasuredValue 4 . 4 . 2 . 2 . 1 . 2 A t t r i b u t e Mi n Me a s u r e d V a l u e that is capable of being MeasuredValue attribute indicates the minimum value of MinMeasuredValue The of 0x8000 indicates that the minimum value is unknown. MinMeasuredValue measured. A  served. 4 - 10 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights re

287 ZigBee Cluster Library Specification 4 Chapter 075123 Measurement and Sensing ZigBee Document – 4 . 4 . 2 . 2 . 1 . 3 Ma x M e a s u r e d V a l u e A t t r i b u t e Ma that is capable of being MeasuredValue attribute indicates the maximum value of xMeasuredValue The measured. MinMeasuredValue. MaxMeasuredValue shall be greater than define the range of the sensor. MinMeasuredValue and MaxMeasuredValue MaxMeasuredValue A of 0x8000 indicates that the maximum value is unknown. 4 . 4 . 2 . 2 . 1 . 4 At t r i b u t e T o l e r a n c e Tolerance The . MeasuredValue attribute indicates the magnitude of the possible error that is associated with ) to ( uredValue MeasuredValue – Tolerance The true value is located in the range ( Meas + Tolerance ). Commands Received 4.4.2.3 No cluster specific commands are received by the server cluster. Commands Generated 4.4.2.4 No cluster specific commands are generated by the server cluster. Attribute Reporting 4.4.2.5 This cluster shall support attribute reporti ng using the Report Attributes command and according to the minimum and maximum reporting interval and reportable change settings described in the ZCL Foundation specification (see 2.4.7). The following attributes shall be reported: M easuredValue Tolerance Client 4.4.3 The client cluster has no dependencies, cluster specific attributes nor specific commands generated or r e- ceived. 4.5 Pressure Measurement 4.5.1 Overview on, Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classificati identification, etc. The server cluster provides an interface to pressure measurement functionality, including configuration and provision of notifications of pressure measurements. 4.5.1.1 Revision History 2016 11  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 4 -

288 Chapter ZigBee Cluster Library Specification 4 ZigBee Document 075123 easurement and Sensing M – Description Rev a mandatory global ClusterRevision 1 ttribute added 4.5.1.2 Classification Primary Transaction Hierarchy Role PICS Code Type 2 (server to client) PRS Application Base 4.5.1.3 Cluster Identifiers Identifier Name Pressure M easurement 0x040 3 4.5.2 Server Dependencies 4.5.2.1 None Attributes 4.5.2.2 For convenience, the attribut es defined in this specification are arranged into sets of related attributes; each set can contain up to 16 attributes. Attribute identifiers are encoded such that the most significant three ni b- bles specify the attribute set and the least significant nibb le specifies the attribute within the set. The currently Pressure Measurement Attribute Sets 14 . - defined attribute sets are listed in Table 4 Table - . Pressure Measurement Attribute Sets 14 4 er i Attribute Set Identif Description Pressure Measurement Information 0x000 Extended Pressure Measurement Information 0x001 4.5.2.2.1 Pressure Measure ment In for mati on At t ri bu te Set The Pressure Measurement Information attribute set contains the attributes summarized in Table 4 - 15 . 4 Table - 15 . Pressure Measurement Information Attribute Set O / Id M Type Range Def Access Name – MinMeasuredValue 16 M 0 P R 0x0000 MeasuredValue int MaxMeasuredValue 0x0001 MinMeasuredValue int16 0x8001 – 0x7ffe R - M 0x0002 MaxMeasuredValue int16 0x8002 – 0x7fff R - M - O 0x0000 0x0800 – R P 0x0003 Tolerance uint16  served. 4 - 12 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights re

289 ZigBee Cluster Library Specification 4 Chapter ZigBee Document 075123 Measurement and Sensing – This set provides for measurements with a fixed maximum resolution of 0.1 kPa. At t r i b u t e Me a s u r e d V a l u e 4 . 5 . 2 . 2 . 1 . 1 represents the pressure in kPa as follows: MeasuredValue MeasuredValue = 10 x Pressure Where - 3276.7 kPa <= Pressure <= 3276.7 kPa, corresponding to a MeasuredValue in the range 0x8001 to 0x7fff. Value Measured A of 0x8000 indicates that the pressure measurement is invalid. MeasuredValue is updated continuously as new measurements are made. Mi n Me a s u r e d V a l u e 4 . 5 . 2 . 2 . 1 . 2 A t t r i b u t e The attribute indicates the minimum value of MeasuredValue that can be measu red. A MinMeasuredValue value of 0x8000 means this attribute is not defined. 4 . 5 . 2 . 2 . 1 . 3 Ma x M e a s u r e d V a l u e A t t r i b u t e The MaxMeasuredValue attribute indicates the maximum value of MeasuredValue that can be measured. A value of 0x8000 means this attribute is not defined. MaxMeasuredValue MinMeasuredValue. shall be greater than MinMeasuredValue MaxMeasuredValue define the range of the sensor. and 4 . 5 . 2 . 2 . 1 . 4 T o l e r a n c e At t r i b u t e The Tolerance attribute indicates the magnitude of the possible error that is associated with MeasuredValue . – MeasuredValue ) to ( MeasuredValue + Tolerance ). The true value is located in the range ( Tolerance b- Extende d Pressu r e Measureme nt In f orma tion At t ri 4.5.2.2.2 ute Se t The Extended Pressure Measurement Information attribute set contains the attributes summarized in Table - 16 . 4 4 - 16 . Extended Pressure Measurement Information Attribute Set Table Id Type Range Def M/O Acc Name O ScaledValue int16 MinScaledValue – MaxScaledValue R 0 0x0010 Note 1 O - R 0x0011 MinScaledVa lue int16 0x8001 - 0x7ffe Note 1 O R int16 0x8002 - 0x7fff 0x0012 MaxScaledValue - Note 1 O 0x0800 ScaledTolerance uint16 – 0x0000 R - 0x0013 Note 2 O Scale int8 0x81 - 0x7f R - 0x0014 Note 1 four shall be supported. Note 1: If any one of these attributes is supported, all If this attribute is supported, all attributes in this set shall be supported. Note 2: 2016 13  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 4 -

290 Chapter ZigBee Cluster Library Specification 4 ZigBee Document 075123 easurement and Sensing M – e- This attribute set is optional, and allows the range and resolution of measured pressures to be extended b sure Measurement Information Attribute Set, in a way fully backward Pres yond those catered for by the compatible with devices that implement (or can read) only that attribute set. 4 . 5 . 2 . 2 . 2 . 1 S c a l e d V a l u e At t r i b u t e ScaledValue represents the pressure in Pascals as follows: Scale = 10 sure in Pa x Pres ScaledValue Scale Scale - 3276.7x10 Pa <= Pressure <= 3276.7x10 Where Pa corresponding to a ScaledValue in the range 0x8001 to 0x7fff. ScaledValue of 0x8000 indicates that the pressure measurement is invalid. A is updated continuously as new measur ements are made. ScaledValue 4 . 5 . 2 . 2 . 2 . 2 Mi n S c a l e d V a l u e At t r i b u t e that can be measured. A value of attribute indicates the minimum value of ScaledValue The MinScaledValue 0x8000 means this attribute is not defined At t r i b u t e Ma x S c a l e d V a l u e 4 . 5 . 2 . 2 . 2 . 3 e maximum value of attribute indicates th MaxScaledValue The that can be measured. A value of ScaledValue 0x8000 means this attribute is not defined. MaxScaledValue shall be greater than MinScaledValue. define the range of the sensor. and MaxScaledValue MinScaledValue 4 . 5 . 2 . 2 . 2 . 4 S c a l e d T o l e r a n c e At t r i b u t e Th e ScaledTolerance attribute indicates the magnitude of the possible error that is associated with ScaledValue . The true value is located in the range ScaledTolerance – ScaledTolerance ). + ScaledValue ) to ( ( ScaledValue 4 . 5 . 2 . 2 . 2 . 5 S c a l e At t r i b u t e attribute in dicates the base 10 exponent used to obtain Scale (see ). 4.5.2.2.2.1 ScaledValue The 4.5.2.3 Commands Received No cluster specific commands are received by the server cluster. Commands Generated 4.5.2.4 No cluster specific commands are generated by the server cluster. Attribute Reporting 4.5.2.5 This cluster shall support attribute reporting using the Report Attributes command and according to the minimum and maximum reporting interval and reportable change settings described in the ZCL Foundation (see 2.4.7). The following attributes shall be reportable: specification MeasuredValue Tolerance If the Extended Pressure Measurement Information attribute set is implemented, it is recommended that the following attributes are also reportable: ScaledValue ce ScaledToleran  served. 4 - 14 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights re

291 ZigBee Cluster Library Specification Chapter 4 075123 Measurement and Sensing – ZigBee Document 4.5.3 Client The client cluster has no dependencies, cluster specific attributes nor specific commands generated or r e- ceived. Flow Measurement 4.6 Overview 4.6.1 Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classification , identification, etc. The server cluster provides an interface to flow measurement functionality, including configuration and provision of notifications of flow measurements. 4.6.1.1 Revision History Rev Description attribute a mandatory global ClusterRevision 1 dded 4.6.1.2 Classification PICS Code Role Hierarchy Primary Transaction Application F LW Base Type 2 (server to client) Identifiers 4.6.1.3 Cluster Identifier Name 0x0404 Flow Measurement 4.6.2 Server 4.6.2.1 Dependencies None 4.6.2.2 Attributes For convenience, the attributes defined in this specification are arranged into sets of related attributes; each set can contain up to 16 attributes. Attribute identifiers are encoded such that the most significant three ni b- bles specify the attribute set and the least significant nibble specifies t he attribute within the set. The currently . - 17 defined attribute sets for are listed in Table 4 . Flow Measurement Attribute Sets - 4 17 Table Attribute Set Identifier Description 0x000 Flow Measurement Information 2016 15  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 4 -

292 Chapter ZigBee Cluster Library Specification 4 ZigBee Document 075123 easurement and Sensing – M Flow Measuremen t In fo rmat ion At t ri bute Set 4.6.2.2.1 Table 4 - 18 . The Flow Measurement Information attribute set contains the attributes summarized in 4 - 18 . Flow Measurement Information Attribute Set Table Id Type Range Acc Def MO Name MinMeasuredValue – uint16 0x0000 MeasuredValue M R P 0 MaxMeasuredValue 0x0001 MinMeasuredValue uint16 0x0000 – 0xfffd R - M 0x0002 MaxMeasuredValue uint16 0x0001 – 0xfffe R - M O - P R 0x0800 – 0x0000 uint16 0x 0003 Tolerance 4 . 6 . 2 . 2 . 1 . 1 Me a s u r e d V a l u e At t r i b u t e 3 represents the flow in m MeasuredValue /h as follows: MeasuredValue = 10 x Flow 3 3 in the range 0 to 0xfffe. /h <= Flow <= 6,553.4 m Where 0 m /h, corresponding to a MeasuredValue 3 The maxi mum resolution this format allows is 0.1 m /h. A MeasuredValue of 0xffff indicates that the pressure measurement is invalid. is updated continuously as new measurements are made. MeasuredValue Mi n Me a s u r e d V a l u e 4 . 6 . 2 . 2 . 1 . 2 A t t r i b u t e that can be measured. A The MinMeasuredValue cates the minimum value of MeasuredValue attribute indi value of 0xffff means this attribute is not defined 4 . 6 . 2 . 2 . 1 . 3 Ma x M e a s u r e d V a l u e A t t r i b u t e The MaxMeasuredValue attribute indicates the maximum value of MeasuredValue that can be measured. A value of 0xf fff means this attribute is not defined. MaxMeasuredValue shall be greater than MinMeasuredValue. MinMeasuredValue MaxMeasuredValue define the range of the sensor. and 4 . 6 . 2 . 2 . 1 . 4 T o l e r a n c e At t r i b u t e The Tolerance attribute indicates the magnitude of the possible err or that is associated with MeasuredValue . ). Tolerance + MeasuredValue ) to ( Tolerance – The true value is located in the range ( MeasuredValue Commands Received 4.6.2.3 No cluster specific commands are received by the server cluster. Commands Generated 4.6.2.4 ecific commands are generated by the server cluster. No cluster sp  served. 4 - 16 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights re

293 ZigBee Cluster Library Specification 4 Chapter 075123 Measurement and Sensing ZigBee Document – Attribute Reporting 4.6.2.5 This cluster shall support attribute reporting using the Report Attributes command and according to the minimum and maximum reporting interval and reportable change settings described in the ZCL Foundation specification (see 2.4.7). The following attributes shall be reported: MeasuredValue Tolerance 4.6.3 Client e- The client cluster has no dependencies, cluster specific attributes nor specific commands generated or r ceived. Measurement Relative Humidity 4.7 Overview 4.7.1 Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classification, identification, etc. The server cluster provides an interface to relative humidity measurement functionality, including config u- ration and provision of notifications of relative humidity measurements. Revision History 4.7.1.1 Rev Description attribute added mandatory global ClusterRevision 1 4.7.1.2 Classification Hierarchy Role PICS Code Primary Transaction to client) Type 2 (server RH Base Application Cluster Identifiers 4.7.1.3 Name Identifier 0x0405 Relative Humidity 4.7.2 Server Dependencies 4.7.2.1 None Attributes 4.7.2.2 For convenience, the attributes defined in this specification are arranged into sets of related attributes; each set can contain up to 16 attribu b- tes. Attribute identifiers are encoded such that the most significant three ni bles specify the attribute set and the least significant nibble specifies the attribute within the set. The currently 4 Table defined attribute sets are listed in . 19 - 2016 17  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 4 -

294 Chapter 4 ZigBee Cluster Library Specification easurement and Sensing M – 075123 ZigBee Document - 19 Table 4 . Relative Humidity Measurement Attribute Sets Attribute Set Identifier Description Relative Humidity Measurement Information 0x000 Relati ve H umid it y Measureme nt In fo rmati on At t rib u te 4.7.2.2.1 Set The Relative Humidity Measurement Information attribute set contains the attributes summarized in Table 20 - . 4 - Table . Attributes of the Relative Humidity Measurement Inform ation Attribute Set 4 20 Def MO Type Range Id Name Acc MinMeasuredValue – R uint16 0x0000 P - M MeasuredValue MaxMeasuredValue MinMeasuredValue uint16 0x0000 – 0x0001 R - M 0x270f 0x0002 MaxMeasuredValue uint16 0x0001 – R - M 0x2710 – x0000 0 0x0003 O - P R 0x0800 Tolerance uint16 4 . 7 . 2 . 2 . 1 . 1 Me a s u r e d V a l u e At t r i b u t e MeasuredValue represents the relative humidity in % as follows: MeasuredValue = 100 x Relative humidity Where 0% <= Relative humidity <= 100%, corresponding to a MeasuredValue in the range 0 to 0x2710. The ma ximum resolution this format allows is 0.01%. A MeasuredValue of 0xffff indicates that the measurement is invalid. MeasuredValue is updated continuously as new measurements are made. 4 . 7 . 2 . 2 . 1 . 2 Mi n Me a s u r e d V a l u e A t t r i b u t e MeasuredValue inimum value of MinMeasuredValue that can be measured. A The attribute indicates the m value of 0xffff means this attribute is not defined. Ma x M e a s u r e d V a l u e 4 . 7 . 2 . 2 . 1 . 3 A t t r i b u t e The attribute indicates the maximum value of MeasuredValue that can be measured. A MaxMeasuredValue value of 0xffff means this attribute is not defined. MaxMeasuredValue shall be greater than MinMeasuredValue. MinMeasuredValue and MaxMeasuredValue define the range of the sensor. 4 . 7 . 2 . 2 . 1 . 4 T o l e r a n c e At t r i b u t e The . attribute indicates the magnitude of the possible error that is associated with MeasuredValue Tolerance MeasuredValue ) to ( + Tolerance Tolerance ). – MeasuredValue The true value is located in the range ( Commands Received 4.7.2.3 No cluster specific commands are received by the server cluster.  served. 4 - 18 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights re

295 ZigBee Cluster Library Specification Chapter 4 – Measurement and Sensing ZigBee Document 075123 Commands Generated 4.7.2.4 mands are generated by the server cluster. No cluster specific com 4.7.2.5 Attribute Reporting This cluster shall support attribute reporting using the Report Attributes command and according to the L Foundation minimum and maximum reporting interval and reportable change settings described in the ZC specification (see 2.4.7). The following attributes shall be reported: MeasuredValue Tolerance Client 4.7.3 e- The client cluster has no dependencies, cluster specific attributes nor specific commands generated or r ceived. 4.8 Occupancy Sensing 4.8.1 Overview lease see Chapter 2 for a general cluster overview defining cluster architecture, revision, classification, P identification, etc. The server cluster provides an interface to occupancy sensing functionality, including configuration and provision of notificat ions of occupancy status. 4.8.1.1 Revision History Rev Description 1 mandatory global ClusterRevision attribute added Classification 4.8.1.2 Hierarchy Role Primary Transaction PICS Code OCC Type 2 (server to client) Application Base Identifiers Cluster 4.8.1.3 e Identifier Nam Occupancy Sensing 0x0406 Server 4.8.2 Dependencies 4.8.2.1 None 2016 19  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 4 -

296 Chapter ZigBee Cluster Library Specification 4 ZigBee Document 075123 easurement and Sensing – M Attributes 4.8.2.2 For convenience, the attributes defined in this specification are arranged into sets of related attributes; each at the most significant three ni b- set can contain up to 16 attributes. Attribute identifiers are encoded such th bles specify the attribute set and the least significant nibble specifies the attribute within the set. The currently defined attribute sets are listed in 4 - 21 . Table 4 Table 21 . Occupancy Sensor Attribute Sets - Attribute Set Identifier Description 0x000 Occupancy sensor information 0x001 PIR configuration 0x002 Ultrasonic configuration Occupanc y Se nso r In forma ti on Se t 4.8.2.2.1 The occupancy sensor informatio Table 4 - 22 . n attribute set contains the attributes summarized in Table 4 - 22 . Occupancy Sensor Information Attribute Set Id O M/ Type Range Default Access Name M - P R 0000 000x b 0 map8 0x0000 Occupancy 0x0001 enum8 0x00 – 0xfe OccupancySensorType R - M O c c u p a n c y 4 . 8 . 2 . 2 . 1 . 1 At t r i b u t e The attribute is a bitmap. Occupancy Bit 0 specifies the sensed occupancy as follows: 1 = occupied, 0 = unoccupied. All other bits are reserved. 4 . 8 . 2 . 2 . 1 . 2 O c c u p a n c y S e n s o r T y p e At t r i b u t e attribute specifies the type of the occupancy sensor. This attribute shall be set to The OccupancySensorType Table . 23 one of the non - reserved values listed in - 4 Table - 23 . Values of the OccupancySensorType Attribute 4 Attribute Value Description 0x00 PIR 0x01 Ultrasonic 0x02 PIR and ultrasonic 4.8.2.2.2 PIR C on fig ura tio n Set The PIR sensor configuration attribute set contains the attributes summarized in Table 4 - 24 . - 24 . Attributes of the PIR Configuration Attribute Set Table 4 Default Range Type Id M/O Name Access  served. 4 Copyright Page 2007 - 20 - 2016 , The ZigBee Alliance. All rights re

297 ZigBee Cluster Library Specification Chapter 4 Measurement and Sensing – ZigBee Document 075123 PIROccupiedToUnoccupiedDelay uint16 0x00 – 0xfffe RW 0x00 0x0010 O 0x0011 PIRUnoccupiedToOccu piedDelay uint16 0x00 – 0xfffe RW 0x00 O O 0x01 RW 0x0012 PIRUnoccupiedToOccupiedThreshold uint8 0x01 – 0xfe P I R O c c u p i e d T o U n o c c u p i e d D e l a y At t r i b u t e 4 . 8 . 2 . 2 . 2 . 1 The PIROccupiedToUnoccupiedDelay attribute is 16 bits in length and specifies the time delay, in seconds, before the PIR sensor changes to its unoccupied state after the last detection of movement in the sensed area. 4 . 8 . 2 . 2 . 2 . 2 P I R U n o c c u p i e d T o O c c u p i e d D e l a y At t r i b u t e The PIRUnoccupiedToOccupiedDelay s, attribute is 16 bits in length and specifies the time delay, in second before the PIR sensor changes to its occupied state after the detection of movement in the sensed area. This attribute is mandatory if the PIRUnoccupiedToOccupiedThreshold attribute is implemented. P I R U n o c c u p i e d T o O c c u p i e d T h r e s h o l d 4 . 8 . 2 . 2 . 2 . 3 At t r i b u t e The PIRUnoc cupiedToOccupiedThreshold attribute is 8 bits in length and specifies the number of movement PIRUnoccupiedToOccupiedDelay , before the PIR sensor detection events that must occur in the period attribute is PIRUnoccupiedToOccupiedDelay e changes to its occupied state. This attribute is mandatory if th implemented. Ult rasonic Co n fig urati on Se t 4.8.2.2.3 Table The ultrasonic sensor configuration attribute set contains the attributes summarized in . 25 - 4 Table 25 . Attributes of the Ultrasonic Configuration Attribute Set 4 - M Range Type Acc Id De f Name O 0x0020 UltrasonicOccupiedToUnoccupiedDelay uint16 0x0000 – 0xfffe RW 0x00 O 0x00 0x0021 UltrasonicUnoccupiedToOccupiedDelay uint16 0x0000 – 0xfffe RW O UltrasonicUnoccupiedToOccupiedThreshol O RW 0x01 0x0022 0xfe uint8 0x01 – d 4 . 8 . 2 . 2 . 3 . 1 U l t r a s o n i c O c c u p i e d T o U n o c c u p i e d D e l a y At t r i b u t e The UltrasonicOccupiedToUnoccupiedDelay attribute is 16 bits in length and specifies the time delay, in seconds, before the Ultrason ic sensor changes to its unoccupied state after the last detection of movement in the sensed area. A t t r i b u t e U l t r a s o n i c U n o c c u p i e d T o O c c u p i e d D e l a y 4 . 8 . 2 . 2 . 3 . 2 The UltrasonicUnoccupiedToOccupiedDelay attribute is 16 bits in length and specifies the time delay, in secon ds, before the Ultrasonic sensor changes to its occupied state after the detection of movement in the sensed area. This attribute is mandatory if the attribute is i UltrasonicUnoccupiedToOccupiedThreshold m- plemented. U l t r a s o n i c U n o c c u p i e d T o O c c u p i e d T h r e s h o l d At t r i b u t e 4 . 8 . 2 . 2 . 3 . 3 UltrasonicUnoccupiedToOccupiedThreshold attribute is 8 bits in length and specifies the number of The , before movement detection events that must occur in the period UltrasonicUnoccupiedToOccupiedDelay ed state. This attribute is mandatory if the the Ultrasonic sensor changes to its occupi UltrasonicUnoccupiedToOccupiedDelay . implemented attribute is 2016 21  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 4 -

298 Chapter ZigBee Cluster Library Specification 4 ZigBee Document – 075123 M easurement and Sensing Commands Received 4.8.2.3 No cluster specific commands are received by the server cluster. 4.8.2.4 Commands Generated No cluster specific commands are generated by the server cluster. Attribute Reporting 4.8.2.5 This cluster shall support attribute reporting using the Report Attributes command and according to the minimum and maximum reporting interval settings described in the ZCL Foundation specification (see ollowing attribute shall be reported: 2.4.7). The f Occupancy Client 4.8.3 The client cluster has no dependencies, cluster specific attributes nor specific commands generated or r e- ceived. Electrical Measurement 4.9 Overview 4.9.1 ning cluster architecture, revision, classification, Please see Chapter 2 for a general cluster overview defi identification, etc. e- This cluster provides a mechanism for querying data about the electrical properties as measured by the d e - n a per vice. This cluster may be implemented on any device type and be implemented o ndpoint basis. For n- and report electrical i example, a power strip device could represent each outlet on a different endpoint formation for each individual outlet. The only caveat is that if you implement an attribute that has an ass o- ciated multiplier and divisor, then you must implement the associated multiplier and divisor attributes. For plement DCVoltageMultiplier and example if you implement DCVoltage, you must also im DCVoltageDivisor. If you are interested in reading information about the power supply or battery level on the device, please see the Power Configuration cluster. 4.9.1.1 Revision History Rev Description 1 vision attribute added ClusterRe mandatory global 4.9.1.2 Classification PICS Code Primary Transaction Hierarchy Role Type 1 (client to server) Base Application EM R Cluster 4.9.1.3 Identifiers Name Identifier b04 0x0 Electrical Measurement  served. 4 - 22 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights re

299 ZigBee Cluster Library Specification 4 Chapter 075123 Measurement and Sensing – ZigBee Document Formatting 4.9.1.4 Most measurement values have an associated m ultiplier and divisor attribute. Multiplier attributes provide a value to be multiplied against a raw or uncompensated measurement value. Divisor attributes provide a value ated measurement value. If to divide the results of applying a multiplier attribute against a raw or uncompens a multiplier or divisor attribute is present, its corresponding divisor or multiplier attribute shall be impl e- mented as well. Server 4.9.2 Dependencies 4.9.2.1 plements the Electrical For the alarm functionality in this cluster to be operational, any endpoint that im Measurement server cluster shall also implement the Alarms server cluster. 4.9.2.2 Attributes n- The server side of this cluster contains certain attributes associated with the electrical properties and co 4 . 26 figuration, as shown in Table - Attributes of the Electrical Measurement Cluster . 4 - 26 Table Attribute Set Identifier Description Basic Information 0x00 0x01 DC Measurement DC Formatting 0x02 0x03 pecific) Measurements phase S - AC (Non 0x04 - phase Specific) Formatting AC (Non AC (Single Phase or Phase A) Measurements 0x05 AC Formatting 0x06 DC Manufacturer Threshold Alarms 0x07 0x08 AC Manufacturer Threshold Alarms 0x09 AC Phase B Measurements 0x0A AC Phase C Measurements 4.9.2.2.1 Basic In fo rmati on 4 27 Table Electrical Measurement Cluster Basic Information - . Identifier M/O Type Range Access Default Name 0x0000 MeasurementType map32 0x00000000 – 0xFFFFFFFF R 0x00000000 M 4 . 9 . 2 . 2 . 1 . 1 Me a s u r e m e n t T y p e ndicates a device’s measurement capabilities. This will be indicated by setting the desire This attribute i Table measurement bits to 1, as mentioned in Measurement DC and 28 - 4 2016 23  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 4 -

300 Chapter ZigBee Cluster Library Specification 4 easurement and Sensing ZigBee Document – 075123 M 29 - . This attribute will be used client devices to determine what all attribute is supported by the meter. 4 Table Unused bits should be set to zero.  - 2016 , The ZigBee Alliance. All rights re served. 2007 Copyright 24 - 4 Page

301 ZigBee Cluster Library Specification Chapter 4 075123 Measurement and Sensing – ZigBee Document - Attribute . MeasurementType 4 Table 28 t Bi Flag Name / Description 0 Active measurement (AC) Reactive measurement (AC) 1 2 Apparent measurement (AC) 3 Phase A measurement 4 Phase B measurement Phase C measurement 5 6 DC measurement Harmonics measurement 7 8 Power quality measurement 4.9.2.2.2 DC Measure men t Table 4 29 . DC Measurement Attributes - Access Id Range M/O Default Type Name 0x0100 DCVoltage int16 - 32767 – 32767 R 0x8000 O 0x0101 DCVoltageMin int16 - 32767 – 32767 R 0x8000 O – 32767 - O 0x8000 R 32767 0x0102 DCVoltageM ax int16 32767 0x0103 int16 - 32767 – DCCurrent R 0x8000 O 0x0104 DCCurrentMin int16 - 32767 – 32767 R 0x8000 O 0x0105 DCCurrentMax int16 - 32767 – 32767 R 0x8000 O 0x0106 R int16 O 0x8000 32767 DCPower - 32767 – R O 0x8000 0x0107 DCPowerMi n int16 - 32767 – 32767 int16 O 0x0108 DCPowerMax 0x8000 - 32767 – 32767 R – 0x0109 Reserved 0x01FF 4 . 9 . 2 . 2 . 2 . 1 D C V o l t a g e The DCVoltage attribute represents the most recent DC voltage reading in Volts (V). If the voltage cannot be 0x8000 is returned. measured, a value of 2016 25  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 4 -

302 Chapter ZigBee Cluster Library Specification 4 ZigBee Document 075123 easurement and Sensing M – D C V o l t a g e Mi n 4 . 9 . 2 . 2 . 2 . 2 The DCVoltageMin attribute represents the lowest DC voltage value measured in Volts (V). After resetting, this attribute will return a value of 0x8000 until a measurement is made. D C V o l t a g e Ma x 4 . 9 . 2 . 2 . 2 . 3 epresents the highest DC voltage value measured in Volts (V). After resetting, The DCVoltageMax attribute r this attribute will return a value of 0x8000 until a measurement is made. D C C u r r e n t 4 . 9 . 2 . 2 . 2 . 4 rent cannot be The DCCurrent attribute represents the most recent DC current reading in Amps (A). If the cur measured, a value of 0x8000 is returned. D C C u r r e n t Mi n 4 . 9 . 2 . 2 . 2 . 5 The DCCurrentMin attribute represents the lowest DC current value measured in Amps (A). After resetting, this attribute will return a value of 0x8000 until a measurement is made. 4 . 9 . 2 . 2 . 2 . 6 D C C u r r e n t Ma x The DCCurrentMax attribute represents the highest DC current value measured in Amps (A). After resetting, this attribute will return a value of 0x8000 until a measurement is made. 4 . 9 . 2 . 2 . 2 . 7 D C P o w e r ing in Watts (W). If the power cannot be The DCPower attribute represents the most recent DC power read measured, a value of 0x8000 is returned. 4 . 9 . 2 . 2 . 2 . 8 D C P o w e r Mi n The DCPowerMin attribute represents the lowest DC power value measured in Watts (W). After resetting, this attribute will return a value of 0x8000 until a measure ment is made. 4 . 9 . 2 . 2 . 2 . 9 D C P o w e r Ma x The DCPowerMax attribute represents the highest DC power value measured in Watts (W). After resetting, this attribute will return a value of 0x8000 until a measurement is made. 4.9.2.2.3 DC For mat tin g Table - 30 . DC Formatting Attributes 4 Id M/O Type Range Access Default Name 0x0001 R 0xFFFF – 0x0001 uint16 O 0x0200 DCVoltageMultiplier DCVoltageDivisor uint16 0x0001 – 0xFFFF R 0x0001 O 0x0201 0x0202 DCCurrentMultiplier uint16 0x0001 – 0xFFFF R 0x0001 O 0x0001 O 0x0001 R 0xFFFF – 0x0203 DCCurrentDivisor uint16 O 0x0001 0x0204 DCPowerMultiplier uint16 0x0001 – 0xFFFF R 0x0001 O 0x0205 DCPowerDivisor uint16 0x0001 – 0xFFFF R 4 . 9 . 2 . 2 . 3 . 1 D C V o l t a g e Mu l t i p l i e r DCVoltageMultiplier provides a value to be mul The tiplied against the DCVoltage , DCVoltageMin , and attribute. DCVoltageDivisor attributes. This attribute must be used in conjunction with the DCVoltageMax 0x0000 is an invalid value for this attribute.  served. 4 - 26 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights re

303 ZigBee Cluster Library Specification Chapter 4 075123 Measurement and Sensing – ZigBee Document D C V o l t a g e D i v i s o r 4 . 9 . 2 . 2 . 3 . 2 provides a value to be divided against the The , DCVoltageMin , and DCVoltageDivisor DCVoltage attributes. This attribute must be used in conjunction with the DCVoltageMultiplier attribute. DCVoltageMax 0x0000 is an invalid value for this attribute. D C C u r r e n t Mu l t i p l i e r 4 . 9 . 2 . 2 . 3 . 3 DCCurrentMultiplier ovides a value to be multiplied against the DCCurrent , DCCurrentMin , and The pr attributes. This attribute must be used in conjunction with the DCCurrentDivisor DCCurrentMax attribute. 0x0000 is an invalid value for this attribute. D C C u r r e n t D i v i s o r 4 . 9 . 2 . 2 . 3 . 4 ivisor , and provides a value to be divided against the DCCurrent , DCCurrentMin DCCurrentD The attributes. This attribute must be used in conjunction with the DCCurrentMultiplier attri b- DCCurrentMax ute. 0x0000 is an invalid value for this attribute. 4 . 9 . 2 . 2 . 3 . 5 D C P o w e r Mu l t i p l i e r DCPowerMultiplier , and provides a value to be multiplied against the DCPower , DCPowerMin The DCPowerMax attributes. This attribute must be used in conjunction with the DCPowerDivisor attribute. 0x0000 is an invalid value for this attribute. 4 . 9 . 2 . 2 . 3 . 6 D C P o w e r D i v i s o r The DCPowerDivisor provides a value to be divided against the DCPower , DCPowerMin , and attributes. This attribute must be used in conjunction with the attribute. DCPowerMax DCPowerMultiplier 0x0000 is an invalid value for this attribute. 4.9.2.2.4 AC (N on - p hase Sp ecific ) Measu reme nts 4 - 31 . Table - phase Specific) Measurement Attributes AC (Non Id M/O Type Range Acc Default Name 0x0300 ACFrequency uint16 0x0000 – 0xFFFF R 0xFFFF O 0xFFFF 0x0301 uint16 0x0000 – ACFrequencyMin R 0xFFFF O ACFrequencyMax uint16 0x0000 – 0xFFFF R 0xFFFF O 0x0302 0xFFFF R 0xFFFF – 0x0000 uint16 O 0x0303 NeutralCurrent 0x0304 int32 - 8,388,607 – 8,388,607 R - O TotalActivePower 8,388,607 0x0305 int32 - 8,388,607 – TotalReactivePower R - O 0x0306 Total ApparentPower uint32 0x000000 – 0xFFFFFF R - O 32767 0x0307 int16 - 32768 – Measured1stHarmonicCurrent R 0x8000 O 0x0308 Measured3rdHarmonicCurrent int16 - 32768 – 32767 R 0x8000 O 0x0309 Measured5thHarmonicCurrent int16 - 32768 – 32767 R 0x8000 O 0x030 A Me asured7thHarmonicCurrent int16 - 32768 – 32767 R 0x8000 O B Measured9thHarmonicCurrent int16 - 32768 – 32767 R 0x8000 O 0x030 0x030 C Measured11thHarmonicCurrent int16 - 32768 – 32767 R 0x8000 O 0x030 MeasuredPhase1stHarmonicCurrent int16 - 32768 – 32767 R 0 x8000 O D – 0x030 MeasuredPhase3rdHarmonicCurrent int16 - 32768 E 32767 R 0x8000 O 0x8000 R 32767 – 32768 - O 0x030 F MeasuredPhase5thHarmonicCurrent int16 2016 27  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 4 -

304 Chapter ZigBee Cluster Library Specification 4 ZigBee Document 075123 easurement and Sensing M – M/O Type Range Acc Default Id Name R 32767 O 0x8000 0x0310 MeasuredPhase7thHarmonicCurrent int16 - 32768 – – MeasuredPhase9thHarmonic Current int16 - 32768 0x0311 32767 R 0x8000 O 0x0312 O 0x8000 R MeasuredPhase11thHarmonicCurrent int16 - 32768 – 32767 4 . 9 . 2 . 2 . 4 . 1 A C F r e q u e n c y attribute represents the most recent AC Frequency reading in Hertz (Hz). If the frequency ACFrequency The cannot be measured, a va lue of 0xFFFF is returned. A C F r e q u e n c y Mi n 4 . 9 . 2 . 2 . 4 . 2 ACFrequencyMin attribute represents the lowest AC Frequency value measured in Hertz (Hz). After The resetting, this attribute will return a value of 0xFFFF until a measurement is made. A C F r e q u e n c y Ma x 4 . 9 . 2 . 2 . 4 . 3 The attribute represents the highest AC Frequency value measured in Hertz (Hz). After cyMax ACFrequen resetting, this attribute will return a value of 0xFFFF until a measurement is made. 4 . 9 . 2 . 2 . 4 . 4 N e u t r a l C u r r e n t The NeutralCurrent attribute represents the AC neutral (Line - Out) cu rrent value at the moment in time the attribute is read, in Amps (A). If the instantaneous current cannot be measured, a value of 0xFFFF is returned. 4 . 9 . 2 . 2 . 4 . 5 T o t a l A c t i v e P o w e r Active power represents the current demand of active power delivered or received at the premises, in kW. Positive values indicate power delivered to the premises where negative values indicate power received from the premises. In case if device is capable of measuring multi elements or phases then this will be net active power value. 4 . 9 . 2 . 2 . 4 . 6 T o t a l R e a c t i v e P o w e r Reactive power represents the current demand of reactive power delivered or received at the premises, in kVAr. Positive values indicate power delivered to the premises where negative values indicate power r e- ceived from the premises. In case if d evice is capable of measuring multi elements or phases then this will be net reactive power value. 4 . 9 . 2 . 2 . 4 . 7 T o t a l A p p a r e n t P o w e r Represents the current demand of apparent power, in kVA. In case if device is capable of measuring multi elements or phases then this will be net apparent power value. At t r i b u t e s Me a s u r e d N t h H a r m o n i c C u r r e n t 4 . 9 . 2 . 2 . 4 . 8 through Measured1stHarmonicCurrent The attributes represent the most MeasuredNthHarmonicCurrent th harmonic current reading in an AC frequency. The unit for this measurement is 10 ^ recent N amperes. If NthHarmonicCurrentMultiplier NthHarmonicCurrentMultiplier is not implemented the unit is in th amperes. If the N harmonic current cannot be measured a value of 0x8000 is returned. A positive value th th positive, and a negative value indicates that the measured N harmonic current is indicates the measured N harmonic current is negative. At t r i b u t e s 4 . 9 . 2 . 2 . 4 . 9 Me a s u r e d P h a s e N t h H a r m o n i c C u r r e n t The attributes represent MeasuredPhase1stHarmonicCurrent through MeasuredPhaseNthHarmonicCurrent th harmonic current reading in an AC frequency. The unit for this measurement the most recent phase of the N PhaseNthHarmonicCurrentMultiplier degree. If PhaseNthHarmonicCurrentMultiplier is 10 ^ m- is not i th plemented the unit is in degree. If the phase of the N cannot be measured a value of harmonic current th harmonic current is prehurry, 0x8000 is returned. A positive value indicates the measured phase of the N th and a negative value indicates that the measured phase of the N harmonic current is lagging.  served. 4 - 28 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights re

305 ZigBee Cluster Library Specification 4 Chapter 075123 Measurement and Sensing – ZigBee Document AC (N on - p hase Sp ecific) 4.9.2.2.5 Fo rmat ti ng Table 4 - 32 . AC (Non - phase Specific) Formatting Attributes Id O Type Range Acc Default M/ Name 0x0400 ACFrequencyMultiplier uint16 0x0001 0xFFFF R 0x0001 O – R 0xFFFF O 0x0001 0x0401 ACFrequencyDivisor uint16 0x0001 – PowerMultiplier uint32 0x000000 – 0x0402 0 xFFFFFF R 0x000001 O 0x000001 R O 0x0403 PowerDivisor uint32 0x00000 – 0xFFFFFF – HarmonicCurrentMultiplier int8 - 127 0x0404 127 R 0x00 O 0x00 R 0x0405 PhaseHarmonicCurrentMultiplier int8 - 127 – 12 7 O 4 . 9 . 2 . 2 . 5 . 1 A C F r e q u e n c y Mu l t i p l i e r n- ACFrequency attribute. This attribute must be used in co Provides a value to be multiplied against the attribute. 0x0000 is an invalid value for this attribute. ACFrequencyDivisor junction with the 4 . 9 . 2 . 2 . 5 . 2 A C F r e q u e n c y D i v i s o r Provi des a value to be divided against the attribute. This attribute must be used in conjunction ACFrequency with the attribute. 0x0000 is an invalid value for this attribute. ACFrequencyMultiplier P o w e r Mu l t i p l i e r 4 . 9 . 2 . 2 . 5 . 3 Provides a value to be multiplied against a raw or uncompensated sensor count of power being measured by the metering device. If present, this attribute must be applied against all power/demand values to derive the delivered and received values expressed in the specified units. This attribute must be u sed in conjunction with the PowerDivisor attribute. 4 . 9 . 2 . 2 . 5 . 4 P o w e r D i v i s o r attribute against a raw or unco Multiplier Provides a value to divide against the results of applying the m- pensated sensor count of power being measured by the metering device. If present, thi s attribute must be applied against all demand/power values to derive the delivered and received values expressed in the spec i- PowerMultiplier attribute. fied units. This attribute must be used in conjunction with the 4 . 9 . 2 . 2 . 5 . 5 H a r m o n i c C u r r e n t Mu l t i p l i e r e unit value for the MeasuredNthHarmonicCurrent attribute in the format Represents th * 10 ^ amperes. MeasuredNthHarmonicCurrent HarmonicCurrentMultiplier P h a s e H a r m o n i c C u r r e n t Mu l t i p l i e r 4 . 9 . 2 . 2 . 5 . 6 Represents the unit value for the attribute in the f ormat MeasuredPhaseNthHarmonicCurrent MeasuredPhaseNthHarmonicCurrent * 10 ^ PhaseHarmonicCurrentMultiplier degrees. 4.9.2.2.6 AC (Sin gle P hase or Phase A) Meas uremen ts Table 4 - 33 . AC (Single Phase or Phase A) Measurement Attributes Id Type Range Ac c Default M/ O Name Reserved int16 - 32768 – 0x0500 32767 R 0xFFFF O 0x0501 LineCurrent uint16 0x0000 – 0xFFFF R 0xFFFF O 0x0502 ActiveCurrent int16 - 32768 – 32767 R 0x8000 O 32767 – 32768 - O 0x8000 R 0x0503 ReactiveCurrent int16 2016 29  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 4 -

306 Chapter ZigBee Cluster Library Specification 4 ZigBee Document 075123 easurement and Sensing M – Range Type Ac c Id Default M/ O Name RMSVoltage uint16 0x0000 – 0xFFFF R 0xFFFF 0x0505 O 0x0506 RMSVoltageMin uint16 0x0000 – 0xFFFF R 0xFFFF O 0xFFFF uint16 0x0000 – RMSVoltageMax R 0xFFFF O 0x0507 0x0508 RMSCurrent uint16 0x0000 – 0xFFFF R 0xFFFF O 0x0509 uint16 0x0000 – 0xFFFF R 0xFFFF O RMSCurrentMin 0xFFFF 0x050 RMSCurrentMax uint16 0x0000 – R 0xFFFF O A 0x050 B ActivePower int16 - 32768 – 32767 R 0x8000 O 0x050 ActivePowerMin int16 - 32768 – 32767 R 0x8000 O C D ActivePowerMax int16 - 32768 – 32767 R 0x8000 O 0x050 32767 – 32768 - O x8000 0 R 0x050 E ReactivePower int16 0x050 uint16 0x0000 – 0xFFFF ApparentPower R 0xFFFF O F PowerFactor int8 - 100 to +100 R 0x00 O 0x0510 AverageRMSVoltageMeasurementPeriod uint16 0x0000 – 0x0511 0xFFFF RW 0x0000 O 0xFFFF 0x0512 AverageRMSOverVoltageCounter uint16 0x0000 – RW 0x00 00 O 0x0513 AverageRMSUnderVoltageCounter uint16 0x0000 – 0xFFFF RW 0x0000 O 0xFFFF – O 0x0000 RW 0x0000 0x0514 RMSExtremeOverVoltagePeriod uint16 RMSExtremeUnderVoltagePeriod uint16 0x0000 – 0x0515 0xFFFF RW 0x0000 O RW – O 0x0000 0xFFFF 0x0516 RMSVoltageSagPeriod uint16 0x0000 – RW O 0x0000 0x0517 RMSVoltageSwellPeriod uint16 0x0000 0xFFFF 4 . 9 . 2 . 2 . 6 . 1 L i n e C u r r e n t Represents the single phase or Phase A, AC line current (Square root of active and reactive current) value at the moment in time the attribute is read , in Amps (A). If the instantaneous current cannot be measured, a value of 0x8000 is returned. A c t i v e C u r r e n t 4 . 9 . 2 . 2 . 6 . 2 Represents the single phase or Phase A, AC active/resistive current value at the moment in time the attribute s indicate power delivered to the premises where negative values indicate is read, in Amps (A). Positive value power received from the premises. 4 . 9 . 2 . 2 . 6 . 3 R e a c t i v e C u r r e n t Represents the single phase or Phase A, AC reactive current value at the moment in time the attribute is read, in Amps (A). Positive values indicate power delivered to the premises where negative values indicate power received from the premises. 4 . 9 . 2 . 2 . 6 . 4 R MS V o l t a g e Represents the most recent RMS voltage reading in Volts (V). If the RMS voltage cannot be measured, a value of 0xFFFF is returned. 4 . 9 . 2 . 2 . 6 . 5 R MS V o l t a g e Mi n Represents the lowest RMS voltage value measured in Volts (V). After resetting, this attribute will return a value of 0xFFFF until a measurement is made.  served. 4 - 30 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights re

307 ZigBee Cluster Library Specification 4 Chapter 075123 Measurement and Sensing ZigBee Document – R MS V o l t a g e Ma x 4 . 9 . 2 . 2 . 6 . 6 etting, this attribute will return a Represents the highest RMS voltage value measured in Volts (V). After res value of 0xFFFF until a measurement is made. R MS C u r r e n t 4 . 9 . 2 . 2 . 6 . 7 Represents the most recent RMS current reading in Amps (A). If the power cannot be measured, a value of 0xFFFF is returned. 4 . 9 . 2 . 2 . 6 . 8 R MS C u r r e n t Mi n Represents the lowest RM S current value measured in Amps (A). After resetting, this attribute will return a until a measurement is made. value of 0xFFFF R MS C u r r e n t Ma x 4 . 9 . 2 . 2 . 6 . 9 Represents the highest RMS current value measured in Amps (A). After resetting, this attribute will return a 0xFFFF until a measurement is made. e of valu 4 . 9 . 2 . 2 . 6 . 1 0 A c t i v e P o w e r m- Represents the single phase or Phase A, current demand of active power delivered or received at the pre indicate ises, in Watts (W). Positive values indicate power delivered to the premises where negative values power received from the premises. A c t i v e P o w e r Mi n 4 . 9 . 2 . 2 . 6 . 1 1 Represents the lowest AC power value measured in Watts (W). After resetting, this attribute will return a value of 0x8000 until a measurement is made. 4 . 9 . 2 . 2 . 6 . 1 2 A c t i v e P o w e r Ma x value measured in Watts (W). After resetting, this attribute will return a Represents the highest AC power value of 0x8000 until a measurement is made. R e a c t i v e P o w e r 4 . 9 . 2 . 2 . 6 . 1 3 Represents the single phase or Phase A, current demand of reactive power delivered or received at the premises, in VAr. Po sitive values indicate power delivered to the premises where negative values indicate power received from the premises. 4 . 9 . 2 . 2 . 6 . 1 4 A p p a r e n t P o w e r Represents the single phase or Phase A, current demand of apparent (Square root of active and reactive . power) power, in VA 4 . 9 . 2 . 2 . 6 . 1 5 P o w e r F a c t o r Contains the single phase or PhaseA, Power Factor ratio in 1/100ths. A v e r a g e R MS V o l t a g e Me a s u r e m e n t P e r i o d 4 . 9 . 2 . 2 . 6 . 1 6 The Period in seconds that the RMS voltage is averaged over. A v e r a g e R MS O v e r V o l t a g e C o u n t e r 4 . 9 . 2 . 2 . 6 . 1 7 been above the AverageRMS OverVoltage The number of times the average RMS voltage, has threshold since last reset. This counter may be reset by writing zero to the attribute. A v e r a g e R MS U n d e r V o l t a g e C o u n t e r 4 . 9 . 2 . 2 . 6 . 1 8 AverageRMS underVoltage threshold The number of times the average RMS voltage, has been below the ince last reset. This counter may be reset by writing zero to the attribute. s R MS E x t r e m e O v e r V o l t a g e P e r i o d 4 . 9 . 2 . 2 . 6 . 1 9 The duration in seconds used to measure an extreme over voltage condition. 2016 31  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 4 -

308 Chapter ZigBee Cluster Library Specification 4 ZigBee Document 075123 easurement and Sensing M – R MS E x t r e m e U n d e r V o l t a g e P e r i o d 4 . 9 . 2 . 2 . 6 . 2 0 The duration in seconds used to measure an extr eme under voltage condition. R MS V o l t a g e S a g P e r i o d 4 . 9 . 2 . 2 . 6 . 2 1 The duration in seconds used to measure a voltage sag condition. 4 . 9 . 2 . 2 . 6 . 2 2 R MS V o l t a g e S w e l l P e r i o d The duration in seconds used to measure a voltage swell condition. AC For mat tin g 4.9.2.2.7 4 - 34 . AC Formatting Attributes Table Ac M/O Type Range Id Default Name c 0xFFFF uint16 0x0001 0x0600 ACVoltageMultiplier R 0x0001 O – 0x0601 ACVoltageDivisor uint16 0x0001 – 0xFFFF R 0x0001 O 0xFFFF 0x0602 ACCurrentMultiplier uint16 0x0001 – R 0x 0001 O O 0x0001 R 0xFFFF – 0x0001 uint16 0x0603 ACCurrentDivisor 0xFFFF 0x0604 ACPowerMultiplier uint16 0x0001 – R 0x0001 O 0x0001 0x0605 ACPowerDivisor uint16 – 0xFFFF R 0x0001 O 4 . 9 . 2 . 2 . 7 . 1 A C V o l t a g e Mu l t i p l i e r Provides a value to be multiplied against the Instan attributes. This attribute and RMSVoltage taneousVoltage ACVoltageDivisor attribute. 0x0000 is an invalid value for this attribute. must be used in conjunction with the 4 . 9 . 2 . 2 . 7 . 2 A C V o l t a g e D i v i s o r attributes. This attribute and RM SVoltage InstantaneousVoltage Provides a value to be divided against the must be used in conjunction with the ACVoltageMultiplier attribute. 0x0000 is an invalid value for this attribute. 4 . 9 . 2 . 2 . 7 . 3 A C C u r r e n t Mu l t i p l i e r and att RMSCurrent ributes. This attribute Provides a value to be multiplied against the InstantaneousCurrent ACCurrentDivisor attribute. 0x0000 is an invalid value for this attri b- must be used in conjunction with the ute. A C C u r r e n t D i v i s o r 4 . 9 . 2 . 2 . 7 . 4 Provides a value to be divided against the ACCurrent , InstantaneousCurrent and RMSCurrent attributes. his attribute must be used in conjunction with the ACCurrentMultiplier attribute. 0x0000 is an invalid value T for this attribute. 4 . 9 . 2 . 2 . 7 . 5 A C P o w e r Mu l t i p l i e r Provides a value to be multiplied against the ActivePower and attributes. This attribute InstantaneousPower attribute. 0x0000 is an invalid value for this attribute. ACPowerDivisor ust be used in conjunction with the m  served. 4 - 32 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights re

309 ZigBee Cluster Library Specification Chapter 4 Measurement and Sensing – 075123 ZigBee Document A C P o w e r D i v i s o r 4 . 9 . 2 . 2 . 7 . 6 InstantaneousPower and attributes. This attribute Provides a value to be divided against the ActivePower must be used in conjunction with the attribute. 0x0000 is an invalid value for this a t- ACPowerMultiplier tribute. 2016 4 Page , The ZigBee Alliance. All rights reserved. 33 - 2007  Copyright -

310 Chapter ZigBee Cluster Library Specification 4 ZigBee Document 075123 easurement and Sensing M – DC Man ufac tu rer Thresh old Alar ms 4.9.2.2.8 - 4 . DC Manufacturer Threshold Alarms Attributes Table 35 M/O Type Id Acc Default Range Name RW map8 0b 0x0700 DCOverloadAlarmsMask 0b 0000 0000 O 0000 00xx O 0xFFFF 0x0701 DCVoltageOverload int16 - 32768 – 32767 R R 0xFFFF int16 - 32768 – 32767 DCCurrentOverload O 0x0702 4 . 9 . 2 . 2 . 8 . 1 D C O v e r l o a d A l a r m s M a s k Specifies which configurable alarms may be generated, as listed in Figure 4 - 4 . A ‘1’ in each bit position enables the alarm. Figure 4 . The DC Overload Alarm Mask - 4 Bit Description Bit0 Voltage Overload Bit1 Current Overload 4 . 9 . 2 . 2 . 8 . 2 D C V o l t a g e O v e r l o a d Specifies the alarm threshold, set by the manufacturer, for the maximum output voltage supported by device. respectively. DCVoltageDivisor the The value is multiplied and divided by the DCVoltageMultiplier D C C u r r e n t O v e r l o a d 4 . 9 . 2 . 2 . 8 . 3 eshold, set by the manufacturer, for the maximum output current supported by device. Specifies the alarm thr respectively. DCCurrentDivider and DCCurrentMultiplier The value is multiplied and divided by the 4.9.2.2.9 AC Man ufac tu rer Thresh old Alar ms - 4 . AC Manufacturer Threshold Alarms Attributes Table 36 Type Id Range Access Default M O Name 0b 0000 ACAlarmsMask map16 0b 0000 xxxx RW 0x0800 O 0000 0x0801 ACVoltageOverload int16 - 32768 – 32767 R 0xFFFF O int16 0x0802 ACCurrentOverload 32768 - – 3 2767 R 0xFFFF O 32767 0x0803 int16 - 32768 – ACActivePowerOverload R 0xFFFF O 0x0804 ACReactivePowerOverload int16 - 32768 – 32767 R 0xFFFF O – 0x0805 AverageRMSOverVoltage int16 - 32768 32767 R O int16 O R 32767 – 32768 - 0x0806 AverageRMSUnderVoltage  served. 4 - 34 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights re

311 ZigBee Cluster Library Specification 4 Chapter 075123 Measurement and Sensing – ZigBee Document Id O M Type Range Access Default Name 32767 – O RW 0x0807 RMSExtremeOverVoltage int16 - 32768 – RMSExtremeUnderVoltage int16 - 32768 32767 RW O 0x0808 RMSVoltageSag int16 - 32768 – 32767 RW O 0x0809 – 32767 RW O 0x080A RMSVoltageSwell int16 - 32768 4 . 9 . 2 . 2 . 9 . 1 A C A l a r m s Ma s k Specifies which configurable alarms may be generated, as listed in Figure 4 - 5 . A ‘1’ in each bit position enables the alarm. 4 - 5 . The ACAlarmsMask Attribute Figure Bit Description Bit0 Voltage Overload Bit1 C urrent Overload Bit2 Active Power Overload Bit3 Reactive Power Overload Average RMS Over Voltage Bit4 Bit5 Average RMS Under Voltage Bit6 RMS Extreme Over Voltage Bit7 RMS Extreme Under Voltage Bit8 RMS Voltage Sag Bit9 RMS Voltage Swell 4 . 9 . 2 . 2 . 9 . 2 A C V o l t a g e O v e r l o a d Specifies the alarm threshold, set by the manufacturer, for the maximum output voltage supported by device. respectively. The The value is multiplied and divided by the A CVoltageMultiplier the A CVoltageDivisor, value is voltage RMS. 4 . 9 . 2 . 2 . 9 . 3 A C C u r r e n t O v e r l o a d Specifies the alarm threshold, set by the manufacturer, for the maximum output current supported by device. The value is multiplied and divided by the A CCurrentMultiplier and ACCurrentDivider, respectively. The value is current RMS. ad A C A c t i v e P o w e r O v e r l o 4 . 9 . 2 . 2 . 9 . 4 Specifies the alarm threshold, set by the manufacturer, for the maximum output active power supported by and ACPowerMultiplier device. The value is multiplied and divided by the respectively. ACPowerDivisor, 2016 35  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 4 -

312 Chapter ZigBee Cluster Library Specification 4 – 075123 easurement and Sensing M ZigBee Document A C R e a c t i v e P o w e r O v e r l o a d 4 . 9 . 2 . 2 . 9 . 5 Specifies the alarm threshold, set by the manufacturer, for the maximum output reactive power supported by device. The value is multiplied and divided by the ACPowerMultiplier and ACPowerDivisor , respectively. 4 . 9 . 2 . 2 . 9 . 6 A v e r a g e R MS O v e r V o l t a g e voltage condition is reported. The threshold shall be co n- The average RMS voltage above which an over figurable within the specified operating range of the electricity meter. The value is multiplied and divided by and AC Voltage Multiplier AC the Voltage Divisor , respectively. 4 . 9 . 2 . 2 . 9 . 7 A v e r a g e R MS U n d e r V o l t a g e n- The average RMS voltage below which an under voltage condition is reported. The threshold shall be co figurable within the specified operating range of the electricity meter. The value is multiplied and divided by , Divisor Voltage AC and Multiplier Voltage AC the respectively. R MS E x t r e m e O v e r V o l t a g e 4 . 9 . 2 . 2 . 9 . 8 The RMS voltage above which an extreme under voltage condition is reported. The threshold shall be co n- figurable within the specified operating range of the electricity meter. The value is multiplied and divided by A C Voltage Multiplier and the AC Voltage Divisor , respectively. 4 . 9 . 2 . 2 . 9 . 9 R MS E x t r e m e U n d e r V o l t a g e The RMS voltage below which an extreme under voltage condition is reported. The threshold shall be co n- value is multiplied and divided by figurable within the specified operating range of the electricity meter. The the , respectively. Voltage Divisor AC Voltage Multiplier and AC R MS V o l t a g e S a g 4 . 9 . 2 . 2 . 9 . 1 0 The RMS voltage below which a sag condition is reported. The threshold shall be configurable within the specified operating range of the electrici ty meter. The value is multiplied and divided by the AC Voltage Multiplier and AC Voltage Divisor , respectively. R MS V o l t a g e S w e l l 4 . 9 . 2 . 2 . 9 . 1 1 The RMS voltage above which a swell condition is reported. The threshold shall be configurable within the of the electricity meter. The value is multiplied and divided by the specified operating range Voltage AC and Multiplier Voltage AC , respectively. Divisor  served. 4 - 36 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights re

313 ZigBee Cluster Library Specification Chapter 4 075123 Measurement and Sensing – ZigBee Document AC P hase B Meas uremen ts 4.9.2.2.10 37 Table AC Phase B Measurements Attributes - 4 . Id Type Range Ac c Def M / O Name LineCurrentPhB uint16 0x0000 – 0xFFFF 0x0901 R 0xFFFF O 0x0902 ActiveCurrentPhB int16 - 32768 – 32767 R 0x8000 O 32767 int16 - 32768 – ReactiveCurrentPhB R 0x8000 O 0x0903 0x0904 Reserved int16 - 32768 – 32767 R 0x8000 O 0x0905 agePhB uint16 0x0000 – 0xFFFF R 0xFFFF O RMSVolt 0xFFFF uint16 0x0000 – RMSVoltageMinPhB R 0x8000 O 0x0906 0x0907 RMSVoltageMaxPhB uint16 0x0000 – 0xFFFF R 0x8000 O 0xFFFF 0x0908 uint16 0x0000 – RMSCurrentPhB R 0xFFFF O RMSCurrentMinPhB uint16 0x0000 – 0xFFFF R 0xFFFF O 0x0909 0xFFFF R 0xFFFF – 0x0000 uint16 O 0x090A RMSCurrentMaxPhB 0x090B int16 - 32768 – 32767 R 0x8000 O ActivePowerPhB 32767 0x090C int16 - 32768 – ActivePowerMinPhB R 0x8000 O 0x090D ActivePowerMaxPhB int16 - 32768 – 32767 R 0x8000 O 32767 0x090E int16 - 32768 – ReactivePowerPhB R 0x8000 O 0x090F ApparentPowerPhB uint16 0x0000 – 0xFFFF R 0xFFFF O 100 to +100 0x0910 PowerFactorPhB int8 - R 0x00 O AverageRMSVoltageMeasurementPeriodPh 0x0911 uint16 0x0000 – 0xFFFF RW 0x0000 O B AverageRM SOverVoltageCounterPhB uint16 0x0000 – 0xFFFF RW 0x0000 O 0x0912 0x0913 AverageRMSUnderVoltageCounterPhB uint16 0x0000 – RW 0x0000 O 0xFFFF 0x0914 RMSExtremeOverVoltagePeriodPhB uint16 0x0000 – 0xFFFF RW 0x0000 O 0x0915 RMSExtremeUnderVoltagePeriodPhB uint16 0 x0000 – 0xFFFF RW 0x0000 O 0x0916 RMSVoltageSagPeriodPhB uint16 0x0000 – 0xFFFF RW 0x0000 O – uint16 0x0000 O 0x0000 RW 0xFFFF 0x0917 RMSVoltageSwellPeriodPhB 2016 37  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 4 -

314 Chapter 4 ZigBee Cluster Library Specification – 075123 M easurement and Sensing ZigBee Document 4 . 9 . 2 . 2 . 1 0 . 1 L i n e C u r r e n t P h B Represents the Phase B, AC line current (Square root sum of active and reactive o- currents) value at the m ment in time the attribute is read, in Amps (A). If the instantaneous current cannot be measured, a value of 0x8000 is returned. 4 . 9 . 2 . 2 . 1 0 . 2 A c t i v e C u r r e n t P h B attribute is read, in Amps Represents the Phase B, AC active/resistive current value at the moment in time the (A). Positive values indicate power delivered to the premises where negative values indicate power received from the premises. 4 . 9 . 2 . 2 . 1 0 . 3 R e a c t i v e C u r r e n t P h B Represents the Phase B, AC reactive current value at the moment in time the attrib ute is read, in Amps (A). Positive values indicate power delivered to the premises where negative values indicate power received from the premises. 4 . 9 . 2 . 2 . 1 0 . 4 R MS V o l t a g e P h B Represents the most recent RMS voltage reading in Volts (V). If the RMS voltage cannot be meas ured, a value of 0xFFFF is returned. 4 . 9 . 2 . 2 . 1 0 . 5 R MS V o l t a g e Mi n P h B Represents the lowest RMS voltage value measured in Volts (V). After resetting, this attribute will return a value of 0xFFFF until a measurement is made. R MS V o l t a g e Ma x P h B 4 . 9 . 2 . 2 . 1 0 . 6 age value measured in Volts (V). After resetting, this attribute will return a Represents the highest RMS volt value of 0xFFFF until a measurement is made. 4 . 9 . 2 . 2 . 1 0 . 7 R MS C u r r e n t P h B Represents the most recent RMS current reading in Amps (A). If the power cannot be measured, a value of 0xFFFF is retu rned. R MS C u r r e n t Mi n P h B 4 . 9 . 2 . 2 . 1 0 . 8 Represents the lowest RMS current value measured in Amps (A). After resetting, this attribute will return a value of 0x8000 until a measurement is made. 4 . 9 . 2 . 2 . 1 0 . 9 R MS C u r r e n t Ma x P h B After resetting, this attribute will return a Represents the highest RMS current value measured in Amps (A). value of 0x8000 until a measurement is made. 4 . 9 . 2 . 2 . 1 0 . 1 0 A c t i v e P o w e r P h B Represents the Phase B, current demand of active power delivered or received at the premises, in Watts (W). Positive values indicate power delivered to the premises where negative values indicate power received from the premises. A c t i v e P o w e r Mi n P h B 4 . 9 . 2 . 2 . 1 0 . 1 1 Represents the lowest AC power value measured in Watts (W). After resetting, this attribute will return a value of 0x8000 until a measurement is made. P o w e r Ma x P h B A c t i v e 4 . 9 . 2 . 2 . 1 0 . 1 2 Represents the highest AC power value measured in Watts (W). After resetting, this attribute will return a value of 0x8000 until a measurement is made.  served. 4 - 38 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights re

315 ZigBee Cluster Library Specification Chapter 4 ZigBee Document Measurement and Sensing – 075123 4 . 9 . 2 . 2 . 1 0 . 1 3 R e a c t i v e P o w e r P h B ved at the premises, in VAr. Represents the Phase B, current demand of reactive power delivered or recei Positive values indicate power delivered to the premises where negative values indicate power received from the premises. 4 . 9 . 2 . 2 . 1 0 . 1 4 A p p a r e n t P o w e r P h B Represents the Phase B, current demand of apparent (Square root of active and reactive p ower) power, in VA. P o w e r F a c t o r P h B 4 . 9 . 2 . 2 . 1 0 . 1 5 Contains the PhaseB, Power Factor ratio in 1/100ths. 4 . 9 . 2 . 2 . 1 0 . 1 6 A v e r a g e R MS V o l t a g e Me a s u r e m e n t P e r i o d P h B The Period in seconds that the RMS voltage is averaged over. A v e r a g e R MS O v e r V o l t a g e C o u n t e r P h B 4 . 9 . 2 . 2 . 1 0 . 1 7 threshold The number of times the average RMS v AverageRMS OverVoltage oltage, has been above the since last reset. This counter may be reset by writing zero to the attribute. 4 . 9 . 2 . 2 . 1 0 . 1 8 A v e r a g e R MS U n d e r V o l t a g e C o u n t e r P h B The number of times the average RMS voltage, has been below the AverageRMS underVolta threshold ge since last reset. This counter may be reset by writing zero to the attribute. 4 . 9 . 2 . 2 . 1 0 . 1 9 R MS E x t r e m e O v e r V o l t a g e P e r i o d P h B The duration in seconds used to measure an extreme over voltage condition. 4 . 9 . 2 . 2 . 1 0 . 2 0 R MS E x t r e m e U n d e r V o l t a g e P e r i o d P h B The duration in seconds use d to measure an extreme under voltage condition. R MS V o l t a g e S a g P e r i o d P h B 4 . 9 . 2 . 2 . 1 0 . 2 1 The duration in seconds used to measure a voltage sag condition. R MS V o l t a g e S w e l l P e r i o d P h B 4 . 9 . 2 . 2 . 1 0 . 2 2 The duration in seconds used to measure a voltage swell condition. 2016 39  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 4 -

316 Chapter ZigBee Cluster Library Specification 4 ZigBee Document 075123 easurement and Sensing M – AC P hase C Meas uremen ts 4.9.2.2.11 4 - 38 . AC Phase C Measurements Attributes Tab le Range Acc Type Def M/O Id Name LineCurrentPhC uint16 0x0000 – 0xFFFF 0x0A01 0xFFFF O R 0x0A02 ActiveCurrentPhC int16 - 32768 – 32767 R 0x8000 O 0x0A03 entPhC int16 - 32768 – ReactiveCurr 32767 R 0x8000 O 0x0A05 RMSVoltagePhC uint16 0x0000 – 0xFFFF R 0xFFFF O 0x0A06 uint16 0x0000 – 0xFFFF R 0x8000 O RMSVoltageMinPhC 0xFFFF 0x0A07 uint16 0x0000 – RMSVoltageMaxPhC R 0x8000 O 0x0A08 RMSCurrentPhC uint16 0x0000 – 0xFFF F R 0xFFFF O 0xFFFF 0x0A09 uint16 0x0000 – RMSCurrentMinPhC R 0xFFFF O RMSCurrentMaxPhC uint16 0x0000 – 0xFFFF R 0xFFFF O 0x0A0A O 0x8000 R 32767 – 32768 - int16 0x0A0B ActivePowerPhC 0x0A0C int16 - 32768 – 32767 R 0x8000 O ActivePowerMinPhC 0x0A0D vePowerMaxPhC int16 - 32768 – Acti 32767 R 0x8000 O 0x0A0E ReactivePowerPhC int16 - 32768 – 32767 R 0x8000 O 0x0A0F ApparentPowerPhC uint16 0x0000 – 0xFFFF R 0xFFFF O 0x0A10 PowerFactorPhC int8 - 100 to +100 R 0x00 O 0x0000 0x0A11 AverageRMSVoltageMeasurementPeriodPh C uint16 0xFFFF – RW 0x0000 O 0x0A12 uint16 0x0000 – 0xFFFF RW 0x0000 O AverageRMSOverVoltageCounterPhC 0xFFFF 0x0A13 uint16 0x0000 – AverageRMSUnderVoltageCounterPhC RW 0x0000 O 0x0A14 RMSExtremeOverVoltagePeriodPhC uint16 0x0000 – 0xFFFF RW 0x0 000 O 0xFFFF 0x0A15 uint16 0x0000 – RMSExtremeUnderVoltagePeriodPhC RW 0x0000 O RMSVoltageSagPeriodPhC uint16 0x0000 – 0xFFFF RW 0x0000 O 0x0A16 0x0000 RW 0xFFFF – 0x0000 uint16 O 0x0A17 RMSVoltageSwellPeriodPhC  served. 4 - 40 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights re

317 ZigBee Cluster Library Specification Chapter 4 – Measurement and Sensing ZigBee Document 075123 L i n e C u r r e n t P h C 4 . 9 . 2 . 2 . 1 1 . 1 Represents the Phase C, A C line current (Square root of active and reactive current) value at the moment in time the attribute is read, in Amps (A). If the instantaneous current cannot be measured, a value of 0x8000 is returned. A c t i v e C u r r e n t P h C 4 . 9 . 2 . 2 . 1 1 . 2 Represents the Phase C, AC active/r esistive current value at the moment in time the attribute is read, in Amps (A). Positive values indicate power delivered to the premises where negative values indicate power received from the premises. 4 . 9 . 2 . 2 . 1 1 . 3 R e a c t i v e C u r r e n t P h C Represents the Phase C, AC reactiv e current value at the moment in time the attribute is read, in Amps (A). Positive values indicate power delivered to the premises where negative values indicate power received from the premises. 4 . 9 . 2 . 2 . 1 1 . 4 R MS V o l t a g e P h C in Volts (V). If the RMS voltage cannot be measured, a Represents the most recent RMS voltage reading value of 0xFFFF is returned. R MS V o l t a g e Mi n P h C 4 . 9 . 2 . 2 . 1 1 . 5 Represents the lowest RMS voltage value measured in Volts (V). After resetting, this attribute will return a value of 0xFFFF until a measurement is made. R MS V o l t a g e Ma x P h C 4 . 9 . 2 . 2 . 1 1 . 6 Represents the highest RMS voltage value measured in Volts (V). After resetting, this attribute will return a value of 0xFFFF until a measurement is made. 4 . 9 . 2 . 2 . 1 1 . 7 R MS C u r r e n t P h C Represents the most recent RMS current reading in Amps (A). If the pow er cannot be measured, a value of 0xFFFF is returned. 4 . 9 . 2 . 2 . 1 1 . 8 R MS C u r r e n t Mi n P h C Represents the lowest RMS current value measured in Amps (A). After resetting, this attribute will return a value of 0x8000 until a measurement is made. 4 . 9 . 2 . 2 . 1 1 . 9 R MS C u r r e n t Ma x P h C highest RMS current value measured in Amps (A). After resetting, this attribute will return a Represents the value of 0x8000 until a measurement is made. A c t i v e P o w e r P h C 4 . 9 . 2 . 2 . 1 1 . 1 0 (W). Represents the Phase C, current demand of active power delivered or received at the premises, in Watts Positive values indicate power delivered to the premises where negative values indicate power received from the premises. 4 . 9 . 2 . 2 . 1 1 . 1 1 A c t i v e P o w e r Mi n P h C Represents the lowest AC power value measured in Watts (W). After resetting, this attribute will return a e of 0x8000 until a measurement is made. valu A c t i v e P o w e r Ma x P h C 4 . 9 . 2 . 2 . 1 1 . 1 2 Represents the highest AC power value measured in Watts (W). After resetting, this attribute will return a value of 0x8000 until a measurement is made. 2016 41  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 4 -

318 Chapter ZigBee Cluster Library Specification 4 ZigBee Document – 075123 M easurement and Sensing R e a c t i v e P o w e r P h C 4 . 9 . 2 . 2 . 1 1 . 1 3 ent demand of reactive power delivered or received at the premises, in VAr. Represents the Phase C, curr Positive values indicate power delivered to the premises where negative values indicate power received from the premises. 4 . 9 . 2 . 2 . 1 1 . 1 4 A p p a r e n t P o w e r P h C apparent (Square root of active and reactive power) power, in VA. Represents the Phase C, current demand of 4 . 9 . 2 . 2 . 1 1 . 1 5 P o w e r F a c t o r P h C Contains the Phase C, Power Factor ratio in 1/100ths. A v e r a g e R MS V o l t a g e Me a s u r e m e n t P e r i o d P h C 4 . 9 . 2 . 2 . 1 1 . 1 6 The Period in seconds that the RMS voltage is averaged over A v e r a g e R MS O v e r V o l t a g e C 4 . 9 . 2 . 2 . 1 1 . 1 7 o u n t e r P h C AverageRMS OverVoltage The number of times the average RMS voltage, has been above the threshold since last reset. This counter may be reset by writing zero to the attribute. A v e r a g e R MS U n d e r V o l t a g e C o u n t e r P h C 4 . 9 . 2 . 2 . 1 1 . 1 8 threshold AverageRMS underVoltage ltage, has been below the The number of times the average RMS vo since last reset. This counter may be reset by writing zero to the attribute. R MS E x t r e m e O v e r V o l t a g e P e r i o d P h C 4 . 9 . 2 . 2 . 1 1 . 1 9 The duration in seconds used to measure an extreme over voltage condition. R MS E x t r e m e U n d e r V o l t a g e P e r i o d P h C 4 . 9 . 2 . 2 . 1 1 . 2 0 The duration in seconds used to measure an extreme under voltage condition. R MS V o l t a g e S a g P e r i o d P h C 4 . 9 . 2 . 2 . 1 1 . 2 1 The duration in seconds used to measure a voltage sag condition. 4 . 9 . 2 . 2 . 1 1 . 2 2 R MS V o l t a g e S w e l l P e r i o d P h C The duration in seconds used to measure a volta ge swell condition. 4.9.2.3 Server Commands 4.9.2.3.1 Comma nds Ge ner ated - 4 . 39 Table The command IDs generated by the electrical measurement server cluster are listed in Measurement Server - 39 . Generated Command I D’s for the Electrical 4 Table Command Identifier M / O Description 0x00 Get Profile Info Response Command O Get Measurement Profile Response Command 0x01 O G e t P r o f i l e I n f o R e s p o n s e C o m m a n d 4 . 9 . 2 . 3 . 1 . 1 ted as illustrated in The Get Profile Info Response Command shall be format . 6 - 4 Figure  served. 4 - 42 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights re

319 ZigBee Cluster Library Specification 4 Chapter 075123 Measurement and Sensing ZigBee Document – Figure 4 - 6 . Format of the Get Profile Info Response Command 1 Variable 1 1 Octets Array of attribute IDs Data uint8 enum8 uint8 gned values) (two - byte unsi Type Profile Field ListOfAttributes MaxNumberOfIntervals ProfileIntervalPeriod Count Name Payload Details 4.9.2.3.1.1.1 Profile Count: Total number of supported profile. Represents the interval or time frame used to capture parameter fo ProfileIntervalPeriod: r- r profiling pu poses. ProfileIntervalPeriod is an enumerated field representing the timeframes listed in - 7 . 4 Figure 4 - 7 . ProfileIntervalPeriod Figure Time Frame Enumerated Value 0 Daily 1 60 minutes 2 30 minutes 3 15 minutes 10 minutes 4 7.5 minutes 5 6 5 minutes 2.5 minutes 7 MaxNumberOfIntervals: Represents the maximum number of intervals the device is capable of returning in one Get Measurement Profile Response command. It is required MaxNumberofIntervals fit within the default Fragmentation ASDU size of 128 bytes, or an optionally agreed upon larger Fragmentation ASDU size supported by both devices as per the application profile supported by the devices. ListOfAttributes : Represents the list of attributes being profiled. W h e n G e n e r a t e d 4 . 9 . 2 . 3 . 1 . 2 This command is generated when the Client command GetProfileInfo is received. G e t M e a s u r e m e n t P r o f i l e R e s p o n s e C o m m a n d 4 . 9 . 2 . 3 . 1 . 3 . 8 - 4 Figure ustrated in The Get Measurement Profile Response Command shall be formatted as ill 2016 43  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 4 -

320 Chapter ZigBee Cluster Library Specification 4 ZigBee Document – 075123 M easurement and Sensing Figure 4 - 8 . Format of the Get Measurement Profile Response Command 1 Variable 1 1 1 4 Octets Array of Attribute Data attribId uint8 enum8 enum8 UTC es valu Type NumberOf ProfileInter Attribute Field Status Intervals StartTime valPeriod Id IntervalsDelivered Name Payload Details 4.9.2.3.1.3.1 - 32 StartTime: bit value (in UTC) representing the end time of the most chronologically recent interval being requested. Example: Data collected from 2:00 PM to 3:00 PM would be specified as a 3:00 PM interval (end time). Table lists the valid values returned in the Status field. - Status: Table status enumeration in 4 40 40 . List of Status Valid Values Table 4 - Status Value Description 0x00 Success Attribute Profile not supported 0x01 0x02 Invalid Start Time 0x03 More intervals requested than can be returned No intervals available for the requested time 0x04 Prof ileIntervalPeriod: r- Represents the interval or time frame used to capture parameter for profiling pu poses. Refer to table “ProfileIntervalPeriod”. Represents the number of intervals the device is returning. Please note the NumberofIntervalsDelivered: r of intervals returned in the Get Measurement Profile Response command can be calculated when the numbe packets are received and can replace the usage of this field. The intent is to provide this information as a convenience. AttributeID: been profiled by the application. The attribute that has Intervals: Series of interval data captured using the period specified by the ProfileIntervalPeriod field. The AttributeID field in the Ge t content of the interval data depend of the type of information requested using the Measurement Profile Command. Data is organized in a reverse chronological order, the oldest intervals are transmitted first and the newest interval is transmitted last. Invalid intervals should be marked as 0xFFFF. ctive attribute set as defined above in attribute sets. For scaling and data type use the respe When Generated 4.9.2.3.1.3.2 This command is generated when the Client command GetMeasurementProfile is received.  served. 4 - 44 Copyright Page 2007 - 2016 , The ZigBee Alliance. All rights re

321 ZigBee Cluster Library Specification Chapter 4 ZigBee Document Measurement and Sensing – 075123 4.9.2.4 Client Commands Comma nds Ge ner ated 4.9.2.4.1 . 41 - 4 Table luster are listed in The command ID’s generated by the electrical measurement client c . Generated Command IDs for the Electrical Measurement Client 41 - Table 4 M/O Command Identifier Description Get Profile Info Command 0x00 O 0x01 O Measurement Profile Command Get G e t P r o f i l e I n f o C o m m a n d 4 . 9 . 2 . 4 . 1 . 1 This command has no payload. Effect on Receipt 4.9.2.4.1.1.1 On receipt of this command, the device shall send a Get Profile Info Response Command. A ZCL default returned if command is not supported on the response with status UNSUP_CLUSTER_COMMAND shall be device. 4 . 9 . 2 . 4 . 1 . 2 G e t M e a s u r e m e n t P r o f i l e C o m m a n d Figure . 4 The Get Measurement Profile Command shall be formatted as illustrated in 9 - . F ormat of the Get Measurement Profile Command Figure 4 - 9 1 1 2 Octets attribId UTC Time uint8 Data Type Start Time NumberOfIntervals Attribute ID Field Name 4.9.2.4.1.2.1 Payload Details The electricity measurement attribute being profiled. Attribute ID: bit value StartTime: 32 - (in UTCTime) used to select an Intervals block from all the Intervals blocks available. The Intervals block returned is the most recent block with its StartTime equal or greater to the one provided. ng requested. This value can’t exceed the size NumberOfIntervals: Represents the number of intervals bei stipulated in the MaxNumberOfIntervals field of Get Profile Info Response Command. If more intervals are requested than can be delivered, the GetMeasurementProfileResponse will return the number of intervals qual to MaxNumberOfIntervals. If fewer intervals available for the time period then only those available are e returned. 4.9.2.4.1.2.2 Effect on Receipt On receipt of this command, the device shall send a Get Measurement Profile Response Command. A ZCL th status UNSUP_CLUSTER_COMMAND shall be returned if command is not su p- default response wi ported on the device. 2016 45  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 4 -

322

323 ZigBee Cluster Library Specification 5 Chapter 075123 Lighting ZigBee Document – LIGHTING CHAPTER 5 See Document Control in the The ZigBee Cluster Library is made of individual chapters such as this one. ZigBee Cluster Library for a list of all chapters and documents . References between chapters are made using X.Y is the sub to external X section within that chapter. References - a notation where is the chapter and Y documents are contained in Chapter 1 and are made using [ Rn ] notation. General Description 5.1 Introduction 5.1.1 The clusters specified in this document are for use typically in ZigBee lighting applications, but MAY be used in any application domain. 5.1.2 Terms Ballast Factor: A measure of the light output (lumens) of a ballast and lamp combination in compar ison to an ANSI standard ballast operated with the same lamp. Multiply the ballast factor by the rated lumens of the lamp to get the light output of the lamp/ballast combination. HSV: n, Brightness). This is a Hue, Saturation, Value. A color space, also known as HSB (Hue, Saturatio well - known transformation of the RGB (Red, Green, Blue) color space. For more information see e.g., http://en.wikipedia.org/wiki/HSV_color_space. standard metric for The density of incident luminous flux on a surface. Illuminance is the Illuminance: lighting levels, and is measured in lux (lx). Cluster List 5.1.3 This section lists the clusters specified in this document, and gives examples of typical usage for the purpose ted in of clarification. The clusters specified in this document are lis . 1 . 5 Table Table . . Clusters Specified for the Lighting Functional Domain 1 5 Cluster Name Description ID - of a color Attributes and commands for controlling the color capable Color Control 0x0300 light. Attributes and commands for configuring a lighting ballast Ballast Configuration 0x0301 2016 1  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 5 -

324 Chapter ZigBee Cluster Library Specification 5 ZigBee Docu ment – 075123 Lighting Typical Usage of Ballast Configuration and Color Control Clusters . 1 - Figure 5 Color Contr ol Cluster 5.2 5.2.1 Overview Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classification, identification, etc. This cluster provides an interface for changing the color of a light. Color is specified according to the Commission Internationale de l'Éclairage (CIE) specification CIE 1931 Color Space, [I1]. Color control is carried out in terms of x,y values, as defined by this specification. or as hue and saturation Additionally, color MAY optionally be controlled in terms of color temperature, values based on optionally variable RGB and W color points. It is recommended that the hue and saturation are interpreted according to the HSV (aka HSB) color model. Control over luminance is not included, as this is provided by means of the Level Control cluster of the General library (see Chapter 3). It is recommended that the level provided by this cluster be interpreted as representing a proportion of the maximum intensity achievable at the current color. 5.2.1.1 Revision History Rev Description ; CCB 2028 attribute added mandatory global ClusterRevision 1 5.2.1.2 Classification Primary Transaction PICS Code Hierarchy Role Base Type 1 (client to server) CC Application Copyright , The ZigBee Alliance. All rights reserved. 5 - 2 Page  2007 - 2016

325 ZigBee Cluster Library Specification Chapter 5 075123 Lighting – ZigBee Document Cluster Identifiers 5.2.1.3 Identifier Name Color Control 0x0300 5.2.2 Server ncies 5.2.2.1 Depende None 5.2.2.2 Attributes For convenience, the attributes defined in this specification are arranged into sets of related attributes; each set can contain up to 16 attributes. Attribute identifiers are encoded such that the most significant three ni b- bles speci fy the attribute set and the least significant nibble specifies the attribute within the set. The currently defined attribute sets are listed in Table 5 . 2 . Table 5 . Hue Control Attr ibute Sets 2 . Attribute Set Identifier Description Color Information 0x000, 0x400 Defined Primaries Information 0x001 0x002 Additional Defined Primaries Information 0x003 Defined Color Point Settings 5.2.2.2.1 Col or In fo rma tio n At t ri bu te Set attribute set contains the attributes summarized in Table 5 . 3 . The Color Information Table 5 . 3 . Attributes of the Color Information Attribute Set Default Range Type Name Id M/O Access Read Only 0 ui nt8 0x00 – 0xfe 0x0000 CurrentHue 0x00 M Reportable Read Only 0 CurrentSaturation uint8 0x00 – 0xfe 0x00 0x0001 Reportable M Scene 0x00 RemainingTime O 0x0002 uint16 0x0000 – 0xfffe Read Only Read Only x616b 0 3 CurrentX uint16 0x0000 - 0xfeff M 0x0003 Reportable (0.381) Scene Read Only 0x607d 3 0xfeff M uint16 - 0x0000 0x0004 CurrentY Reportable (0.377) - 2016 , The ZigBee Alliance. All rights reserved. Copyright 3  Page 2007 5 -

326 Chapter ZigBee Cluster Library Specification 5 ZigBee Docu ment 075123 Lighting – Default Name Type Id M/O Range Access Scene - DriftCompensation 0x0005 O 0x00 – 0x04 Read Only enum8 38 O 0x0006 CompensationText string 0 to 25 4 chars Read Only - 0x00fa Read Only 4 0xfeff - 0x0000 nt16 M 0x0007 ColorTemperature Mireds ui Reportable (4000K) 0x0008 ColorMode enum8 0x00 – 0x02 Read Only 0x01 M Read Only 1 0x4000 EnhancedCurrentHue uint16 M 0x0000 0xffff – 0x0000 Scene M 0x00 0x4001 EnhancedColorMode enum8 – 0xff Read Only 0x00 Read Only 2 0x00 0x00 M 0xff – 0 x4002 ColorLoopActive uint8 Scene Read Only 2 0x00 – 0xff uint8 0x00 M 0x4003 ColorLoopDirection Scene Read Only 2 uint16 0x0000 – 0xffff 0x4004 ColorLoopTime 0x0019 M Scene 2 ColorLoopStart EnhancedHue uint16 0x0000 – 0 xffff Read Only 0x2300 M 0x4005 2 0x4006 ColorLoopStored EnhancedHue uint16 0x0000 – 0xffff Read Only 0x0000 M 0x001f M 0x0000 – Read Only 0x400a ColorCapabilities map16 0x0000 4 – 0x400b ColorTempPhysical Min Mireds uint16 0x0000 0xfeff Read Only 0x0000 M 4 M 0xfeff 0x400c ColorTempPhysical Max Mireds uint16 0x0000 – 0xfeff Read Only i M = Mandatory if bit i of the ColorCapabilities attribute is equal to 1, otherwise optional. tHue Attribute Curren CurrentHue attribute contains the current hue value of the light. It is updated as fast as practical during The commands that change the hue. The hue in degrees SHALL be related to the CurrentHue attribute by the relationship Hue = Current Hue x 360 / 254 (CurrentHue in the range 0 - 254 inclusive) m- attributes SHALL also be i ColorMode If this attribute is implemented then the CurrentSaturation and plemented. CurrentSaturation Attribute attribute holds the current The saturation value of the light. It is updated as fast as practical CurrentSaturation during commands that change the saturation. 38 CCB 2106 Copyright , The ZigBee Alliance. All rights reserved. 5 - 4 Page  2007 - 2016

327 ZigBee Cluster Library Specification 5 Chapter 075123 Lighting – ZigBee Document The saturation SHALL be related to the CurrentSaturation attribute by the relationship 254 inclusive) Saturation = CurrentSaturation/254 (CurrentSaturation in the range 0 - If this attribute is implemented then the CurrentHue and ColorMode attributes SHALL also be implemented. RemainingTime Attribute RemainingTime active attribute holds the time remaining, in 1/10ths of a second, until the currently The command will be complete. Attribute CurrentX attribute contains the current value of the normalized chromaticity value x, as defined in the The CurrentX CIE xyY Color Space. It is updated as fast as practical during commands that change the color. T he value of x SHALL be related to the CurrentX attribute by the relationship / 65536 ( x = CurrentX CurrentX in the range 0 to 65279 inclusive) Attribute CurrentY CurrentY attribute contains the current value of the normalized chromaticity value y, as The defined in the CIE xyY Color Space. It is updated as fast as practical during commands that change the color. The value of y SHALL be related to the CurrentY attribute by the relationship in the range 0 to 65279 inclusive) / 65536 ( CurrentY y = CurrentY Attribute riftCompensation D DriftCompensation The l- attribute indicates what mechanism, if any, is in use for compensation for co or/intensity drift over time. It SHALL be one of the non - reserved values in Table 5 . 4 . DriftCompensation Table 5 . 4 . Values of the Attribute Attribute Value Description None 0x00 0x01 Other / Unknown Temperature monitoring 0x02 0x03 Optical luminance monitoring and feedback 0x04 feedback Optical color monitoring and CompensationText Attribute The attribute holds a textual indication of what mechanism, if any, is in use to compensate CompensationText for color/intensity drift over time. ColorTemperature Mireds Attribute a- The ColorTemperature Mireds attribute co ntains of the current value of the color temper a scaled inverse ture. ColorTemperature Mireds is the mired (micro reciprocal degree), AKA mirek (micro r e- The unit of ciprocal kelvin). It is updated as fast as practical during commands that change the color. The color temperature value in kelvins SHALL be related to the ColorTemperature Mireds attribute in mireds by the relationship in ColorTemperature in kelvins Mireds ColorTemperature Mireds is , where Color temperature = 1,000,000 / the range 1 to 65279 mire ds inclusive, giving a color temperature range from 1,000,000 kelvins to 15.32 kelvins. 2016 5  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 5 -

328 Chapter ZigBee Cluster Library Specification 5 ment ZigBee Docu 075123 Lighting – indicates an undefined value. The value x0000 The value ColorTemperature Mireds = 0 Mireds = 0xffff indicates an invalid value. ColorTemperature s implemented then the If this attribute i ColorMode attribute SHALL also be implemented. ColorMode Attribute attribute indicates which attributes are currently determining the color of the device. If either ColorMode The CurrentHue the mented, this attribute SHALL also be implemented, attribute is imple CurrentSaturation or otherwise it is optional. The value of the ColorMode attribute cannot be written directly - it is set upon reception of any command in section 5.2.2.3 to the appro priate mode for that command. 5 Attribute ColorMode . Values of the Table 5 . Attribute Value Attributes that Determine the Color 0x00 CurrentHue and CurrentSaturation CurrentY and CurrentX 0x01 Mireds erature 0x02 ColorTemp E n h a n c e d C u r r e n t H u e 5 . 2 . 2 . 2 . 1 . 1 At t r i b u t e The EnhancedCurrentHue attribute represents non - equidistant steps along the CIE 1931 color triangle, and it provides 16 - bits precision. The upper 8 bits of this attribute SHALL be used as an index in the impleme ntation specific XY lookup table to provide the non - equidistance steps (see the ZLL test specification for an example). The lower 8 bits SHALL be used to interpolate between these steps in a linear way in order to provide color zoom for the user. To provid e compatibility with standard ZCL, the CurrentHue attribute SHALL contain a hue value in the EnhancedCurrentHue attribute. range 0 to 254, calculated from the E n h a n c e d C o l o r Mo d e A t t r i b u t e 5 . 2 . 2 . 2 . 1 . 2 EnhancedColorMode The attribute specifies which attributes are curren tly determining the color of the d e- vice, as detailed in 5 . 6 . Table Table 5 . 6 . Values of the EnhancedColorMode Attribute Attribute Value Attributes That Determine the C olor CurrentHue and CurrentSaturation 0x00 CurrentX CurrentY and 0x01 ColorTemperature Mireds 0x02 CurrentSaturation EnhancedCurrentHue and 0x03 To provide compatibility with standard ZCL, the original ColorMode attribute SHALL indicate ‘ CurrentHue attribute is an ColorMode d CurrentSaturation’ when the light uses the EnhancedCurrentHue attribute. If the changed, e.g., due to one of the standard color control cluster commands defined in the ZCL, its new value EnhancedColorMode SHALL be copied to the att ribute. At t r i b u t e 5 . 2 . 2 . 2 . 1 . 3 C o l o r L o o p A c t i v e The attribute specifies the current active status of the color loop. If this attribute has the ColorLoopActive SHALL SHALL not be active. If this attribute has the value 0x01, the color loop value 0x00, the color loop be 0xff) are reserved. – ctive. All other values (0x02 a Copyright , The ZigBee Alliance. All rights reserved. 5 - 6 Page  2007 - 2016

329 ZigBee Cluster Library Specification 5 Chapter 075123 Lighting – ZigBee Document 5 . 2 . 2 . 2 . 1 . 4 A t t r i b u t e C o l o r L o o p D i r e c t i o n The ColorLoopDirection attribute specifies the current direction of the color loop. If this attribute has the value 0x00, the EnhancedCurrentHue attribute SHALL be decremented . If this attribute has the value 0x01, the attribute SHALL be incremented. All other values (0x02 – EnhancedCurrentHue 0xff) are reserved. 5 . 2 . 2 . 2 . 1 . 5 C o l o r L o o p T i m e At t r i b u t e SHALL color loop, take to perform a full The ColorLoopTime attribute specifies the number of seconds it i.e., to cycle all values of the EnhancedCurrentHue attribute (between 0x0000 and 0xffff). 5 . 2 . 2 . 2 . 1 . 6 C o l o r L o o p S t a r t E n h a n c e d H u e At t r i b u t e The ColorLoopStartEnhancedHue attribute specifies the value of the EnhancedCurrentHue attribute from which the color loop SHALL be started. 5 . 2 . 2 . 2 . 1 . 7 C o l o r L o o p S t o r e d E n h a n c e d H u e At t r i b u t e The ColorLoopStoredEnhancedHue attribute specifies the value of the EnhancedCurrentHue attribute before the color loop was started. Once the color loop is complete, the EnhancedCurrentHue attribut e SHALL be restored to this value. C o l o r C a p a b i l i t i e s At t r i b u t e 5 . 2 . 2 . 2 . 1 . 8 ColorCapabilities attribute specifies the color capabilities of the device supporting the color control The . If a 7 . 5 Table cluster, as illustrated in SHALL bit is set to 1, the corresponding attributes and commands become mandatory. If a bit is set to 0, the corresponding attributes and commands need not be implemented. Attribute Table 5 . 7 . Bit Values of the ColorCap abilities Value Description Related Attributes Mandatory Commands Move to hue Move hue Step hue Move to saturation p- Hue/saturation su CurrentHue 0 CurrentSaturation ported Move saturation Step saturation Move to hue and saturation Stop move step Enhanced move to hue t- Enhanced hue suppor Enhanced move hue ed 1 EnhancedCurrentHue Enhanced step hue hue/saturation Note: Enhanced move to hue and saturation must also be supported. Stop move step ColorLoopActive ColorLoopDirection Color loop supported Color loop set 2 enhanced hue ColorLoopTime Note: must also be su pported. ColorLoopStartEnhancedHue ColorLoopStoredEnhancedHue Move to color Move color CurrentX 3 XY attributes supported Step color CurrentY Stop move step Move to color temperature Mireds orTemperature Col Color temperature Move color temperature Mireds 4 ColorTempPhysicalMin supported Step color temperature Mireds ColorTempPhysicalMax Stop move step 2016 7  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 5 -

330 Chapter 5 ZigBee Cluster Library Specification Lighting – 075123 ZigBee Docu ment The support of the and CurrentY attributes is mandatory regardless of color cap abilities. Note: CurrentX On receipt of a unicast color control cluster command that is not supported or a general command which e- affects a color control cluster attribute that is not supported, the device SHALL respond with a default r e- ting an unsupported cluster command or unsupported attribute, r sponse command with a status indica spectively. 5 . 2 . 2 . 2 . 1 . 9 C o l o r T e m p P h y s i c a l M i n Mi r e d s At t r i b u t e ColorTempPhysicalMin Mireds attribute indicates the minimum mired value supported by the hardware The . ColorTempPhysicalMin corresponds to the maximum color temperature in kelvins supported by the Mireds Mireds ≤ ColorTemperature Mireds . hardware. ColorTempPhysicalMin C o l o r T e m p P h y s i c a l M a x Mi r e d s 5 . 2 . 2 . 2 . 1 . 1 0 At t r i b u t e The ColorTempPhysicalMax Mireds attribute indicates the maximum mired value supported by the har d- w are . ColorTempPhysicalMax Mireds corresponds to the minimum color temperature in kelvins supported by the hardware. Mireds ≤ ColorTempPhysicalMax Mireds . ColorTemperature 5.2.2.2.2 Defi ned Pr imaries Inf orma tio n At t ri bute Set Defined Primaries Information attribute set contains the attributes summarized in Table 5 The 8 . . Table 5 . 8 . Defined Primaries Information Attribute Set Id Name Type Range Access Def M/O 0x0010 uint8 0x00 – 0x 06 NumberOfPrimaries Read Only - M 0 Primary1X uint16 0x0000 – 0xfeff Read Only - M 0x0011 0 uint16 M - Read Only 0xfeff – 0x0000 0x0012 Primary1Y 0 0x0013 uint8 0x00 - 0xff Primary1Intensity Read Only - M 0x0014 Reserved - - - - - 1 0x0015 Primary2X uint16 0x0000 – 0xf eff Read Only - M 1 0x0016 Primary2Y uint16 0x0000 – 0xfeff Read Only - M 1 0x0000 Read Only M - 0x0017 Primary2Intensity uint8 0xff - 0x0018 - - - Reserved - - 2 Primary3X uint16 0x0000 – 0xfeff Read Only - M 0x0019 2 Primary3Y uint16 0x0000 – 0xfeff Read Only - M 0x001a 2 Primary3Intensity uint8 0x00 - 0xff Read Only - M 0x001b i the value of the NumberOfPrimaries attribute is greater than i , otherwise optional. = Mandatory if M NumberOfPrimaries Attribute Copyright , The ZigBee Alliance. All rights reserved. 5 - 8 Page  2007 - 2016

331 ZigBee Cluster Library Specification 5 Chapter 075123 Lighting – ZigBee Document NumberOfPrimaries attribute contains The the number of color primaries implemented on this device. A value of 0xff SHALL indicate that the number of primaries is unknown. Where this attribute is implemented, the attributes below for indicating the “x” and “y” color values of the primaries SHALL also be implemented for each of the primaries from 1 to NumberOfPrimaries , without leaving gaps. Implementation of the Primary1Intensity p- attribute and subsequent intensity attributes is o tional. Attribute Primary1X Primary1X attribute contains the nor malized chromaticity value x for this primary, as defined in the CIE The xyY Color Space. The value of x SHALL be related to the Primary1X attribute by the relationship x = Primary1X / 65536 ( Primary1X in the range 0 to 65279 inclusive) Attribute Primary1Y Th e attribute contains the normalized chromaticity value y for this primary, as defined in the CIE Primary1Y xyY Color Space. The value of y SHALL be related to the attribute by the relationship Primary1Y Primary1Y / 65536 ( Primary1Y in the range 0 to 6 5279 inclusive) y = Attribute Primary1Intensity The Primary1intensity attribute contains a representation of the maximum intensity of this primary as defined in the Dimming Light Curve in the Ballast Configuration cluster (see ) , normalized such that the primary 5.3 with the highest maximum intensity contains the value 0xfe. A value of 0xff SHALL indicate that this primary is not available. 5 . 2 . 2 . 2 . 2 . 1 R e m a i n i n g At t r i b u t e s The Primary2X, Primary2Y, Primary2Intensity, Primary3X, Primary3Y and Pri mary3Intensity attributes are nd rd primaries, where present, in the same way as for the and 3 used to represent the capabilities of the 2 attributes. Primary1X, Primary1Y and Primary1Intensity Ad d iti onal Def ine d Primar ies In for matio n At t ri bu te 5.2.2.2.3 Set The Addit . 9 . 5 Table ional Defined Primaries Information attribute set contains the attributes summarized in Table 9 . Additional Defined Primaries Information Attribute Set 5 . M/O Name ange Type R Id Def Access 3 0xfeff Primary4X uint16 0x0000 – Read Only - M 0x0020 3 0x0021 Primary4Y uint16 0x0000 – 0xfeff Read Only - M 3 0x0022 uint8 0x00 – 0xff Primary4Intensity Read Only - M 0x0023 Reserved - - - - - 4 0x0024 Primary5X uint16 0x0000 – 0xfeff Read Only - M 4 M - Read Only 0xfeff – 0x0000 0x0025 Primary5Y uint16 2016 9  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 5 -

332 Chapter 5 ZigBee Cluster Library Specification ZigBee Docu – 075123 Lighting ment M/O R ange Id Type Def Name Access 4 Primary5Intensity uint8 0x00 – 0xff Read Only - M 0x0026 - - - 0x0027 - - Reserved 5 0x0028 uint16 0x0000 – 0xfeff Primary6X Read Only - M 5 0x0000 M - 0x0029 Primary6Y uint16 0xfeff Read Only – 5 Primary6Intensity uint8 0x00 – 0x002a 0xff Read Only - M i = Mandatory if the value of the NumberOfPrimaries attribute is greater than i , otherwise optional. M 5 . 2 . 2 . 2 . 3 . 1 A t t r i b u t e s The Primary4X, Primary4Y, Primary4Intensity, Primary5 X, Primary5Y, Primary5Intensity, Primary6X, th th th and and 6 Primary6Y Primary6Intensity attributes represent the capabilities of the 4 primaries, where , 5 present, in the same way as the Primary1Intensity attributes. and Primary1X, Primary1Y 5.2.2.2.4 P oi nts Se tt ings At t ri bute Set Defi ned Col or The Defined Color Points Settings attribute set contains the attributes summarized in Table 5 . 10 . Attribute Set Table 5 . 10 . Defined Color Points Settings M/O Type Name Id Range Def Access uint16 0x0000 – 0xfeff Read/Write - O 0x0030 WhitePointX 0x0031 WhitePointY uint16 0x0000 – 0xfeff Read/Write - O 0x0032 ColorPointRX uint16 0x0000 – 0xfeff Read/Write - O 0xf 0x0033 ColorPointRY uint16 0x0000 – eff Read/Write - O 0x0034 ColorPointRIntensity uint8 0x00 – 0xff Read/Write O - 0x0035 - - - - - Reserved 0xfeff uint16 0x0000 – 0x0036 Read/Write - O ColorPointGX 0x0037 ColorPointGY uint16 0x0000 – 0xfeff Read/Write - O O 0x0038 ColorPointGIntensity u int8 0x00 – 0xff Read/Write - 0x0039 Reserved - - - - - Read/Write O 0xfeff – 0x0000 uint16 - 0x003a ColorPointBX Copyright , The ZigBee Alliance. All rights reserved. 5 - 10 Page  2007 - 2016

333 ZigBee Cluster Library Specification Chapter 5 Lighting – 075123 ZigBee Document M/O Id Def Name Range Type Access 0xfeff 0x003b uint16 0x0000 – ColorPointBY Read/Write O O 0x003c ColorPointBIntensity uint8 0x00 – 0xff Read/Write WhitePointX Attrib ute The WhitePointX attribute contains the normalized chromaticity value x, as defined in the CIE xyY Color Space, of the current white point of the device. The value of x SHALL be related to the WhitePointX attribute by the relationship / x = WhitePointX 65536 ( WhitePointX in the range 0 to 65279 inclusive) WhitePointY Attribute The WhitePointY attribute contains the normalized chromaticity value y, as defined in the CIE xyY Color Space, of the current white point of the device. attribute by the relationship The value of y SHALL b e related to the WhitePointY in the range 0 to 65279 inclusive) WhitePointY ( / 65536 WhitePointY y = ColorPointRX Attribute The ColorPointRX attribute contains the normalized chromaticity value x, as defined in the CIE xyY Color Space, of the red color point of the device. ColorPointRX attribute by the relationship The value of x SHALL be related to the / 65536 ColorPointRX x = ( ColorPointRX in the range 0 to 65279 inclusive) ColorPointRY Attribute The ColorPointRY attrib ute contains the normalized chromaticity value y, as defined in the CIE xyY Color Space, of the red color point of the device. The value of y SHALL be related to the ColorPointRY attribute by the relationship in t ColorPointRY he range 0 to 65279 inclusive) y = ColorPointRY / 65536 ( Attribute ColorPointRIntensity The ColorPointRIntensity attribute contains a representation of the relative intensity of the red color point as defined in the Dimming Light Curve in the Ballast Configuration cluster (see 5.3 ), normalized such that the color point with the highest relative intensity contains the value 0xfe. A value of 0xff SHALL indicate an invalid value. 5 . 2 . 2 . 2 . 4 . 1 R e m a i n i n g At t r i b u t e s , ColorPointGY and, The ColorPointGX ColorPointBY , ColorPointGIntensity , Co lorPointBX , ColorPointBIntensity attributes are used to represent the chromaticity values and intensities of the green and ColorPointRX b- blue color points, in the same way as for the ColorPointRIntensity , ColorPointRY and attri utes. e- y one of these red, green or blue color point attributes is implemented then they SHALL all be impl If an mented. Commands Received 5.2.2.3 Table The command IDs for the Color Control cluster are listed in . 11 . 5 2016 11  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 5 -

334 Chapter ZigBee Cluster Library Specification 5 ment 075123 ZigBee Docu Lighting – 5 . 11 . Command IDs for the Color Control Cluster Table Command Identifier M/O Description 0 M 0x00 Move to Hue 0 Move Hue M 0x01 0 Step Hue 0x02 M 0 0x03 Move to Saturation M 0 Move Saturation M 0x04 0 0x05 Step Saturation M 0 Move 0x06 to Hue and Saturation M 3 Move to Color M 0x07 3 0x08 M Move Color 3 0x09 Step Color M 4 M Move to Color Temperature 0x0a 1 Enhanced Move to Hue M 0x40 1 Enhanced Move Hue M 0x41 1 Enhanced Step Hue M 0x42 1 M 0x43 Enhanced Move to Hue and Saturation 2 0x44 Color Loop Set M 0,1,3,4 0x47 Stop Move Step M 4 Move Color Temperature M 0x4b 4 0x4c Step Color Temperature M i M attribute is equal to 1, otherwise optional. ColorCapabilities of the i bit = Mandatory if 5.2.2.3.1 Generic Usa ge N o tes attribute of the on/off If one of th ese commands is received while the device is in its off state, i.e., the OnOff be ignored. cluster is equal to 0x00, the command SHALL When asked to change color via one of these commands, the implementation SHALL select a color, wi thin the limits of the hardware of the device, which is as close as possible to that requested. The determination as to the true representations of color is out of the scope of this specification. ColorLoopActive only be stopped by SHALL the attrib If a color loop is active ( i.e., ute is equal to 0x01), it the color i.e., sending a specific color loop set command frame with a request to deactivate the color loop ( not be stopped on receipt of another command such as the enhanced move to hue command ). In SHALL loop choose to ignore incoming color commands MAY addition, while a color loop is active, a manufacturer which affect a change in hue. For the move hue command, the Rate field specifies the rate of movement in steps per second. A step is a change in the d evice’s hue of one unit. If the move mode field is equal to 0x01 (Up) or 0x03 (Down) and the Copyright , The ZigBee Alliance. All rights reserved. 5 - 12 Page  2007 - 2016

335 5 ZigBee Cluster Library Specification Chapter 075123 Lighting – ZigBee Document Rate field has a value of zero, the command has no effect and a default response command (see 2.4.12) is sent in response, with the status code set to INVALID_FIEL D. For the move to color temperature command, if the target color specified is not achievable by the hardware then the color temperature SHALL be clipped at the physical minimum or maximum achievable, depending be before on the color temperature transition, when th e device reaches that color temperature (which MAY SHALL the requested transition time), and a ZCL default response command be generated, where not dis a- bled, with a status code equal to SUCCESS . 5.2.2.3.2 C olo rM ode No te o n C hange o f The first action taken ColorMode attribute to when any one of these commands is received is to change the the appropriate value for the command (see individual commands). Note that, when moving from one color mode to another (e.g., CurrentX ), the starting color for the CurrentY to CurrentHue / CurrentSaturati on / command is formed by calculating the values of the new attributes (in this case CurrentHue , CurrentSaturation CurrentX and CurrentY ). ) from those of the old attributes (in this case When moving from a mode to another mode t hat has a more restricted color range (e.g., CurrentX / CurrentY to ColorTemperature Mireds ) it is CurrentSaturation / CurrentHue , or CurrentSaturation to CurrentHue / h cases is possible for the current color value to have no equivalent in the new mode. The behavior in suc manufacturer dependent, and therefore it is recommended to avoid color mode changes of this kind during usage. Mo ve to Hue Co m mand 5.2.2.3.3 P a y l o a d F o r m a t 5 . 2 . 2 . 3 . 3 . 1 Figure The Move to Hue command payload SHALL be formatted as illustrated in 5 - 2 . 2 Figure 5 - . Format of the Move to Hue Command Payload 8 8 16 Bits enum8 uint8 uint16 Data Type Hue Transition Time Direction Field Name H u e F i e l d 5 . 2 . 2 . 3 . 3 . 2 The Hue field specifies the hue to be moved to. 5 . 2 . 2 . 3 . 3 . 3 D i r e c t i o n F i e l d Table 1 . 2 . 5 reserved values in The Direction field SHALL be one of the non - 5 . Values of the Direction Field 2 Table 1 . Fade Mode Value Description 0x00 Shortest distance Longest distance 0x01 0x02 Up Down 0x03 T r a n s i t i o n T i m e F i e l d 5 . 2 . 2 . 3 . 3 . 4 The Transition Time field specifies, in 1/10ths of a second, the time that SHALL be taken to move to the new hue. 2016 13  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 5 -

336 Chapter ZigBee Cluster Library Specification 5 Lighting ZigBee Docu 075123 – ment 5 . 2 . 2 . 3 . 3 . 5 E f f e c t o n R e c e i p t C On receipt of this command, a device SHALL also set the olorMode attribute to the value 0x00 and then SHALL move from its current hue to the value given in the Hue field. The movement SHALL be continuous, i.e., not a step function, and the time taken to move to the new hue field. SHALL be equal to the Transition Time As hue is effectively measured on a circle, the new hue MAY be moved to in either direction. The direction of hue change is given by the Direction field. If Direction is 'Shortest distance', the direction is taken that i n- volves the shortest path ro und the circle. This case corresponds to expected normal usage. If Direction is 'Longest distance', the direction is taken that involves the longest path round the circle. This case can be used 39 e same, the Up direction SHALL be taken. for 'rainbow effects'. In both cases, if both distances are th Mo ve Hue Com ma nd 5.2.2.3.4 P a y l o a d F o r m a t 5 . 2 . 2 . 3 . 4 . 1 - 5 . Figure 3 The Move Hue command payload SHALL be formatted as illustrated in . Format of the Move Hue Command Payload 3 - 5 Figure 8 8 B its uint8 enum8 Data Type Rate Move Mode Field Name 5 . 2 . 2 . 3 . 4 . 2 M o v e M o d e F i e l d The Move Mode field SHALL be one of the non - reserved values in Table 5 . 13 . Table 5 . 13 . Values of the Move Mo de Field Fade Mode Value Description Stop 0x00 0x01 Up 0x02 Reserved Down 0x03 5 . 2 . 2 . 3 . 4 . 3 R a t e F i e l d The Rate field specifies the rate of movement in steps per second. A step is a change in the device’s hue of command has no effect and a default response command one unit. If the Rate field has a value of zero, the INVALID_FIELD. (see Chapter 2) is sent in response, with the status code set to 5 . 2 . 2 . 3 . 4 . 4 E f f e c t o n R e c e i p t On receipt of this command, a device SHALL set the ColorMode attribute to the value 0x00 and SHALL then 14 . . move from its current hue in an up or down direction in a continuous fashion, as detailed in Table 5 . Actions on Receipt for Move Hue Command 14 . 5 Table pt Action on Recei Fade Mode 39 CCB 2028 Copyright , The ZigBee Alliance. All rights reserved. 5 - 14 Page  2007 - 2016

337 Chapter ZigBee Cluster Library Specification 5 ZigBee Document Lighting – 075123 If moving, stop, else ignore the command (i.e., the command is accepted but has Stop no effect). NB This MAY also be used to stop a Move to Hue command, a Move to Saturation command, or a Move to Hue and Saturation command. Up e at the rate given in the Rate field. If the hue reaches the Increase the device’s hu maximum allowed for the device, then proceed to its minimum allowed value. Down Decrease the device’s hue at the rate given in the Rate field. If the hue reaches the minimum allowed for the dev ice, then proceed to its maximum allowed value. 5.2.2.3.5 Step Hue Com man d 5 . 2 . 2 . 3 . 5 . 1 P a y l o a d F o r m a t The Step Hue command payload SHALL be formatted as illustrated in Figure 5 - 4 . 5 he Step Hue Command Payload . Format of t 4 - Figure 8 8 8 Bits uint8 uint8 enum8 Data Type Transition Time Step Size Step Mode Field Name 5 . 2 . 2 . 3 . 5 . 2 S t e p M o d e F i e l d . The Step Mode field SHALL be one of the non - reserved values in Table 5 . 15 Table 5 . 15 . Values of the Step Mode Field Description Fade Mode Value 0x00 Reserved Up 0x01 0x02 Reserved Down 0x03 S t e p S i z e F i e l d 5 . 2 . 2 . 3 . 5 . 3 The change to be added to (or subtracted from) the current value of the device’s hue. 5 . 2 . 2 . 3 . 5 . 4 T r a n s i t i o n T i m e F i e l d The Transition Time field specifies, in 1/10ths of a second, the time that SHALL be taken to perform the step. A step is a change in the device’s hue of ‘Step size’ units. 5 . 2 . 2 . 3 . 5 . 5 E f f e c t o n R e c e i p t C attribute to the value 0x00 and SHALL then olorMode On receipt of this command, a device SHALL set the move from its current hue in an up or down direction by one step, as detailed in 16 . 5 Table . 2016 15  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 5 -

338 Chapter ZigBee Cluster Library Specification 5 – 075123 ment ZigBee Docu Lighting Table 5 . 16 . Actions on Receipt for Ste p Hue Command Fade Mode Action on Receipt Up Increase the device’s hue by one step, in a continuous fashion. If the hue value reaches the maximum value then proceed to the minimum allowed value. Decrease the device’s hue by one step, in a continuous Down fashion. If the hue value reaches the minimum value then proceed to the maximum allowed value. 5.2.2.3.6 Mo ve to Sa tu rati o n C omman d P a y l o a d F o r m a t 5 . 2 . 2 . 3 . 6 . 1 - 5 gure . Fi 5 The Move to Saturation command payload SHALL be formatted as illustrated in Fi . Format of the Move to Saturation Command Payload 5 - 5 gure 16 8 Bits uint16 uint8 Data Type Transition Time Saturation Field Name 5 . 2 . 2 . 3 . 6 . 2 E f f e c t o n R e c e i p t On receipt of this command, a device set the at tribute to the value 0x00 and SHALL then move ColorMode from its current saturation to the value given in the Saturation field. The movement SHALL be continuous, i.e., not a step function, and the time taken to move to the new sa t- 40 uration SHALL be equal to the Trans ition Time field, in 1/10ths of a second. 5.2.2.3.7 Mo ve Sa tura ti on C omman d 5 . 2 . 2 . 3 . 7 . 1 P a y l o a d F o r m a t The Move Saturation command payload SHALL be formatted as illustrated in 5 - 6 . Figure ion Command Payload 6 - 5 . Format of the Move Saturat Figure 8 8 Bits enum8 uint8 Data Type Rate Move Mode Field Name M o v e M o d e F i e l d 5 . 2 . 2 . 3 . 7 . 2 5 Table reserved values in . 17 - . The Move Mode field SHALL be one of the non 5 Values of the Move Mode Field . 17 . Table Fade Mode Value Description 0x00 Stop 40 CCB 2028 Copyright , The ZigBee Alliance. All rights reserved. 5 - 16 Page  2007 - 2016

339 ZigBee Cluster Library Specification Chapter 5 075123 Lighting ZigBee Document – Up 0x01 0x02 Reserved 0x03 Down 5 . 2 . 2 . 3 . 7 . 3 R a t e F i e l d The Rate field specifies the rate of movement in steps per second. A step is a change in the device’s saturation of one unit. If the Rate fi eld has a value of zero, the command has no effect and a default response command (see Chapter 2) is sent in response, with the status code set to INVALID_FIELD . E f f e c t o n R e c e i p t 5 . 2 . 2 . 3 . 7 . 4 attribute to th e value 0x00 and SHALL then ColorMode On receipt of this command, a device SHALL set the 5 move from its current saturation in an up or down direction in a continuous fashion, as detailed in Table . 18 . 18 . 5 uration Command Table . Actions on Receipt for Move Sat Fade Mode Action on Receipt If moving, stop, else ignore the command (i.e., the command is accepted but m- Stop has no affect). NB This MAY also be used to stop a Move to Saturation co ion command. mand, a Move to Hue command, or a Move to Hue and Saturat Increase the device’s saturation at the rate given in the Rate field. If the sat u- Up ration reaches the maximum allowed for the device, stop. u- Decrease the device’s saturation at the rate given in the Rate field. If the sat Down the minimum allowed for the device, stop. ration reaches 41 5.2.2.3.8 Step Sa tura ti on C omman d P a y l o a d F o r m a t 5 . 2 . 2 . 3 . 8 . 1 7 The Step Saturation command payload SHALL be formatted as illustrated in Figure 5 - . tion Command Payload . Format of the Step Satura Figure 5 - 7 8 8 8 Bits enum8 uint8 uint8 Data Type Transition Time Step Size Step Mode Field Name 5 . 2 . 2 . 3 . 8 . 2 S t e p M o d e F i e l d 19 . 5 Table . reserved values in - The Step Mode field SHALL be one of the non 19 . 5 Table . Values of the Step Mode Field Step Mode Value Description Reserved 0x00 41 CCB 2028 2016 17  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 5 -

340 5 Chapter ZigBee Cluster Library Specification Lighting ment 075123 ZigBee Docu – 0x01 Up Reserved 0x02 Down 0x03 5 . 2 . 2 . 3 . 8 . 3 S t e p S i z e F i e l d The change to be added to (or subtracted from) the current value of the device’s saturation. T r a n s i t i o n T i m e F i e l d 5 . 2 . 2 . 3 . 8 . 4 The Transition Time field specifies, in 1/10ths of a second, the time that SHALL be taken to perform the step. A step is a change in the device’s saturation of ‘Step size’ units. E f f e c t o n R e c e i p t 5 . 2 . 2 . 3 . 8 . 5 attribute to the value 0x00 and SHALL then ColorMode On receipt of this command, a device SHALL se t the 5 move from its current saturation in an up or down direction by one step, as detailed in Table . 20 . 20 . Actions on R eceipt for Step Saturation Command 5 . Table Step Mode Action on Receipt Up Increase the device’s saturation by one step, in a continuous fashion. However, if the saturation value is already the maximum value then do nothing. Down h- by one step, in a continuous fas Decrease the device’s saturation ion. However, if the saturation value is already the minimum value then do nothing. 42 5.2.2.3.9 Mo ve to Hue a nd Satura tio n Comma nd P a y l o a d F o r m a t 5 . 2 . 2 . 3 . 9 . 1 - The Move to Hue and Saturation command payload SHALL be formatted as illustrated in Figure 5 8 . 8 . Move to Hue and Saturation Command Payload Figure 5 - 8 16 8 Bits uint8 uint8 uint16 Data Type ime T Transition Saturation Hue Field Name E f f e c t o n R e c e i p t 5 . 2 . 2 . 3 . 9 . 2 attribute to the value 0x00 and SHALL then ColorMode SHALL set the On receipt of this command, a device move from its current hue and saturation to the values given in the Hue and Saturation fields. The movement SHALL be continuous, i.e., not a step function, and the time taken to move to th e new color SHALL be equal to the Transition Time field, in 1/10ths of a second. The path through color space taken during the transition is not specified, but it is recommended that the shortest path is taken though hue/saturation space, i.e., movement is 'in a straight line' across the 43 hue/saturation disk. 42 CCB 2028 Copyright , The ZigBee Alliance. All rights reserved. 5 - 18 Page  2007 - 2016

341 ZigBee Cluster Library Specification Chapter 5 Lighting – ZigBee Document 075123 Mo ve to Col or Co mmand 5.2.2.3.10 5 . 2 . 2 . 3 . 1 0 . 1 P a y l o a d F o r m a t . 9 - 5 Figure The Move to Color command payload SHALL be formatted as illustrated in to Color Command Payload . Format of the Move 9 - 5 Figure 16 16 16 Bits uint16 uint16 uint16 Data Type ColorY ColorX Transition Time Field Name E f f e c t o n R e c e i p t 5 . 2 . 2 . 3 . 1 0 . 2 ColorMode attribute, where implemented, On receipt of this command, a device SHALL set the value of the hen move from its current color to the color given in the ColorX and ColorY fields. to 0x01, and SHALL t The movement SHALL be continuous, i.e., not a step function, and the time taken to move to the new color d. SHALL be equal to the Transition Time field, in 1/10ths of a secon The path through color space taken during the transition is not specified, but it is recommended that the shortest path is taken though color space, i.e., movement is 'in a straight line' across the CIE xyY Color Space. 44 Mo ve Col or Comm and 5.2.2.3.11 5 . 2 . 2 . 3 . 1 1 . 1 P a y l o a d F o r m a t Figure - The Move Color comma nd payload SHALL be formatted as illustrated in . 5 10 10 Figure 5 - . Format of the Move Color Command Payload 16 16 Bits int16 int16 Data Type RateX RateY Field Name R a t e X F i e l d 5 . 2 . 2 . 3 . 1 1 . 2 The RateX field specifies the rate of movement in steps per second. A step is a change in the device's CurrentX attribute of one unit. 5 . 2 . 2 . 3 . 1 1 . 3 R a t e Y F i e l d The RateY field specifies the rate of movement in steps per second. A step is a change in the device's C urrentY attribute of one unit. E f f e c t o n R e c e i p t 5 . 2 . 2 . 3 . 1 1 . 4 On receipt of this command, a device SHALL set the value of the ColorMode attribute, where implemented, i- to 0x01, and SHALL then move from its current color in a continuous fashion according to the rates spe c fied. This movement SHALL continue until the target color for the next step cannot be implemented on this device. 43 CCB 2028 44 CCB 2028 2016 19  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 5 -

342 Chapter ZigBee Cluster Library Specification 5 ZigBee Docu ment – 075123 Lighting If both the RateX and RateY fields contain a value of zero, no movement SHALL be carried out, and the t other than stopping the operation of any previously received command execution SHALL have no effec command of this cluster. This command can thus be used to stop the operation of any other command of this cluster. 5.2.2.3.12 Step Col or Com m and 5 . 2 . 2 . 3 . 1 2 . 1 P a y l o a d F o r m a t Figure 5 atted as illustrated in 11 . - The Step Color command payload SHALL be form 5 Figure - 11 . Format of the Step Color Command Payload 16 16 16 Bits uint16 int16 int16 Data Type Transition Time StepY StepX Field Name a n d S t e p Y F i e l d s S t e p X 5 . 2 . 2 . 3 . 1 2 . 2 The StepX and StepY fields specify the change to be added to the device's CurrentX attribute and CurrentY attribute respectively. 5 . 2 . 2 . 3 . 1 2 . 3 T r a n s i t i o n T i m e F i e l d ken to perform the The Transition Time field specifies, in 1/10ths of a second, the time that SHALL be ta color change. 9999 5 . 2 . 2 . 3 . 1 2 . 4 E f f e c t o n R e c e i p t On receipt of this command, a device SHALL set the value of the attribute, where implemented, ColorMode to 0x01, and SHALL then move from its current color by the color step indicated. HALL be continuous, i.e., not a step function, and the time taken to move to the new color The movement S SHALL be equal to the Transition Time field, in 1/10ths of a second. that the The path through color space taken during the transition is not specified, but it is recommended shortest path is taken though color space, i.e., movement is 'in a straight line' across the CIE xyY Color Space. 45 bit integers then more than Note also that if the required step is larger than can be represented by signed 16 - one step command SHOULD be issued. Mo ve to C ol or Te mperat ure Com ma nd 5.2.2.3.13 P a y l o a d F o r m a t 5 . 2 . 2 . 3 . 1 3 . 1 - 5 Figure . 12 The Move to Color Temperature command payload SHALL be formatted as illustrated in 45 CCB 2028 Copyright , The ZigBee Alliance. All rights reserved. 5 - 20 Page  2007 - 2016

343 ZigBee Cluster Library Specification 5 Chapter 075123 Lighting – ZigBee Document Payload Figure 5 - 12 . Move to Color Temperature Command 16 16 Bits uint16 uint16 Data Type Color Temperature ime T Transition Field Name Mireds 5 . 2 . 2 . 3 . 1 3 . 2 E f f e c t o n R e c e i p t On receipt of this command, a device SHALL set the value of the attribute, where implemented, ColorMode to 0x02, and SHALL then move from i ts current color to the color given by the Color Temperature Mireds field. The movement SHALL be continuous, i.e., not a step function, and the time taken to move to the new color SHALL be equal to the Transition Time field, in 1/10ths of a second. By def inition of this color mode, the path through color space taken during the transition is along the ‘Black 46 Body Line'. 5.2.2.3.14 Enhance d M o ve t o Hue Com mand The com mand allows lamps to be moved in a smooth continuous transition from their Enhanced Move to Hue current hue to a target hue. SHALL be formatted as illustrated in Figure 5 - 13 . The payload of this command 13 Command Enhanced Move to Hue . Format of the Figure 5 - 2 1 2 Octets uint16 enum8 uint16 Data T ype Transition Time Enhanced Hue Direction ame eld N Fi 5 . 2 . 2 . 3 . 1 4 . 1 E n h a n c e d H u e F i e l d The E nhanced H ue field is 16 - bits in length and specifies the target extended hue for the lamp. 5 . 2 . 2 . 3 . 1 4 . 2 D i r e c t i o n F i e l d ontrol C ee cluster (s This field is identical to the D irection field of the Move to Hue command of the C olor sub - 5.2.2.3.3 ). clause T r a n s i t i o n T i m e F i e l d 5 . 2 . 2 . 3 . 1 4 . 3 H cluster the T ransition T ime field of the M ove to This field is identical to ue command of the C olor C ontrol ). 5.2.2.3.3 sub (s ee clause - 5 . 2 . 2 . 3 . 1 4 . 4 E f f e c t o n R e c e i p t set the On receipt of this command, a device SHALL attribute to 0x00 and set the ColorMode then move from its current enhanced EnhancedColorMode attribute to the value 0x03. The device SHALL Enhanced Hue field. hue to the value given in the n- The movement SHALL be continuous, i.e., not a step function, and the time taken to move to the new e 47 hanced hue SHALL be equal to the T T ime field. ransition 46 CCB 2028 2016 21  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 5 -

344 Chapter ZigBee Cluster Library Specification 5 Lighting ment ZigBee Docu – 075123 5.2.2.3.15 Enhance d M o ve H ue Co mman d command allows lamps to be moved in a continuous ste Enhanced Move Hue The pped transition from their current hue to a target hue. . The payload of this command SHALL be formatted as illustrated in Figure 5 - 14 Com Figure 5 - 14 . Format of the Enhanced Move Hue mand 2 1 Octets uint16 enum8 pe Ty Data Rate Move Mode N ame Field M o v e M o d e F i e l d 5 . 2 . 2 . 3 . 1 5 . 1 This field is identical to the Move Mode field of the Move Hue command of the Color Control cluster (s ee sub clause 5.2.2.3.4 ). - 5 . 2 . 2 . 3 . 1 5 . 2 R a t e f i e l d The R ate field is 16 - bits in length and specifies the rate of movement in steps per second. A step is a change ode field is set to 0x01 (up) or 0x03 (down) and the M ove M in the extended hue of a device by one unit. If the field has a value of zero, the co ate R command SHALL be Default Response mmand has no effect and a ZCL sent in response, with the status code set to If the M ove M ode field is set to 0x00 (stop) the INVALID_FIELD. SHALL be ignored. rate field E f f e c t o n r e c e i p t 5 . 2 . 2 . 3 . 1 5 . 3 SHALL ce set the ColorMode On receipt of this command, a devi attribute to 0x00 and set the EnhancedColorMode attribute to the value 0x03. The device SHALL then move from its current enhanced Table 5 . 21 . hue in an up or down direction in a continuous fashion, as detailed in Table 5 . 21 . Actions on Receipt of the Enhanced Move Hue Command ode eceipt R on Action Move M the command is accepted but has no If moving, stop, else ignore the command ( i.e., Stop ef fect). NB This MAY also be used to stop an Enhanced Move to Hue command or an enhanced Move to Hue and Saturation command. Up Increase the device’s enhanced hue at the rate given in the Rate field. If the enhanced evice, proceed to its minimum allowed hue reaches the maximum allowed for the d value. Down Decrease the device’s enhanced hue at the rate given in the Rate field. If the hue reaches the minimum allowed for the device, proceed to its maximum allowed value. 5.2.2.3.16 Enhance d Ste p H u e Com mand Enhanced Step Hue command allows lamps to be moved in a stepped transition from their current hue to The a target hue, resulting in a linear transition through XY space. 5 Figure The payload of this command SHALL be formatted as illustrated in . - 15 47 CCB 2028 Copyright , The ZigBee Alliance. All rights reserved. 5 - 22 Page  2007 - 2016

345 ZigBee Cluster Library Specification Chapter 5 075123 Lighting – ZigBee Document Command Enhanced Step Hue Figure 5 - 15 . Format of the 2 2 1 Octets uint16 uint16 enum8 Data T ype Transition Time Step Size Step Mode ame Field N 5 . 2 . 2 . 3 . 1 6 . 1 S t e p M o d e F i e l d This field is identical to the Step Mode field of the Step Hue command of the Color Control cluster (see sub - clause 5.2.2.3.5 ). 5 . 2 . 2 . 3 . 1 6 . 2 S t e p S i z e F i e l d bits in length and specifies the change to be added to (or subtracted from) the current - The Step Size field is 16 he device’s enhanced hue. value of t 5 . 2 . 2 . 3 . 1 6 . 3 T r a n s i t i o n T i m e F i e l d - bits in length and specifies, in units of 1/10ths of a second, the time that The Transition Time field is 16 SHALL be taken to perform the step. A step is a change to the device’s enhanced hue of a magnitude co r- responding to the Step Size field. E f f e c t o n R e c e i p t 5 . 2 . 2 . 3 . 1 6 . 4 ColorMode On receipt of this command, a device SHALL set the attribute to 0x00 and the EnhancedColorMode attribute to the value 0x03. The device SHALL then move from its current enhanced Table or down direction by one step, as detailed in hue in an up . 22 . 5 Command Table . 22 . Ac tions on Receipt for the Enhanced Step Hue 5 Move Mode Action o n Receipt Up Increase the device’s enhanc ed hue by one step . If the enhanced hue reaches the maximum allowed for the device, proceed to its min i- mum allowed value. by one step . If the hue reaches Decrease the device’s Down hue enhanced the minimum allowed for the device, proceed to its maximum l- a lowed value. 5.2.2.3.17 Enhance d M o ve t o Hue a nd Sa tura ti on Comma nd The Enhanced Move to Hue and Saturation command allows lamps to be moved in a smooth continuous transition from their current hue to a target hue and from their current saturation to a target satura tion. - 5 . 16 The payload of this command SHALL be formatted as illustrated in Figure . Format of the Enhanced Move Figure 5 - 16 t o Hue a nd Saturation Command 1 2 2 Octets uint16 uint8 t16 uin ype Data T Saturation Transition Time Enhanced Hue Field N ame - 2016 , The ZigBee Alliance. All rights reserved. Copyright 23  2007 Page 5 -

346 Chapter ZigBee Cluster Library Specification 5 Lighting ment ZigBee Docu – 075123 5 . 2 . 2 . 3 . 1 7 . 1 E n h a n c e d H u e F i e l d The Enhanced Hue field is 16 - bits in length and specifies the target extended hue for the lamp. 5 . 2 . 2 . 3 . 1 7 . 2 S a t u r a t i o n F i e l d This field is identical to the Saturation field of the Move to Hue and Saturation command of the Color Control cluster (see sub - clause 5.2.2.3.9 ). 5 . 2 . 2 . 3 . 1 7 . 3 T r a n s i t i o n T i m e F i e l d trol cluster This field is identical to the Transition Time field of the Move to Hue command of the Color Con clause - (see sub ). 5.2.2.3.9 5 . 2 . 2 . 3 . 1 7 . 4 E f f e c t o n R e c e i p t On receipt of this command, a device SHALL set the ColorMode attribute to the value 0x00 and set the EnhancedColorMode attribute to the value 0x03. The device SHALL then move from its current enhanced hue and saturation to the values given in the enhanced hue and saturation fields. be continuous, The movement SHALL i.e., not a step function, and the time taken to move to the new color SHALL be equal to th e Transition Time field, in 1/10ths of a second. The path through color space taken during the transition is not specified, but it is recommended that the 48 ion disk. shortest path is taken though XY space, i.e., movement is 'in a straight line' across the hue/saturat 5.2.2.3.18 Col or L oo p S et Co mmand The Color Loop Set command allows a color loop to be activated such that the color lamp cycles through its range of hues. be formatted as illustrated in 5 - Figure 17 . The payload of this command SHALL Figure . Format of the Color Loop Set Command 17 - 5 1 1 2 2 1 Octets uint16 map8 enum8 enum8 uint16 Data T ype Start Hue Time Action Direction Update Flags ame Field N 5 . 2 . 2 . 3 . 1 8 . 1 U p d a t e F l a g s F i e l d h and specifies which color loop attributes to update before the color The Update Flags field is 8 bits in lengt SHALL Figure . 18 - 5 be formatted as illustrated in loop is started. This field Figure 5 - 18 . Form at of the Update Flags Field of the Color Loop Set Command 7 4 - Bits: 0 1 2 3 Reserved Update Direction Update Time Update Start Hue Update Action The Update Action sub - field is 1 bit in length and specifies whether the device SHALL adhere to the action SHALL adhere to the action field in order to process the command. If this sub - field is set to 1, the device - ignore the action field. field. If this sub field is set to 0, the device SHALL 48 CCB 2028 Copyright , The ZigBee Alliance. All rights reserved. 5 - 24 Page  2007 - 2016

347 ZigBee Cluster Library Specification 5 Chapter 075123 Lighting – ZigBee Document update the SHALL her the device field is 1 bit in length and specifies whet - The Update Direction sub - field is set to 1, the device SHALL update ColorLoopDirection attribute with the Direction field. If this sub the value of the ColorLoopDirection attribute with the value of the Direction field. If this sub - field is set to 0 , the device SHALL ignore the Direction field. field is 1 bit in length and specifies whether the device - update the The Update Time sub SHALL - update the value SHALL field is set to 1, the device ColorLoopTime attribute with the Time field. If this sub he ColorLoopTime attribute with the value of the Time field. If this sub of t field is set to 0, the device - ignore the Time field. SHALL Update Start Hue The - sub field is 1 bit in length and specifies whether the device SHALL update the SHALL ColorLoopStartEnhancedHu e attribute with the Start Hue field. If this sub - field is set to 1, the device Start Hue update the value of the ColorLoopStartEnhancedHue attribute with the value of the field. If this eld. - field is set to 0, the device SHALL ignore the Start Hue fi sub 5 . 2 . 2 . 3 . 1 8 . 2 A c t i o n F i e l d The Action field is 8 bits in length and specifies the action to take for the color loop if the Update Action field is set to 1. This field SHALL be set to one of the non - reserved values listed sub - field of the Update Flags Table in . 23 . 5 . Values of the Action Field of the Color Loop Set Command 23 . 5 Table ue Val Description 0x00 De - activate the color loop. 0x01 Activate the color loop from the value in the ColorLoop StartEnhancedHue field. 0x02 Activate the color loop from the value of the EnhancedCurrentHue attribute. 5 . 2 . 2 . 3 . 1 8 . 3 D i r e c t i o n F i e l d The Direction field is 8 bits in length and specifies the direction for the color loop if the Update Direction ags field is set to 1. This field SHALL be set to one of the non - reserved values listed in field of the Update Fl Table 5 . 24 . Table 5 . 24 . Values of the Direction Field of the Color Loop Set Command lue Direction Field Va Description 0x00 Decrement the hue in the color loop. 0x01 Increment the hue in the color loop. 5 . 2 . 2 . 3 . 1 8 . 4 T i m e F i e l d The Time field is 16 bits in length and specifies the number of seconds over which to perform a full color loop he Update Time field of the Update Flags field is set to 1. if t S t a r t H u e F i e l d 5 . 2 . 2 . 3 . 1 8 . 5 The Start Hue field is 16 bits in length and specifies the starting hue to use for the color loop if the Update Start Hue field of the Update Flags field is set to 1. 5 . 2 . 2 . 3 . 1 8 . 6 E f f e c t o n R e c e i p t On receipt of this command, the device SHALL first update its color loop attributes according to the value of the Update Flags field, as follows. If the Update Direction sub field is set to 1, the device SHALL set the - ColorLoopDirection attribute to t he value of the Direction field. If the Update Time sub - field is set to 1, the device SHALL set the ColorLoopTime attribute to the value of the Time field. If the Update Start Hue at SHALL tribute to the value of the Start ColorLoopStartEnhancedHue set the sub - field is set to 1, the device immediately react on updates of the SHALL Hue field. If the color loop is active (and stays active), the device ColorLoopDirection attributes. ColorLoopTime and 2016 25  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 5 -

348 Chapter 5 ZigBee Cluster Library Specification ZigBee Docu – 075123 Lighting ment If the Update Action sub field of the Update Flags field is s et to 1, the device SHALL adhere to the action - specified in the Action field, as follows. If the value of the Action field is set to 0x00 and the color loop is active , i.e. the ColorLoopActive attribute is set to 0x01 , the device SHALL de - active the color loop, set the ColorLoopActive attribute to 0x00 and set the EnhancedCurrentHue attribute to the value of the and the color loop is attribute. If the value of the Action field is set to 0x00 ColorLoopStoredEnhancedHue SHALL , the device ribute is set to 0x00 i.e. the ColorLoopActive att , ignore the action update inactive If the value of the action field is set to 0x01, the device SHALL set the component of the command. attribute to the value of the EnhancedCurrentHue ColorLoopStoredEnhancedHue attribute, set the ColorLoopActive attribute to 0x01 and activate the color loop, starting from the value of the set ColorLoopStartEnhancedHue attribute. If the value of the Action field is set to 0x02, the device SHALL the attribute, set the ColorLoopStoredEnhancedHue attribute to the va lue of the EnhancedCurrentHue attribute to 0x01 and activate the color loop, starting from the value of the ColorLoopActive attribute. EnhancedCurrentHue If the color loop is active, the device SHALL cycle over the complete range of valu es of the attribute over the time specified in EnhancedCurrentHue attribute in the direction of the ColorLoopDirection attribute. The level of increments/decrements is application specific. rLoopTime Colo the Sto p M o ve Ste p C omman d 5.2.2.3.19 The Stop Move Step command is provided to allow Move to and Step commands to be stopped. (Note this el Control cluster.) automatically provides symmetry to the Lev have no payload. SHALL The Stop Move Step command Note: the Stop Move Step command has no effect on an active color loop. 5 . 2 . 2 . 3 . 1 9 . 1 E f f e c t o n R e c e i p t Upon receipt of this command, any Move to, Move or Step command currently in process SHALL be t e r- SHALL minated. The values of the CurrentHue , EnhancedCurrentHue and CurrentSaturation attributes be left at their present value upon receipt of the Stop Move Step command, and the attribute RemainingTime SHALL be set to zero. 5.2.2.3.20 Mo ve Col or Te mp erature C omma nd The Move Color Temperature comm and allows the color temperature of a lamp to be moved at a specified rate. 5 19 . - The payload of this command SHALL be formatted as illustrated in Figure Figure . Format of the Move Color Temperature Command 19 - 5 2 2 2 1 Octets uint16 uint16 uint16 map8 ype Data T Color Temperature Color Temperature Move Mode Rate Mireds Maximum Mireds Minimum Field N ame 5 . 2 . 2 . 3 . 2 0 . 1 M o v e M o d e F i e l d This field is identical to the Move Mode field of the Move Hue command of the Color Control cluster (see ). 5.2.2.3.4 clause - sub 5 . 2 . 2 . 3 . 2 0 . 2 R a t e F i e l d - bits in length and specifies the rate of movement in steps per second. A step is a change The Rate field is 16 color temperature of a device by one unit. If the Rate field has a value of zero, the command has no in the be sent in response, with the status code set to I SHALL effect and a ZCL Default Response command N- VALID_FIELD. Copyright , The ZigBee Alliance. All rights reserved. 5 - 26 Page  2007 - 2016

349 ZigBee Cluster Library Specification Chapter 5 075123 Lighting – ZigBee Document C o l o r T e m p e r a t u r e M i n i m u m F i e l d M i r e d s 5 . 2 . 2 . 3 . 2 0 . 3 Mireds field is 16 - bits in length and specifies a lower bound on the The Color Temperature Minimum Mireds attribute (≡ an upper bound on the color temperature in kelvins) for the current emperature ColorT move operation such that: Mire ColorTempPhysicalMin ≤ C olor T emperature M inimum Mireds field ≤ ColorTemperature Mireds ds As such if the move operation takes the Mireds attribute towards the value of the Color ColorTemperature Mireds field it SHALL be clipped so t hat the above invariant is satisfied. If the Color Temperature Minimum SHALL Mireds be used as the Temperature Minimum field is set to 0x0000, ColorTempPhysicalMin Mireds lower bound for the Mireds attribute . emperature ColorT C o l o r T e m p e r a t u r e M a x i m u m M i r e d s F i e l d 5 . 2 . 2 . 3 . 2 0 . 4 Co lor Temperature Maximum Mireds field is 16 - bits in length and specifies an upper bound on the The ColorT emperature Mireds attribute (≡ a lower bound on the color temperature in kelvins) for the current move operation such that: ColorTemperature ≤ C olor T emperature M aximum Mireds field Mireds ≤ ColorTempPhysicalMax Mireds As such if the move operation takes the C olorTemperature Mireds attribute towards the value of the Color SHALL be clipped so that the above invariant is satisfied. If the Color Temperature Maximum Mireds field it field is set to 0x0000, Mireds Temperature Maximum e used as the b SHALL Mireds ColorTempPhysicalMax upper bound for the ColorT attribute . Mireds emperature E f f e c t o n R e c e i p t 5 . 2 . 2 . 3 . 2 0 . 5 ColorMode and EnhancedColorMode attributes to On receipt of this command, a device SHALL set both the rature in an up or down direction in a 0x02. The device SHALL then move from its current color tempe continuous fashion, as detailed in Table 5 . 25 . Table 5 . 25 . Actions on Receipt of the Move Color Temperature Command Move ode Action on R eceipt M Stop If moving, stop the operation , else ignore the command ( i.e., the command is accepted but has no effect). (≡ decrease the color temperature in Up Increase the C olor T emperature Mireds attribute If the emperature kelvins) at the rate given in the Rate field. attribute ColorT Mireds reaches the maximum Color Temperature allowed for the device (via either the Mireds field or the ColorTempPhysicalMax Maximum ireds attribute), the move M operation SHALL be stopped . emperature Down Decrease the C olor T Mireds attribute (≡ increase the color temperature in Rate kelvins) at the rate given in the emperature field. If the ColorT Mireds attribute reaches the minimum allowed for the device (via either the Color Temperature Mi n- imum Mireds field or the ColorTempPhysicalM in Mireds attribute), the move operation SHALL be stopped . 5.2.2.3.21 Step Col or Te mpe ratu re C omman d temperature of a lamp to be stepped with a specified command allows the colo r The Step Color Temperature step size. SHALL The payload of this command . 20 - 5 Figure be formatted as illustrated in 2016 27  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 5 -

350 5 Chapter ZigBee Cluster Library Specification ZigBee Docu – 075123 Lighting ment - 20 . Format of the Step Color Temperature Command Figure 5 2 2 2 2 1 Octets uint16 uint16 uint16 map8 uint16 Data Type Color Temperature Color Temperature Transition Step Mode Step Size Maximum Mireds Minimum Mireds Field Name Time S t e p M o d e F i e l d 5 . 2 . 2 . 3 . 2 1 . 1 ld of the Step Hue command of the Color Control cluster (see This field is identical to the Step Mode fie sub - 5.2.2.3.5 ). clause 5 . 2 . 2 . 3 . 2 1 . 2 S t e p S i z e F i e l d The Step Size field is 16 bits in length and specifies the change to be added to (or subtracted from) the curre nt - value of the device’s color temperature. 5 . 2 . 2 . 3 . 2 1 . 3 T r a n s i t i o n T i m e F i e l d The Transition Time field is 16 - bits in length and specifies, in units of 1/10ths of a second, the time that SHALL erature of a magnitude be taken to perform the step. A step is a change to the device’s color temp corresponding to the Step Size field. 5 . 2 . 2 . 3 . 2 1 . 4 M i r e d s F i e l d C o l o r T e m p e r a t u r e M i n i m u m The Color Temperature Minimum Mireds field is 16 - bits in length and specifies a lower bound on the attribute Color emperature Mireds T (≡ an upper bound on the color temperature in kelvins) for the current step operation such that: inimum M emperature T Mireds ColorTemperature ≤ field Mireds ColorTempPhysicalMin Mireds ≤ C olor As such if the step operation takes the ColorTemperature attribute towards the value of the Color Mireds Mireds field be clipped so that the above invariant is satisfied. If the Color SHALL Temperature Minimum it Mireds Temperature Minimum ColorTempPhysicalMin Mireds SHALL be used as the field is set to 0x0000, lower bound for the ColorT emperature Mireds attribute . 5 . 2 . 2 . 3 . 2 1 . 5 C o l o r T e m p e r a t u r e M a x i m u m M i r e d s F i e l d The Color Temperature Maximum Mireds field is 16 - bits in length and specifies an upper bound on the ColorT emperature Mireds attribute ( ≡ a lower bound on the color temperature in kelvins) for the current step operation such that: ≤ field Mireds ColorTempPhysicalMax ColorTemperature Mireds ≤ C olor T emperature M aximum Mireds As such if the step operation takes the lorTemperature Mireds attribute towards the value of the Color Co Temperature Maximum Mireds field it SHALL be clipped so that the above invariant is satisfied. If the Color Mireds Temperature Maximum Mireds field is set to 0x0000, ColorTempPhysicalMax SHALL be used as the attribute upper bound for the ColorT emperature Mireds . 5 . 2 . 2 . 3 . 2 1 . 6 E f f e c t o n R e c e i p t On receipt of this command, a device SHALL set both the ColorMode and EnhancedColorMode attributes to 0x02. The device then move from its current color temper ature in an up or down direction by one SHALL step, as detailed in 5 . 26 . Table Color Temperature Command . Actions on Receipt of the Step Table 5 . 26 Move Mode pt ecei R Action on Copyright , The ZigBee Alliance. All rights reserved. 5 - 28 Page  2007 - 2016

351 ZigBee Cluster Library Specification Chapter 5 075123 Lighting – ZigBee Document R ecei pt Move Mode Action on Increase the C olor T emperature Up attribute (≡ decrease the color te m perature in Mireds kelvins) . If the ColorT emperature by one step attribute reaches the maximum Mireds allowed for the device (via either the C olor T empe r ature M aximum Mireds field or the ute), ColorTempPhysicalMa attri b Mireds the step operation SHALL be stopped . x Down Decrease the C olor T emperature Mireds attribute (≡ increase the color te m perature in kelvins) by one step . If the ColorT emperature Mireds attribute reaches the minimum a emper T olor C (via either the field or the Mireds inimum M ture allowed f or the device ColorTempPhysicalM Mireds attribute), the step operation SHALL be stopped . in 5.2.2.4 Commands Generated The server generates no cluster specific commands 5.2.2.5 Scene Ta ble Extensions If the Scenes server cluster (see 3.7) is implemented, the following extension fields SHALL be added to the i.e., Scenes table in the given order , the attribute listed as 1 is added first : 1. CurrentX 2. CurrentY EnhancedCurrentHue 3. ntSaturation Curre 4. ColorLoopActive 5. ColorLoopDirection 6. 7. ColorLoopTime and XY, color temperature, if supported, is Since there is a direct relation between ColorTemperature Mireds stored as XY in the scenes table. ported by the device (according to the ColorCapabilities attri b- Attributes in the scene table that are not sup ute) SHALL be present but ignored. 5.2.2.6 Attribute Reporting This cluster SHALL support attribute reporting using the Report Attributes command and according to the rval and reportable change settings described in the Chapter 2, minimum and maximum reporting inte Foundation. The following attributes SHALL be reportable: CurrentY CurrentX, Mireds (if implemented), ColorTemperature CurrentSaturation CurrentHue (if implemented), (if implemented) Client 5.2.3 The client has no specific dependencies, no specific attributes, and receives no cluster specific commands. 5.2.2.3 The client generates the cluster specific commands detailed in , as required by the application. 2016 29  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 5 -

352 5 Chapter ZigBee Cluster Library Specification Lighting ZigBee Docu 075123 – ment 5.3 Ball ast Configuration Cluster Overview 5.3.1 Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classification, identification, etc. for configuring a lighting ballast. This cluster is used 5.3.1.1 Revision H istory Rev Description attribute added 1 mandatory global ClusterRevision 5.3.1.2 Classification PICS Code Primary Transaction Hierarchy Role BALCFG Application Base Type 1 (client to server) Identifiers 5.3.1.3 Cluster Identifier Name Ballast Configuration 0x0301 5.3.2 erver S 5.3.2.1 Dependencies For the alarm functionality specified by this cluster to be operational, the Alarms server cluster SHALL be implemented on the same endpoint. Attributes 5.3.2.2 For convenience, the attributes defined in this specification are arranged into sets of related attributes; each b- set can contain up to 16 attributes. Attribute identifiers are encoded such that the most significant three ni y bles specify the attribute set and the least significant nibble specifies the attribute within the set. The currentl defined attribute sets are listed in Table . 27 . 5 27 . Ballast Configuration Attribute Sets . Table 5 Attribute Set Identifier Description 0x000 Ballast information 0x001 ings Ballast sett 0x002 Lamp information 0x003 Lamp settings Copyright , The ZigBee Alliance. All rights reserved. 5 - 30 Page  2007 - 2016

353 ZigBee Cluster Library Specification 5 Chapter ZigBee Document 075123 Lighting – 5.3.2.2.1 Ballast In for mati o n At t rib ute Se t The Ballast Information attribute set contains the attributes summarized in Table 5 . 28 . Table . 28 . Attributes of the Ballast Information Attribute Set 5 Id Name Range M/O Default Type Access 0x01 Read Only O 0x0000 PhysicalMinLevel uint8 0x01 – 0xfe PhysicalMaxLevel uint8 0x01 – 0x0001 0xfe Read Only 0xfe O Read M 0x0002 BallastStatus map8 0b 0000 00xx 0000 0000 Only 0b PhysicalMinLevel Attribute The PhysicalMinLevel attribute is 8 bits in length and specifies the minimum light level the ballast can f the achieve. This attribute SHALL be specified in the range 0x01 to 0xfe, and specifies the light output o ballast according to the dimming light curve (see ). 5.3.4 PhysicalMaxLevel Attribute attribute is 8 bits in length and specifies the maximum light level the ballast can The PhysicalMaxLevel achieve. This att ribute SHALL be specified in the range 0x01 to 0xfe, and specifies the light output of the ballast according to the dimming light curve (see ). 5.3.4 BallastStatus Attribute in length and specifies the activity status of the ballast functions. The attribute is 8 bits BallastStatus The . Where a function is active, the corresponding bit SHALL be set to 29 . 5 Table usage of the bits is specified in 1. Where a function is not active, the corre sponding bit SHALL be set to 0. Attribute 5 . Bit Usage of the BallastStatus 29 Table . Attribute Ballast Function Details Bit Number 0 = The ballast is fully operational 0 Non - operational 1 = The ballast is n ot fully operational 0 = All lamps are in their sockets 1 Lamp not in socket 1 = One or more lamp is not in its socket 5.3.2.2.2 Ballast Se t tin gs Att ribu te Se t The Ballast Settings attribute set contains the attributes summarized in Table 5 . 30 . Table 5 . 30 . Attributes of the Ballast Settings Attribute Set M/O Name Type Range Default Id c Ac 0x0010 uint8 0x01 – 0xfe MinLevel RW PhysicalMinLevel O 0x0011 MaxLevel uint8 0x01 – 0xfe RW PhysicalMa xLevel O 0x0012 PowerOnLevel uint8 0x00 – 0xfe RW PhysicalMaxLevel O 0x0013 O uint16 0x0000 RW 0xfffe – 0x0000 PowerOnFadeTime 2016 31  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 5 -

354 Chapter ZigBee Cluster Library Specification 5 ZigBee Docu – 075123 Lighting ment 0x0014 uint8 IntrinsicBallastFactor – 0xfe RW - O 0x00 0x0015 O 0xff RW MS* BallastFactorAdjustment uint8 0x64 – * Manufactu rer Specific MinLevel Attribute attribute is 8 bits in length and specifies the minimum light level the ballast is permitted to use. The MinLevel This attribute SHALL be specified in the range 0x01 to 0xfe, and specifies the light output of the ballast cording to the dimming light curve (see 5.3.4). ac PhysicalMinLevel The value of this attribute SHALL be both greater than or equal to and less than or equal to MaxLevel . If an attempt is made to set this attribute to a level where these conditions are not me t, a default response command SHALL be returned with status code set to INVALID_VALUE, and the level SHALL not be set. MaxLevel Attribute The attribute is 8 bits in length and specifies the maximum light level the ballast is permitted to MaxLevel s attribute SHALL be specified in the range 0x01 to 0xfe, and specifies the light output of the ballast use. Thi ). 5.3.4 according to the dimming light curve (see l to The value of this attribute SHALL be both less than or equa and greater than or equal to PhysicalMaxLevel MinLevel . If an attempt is made to set this attribute to a level where these conditions are not met, a default not response command SHALL be returned with status code set to INVALID_VALUE, and the level SHALL be set. PowerOnLevel Attribute The attribute is 8 bits in length and specifies the light level to which the ballast will go when PowerOnLevel power is applied (e.g., when mains power is re - established after a power failure). This attribute SHALL be se t to one of the values listed in Table 5 . 31 . PowerOnLevel Table . 31 . Values of the 5 Attribute Attribute Value Description 0x00 0xfe Set to this specific light level, according to t ). 5.3.4 he dimming light curve (see – Restore the light level being used prior to power failure. 0xff The value of this attribute SHALL be both less than or equal to PhysicalMaxLevel and greater than or equal to . If an attempt is made to set this attribute to a level where these conditions are not met, a default M inLevel response command SHALL be returned with status code set to INVALID_VALUE, and the level SHALL not be set. Attribute PowerOnFadeTime attribute is 16 bits in length and specifies the length of time, in tenths of a second, The PowerOnFad eTime that the ballast takes to move to the light level specified in PowerOnLevel when power is applied (e.g., when . established after a power failure) - mains power is re Attribute IntrinsicBallastFactor The IntrinsicBallastFactor attribute is 8 bits in length and specifies as a percentage the ballast factor of the ), prior to any adjustment. 5.3 ballast/lamp combination (see also xff indicates in invalid value. A value of 0 BallastFactorAdjustment Attribute Copyright , The ZigBee Alliance. All rights reserved. 5 - 32 Page  2007 - 2016

355 ZigBee Cluster Library Specification 5 Chapter 075123 Lighting – ZigBee Document BallastFactorAdjustment attribute is 8 bits in length and specifies the multiplication factor, as a pe The r- centage, to be applied to the configured light output of the lamps (see also Overview 5.3 ). A typical usage of this mechanism is to compensate for reduction in efficiency over the lifetime of a lamp. The light output is given by Actual light output = configured light ou tput x BallastFactorAdjustment / 100% The range for this attribute is manufacturer dependent. If an attempt is made to set this attribute to a level that A- cannot be supported, a default response command SHALL be returned with status code set to INV LID_VALU E, and the level SHALL not be set. The value 0xff indicates that ballast factor scaling is not in use. 5.3.2.2.3 Lamp I nf orma tio n At t ri bu te Set The lamp information attribute set contains the attributes summarized in Table 5 . 32 . 5 Table . Attributes of the Lamp Information Attribute Set 32 . Name Identifier Type Range M/O Default Access 0xfe 0x0020 O uint8 0x00 – Read Only - LampQuantity LampQuantity Attribute The LampQuantity attribute is 8 bit s in length and specifies the number of lamps connected to this ballast. ( Note 1: this number does not take into account whether lamps are actually in their sockets or not). 5.3.2.2.4 Lamp Se tt ings At t ribu te Se t 33 . 5 is greater Table LampQuantity . If The Lamp Settings attribute set contains the attribut es summarized in than one, each of these attributes is taken to apply to the lamps as a set. For example, all lamps are taken to be LampBurnHours. with the same LampType of the same . 5 Table . Attributes of the Lamp Settings Attribute Set 33 Id Type Range Name M/O Default c Ac 0x0030 LampType string - RW empty string O 0x0031 LampManufacturer string - RW empty string O RW 0xffffff 0xfffffe – 0x000000 O 0x0032 LampRatedHours uint24 LampBurnHours uint24 0x000000 – 0x0033 0xfffffe RW 0x000000 O O 0000 000x 0x0034 LampAlarmMode map8 0000 0000 0b 0b RW 0xffffff 0x0035 LampBurnHoursTripPoint uint24 RW 0x000000 – 0xfffffe O Attribute LampType attribute is a character string of up to 16 bytes in length. It specifies the type of lamps (i ype LampT n- The cluding their wattage) connected to the ballast. Attribute LampManufacturer attribute is a character string of up to 16 bytes in length LampManufacturer The . It specifies the name of the manufacturer of the currently connected lamps. 2016 33  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 5 -

356 Chapter ZigBee Cluster Library Specification 5 ment 075123 ZigBee Docu Lighting – LampRatedHours Attribute The LampRatedHours attribute is 24 bits in length and specifies the number of hours of use the lamps are rated for by the manufacturer. ffff indicates an invalid or unknown time. A value of 0xff Attribute LampBurnHours The attribute is 24 bits in length and specifies the length of time, in hours, the currently LampBurnHours connected lamps have been operated, cumulative since the last re - lamping. Burn ho urs SHALL not be a c- cumulated if the lamps are off. This attribute SHOULD be reset to zero (e.g., remotely) when the lamp(s) are changed. If partially used lamps are connected, LampBurnHours SHOULD be updated to reflect the burn hours of the lamps. A value of 0xffffff indicates an invalid or unknown time. LampAlarmMode Attribute The LampsAlarmMode attribute is 8 bits in length and specifies which attributes MAY cause an alarm not i- . A ‘1’ in each bit position causes its associated attribute to be . 34 fication to be generated, as listed in Table 5 Note: able to generate an alarm. ( see Alarms cluster 3.11). – All alarms are also logged in the alarm table ode 5 . 34 . Values of the MainsAlarmM Table Attribute Attribute Bit Number Attribute 0 LampBurnHours LampBurnHoursTripPoint Attribute is 24 bits in length and specifies the number of hours the The LampBurnHoursTripPoint attribute MAY LampBurnHours attribute reach before an alarm is generated. be omitted (see If the Alarms cluster is not present on the same device this attribute is not used and thus MAY ). 5.3.2.1 be 0x01. SHALL The Alarm Code field included in the generated alarm If this attribute tak his alarm SHALL not be generated. es the value 0xffffff then t 5.3.2.3 Commands Received No cluster specific commands are received by the server. Commands Generated 5.3.2.4 The server generates no cluster specific commands. Client 5.3.3 pecific commands are received by the client. No cluster specific The client has no attributes. No cluster s commands are generated by the client. The Dimming Light Curve 5.3.4 The dimming curve is recommended to be logarithmic, as defined by the following equation: Copyright , The ZigBee Alliance. All rights reserved. 5 - 34 Page  2007 - 2016

357 ZigBee Cluster Library Specification 5 Chapter – 075123 Lighting ZigBee Document tput of the ballast %Light is the percent light ou Where: bit integer between 1 (0.1% light output) and 254 (100% output). - Level is an 8 the exact meaning of this value depends on the specific attribute or command. 255 is reserved - with the The light output is determined by this curve together Note: and IntrinsicBallastFactor Attributes. BallastFactorAdjustment 2016  2007 - Copyright 35 - 5 Page , The ZigBee Alliance. All rights reserved.

358

359 ZigBee Cluster Library Specification 6 Chapter – 075123 HVAC ZigBee Document CHAPTER 6 HVAC The ZigBee Cluster Library is made of individual chapters such as this one. See Document Control in the ZigBee Cluster Library for a list of all chapters and documents . Referenc es between chapters are made using to external section within that chapter. References - is the sub Y is the chapter and a X.Y notation where X ] notation. documents are contained in Chapter 1 and are made using [ Rn 6.1 General Description 6.1.1 Introduction The cluste rs specified in this document are for use typically in ZigBee HVAC applications, but MAY be used in any application domain. Terms 6.1.2 pipe HVAC fan coil system, heated and chilled water each have their own supply and return - In a 4 pipes: - 4 pipes, while in a 2 pipes system, heating and - pipe system they share the same supply and return. With a 4 cooling can take place at the same time in different locations of a building. With a 2 pipes system, only - heating or cooling can take place in the whole building. Precoo ling: Cooling a building in the early (cooler) part of the day, so that the thermal mass of the building decreases cooling needs in the later (hotter) part of the day. Cluster List 6.1.3 This section lists the clusters specified in this document, and gives examp les of typical usage for the purpose of clarification. The clusters defined in this document are listed in 6 - 1 : Table 1 - 6 . Clusters Specified in the HVAC Functional Domain Table Description uster Name Cl ID 0x0200 Pump Configuration and Control An interface for configuring and controlling pumps. n- An interface for configuring and controlling the functio Thermostat 0x0201 ality of a thermostat An interface for control ling a fan in a heating / cooling Fan Control 0x0202 system 0x0203 An interface for controlling dehumidification Dehumidification Control r- An interface for configuring the user interface of a the n- Thermostat User Interface Co 0x0204 figuration mostat (which MAY be remote fro m the thermostat) 2016 1  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 6 -

360 Chapter 6 ZigBee Cluster Library Specification ZigBee Docum – 075123 HVAC ent 6 - 1 . Typical Usage of Pump Configuration and Control Cluster Figure Figure 6 - 2 . Example Usage of the Thermostat and Related Clusters Copyright 2016 - 2007  , The ZigBee Alliance. All rights reserved. 2 - 6 Page

361 Chapter ZigBee Cluster Library Specification 6 075123 – ZigBee Document HVAC 6.2 Pu mp Configuration and Control 6.2.1 Overview Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classification, identification, etc. ol of pump devices, The Pump Configuration and Control cluster provides an interface for the setup and contr and the automatic reporting of pump status information. Note that control of pump speed is not included – speed is controlled by the On/Off and Level Control clusters. 6.2.1.1 Revision History Rev Description attribute 1 mandatory global ClusterRevision added 6.2.1.2 Classification Hierarchy PICS Code Primary Transaction Role Type 2 (server to client) P C C Base Application 6.2.1.3 Identifiers Cluster Identifier Name Pump Configuration and Control 0x0200 Server 6.2.2 6.2.2.1 Dependencies 8 Where external pressure, flow, an Table 6 - d temperature measurements are processed by this cluster (see ), these are provided by a Pressure Measurement cluster (4.5), a Flow Measurement cluster (4.6), and a Te m- perature Measurement client cluster (4.4), respective ly. These 3 client clusters are used for connection to a remote sensor device. The pump is able to use the sensor measurement provided by a remote sensor for regulation of the pump speed. m- be operational, the Alarms server cluster (3.11) SHALL be i 9 , to For the alarms, described in - Table 6 plemented on the same endpoint. Note that control of the pump setpoint is not included in this cluster – the On/Off and Level Control clusters Figure 6 sed by a pump device to turn it on and off and control its setpoint. Note that the (see ) MAY be u 1 - Pump Configuration and Control Cluster MAY override on/off/setpoint settings for specific operation modes for detailed description of the operation and control of the pump.). (See section 6.2.2.2.3.1 6.2.2.2 Attributes For convenience, the attributes defined in this specification are arranged into sets of related attributes; each b- that the most significant three ni set can contain up to 16 attributes. Attribute identifiers are encoded such bles specify the attribute set and the least significant nibble specifies the attribute within the set. The currently defined attribute sets are listed in . 2 - 6 Table 2016 3  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 6 -

362 Chapter ZigBee Cluster Library Specification 6 ZigBee Docum ent 075123 HVAC – - . Pump Configuration Attribute Sets 6 Table 2 Description Attribute Set Identifier Pump Information 0x000 Pump Dynamic Information 0x001 Pump Settings 0x002 6.2.2.2.1 Pump I nf orma ti on At tri bu te Se t The pump information attribute set contains the attributes summarized in Table 6 - 3 : 6 3 . Attributes of the Pump Information Attribute Set Table - Name Type Id Range Access Def M/O 0x0000 MaxPressure int16 0x8001 - 0x7fff R - M 0xfffe 0x000 MaxSpeed uint16 0x0000 – R - M 1 0x0002 MaxFlow uint16 0x0000 – 0xfffe R - M 0x0003 int16 0x8001 - 0x7fff MinConstPressure R - O MaxConstPressure int16 0x8001 - 0x7fff R - O 0x0004 - 0x8001 int16 O - R 0x7fff 0x0005 MinCompPressure 0x0006 sure int16 0x8001 - 0x7fff MaxCompPres R - O MinConstSpeed uint16 0x0000 – 0xfffe R - O 0x0007 0x0008 MaxConstSpeed uint16 0x0000 – 0xfffe R - O 0x0009 MinConstFlow uint16 0x0000 – 0xfffe R - O 0x000a 0xfffe 0x0000 O - R – MaxConstFlow uint16 – MinConstTemp in t16 0x954d 0x000b 0x7fff R - O 0x954d - O 0x000c MaxConstTemp int16 – R 0x7fff 6 . 2 . 2 . 2 . 1 . 1 Ma x P r e s s u r e At t r i b u t e attribute specifies the maximum pressure the pump can achieve. It is a physical limit, and The MaxPressure does not apply to any specific control mode or oper ation mode. This attribute is read only, and can only be set by the manufacturer. If the value is not available, this attribute will display the invalid value. - Valid range is 3,276.7 kPa to 3,276.7 kPa (steps of 0.1 kPa). ndicates that this value is invalid. 3,276.8 kPa (0x8000) i - The value 6 . 2 . 2 . 2 . 1 . 2 At t r i b u t e Ma x S p e e d attribute specifies the maximum speed the pump can achieve. It is a physical limit, and does MaxSpeed The not apply to any specific control mode or operation mode. only be set by the manufacturer. If the value is not available, this attribute This attribute is read only, and can will display the invalid value. Copyright , The ZigBee Alliance. All rights reserved. 6 - 4 Page  2007 - 2016

363 ZigBee Cluster Library Specification 6 Chapter ZigBee Document 075123 HVAC – Valid range is 0 to 65,534 RPM (steps of 1 RPM). The value 65,535 RPM (0xffff) indicates that this value is invalid. At t r i b u t e 6 . 2 . 2 . 2 . 1 . 3 Ma x F l o w The ow MaxFl attribute specifies the maximum flow the pump can achieve. It is a physical limit, and does not apply to any specific control mode or operation mode. This attribute is read only, and can only be set by the manufacturer. If the value is not available, th is attribute will display the invalid value. 3 3 3 Valid range is 0 m /h (steps of 0.1 m /h to 6,553.4 m /h). 3 The value 6,553.5 m /h (0xffff) indicates that this value is invalid. At t r i b u t e Mi n C o n s t P r e s s u r e 6 . 2 . 2 . 2 . 1 . 4 attribute specifies the minimum pr The MinConstPressure essure the pump can achieve when it is running attribute of the Pump settings attribute set is set and working in control mode constant pressure ( ControlMode to Constant pressure). This attribute is read only, and can only be set by the manufacturer. If th e value is not available, this attribute will display the invalid value. 3,276.7 kPa to 3,276.7 kPa (steps of 0.1 kPa). – Valid range is 3,276.8 kPa (0x8000) indicates that this value is invalid. - The value Ma x C o n s t P r e s s u r e 6 . 2 . 2 . 2 . 1 . 5 A t t r i b u t e The at tribute specifies the maximum pressure the pump can achieve when it is working in MaxConstPressure control mode constant pressure ( ControlMode attribute of the Pump settings attribute set is set to Constant pressure). This attribute is read only, and can only be set by the manufacturer. If the value is not available, this attribute will display the invalid value. Valid range is – 3,276.7 kPa to 3,276.7 kPa (steps of 0.1 kPa). The value - 3,276.8 kPa (0x8000) indicates that this value is invalid. Mi n C o m p P r e s s u r e At t r i b u t e 6 . 2 . 2 . 2 . 1 . 6 attribute specifies the minimum compensated pressure the pump can achieve when it MinCompPressure The attribute of the Pump settings ControlMode is running and working in control mode Proportional pressure ( attribute set is set to Proportional pressure). This attribute is read only, and can only be set by the manufacturer. If the value is not available, this attribute will display the invalid value. Valid range is – 3,276.7 kPa to 3,276.7 kPa (steps of 0.1 kPa). s value is invalid. 3,276.8 kPa (0x8000) indicates that thi - The value Ma x C o m p P r e s s u r e 6 . 2 . 2 . 2 . 1 . 7 At t r i b u t e The attribute specifies the maximum compensated pressure the pump can achieve when MaxCompPressure ControlMode it is working in control mode Proportional pressure ( attribute of the Pump settings attribute set i s set to Proportional pressure). This attribute is read only, and can only be set by the manufacturer. If the value is not available, this attribute will display the invalid value. 3,276.7 kPa to 3,276.7 kPa (steps of 0.1 kPa). – Valid range is ,276.8 kPa (0x8000) indicates that this value is invalid. 3 - The value 2016 5  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 6 -

364 Chapter 6 ZigBee Cluster Library Specification ent – 075123 HVAC ZigBee Docum At t r i b u t e Mi n C o n s t S p e e d 6 . 2 . 2 . 2 . 1 . 8 attribute specifies the minimum speed the pump can achieve when it is running and The MinConstSpeed working in control mode Constant speed ( ControlMode attribute of the Pump settings attribute set is set to Constant speed). This attribute is read only, and can only be set by the manufacturer. If the value is not available, this attribute will display the invalid value. Valid range is 0 to 65,534 RPM (steps of 1 RPM). The value 65,535 RPM (0xffff) indicates that this value is invalid. 6 . 2 . 2 . 2 . 1 . 9 Ma x C o n s t S p e e d At t r i b u t e MaxConstSpeed The attribute specifies the maximum speed the pump can achieve when it is working in control mode Constant speed ( tribute set is set to Constant attribute of the Pump settings at ControlMode speed). This attribute is read only, and can only be set by the manufacturer. If the value is not available, this attribute will display the invalid value. Valid range is 0 to 65,534 RPM (steps of 1 RPM). The value 65,535 RPM (0xffff) indicates that this value is invalid. 6 . 2 . 2 . 2 . 1 . 1 0 At t r i b u t e Mi n C o n s t F l o w MinConstFlow The attribute specifies the minimum flow the pump can achieve when it is running and ControlMode bute set is set to attribute of the Pump settings attri working in control mode Constant flow ( Constant flow). This attribute is read only, and can only be set by the manufacturer. If the value is not available, this attribute will display the invalid value. 3 3 3 /h to 6,553.4 m /h (steps of 0.1 m /h). Valid range is 0 m 3 The value 6,55 3.5 m /h (0xffff) indicates that this value is invalid. At t r i b u t e Ma x C o n s t F l o w 6 . 2 . 2 . 2 . 1 . 1 1 attribute specifies the maximum flow the pump can achieve when it is running and The MaxConstFlow gs attribute set is set to attribute of the Pump settin working in control mode Constant flow ( ControlMode Constant flow). This attribute is read only, and can only be set by the manufacturer. If the value is not available, this attribute will display the invalid value. 3 3 3 /h to 6,553.4 m /h (steps of 0.1 m Valid range is 0 m /h). 3 lue 6,553.5 m The va /h (0xffff) indicates that this value is invalid. 6 . 2 . 2 . 2 . 1 . 1 2 Mi n C o n s t T e m p At t r i b u t e The MinConstTemp attribute specifies the minimum temperature the pump can maintain in the system when Con attribute of the Pump settings trolMode it is running and working in control mode Constant temperature ( attribute set is set to Constant temperature). This attribute is read only, and can only be set by the manufacturer. If the value is not available, this attribute will display the invalid value. – C (steps of 0.01  C).  Valid range is C to 327.67 273.1 5  C (0x8000) indicates that this value is invalid. The value  327.68 - 6 . 2 . 2 . 2 . 1 . 1 3 At t r i b u t e Ma x C o n s t T e m p The attribute specifies the maximum temperature the pump can maintain in the system when MaxConstTemp ControlMode in control mode Constant temperature ( it is running and working attribute of the Pump settings attribute set is set to Constant temperature). Copyright , The ZigBee Alliance. All rights reserved. 6 - 6 Page  2007 - 2016

365 ZigBee Cluster Library Specification 6 Chapter – HVAC ZigBee Document 075123 This attribute is read only, and can only be set by the manufacturer. If the value is not available, this attribute SHALL be greater than or equal to MinConstTemp the invalid value. will display MaxConstTemp  C (steps of 0.01  273.15  C). Valid range is C to 327.67 –  C (0x8000) indicates that this value is invalid. 327.68 The value - Pump D ynam ic In f orma tion At t rib ute Set 6.2.2.2.2 6 The pump dynamic information attribute set contains the attributes summarized in 4 : Table - - . Attributes of the Pump Dynamic Information Attribute Set 6 4 Table Name Type Id Access Def M/O Range PumpStatus map16 - R P 0x0010 O - 0x0011 EffectiveOperationMode enum8 0x00 – 0xfe R - M enum8 0x00 – 0xfe iveControlMode R - M 0x0012 Effect Capacity int16 0x0000 - 0x7fff 0x0013 R P - M 0x0014 Speed uint16 0x0000 - R - O 0xfffe O 0 RW 0xfffffe - 0x000000 uint24 0x0015 LifetimeRunningHours 0xfffffe 0x0016 Power uint24 0x000000 - RW - O 0x0017 LifetimeEne rgyConsumed uint32 0x00000000 - 0xfffffffe R 0 O 6 . 2 . 2 . 2 . 2 . 1 P u m p S t a t u s At t r i b u t e The PumpStatus attribute specifies the activity status of the pump functions listed in Table 6 - 5 . Where a pump controller function is active, the corresponding bit SHALL be set to 1. Where a pump controller function is not active, the corresponding bit SHALL be set to 0. . Values of the Attribute 5 PumpStatus Table 6 - Bit Function Remarks 0 ted to the pump device is detected (Corresponds to a Alarm code in A fault rela Device fault - 13, see Table 6 - the range 6 ) 9 1 A fault related to the supply to the pump is detected (Corresponds to a Alarm Supply fault 6 code in the range 0 5 or 13, see Table - - 9 ) 2 Speed low Setpoint is too low to achieve Speed high Setpoint is too high to achieve 3 4 Local override The pump is overridden by local control 5 Running Pump is currently running A remote pressure sensor is used as the sensor for the regulation of the pump. 6 is Constant pressure, and the setpoint for the pump is EffectiveControlMode Remo te Pressure interpreted as a percentage of the range of the remote sensor MaxMe – MinMeasuredValue ]) asuredValue ([ A remote flow sensor is used as the sensor for the regulation of the pump. 7 n- is Constant flow, and the setpoint for the pump is i EffectiveControlModeI Remote Flow MinMeasuredVal terpreted as a percentage of the range of the remote sensor ([ ue 2016 7  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 6 -

366 6 Chapter ZigBee Cluster Library Specification – 075123 HVAC ent ZigBee Docum Bit Function Remarks ]) – MaxMeasuredValue A remote temperature sensor is used as the sensor for the regulation of the pump. 8 EffectiveControlModeI is Constant temperature, and setpoint is interpreted as a Remote Temper a- percentage of the range of the remote sensor ([ – MinMeasuredValue ture ]) MaxMeasuredValue 6 . 2 . 2 . 2 . 2 . 2 E f f e c t i v e O p e r a t i o n M o d e At t r i b u t e attribute specifies current effective operation mode of the pump. The value of The EffectiveOperationMode EffectiveOperationMode t- e of the Pump settings a OperationMode the attribut attribute is the same as the tribute set, except when it is overridden locally. See section 6.2.2.2.3.1 for a detailed description of the o p- eration and control of the pump. This attribute is read only. . 1 Valid range is defined by th e operation modes listed in Table 6 - At t r i b u t e 6 . 2 . 2 . 2 . 2 . 3 E f f e c t i v e C o n t r o l Mo d e attribute specifies the current effective control mode of the pump. EffectiveControlMode The EffectiveControlMode The urrently applies to the pump. It will have attribute contains the control mode that c the value of the attribute, unless a remote sensor is used as the sensor for regulation of the ControlMode pump. In this case, EffectiveControlMode will display Constant pressure, Constant flow or Constant te m- pera ture if the remote sensor is a pressure sensor, a flow sensor or a temperature sensor respectively, r e- attribute. gardless of the value of the ControlMode See section for detailed description of the operation and co ntrol of the pump. This attribute is read 6.2.2.2.3.1 only. Table 6 - 8 . Valid range is defined by the control modes listed in C a p a c i t y 6 . 2 . 2 . 2 . 2 . 4 At t r i b u t e The attribute specifies the actual capacity of the pump as a percentage of the effective Capacity maximum setpoint value. It is updated dynamically as the speed of the pump changes. This attribute is read only. If the value is not available (the measurement or estimation of the speed is done in . the pump), this attribute will contain the invalid value Valid range is 0 % to 163.835% (0.005 % granularity). Although the Capacity attribute is a signed value, values of capacity less than zero have no physical meaning. - 163.840 % (0x8000) indicates that this value is invalid. The value At t r i b u t e S p e e d 6 . 2 . 2 . 2 . 2 . 5 attribute specifies the actual speed of the pump measured in RPM. It is updated dynamically as the Th e Speed speed of the pump changes. This attribute is read only. If the value is not available (the measurement or estimation of the speed is done in the pump ), this attribute will contain the invalid value. Valid range is 0 to 65.534 RPM. The value 65.535 RPM (0xffff) indicates that this value is invalid. L i f e t i m e R u n n i n g H o u r s 6 . 2 . 2 . 2 . 2 . 6 At t r i b u t e LifetimeRunningHours s that the pump has been attribute specifies the accumulated number of hour The powered and the motor has been running. It is updated dynamically as it increases. It is preserved over power LifeTimeRunningHours cycles of the pump. if rises above maximum value it “rolls over” and starts at 0 (zero). Copyright , The ZigBee Alliance. All rights reserved. 6 - 8 Page  2007 - 2016

367 ZigBee Cluster Library Specification 6 Chapter 075123 HVAC – ZigBee Document ute is writeable, in order to allow setting to an appropriate value after maintenance. If the value is This attrib not available, this attribute will contain the invalid value. Valid range is 0 to 16,777,214 hrs. lue is unknown. The value 16,777,215 (0xffffff) indicates that this va 6 . 2 . 2 . 2 . 2 . 7 P o w e r At t r i b u t e Power Power The attribute specifies the actual power consumption of the pump in Watts. The value of the attribute is updated dynamically as the power consumption of the pump changes. This attribute is read only. If the value is not available (the measurement of power consumption is not done in the pump), this attribute will display the invalid value. Valid range is 0 to 16,777,214 Watts. The value 16,777,215 (0xffffff) indicates that this value is unknown. 6 . 2 . 2 . 2 . 2 . 8 L i f e t i m e E n e r g y C o n s u m e d At t r i b u t e LifetimeEnergyConsumed attribute specifies the accumulated energy consumption of the pump through The the entire lifetime of the pump in kWh. The value of the attribute is updated d y- LifetimeEnergyConsumed namically as the energy consumption of the pump increases. If LifetimeEnergyConsumed rises above maximum value it “rolls over” and starts at 0 (zero). This attribute is writeable, in order to allow setting to an appropriate value after maintenance. Valid range is 0 kWh to 4,294,967,294 kWh. The value 4,294,967,295 (0xffffffff) indicates that this value is unknown. 6.2.2.2.3 Pump Se t tings At t ribu te Se t Table : 6 - 6 The pump settings attribute set contains the attributes summarized in . Attributes of the Pump Settings Attribute Set 6 - 6 Table Identifier Name Type Range Access Def M/O 0x0020 OperationMode enum8 0x00 – 0xfe RW 0x0 M – O 0x0 0x0021 ControlMode enum8 0x00 0xfe RW - AlarmMask map16 0x0022 R - O 6 . 2 . 2 . 2 . 3 . 1 At t r i b u t e O p e r a t i o n Mo d e T he OperationMode attribute specifies the operation mode of the pump. This attribute SHALL have one of Values of the . the values listed in Table 6 - 7 , a result of the setting of the attributes OperationMode The actual operating mode of the pump is and the optional connection of a remote sensor. The operation and control is prioritized as ControlMode - 6 Figure shown in the scheme in : 3 2016 9  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 6 -

368 Chapter ZigBee Cluster Library Specification 6 ZigBee Docum ent – 075123 HVAC . Priority Scheme of Pump Operation and Control 3 Figure 6 - OperationMode attribute is Maximum, Minimum or Local, the OperationMode If the attribute decides how the pump is operated. OperationMode attribute is Normal and a remote sens or is connected to the pump, the type of the If the remote sensor decides the control mode of the pump. A connected remote pressure sensor will make the pump run in control mode Constant pressure and vice versa for flow and temperature type sensors. This is regar dless of the setting of the ControlMode attribute. If the OperationMode attribute is Normal and no remote sensor is connected, the control mode of the pump is attribute. decided by the ControlMode OperationMode p is running. The behavior of the pump at MAY be changed at any time, even when the pum - the point of changing the value of the OperationMode attribute is vendor specific. Attribute OperationMode - . Values of the 7 Table 6 Explanation Name Value 0 e pump is controlled by a setpoint, as defined by a connected remote sensor or by Th Normal Copyright , The ZigBee Alliance. All rights reserved. 6 - 10 Page  2007 - 2016

369 ZigBee Cluster Library Specification Chapter 6 075123 HVAC – ZigBee Document Explanation Value Name ControlMode attribute. (N.B. The setpoint is an internal variable which MAY be the controlled between 0% and 100%, e.g., by means of the Level Control cluster 3.10) This value sets the pump to run at the minimum possible speed it can without being 1 m Minimu stopped Maximum 2 This value sets the pump to run at its maximum possible speed This value sets the pump to run with the local settings of the pump, regardless o f 3 Local what these are 6 . 2 . 2 . 2 . 3 . 2 C o n t r o l Mo d e At t r i b u t e attribute specifies the control mode of the pump. This attribute SHALL have one of the The ControlMode . Values of the values listed in Table 6 - 8 ection 6.2.2.2.3.1 for detailed description of the operation and control of the pump. See s ControlMode MAY be changed at any time, even when the pump is running. The behavior of the pump at the point of changing is vendor - specific. Attribute Table 6 - 8 . Values of the ControlMode Value Explanation Name The pump is running at a constant speed. The setpoint is interpreted as a percentage of Constant 0 speed attribute MaxSpeed the The pump will regulate its speed to maintain a constant differential pressure over its flanges. The setpoint is interpreted as a percentage of the range of the sensor used for Constan t this control mode. In case of the internal pressure sensor, this will be the range d e- 1 pressure rived from the [ MinConstPressure - MaxConstPressure ] attributes. In case of a r e- – mote pressure sensor, this will be the range derived from the [ MinMeasuredValue MaxMeasuredValue ] attributes of the remote pressure sensor. The pump will regulate its speed to maintain a constant differential pressure over its flanges. The setpoint is interpreted as a percentage of the range derived of the Proportional 2 attributes. The internal setpoint will be - MinCompPressure [ MaxCompPressure ] essure pr low ered (compensated) dependant on the flow in the pump (lower flow => lower internal setpoint) The pump will regulate its speed to maintain a constant flow through the pump. The setpoint is interpreted as a percentage of the range of the sen sor used for this control mode. In case of the internal flow sensor, this will be the range derived from the Constant 3 - [ MinConstFlow flow MaxConstFlow ] attributes. In case of a remote flow sensor, this will MaxMeasuredV alue ] attributes be the range derived from the [ MinMeasuredValue – of the remote flow sensor. The pump will regulate its speed to maintain a constant temperature. The setpoint is interpreted as a percentage of the range of the sensor used for this control mode. In nal temperature sensor, this will be the range derived from the Constant case of the inter 5 temperature [ MinConstTemp - MaxConstTemp ] attributes. In case of a remote temperature sensor, ] – MaxMeasuredValue this will be the range derived from the [ MinMeasuredValue ture sensor. attributes of the remote tempera The operation of the pump is automatically optimized to provide the most suitable performance with respect to comfort and energy savings. This behavior is manufa c- Automatic 7 e level control ump can be stopped by setting the setpoint of th The p turer defined. 2016 11  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 6 -

370 Chapter ZigBee Cluster Library Specification 6 ZigBee Docum ent – 075123 HVAC Explanation Name Value cluster to 0 of by using the On/Off cluster. If the pump is started (at any setpoint), the speed of the pump is entirely determined by the pump. 6 . 2 . 2 . 2 . 3 . 3 A l a r m Ma s k At t r i b u t e Table is enabled. When the bit The AlarmMask 9 attribute specifies whether each of the alarms listed in - 6 number corresponding to the alarm code is set to 1, the alarm is enabled, else it is disabled. Bits not corr e- sponding to a code in the table (bits 14, 15) are reserved. When the Alarms cluster is im plemented on a device, and one of the alarm conditions included in this table occurs, an alarm notification is generated, with the alarm code field set as listed in the table. 6 Table 9 - . Alarm Codes Alarm Code Alarm Condition Supply voltage too low 0 1 Supply voltage too high Power missing phase 2 3 System pressure too low 4 System pressure too high 5 Dry running Motor temperature too high 6 7 Pump motor has fatal failure Electronic temperature too h igh 8 9 Pump blocked Sensor failure 10 11 Electronic non fatal failure 12 Electronic fatal failure 13 General fault Commands 6.2.2.3 The server does not receive or generate cluster specific commands. Attribute Reporting 6.2.2.4 porting using the Report Attributes command, according to the This cluster SHALL support attribute re minimum and maximum reporting interval, reportable change, and timeout period settings described in the ZCL Foundation Specification (see 2.4.7). The following attributes SHALL be reported: pStatus Pum Capacity Copyright , The ZigBee Alliance. All rights reserved. 6 - 12 Page  2007 - 2016

371 Chapter ZigBee Cluster Library Specification 6 075123 HVAC – ZigBee Document 6.2.3 Client The client supports no specific attributes. The client does not receive or generate cluster specific commands. Thermostat 6.3 Overview 6.3.1 Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classif ication, identification, etc. This cluster provides an interface to the functionality of a thermostat. 6.3.1.1 Revision History Rev Description 1 mandatory global ClusterRevision attribute added ; fixed some defaults; CCB 1823 , 1480 6.3.1.2 Classification Primary Transaction PICS Code Hierarchy Role Base Type 2 (server to client) TSTAT Application 6.3.1.3 Identifiers Cluster Name Identifier 0x0201 Thermostat 6.3.1.4 Thermostat Temperature Conversion Many Thermostats store internally or have the capability to display the temperature i n degree Fahrenheit luster standardizes temperature representation in degree Celsius format when format. The Thermostat c 6.6.2.5 . Manufacturers ) (see Sample code has been provided transferred over the air. use the SHOULD . conver sion algorithm provided to convert temperature from Fahrenheit to Celsius and vice versa e- Thermostat Schedule Feature Mandator y R 6.3.1.5 quirement StartOfWeek The Attribute is the indicator to show that the Weekly schedule extension is supported. If the Attribute, Weekly sc hedule extension feature is supported, it is mandatory to also support the StartOfWeek NumberOfDailyTransitions Attribute, Set Weekly Schedule Co m- Attribute, NumberOfWeeklyTransitions mand and Get Weekly Schedule Command. Server 6.3.2 6.3.2.1 Dependencies alarms to be generated by this cluster, the Alarms server cluster (see 3.11) SHALL be included on the For same endpoint. For remote temperature sensing, the Temperature Measurement client cluster (see 4.4) MAY be included on the same endpoint. For occupancy se nsing, the Occupancy Sensing client cluster (see 4.8) MAY be included on the same endpoint. 2016 13  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 6 -

372 Chapter ZigBee Cluster Library Specification 6 ZigBee Docum ent 075123 HVAC – Attributes 6.3.2.2 For convenience, the attributes defined in this specification are arranged into sets of related attributes; each b- set can contain up to 16 attributes. Att ribute identifiers are encoded such that the most significant three ni bles specify the attribute set and the least significant nibble specifies the attribute within the set. The currently defined attribute sets for Thermostat are listed in 6 - 10 . Table 6 - 10 . Currently Defined Thermostat Attribute Sets Table Attribute Set Identifier Description 0x000 Thermostat Information 0x001 Thermostat Settings – 0xfff Reserved for vendor s 0x400 pecific attributes 6.3.2.2.1 Therm osta t I nf or matio n At t ri bu te S et Table The Thermostat Information attribute set contains the attributes summarized in - 11 . 6 Table 6 - 11 . Attributes of the Therm ostat Information Attribute Set Acc Id Type Range Name Default M/O 0x0000 LocalTemperature int16 0x954d – 0x7fff R P - M O 0x0001 OutdoorTemperature int16 0x954d – 0x7fff R - 0x0002 Occupancy map8 0000000x R 00000000 O 0x7fff – 0x954d 16 O 0x02bc (7°C) R 0x0003 AbsMinHeatSetpointLimit int 0x0004 int16 0x954d – 0x7fff AbsMaxHeatSetpointLimit R 0x0bb8 (30°C) O 0x0005 AbsMinCoolSetpointLimit int16 0x954d – 0x7fff R 0x0640 (16°C) O 0x0006 AbsMaxCoolSetpointLimit int16 0x954d – 0x7fff R 0x0c80 (32°C) O - P R O 0x0 007 PICoolingDemand uint8 0x00 – 0x64 PIHeatingDemand uint8 0x00 – 0x0008 0x64 R P - O O 0x0009 HVACSystemTypeConfiguration map8 00000000 00xxxxxx RW L o c a l T e m p e r a t u r e At t r i b u t e 6 . 3 . 2 . 2 . 1 . 1 LocalTemperature represents the temperature in degrees Ce lsius, as me asured locally or remotely (over the network) as follows: LocalTemperature = 100 x temperature in degrees Celsius. in the range 0x954d LocalTemperature ng to a - 273.15°C <= temperature <= 327.67 ºC, correspondi Where to 0x7fff. format allows is 0.01 ºC. The maximum resolution this of 0x8000 indicates that the temperature measurement is invalid. LocalTemperature A 6 . 3 . 2 . 2 . 1 . 2 A t t r i b u t e O u t d o o r T e m p e r a t u r e OutdoorTemperature represents the outdoor temperature in degrees Celsius, as measured locally or remotely etwork). It is measured as described for (over the n LocalTemperature. Copyright , The ZigBee Alliance. All rights reserved. 6 - 14 Page  2007 - 2016

373 Chapter ZigBee Cluster Library Specification 6 075123 ZigBee Document HVAC – At t r i b u t e 6 . 3 . 2 . 2 . 1 . 3 O c c u p a n c y specifies whether the heated/cooled space is occupied or not, as measured locally or remotely Occupancy (over the network). If bit 0 = 1, the space is occupied, else it is unocc upied. All other bits are reserved. At t r i b u t e A b s Mi n H e a t S e t p o i n t L i m i t 6 . 3 . 2 . 2 . 1 . 4 The MinHeatSetpointLimit attribute specifies the absolute minimum level that the heating setpoint MAY be set to. This is a limitation imposed by the manufacturer. The value is calculat ed as described in the LocalTemperature attribute. A b s Ma x H e a t S e t p o i n t L i m i t At t r i b u t e 6 . 3 . 2 . 2 . 1 . 5 The MaxHeatSetpointLimit attribute specifies the absolute maximum level that the heating setpoint MAY be set to. This is a limitation imposed by the manufacturer. The va lue is calculated as described in the LocalTemperature attribute. 6 . 3 . 2 . 2 . 1 . 6 A b s Mi n C o o l S e t p o i n t L i m i t At t r i b u t e attribute specifies the absolute minimum level that the cooling setpoint MAY be The MinCoolSetpointLimit set to. This is a limitation imposed by the manufa cturer. The value is calculated as described in the LocalTemperature attribute. At t r i b u t e 6 . 3 . 2 . 2 . 1 . 7 A b s Ma x C o o l S e t p o i n t L i m i t attribute specifies the absolute maximum level that the cooling setpoint MAY be The MaxCoolSetpointLimit d by the manufacturer. The value is calculated as described in the set to. This is a limitation impose LocalTemperature attribute. P I C o o l i n g D e m a n d At t r i b u t e 6 . 3 . 2 . 2 . 1 . 8 attribute is 8 bits in length and specifies the level of cooling demanded by the PI PICoolingDemand The l loop in use by the thermostat (if any), in percent. This value is 0 when the (proportional integral) contro thermostat is in “off” or “heating” mode. This attribute is reported regularly and MAY be used to control a heating device. 6 . 3 . 2 . 2 . 1 . 9 P I H e a t i n g D e m a n d At t r i b u t e The PIHeatingDemand attribu te is 8 bits in length and specifies the level of heating demanded by the PI loop in percent. This value is 0 when the thermostat is in “off” or “cooling” mode. This attribute is reported regularly and MAY be used to control a cooling device. 6 . 3 . 2 . 2 . 1 . 1 0 H V A C S y s t e m T y p e C o n f i g u r a t i o n At t r i b u t e The HVACSystemTypeConfiguration attribute specifies the HVAC system type controlled by the thermostat. If the thermostat uses physical DIP switches to set these parameters, this information SHALL be available read - only from the DI P switches. If these parameters are set via software, there SHALL be read/write access in order to provide remote programming capability. The meanings of individual bits are detailed in Table stem configuration. 6 - 12 . Each bit represents a type of sy Table - 6 . HVAC System Type Configuration Values 12 Description Bit Number – 1 0 Cooling System Stage 00 – Cool Stage 1 01 Cool Stage 2 – 10 – Cool Stage 3 11 – Reserved – 2 3 m Stage Heating Syste 00 Heat Stage 1 – Heat Stage 2 – 01 Heat Stage 3 – 10 2016 15  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 6 -

374 Chapter ZigBee Cluster Library Specification 6 ent 075123 ZigBee Docum HVAC – Description Bit Number – Reserved 11 4 Heating System Type 0 – Conventional 1 – Heat Pump 5 Heating Fuel Source – Electric / B 0 – Gas / O 1 6.3.2.2.2 Therm osta t Se tti n gs At t rib ute Se t The Thermostat settings attribute set c Table 6 - 13 : ontains the attributes summarized in Table 6 - 13 . Attributes of the Thermostat Settings Attribute Set Default Access Range M/O Id Name Type 0x00 LocalTemperatureCalibra tion int8 0xE7 – 0x0010 0x19 RW O (0°C) 0x0a28 MinCoolSetpointLimit – OccupiedCoolingSetpoint int16 M* 0x0011 S RW MaxCoolSetpointLimit (26°C) 0x07d0 – MinHeatSetpointLimit OccupiedHeatingSetpoint int16 0x0012 M* S RW (20°C) MaxHeatSetpointLimit 0x0a28 – MinCoolSetpointLimit Un int16 0x0013 O occupiedCoolingSetpoint RW MaxCoolSetpointLimit (26°C) – 0x07d0 MinHeatSetpointLimit RW 0x0014 O UnoccupiedHeatingSetpoint int16 MaxHeatSetpointLimit (20°C) 0x02 bc 0x954d – 0x7fff MinHeatSetpointLimit RW int16 O 0x0015 (7°C) 0x0bb8 0x7fff MaxHeatSetpointLimit int16 0x954d – RW 0x0016 O (30°C) 0x0640 MinCoolSetpointLimit int16 0x954d – 0x7fff RW 0x0017 O 49 (16°C) 0x0c80 0x0018 MaxCoolSetpointLimit int16 0x954d – 0x7fff RW O 50 (32°C) 0x19 RW 0x19 O 0x0019 MinSetpointDeadBand int8 – 0x0a (2.5°C) RW map8 00000xxx 0x001a RemoteSensing 0 O ControlSequenceOfOperation enum8 0x00 – 0x05 RW 0x04 M 0x001b 0x001c SystemMode enum8 See Table 6 - 16 RW S 0x01 M 00000xxx 0 AlarmMask map8 x001d R 0 O – O R 0x04 0x00 0x001e ThermostatRunningMode enum8 0x00 49 CCB 1480 ZHA 1.2 50 CCB 1480 ZHA 1.2 Copyright , The ZigBee Alliance. All rights reserved. 6 - 16 Page  2007 - 2016

375 ZigBee Cluster Library Specification 6 Chapter 075123 HVAC – ZigBee Document " For . "M*" designates that a server SHALL implement at least one of the attributes designated "M* * Note: ster server would only implement the example, a radiator valve implementing the Thermostat Clu OccupiedHeatingSetpoint attribute. Thermostats SHOULD implement both OccupiedCoolingSetpoint and OccupiedHeatingSetpoint attributes. The "M*" designation allows HVAC devices to implement the portions of Thermostat clust er germane to their operation. 6 . 3 . 2 . 2 . 2 . 1 L o c a l T e m p e r a t u r e C a l i b r a t i o n At t r i b u t e LocalTemperatureCalibration attribute specifies the offset that can be added/subtracted to the actual The – displayed room temperature, in steps of 0.1°C. The range of this offset is C to +2.5 °C). 2.5 ° O c c u p i e d C o o l i n g S e t p o i n t At t r i b u t e 6 . 3 . 2 . 2 . 2 . 2 The OccupiedCoolingSetpoint attribute is 16 bits in length and specifies the cooling mode setpoint when the and room is occupied. It SHALL be set to a value in the range defined by the MinCoolSetpointLimit LocalTemperature attribute. attributes. The value is calculated as described in the MaxCoolSetpointLimit OccupiedHeatingSetpoint attribute SHALL always be below the value specified in the OccupiedCooling The Setpoint . If an at by at least SetpointDeadband tempt is made to set it such that this condition is violated, a default response command with the status code INVALID_VALUE (see 2.5.3) SHALL be returned. This SHALL apply to all attempts to set values of attributes which violate similar conditions. If it is unknown if the room is occupied or not, this attribute SHALL be used as the cooling mode setpoint. O c c u p i e d H e a t i n g S e t p o i n t At t r i b u t e 6 . 3 . 2 . 2 . 2 . 3 attribute is 16 bits in length and specifies the heating mode setpoint when the OccupiedHeatingSetpoint The and MinHeatSetpointLimit pied. It SHALL be set to a value in the range defined by the room is occu MaxHeatSetpointLimit attributes. The value is calculated as described in the LocalTemperature attribute. The OccupiedCoolingSetpoint attribute SHALL always be above the v alue specified in the OccupiedHeatingSetpoint by at least SetpointDeadband . If it is unknown if the room is occupied or not, this attribute SHALL be used as the cooling mode setpoint. 6 . 3 . 2 . 2 . 2 . 4 U n o c c u p i e d C o o l i n g S e t p o i n t At t r i b u t e The UnoccupiedCoolingSetpoint attrib ute is 16 bits in length and specifies the cooling mode setpoint when the room is unoccupied. It SHALL be set to a value in the range defined by the MinCoolSetpointLimit and attributes. The value is calculated as described in the MaxCoolSetpointLimit attribute. The Temperature Local attribute SHALL always be below the value specified in the UnoccupiedHeatingSetpoint UnoccupiedCooling by at least . SetpointDeadband Setpoint If it is unknown if the room is occupied or not, this attribute SHALL not be used. 6 . 3 . 2 . 2 . 2 . 5 U n o c c u p i e d H e a t i n g S e t p o i n t At t r i b u t e attribute is 16 bits in length and specifies the heating mode setpoint when UnoccupiedHeatingSetpoint The the room is unoccupied. It SHALL be set to a value in the range defined by the and MinHeatSetpointLimit attributes. The value is calculated as described in the LocalTemperature MaxHeatSetpoin tLimit attribute. The UnoccupiedCoolingSetpoint attribute SHALL always be below the value specified in the UnoccupiedHeating . Setpoint by at least SetpointDeadband If it is unknown if the room is occupied or not, this attribute SHALL not be used. At t r i b u t e Mi n H e a t S e t p o i n t L i m i t 6 . 3 . 2 . 2 . 2 . 6 attribute specifies the minimum level that the heating setpoint MAY be set to. MinHeatSetpointLimit The ture attribute. It must be greater than or equal to The value is calculated as described in the LocalTempera If this attribute is not present, it SHALL be taken as equal to AbsMinHeatSetpointLimit. AbsMinHeatSetpointLimit. 2016 17  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 6 -

376 Chapter ZigBee Cluster Library Specification 6 ent ZigBee Docum – HVAC 075123 This attribute, and the following three attributes, allow the user to define setpoint limi ts more constrictive than the manufacturer imposed ones. Limiting users (e.g., in a commercial building) to such setpoint limits can help conserve power. 6 . 3 . 2 . 2 . 2 . 7 Ma x H e a t S e t p o i n t L i m i t At t r i b u t e The MaxHeatSetpointLimit attribute specifies the maximum level that the heating setpoint MAY be set to. The value is calculated as described in the LocalTemperature attribute. It must be less than or equal to AbsMaxHeatSetpointLimit. If this attribute is not present, it SHALL be taken as equal to AbsMaxHeatSetpointLimit. Mi n C At t r i b u t e o o l S e t p o i n t L i m i t 6 . 3 . 2 . 2 . 2 . 8 The attribute specifies the minimum level that the cooling setpoint MAY be set to. MinCoolSetpointLimit The value is calculated as described in the LocalTemperature attribute. It must be greater than or equal to AbsMinCoolSetpoi ntLimit. If this attribute is not present, it SHALL be taken as equal to AbsMinCoolSetpointLimit. 6 . 3 . 2 . 2 . 2 . 9 Ma x C o o l S e t p o i n t L i m i t At t r i b u t e The MaxCoolSetpointLimit attribute specifies the maximum level that the cooling setpoint MAY be set to. The value is calculate d as described in the LocalTemperature attribute. It must be less than or equal to AbsMaxCoolSetpointLimit. If this attribute is not present, it SHALL be taken as equal to AbsMaxCoolSetpointLimit. 6 . 3 . 2 . 2 . 2 . 1 0 Mi n S e t p o i n t D e a d B a n d At t r i b u t e The MinSetpointDeadBand attri bute specifies the minimum difference between the Heat Setpoint and the Cool SetPoint, in steps of 0.1°C. Its range is 0x0a to 0x19 (1°C to 2.5°C). At t r i b u t e R e m o t e S e n s i n g 6 . 3 . 2 . 2 . 2 . 1 1 - m- perature, outdoor te bit bitmap that specifies whether the local tem The RemoteSensing attribute is an 8 perature and occupancy are being sensed by internal sensors or remote networked sensors. The meanings of 14 - 6 Table individual bits are detailed in . Attribute Bit Values Table 14 . R emoteSensing - 6 Description Bit Number 0 0 – local temperature sensed internally 1 – local temperature sensed remotely 1 0 – outdoor temperature sensed internally 1 – outdoor temperature sensed remotely 2 0 – y occupancy sensed internall 1 occupancy sensed remotely – 6 . 3 . 2 . 2 . 2 . 1 2 C o n t r o l S e q u e n c e O f O p e r a t i o n At t r i b u t e The ControlSequenceOfOperation attribute specifies the overall operating environment of the thermostat, and thus the possible system modes that the thermostat can operate in. It SHALL be set to one of the Table non - reserved values in - 6 15 . ( Note: it is not mandatory to support all values). Table 6 - 15 . ControlSequenceOfOperation Attribute Values SystemMode ible Values of Poss Description Value 0x00 Heat and Emergency are not possible Cooling Only Cooling With Reheat 0x01 Heat and Emergency are not possible Copyright , The ZigBee Alliance. All rights reserved. 6 - 18 Page  2007 - 2016

377 ZigBee Cluster Library Specification 6 Chapter 075123 HVAC – ZigBee Document Value Description Poss ible Values of SystemMode ) are not possible Heating Only Cool and precooling (see 6.1.2 0x02 0x03 Heating W ith Reheat Cool and precooling are not possible All modes are possible pipes (see 1.3.2) - Cooling and Heating 4 0x04 Cooling and Heating 4 - pipes with Reheat All modes are possible 0x05 6 . 3 . 2 . 2 . 2 . 1 3 S y s t e m Mo d e At t r i b u t e attribute specifies the current o The SystemMode perating mode of the thermostat, It SHALL be set to one of Note: . ( - It is not mandatory to support all 17 the non - reserved values in Table 6 - 16 , as limited by Table 6 values). Attribute Values SystemMode 16 . Table 6 - Attribute Value Description 0x00 Off Auto 0x01 0x03 Cool 0x04 Heat 0x05 Emergency heating 0x06 Precooling (see 6.1.2 ) 0x07 Fan only Dry 0x08 0x09 Sleep The int erpretation of the Heat, Cool and Auto values of SystemMode is shown in Table 6 - 17 . . Interpretation of 17 Values SystemMode Table 6 - T emperature Between Heat Setpoint and Temperature Above Temperature Below Cool Setpoint Heat Setpoint Attribute Values Cool Setpoint Temperature below target Temperature on target Temperature on target Heat Temperature on target Temperature on target Temperature above target Cool Auto Temperature be low target Temperature on target Temperature above target At t r i b u t e 6 . 3 . 2 . 2 . 2 . 1 4 A l a r m Ma s k Alarm Codes is enabled. - 6 Table attribute specifies whether each of the alarms listed in AlarmMask The 18 the bit number corresponding to the alarm code is set to 1, the alarm is enabled, else it is disabled. Bits When not corresponding to a code in the table are reserved. in this table When the Alarms cluster is implemented on a device, and one of the alarm conditions included occurs, an alarm notification is generated, with the alarm code field set as listed in the table. 2016 19  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 6 -

378 Chapter ZigBee Cluster Library Specification 6 ZigBee Docum ent 075123 HVAC – - . Alarm Codes 6 18 Table Alarm Condition Alarm Code Initialization failure. The device failed to complete initialization at power - up. 0 Hardware failure 1 2 - calibration failure Self 6 . 3 . 2 . 2 . 2 . 1 5 T h e r m o s t a t R u n n i n g M o d e At t r i b u t e Runn ing Mode represents the running mode of the thermostat. The thermostat running mode can Thermostat only be Off, Cool or Heat. This the thermostat’s attribute is intended to provide additional information when system mode is in auto mode. The attribute value is maintained to have the same value as the Mode System attribute. Table 6 . 19 The rmostat Running Mode Attribute Values Value Description Off 0x00 Cool 0x03 Heat 0x04 Therm osta t Sche d ule & HV AC Rela y At t ri bu te Set 6.3.2.2.3 6 - 20 . Thermostat Schedule & HVAC Relay Attribute Set Table M/ Name Type R ange Access Default Id O Schedule Attribute Set 0x0020 – 0x0028 0x06 – 0x00 enum8 O – R x0020 StartOfWeek ff x0021 uint8 0x00 – 0x NumberOfWeeklyTransitions R N/A O x0022 NumberOfDailyTransitions uint8 0x00 – 0x ff R N/A O x0023 TemperatureSetpointH old enum8 0x00 – 0x01 RW 0x00 O RW O ffff 0x x0024 TemperatureSetpointHoldDuration uint16 0x ffff 0 - 0x05a x0025 ThermostatProgrammingOperationMode map8 00xxxxxx RW 00000000 O HVAC Relay Attribute Set 0x0029 – 0x002F x0029 ThermostatRunningState map 16 R - O 6 . 3 . 2 . 2 . 3 . 1 S t a r t O f W e e k At t r i b u t e StartOfWeek represents the day of the week that this thermostat considers to be the start of week for weekly set point scheduling. The possible values are given in Table 6 - 21 : - 6 Table 21 . StartofWeek Enumeration Values Value Description Enumeration Field Sunday 0x00 Copyright , The ZigBee Alliance. All rights reserved. 6 - 20 Page  2007 - 2016

379 ZigBee Cluster Library Specification 6 Chapter ZigBee Document 075123 HVAC – Enumeration Field Value Description 0x01 Monday 0x02 Tuesday 0x03 Wednesday 0x04 Thursday 0x05 Friday Saturday 0x06 I attribute SHALL be supported. f the Weekly schedule extension is supported this This attribute MAY be able to be used as the base to determine if the device supports weekly scheduling by reading the attribute. Successful response means that the weekly scheduling is supported. r i b u t e 6 . 3 . 2 . 2 . 3 . 2 N u m b e r O f W e e k l y T r a n s i t i o n s At t NumberOfWeeklyTransitions attribute determines how many weekly schedule transitions the thermostat is capable of handling. 6 . 3 . 2 . 2 . 3 . 3 N u m b e r O f D a i l y T r a n s i t i o n s At t r i b u t e NumberOfDailyTransitions attribute determines how many daily schedule transitions the therm ostat is c a- pable of handling. T e m p e r a t u r e S e t p o i n t H o l d At t r i b u t e 6 . 3 . 2 . 2 . 3 . 4 TemperatureSetpointHold . If 22 - 6 Table , as shown in specifies the temperature hold status on the thermostat hold status is on, the thermostat maintain the temp erature set point for the current mode until a SHOULD system mode change. If hold status is off, the thermostat SHOULD follow the setpoint transitions specified it by its internal scheduling program. If the thermostat supports setpoint hold for a specific duration, also implement the TemperatureSetpointHoldDuration attribute. SHOULD Table 6 - 22 . TemperatureSetpointHold Attribute Values Enumeration Field Value Description 0x00 Setpoint Hold Off 0x01 Setpoint Hold On T e m p e r a t u r e S e t p o i n t H o l d D u r a t i o n At t r i b u t e 6 . 3 . 2 . 2 . 3 . 5 TemperatureSetpointHoldDuration sets the period in minutes for which a setpoint hold is active. Thermostats that support hold for a specified duration SHOULD implement this attribute. The valid range is from 0x0000 – 0x05A0 (1440 minutes within a day). A value of 0xFFFF indicates the field is unused. All other values are reserved. 6 . 3 . 2 . 2 . 3 . 6 T h e r m o s t a t P r o g r a m m i n g O p e r a t i o n Mo d e At t r i b u t e The Mode attribute determines the operational state of the the rmostat’s ThermostatProgrammingOperation programming. The thermostat SHALL modify its programming operation when this attribute is modified by a client and update this attribute when its programming operation is modified locally by a user. The the r- mostat MAY support more than one active ThermostatProgrammingOperationMode . For example, the thermostat MAY operate simultaneously in Schedule Programming Mode and Recovery Mode. If a the r- mostat supports Thermostat Programming Operation Mode attribute, it SHALL support attribute reporting be initiated changes to the SHALL for t his attribute. Any locally - ThermostatProgrammingOperationMode updated and reported to all clients configured to receive such reports. The meanings of individual bits are - 6 Table detailed in ch bit represents a type of operation. . Ea 23 2016 21  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 6 -

380 ZigBee Cluster Library Specification Chapter 6 ent 075123 ZigBee Docum HVAC – Values 6 - 23 . ThermostatProgrammingOperationMode Attribute Table Value Description 0 – Simple/setpoint mode. This mode means the thermostat setpoint is altered only by manual up/down changes at the thermostat or remotely, not by internal schedule programming. 0 1 – Schedule programming mode. This enables or disables any programmed weekly schedule co n- figurations. Note: rogramming configurations. It does not clear or delete previous weekly schedule p - Auto/recovery mode set to OFF 0 1 Auto/recovery mode set to ON – 1 – Economy/EnergyStar mode set to OFF 0 2 1 – Economy/EnergyStar mode set to ON 6 . 3 . 2 . 2 . 3 . 7 T h e r m o s t a t R u n n i n g S t a t e At t r i b u t e relay state of the heat, cool, and fan relays , whose values are ThermostatRunningState represents the current Table 6 - 24 . shown in Table 6 - 24 . HVAC Relay State Values Bit Number Description Heat State On 0 1 Cool State On 2 an State On F nd 3 Heat 2 Stage State On nd 4 Stage State On Cool 2 nd Fan 2 5 Stage State On rd 6 Stage Stage On Fan 3 6.3.2.2.4 Therm osta tSe tpo i nt Chan geTracki ng At tri bu te Se t Table 6 - 25 . Thermostat Setting Attribute Se t Id Name Type Range Access Default M/O SetpointChangeSource – O 0x00 Read 0 x0030 0xff enum8 0x00 – O x0031 SetpointChangeAmount int16 0x0000 0 0xffff Read 0x8000 O 0 x0032 SetpointChangeSourceTimestamp int32 Read 0x00000000 – 0x00000000 ) 0xfffffffe (UTC At t r i b u t e S e t p o i n t C h a n g e S o u r c e 6 . 3 . 2 . 2 . 4 . 1 or OccupiedCoolingSetpoint attribute specifies the source of the current active SetpointChangeSource The OccupiedHeatingSetpoint (i.e., who or what determined the current setpoint). Copyright , The ZigBee Alliance. All rights reserved. 6 - 22 Page  2007 - 2016

381 ZigBee Cluster Library Specification Chapter 6 075123 HVAC – ZigBee Document attribute enables SetpointChangeSource service providers to determine whether changes to setpoints were initiated due to occupant comfort, scheduled programming or some other source (e.g., electric utility or other MAY anges, this attribute clearly service provider). Because automation services initiate frequent setpoint ch differentiates the source of setpoint changes made at the thermostat. 6 - 26 . SetpointChangeSource Values Table Attribute Description SetpointChangeSource - initiat ed setpoint change via the thermostat 0x00 Manual, user Schedule/internal programming - initiated setpoint change 0x01 - initiated setpoint change (e.g., DRLC cluster command, Externally 0x02 attribute write) 6 . 3 . 2 . 2 . 4 . 2 S e t p o i n t C h a n g e Am o u n t At t r i b u t e The SetpointChangeAmount attribute specifies the delta between the current active OccupiedCoolingSetpoint or OccupiedHeatingSetpoint and the previous active setpoint. This attribute is meant to accompany the attribute; devices implementing SetpointChangeAmount so implement SetpointChangeSource SHOULD al SetpointChangeSource . 6 - 27 . SetpointChangeAmount Values Table Description SetpointChangeAmount Attribute The signed difference in 0.01 degrees Celsius between the previous temper a- 0xffff 0x0000 – ture setpoint and the new temperature setpoint. S e t p o i n t C h a n g e S o u r c e T i m e s t a m p At t r i b u t e 6 . 3 . 2 . 2 . 4 . 3 The SetpointChangeSourceTimestamp attribute specifies the time in UTC at which the SetpointChangeSourceAmount attribute change was recorded. 6.3.2.2.5 AC I nf orma tio n At trib ute Set Table - 28 . Attributes of the AC Information Attribute Set 6 Range Type Name M/O Default Access Id 0x0040 enum8 0x00 – 0x04 ACType RW 0x00 O ACCapacity uint16 0x0000 – O 0xffff RW 0x00 0x0041 - 0x0042 ACRef rigerantType enum8 0x00 0x03 RW 0x00 O RW 0x0043 ACCompressorType enum8 0x00 - 0x03 0x00 O RW 0xffffffff 0x0044 – O 0x00000000 0x00000000 ACErrorCode map32 ACLouverPosition enum8 0x00 – 0x05 RW 0x00 O 0x0045 ACCoilTemperature 0x0046 int16 0x954d – 0x7fff R -- O 0x00 RW 0xff – 0x00 0x0047 ACCapacityFormat enum8 O At t r i b u t e 6 . 3 . 2 . 2 . 5 . 1 A C T y p e Indicates the type of Mini Split ACType of Mini Split AC is defined depending on how Cooling and Heating condition is achieved by Mini Split AC. 2016 23  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 6 -

382 Chapter ZigBee Cluster Library Specification 6 ZigBee Docum – 075123 HVAC ent 6 - 29 . Table Enumeration ACType Enumeration Field Value Description 0x00 Reserved Cooling and Fixed Speed 0x01 0x02 Heat Pump and Fixed Speed 0x03 Cooling and Inverter 0x04 Heat Pump and Inverter 6 . 3 . 2 . 2 . 5 . 2 A C C a p a c i t y At t r i b u t e Indicates capacity of Mini Split AC in terms of the format defined by the ACCapacityFormat attribute A C R e f r i g e r a n t T y p e 6 . 3 . 2 . 2 . 5 . 3 A t t r i b u t e Indicates type of refrigerant used within the Mini Split AC. ACRefrigerantType . 30 - 6 Table tion Enumera Enumeration Field Value Description Reserved 0x00 R22 0x01 R410a 0x02 0x03 R407c A C C o m p r e s s o r T y p e A t t r i b u t e 6 . 3 . 2 . 2 . 5 . 4 This indicates type of Compressor used within the Mini Split AC. 31 . - 6 Enumeration ype ACCompressorT Table Description Enumeration Field Value 0x00 Reserved 0x01 T1, Max working ambient 43 ºC T2, Max working ambient 35 ºC 0x02 0x03 T3, Max working ambient 52 ºC 6 . 3 . 2 . 2 . 5 . 5 A C E r r o r C o d e At t r i b u t e This indicates the type of errors encountered within the M ini Split AC. Error values are reported with four bytes values. Each bit within the four bytes indicates the unique error. Table ACErrorCode - Values 6 . 32 Value Bit Compressor Failure or Refrigerant Leakage 0 Copyright , The ZigBee Alliance. All rights reserved. 6 - 24 Page  2007 - 2016

383 ZigBee Cluster Library Specification 6 Chapter ZigBee Document 075123 – HVAC Bit Value 1 Room Temperature Sensor Failure 2 Outdoor Temperature Sensor Failure Indoor Coil Temperature Sensor Failure 3 Fan Failure 4 A C L o u v e r P o s i t i o n At t r i b u t e 6 . 3 . 2 . 2 . 5 . 6 This indicates the position of Louver on the AC. Attribute values are listed in Table 6 - 33 . . ACLouverPosition Values 33 6 - Table Louver Position Byte Value Fully Closed 0x01 Fully Open 0x02 Quarter Open 0x03 0x04 Half Open 0x05 Three Quarters Open 6 . 3 . 2 . 2 . 5 . 7 A t t r i b u t e A C C o i l T e m p e r a t u r e ACCoilTemperature represents the temperature in degrees Celsius, as measured locally or remotely (over the network) as follows:  ACCoilTemperature = 100 x temperature in degrees Celsius. Where - 273.15°C <= temperature <= 327.67 ºC, corresponding to an ACCoi lTemperature in the range  0x954d to 0x7fff.  The maximum resolution this format allows is 0.01 ºC.  ACCoilTemperature of 0x8000 indicates that the temperature measurement is invalid. 6 . 3 . 2 . 2 . 5 . 8 A C C a p a c i t y F o r m a t At t r i b u t e ACCapacity This is the format for the attribute. . ACCapacity Enumeration 34 - 6 Table Description Enumeration Field Value 0x00 BTUh 6.3.2.3 Server Commands Received The command IDs for the Thermostat cluster are listed in Tabl e 6 - 35 : Tabl e 6 - 35 . Command IDs for the Thermostat Cluster Command Identifier Description Field Value M/O M Setpoint Raise/Lower 0x00 O Set Weekly Schedule 0x01 2016 25  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 6 -

384 Chapter ZigBee Cluster Library Specification 6 – HVAC 075123 ent ZigBee Docum Command Identifier Field Value Description M/O Get Weekly Schedule O 0x02 0x03 O Clear Weekly Schedule O Get Relay Status Log 0x04 Setpo in t Raise/ Lo w er Comman d 6.3.2.3.1 6 . 3 . 2 . 3 . 1 . 1 P a y l o a d F o r m a t 6 Figure 4 - Format of the The Setpoint Raise/Lower command payload SHALL be formatted as illustrated in . Setpoint Raise/Lower Command Payload 6 . Format of the Setpoint Raise/Lower Command Payload 4 - Figure 8 8 Bits enum8 int8 Data Type Amount Mode Field Name 6 . 3 . 2 . 3 . 1 . 2 M o d e F i e l d The mode field SHALL be set to one of the non 36 - 6 . It specifies which setpoint is values in reserved - Table to be configured. If it is set to auto, then both setpoints SHALL be adjusted. Table - 36 . Mode Field Values for Setpoint Raise/L ower Command 6 Mode Field Value Description 0x00 Heat (adjust Heat Setpoint) 0x01 Cool (adjust Cool Setpoint) 0x02 Both (adjust Heat Setpoint and Cool Setpoint) 6 . 3 . 2 . 3 . 1 . 3 A m o u n t F i e l d The amount field is a signed 8 - bit integer that specifies the amount the setpoi nt(s) are to be increased (or decreased) by, in steps of 0.1°C. 6 . 3 . 2 . 3 . 1 . 4 E f f e c t o n R e c e i p t The attributes for the indicated setpoint(s) SHALL be increased by the amount specified in the Amount field. Set W eekl y Sched ule C omman d 6.3.2.3.2 6 . 3 . 2 . 3 . 2 . 1 P a y l o a d F o r m a t and The set weekly schedu Figure 6 - 5 le command payload SHALL be formatted as shown in Figure 6 - 6 . 5 Figure 6 - Set Weekly Schedule Command Payload Format (1 of 2) . 1(Header) ) 1(Header) 1(Header 2 2/0 2/0 Octets Data int16 uint16 int16 map8 enum8 map8 Type Number of Trans Cool Set Heat Set Transition Mode for Day of Week for i- Field Copyright 6 - 26 , The ZigBee Alliance. All rights reserved. Page  2007 - 2016

385 ZigBee Cluster Library Specification 6 Chapter ZigBee Document 075123 – HVAC Sequence Sequence Time 1 Point 1 Point 1 tions for Sequence Name Set Weekly Schedule Command Payload Format (2 of 2) . 6 - 6 Figure 2 2/0 Variable 2/0 Octets int16 int16 uint16 -- Data Type Cool Set Point 10 Heat Set Point 10 -- Transition Time 10 Field Name The set weekly schedule command is used to updat n- e the thermostat weekly set point schedule from a ma SHOULD agement system. If the thermostat already has a weekly set point schedule programmed then it replace each daily set point set as it receives the updates from the management system. For example if the thermostat has 4 set points for every day of the week and is sent a Set Weekly Schedule command with one set point for Saturday then the thermostat remove all 4 set points for Saturday and replace those SHOULD ther days unchanged. If the schedule is larger than what fits in one with the updated set point but leave all o then be sent using multiple SHALL ZigBee frame or contains more than 10 transitions, the schedule Set Weekly Schedule Commands. Each Set Weekly Schedule Command has 3 header bytes – Numbe r of Transitions for Sequence, Day of Week for Sequence , and Mode for Sequence. The application SHALL decode the payload according to what has specified in the 3 header bytes. 6 . 3 . 2 . 3 . 2 . 2 N u m b e r o f T r a n s i t i o n s f o r S e q u e n c e The Number of Transitions for Sequence field indicates how many individual transitions to expect for this sequence of commands. If a device supports more than 10 transitions in its schedule they can send this by sending more than 1 “Set Weekly Schedule” command, each containing the separate informati on that the device needs to set. 6 . 3 . 2 . 3 . 2 . 3 D a y o f W e e k f o r S e q u e n c e This field represents the day of the week at which all the transitions within the payload of the command be associated to. This field is a bitmap and therefore the associated set point could SHOULD overlap onto multiple days (you could set one transition time for all “week days” or whatever combination of days the . displays the bitmap values 37 - Table implementation requests). 6 - Table 6 37 . Day Of Week for Sequence Values Description Bit Number Sunday 0 1 Monday Tuesday 2 Wednesday 3 Thursday 4 5 Friday Saturday 6 Away or Vacation 7 Each set point transition will begin with the day of week for this transition. There can be up to 10 transitions for each command. 2016 27  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 6 -

386 6 Chapter ZigBee Cluster Library Specification ZigBee Docum – 075123 HVAC ent M o d e f o r S e q u e n c e 6 . 3 . 2 . 3 . 2 . 4 This field determines how the application SHALL decode the Set Point Fields of each transition for the remaining of the command. This field is a bitmap and the values are presented in Table 6 - 38 . Table - 38 . Mode for Sequence Values 6 Bit Number Description 0 Heat Setpoint Field Present in Payload 1 Cool Setpoint Field Present in Payload Figure in and 7 - 6 If the Heat Bit is On and the Cool Bit is Off, the Command SHALL be represented as 6 8 . - Figure 6 - 7 . Set Heat Weekly Schedule Command Payload Format (1 of 2) Figure 1(Header) 1(Hea der) 2 1(Header) 2 Octets enum8 map8 uint16 int16 map8 Data Type 0x01 (Heat) i- Day of Week Heat Set Point 1 Number of Trans Transition Time 1 Field Name for Sequence tions for Sequence 8 . Set He at Weekly Schedule Command Payload Format (2 of 2) - 6 Figure 2 2 Variable Octets -- uint16 int16 Data Type -- Transition Time 10 Heat Set Point 10 Field Name If the Heat Bit is Off and the Cool Bit is On, the Command SHALL be represented as in Figure 6 - 9 and 6 Figure 10 . - 6 9 . Set Cool Weekly Schedule Command Payload Format (1 of 2) Figure - 1(Header) 1(Header) 2 2 1(Header) Octets enum8 uint16 t16 map8 map8 in Data Type Cool Set Point 1 Transition Time 1 Number of Trans i- 0x02 (Cool) Day of Week Field Name for Sequence tions for Sequence 6 Figure . Set Cool Weekly Schedule Command Payload Format (2 of 2) 10 - Variab le 2 2 Octets uint16 int16 -- Data Type Cool Set Point 10 -- Transition Time 10 Field Name Fi and 11 - 6 gure If both the Heat Bit and the Cool Bit are On, the Command SHALL be represented as in Figure . 12 - 6 Copyright , The ZigBee Alliance. All rights reserved. 6 - 28 Page  2007 - 2016

387 ZigBee Cluster Library Specification Chapter 6 HVAC – ZigBee Document 075123 gure 6 - 11 . Set Heat & Cool Weekly Schedule Command Payload Format (1 of 2 ) Fi 2 1(Header) 1(Header) 1(Header) 2 2 Octets Data int16 int16 uint16 enum8 map8 map8 Type Number of Field ( Transition 3 0x0 Heat & Cool Set Set Heat Day of Week i s n Tra tions for Name for S Point 1 quence Point 1 e Time 1 Cool) quen e S ce 6 . 12 - Figure Set Heat & Cool Weekly Schedule Command Payload Format (2 of 2) 2 Variable 2 2 Octets int16 int16 -- uint16 Data Ty pe Cool Set Point 10 Heat Set Point 10 -- Transition Time 10 Field Name SHALL be on. At least one of the bits in the Mode For Sequence byte 6 . 3 . 2 . 3 . 2 . 5 T r a n s i t i o n T i m e F i e l d g the associated day. The time will be This field represents the start time of the schedule transition durin represented by a 16 bits unsigned integer to designate the minutes since midnight. For example, 6am will be represented by 0x0168 (360 minutes since midnight) and 11:30pm will be represented by 0x0582 (1410 minutes si nce midnight) 6 . 3 . 2 . 3 . 2 . 6 H e a t S e t P o i n t F i e l d byte, this field represents the heat setpoint to be applied at If the heat bit is enabled in the Mode For Sequence Celsius this associated transition start time. The format of this attribute represents the temperature in degrees with 0.01 deg C resolution. C o o l S e t P o i n t F i e l d 6 . 3 . 2 . 3 . 2 . 7 byte, this field represents the cool setpoint to be applied at Mode For Sequence If the cool bit is enabled in the this associated transition start time. The format of this attribute represents the t emperature in degrees Celsius with 0.01 deg C resolution. 6 . 3 . 2 . 3 . 2 . 8 E f f e c t o n R e c e i p t begin at the The weekly schedule for updating set points SHALL be stored in the thermostat and SHOULD time of receipt. A default response total number of transitions SHALL always be sent as a response. If the sent is greater than what the thermostat supports a default response of INSUFFICIENT_SPACE (0x89) SHALL be sent in response to the last command sent for that transition sequence. If any of the set points sent in the entire sequ ence is out of range of what the thermostat supports (AbsMin/MaxSetPointLimit) then a SHALL default response of INVALID_VALUE (0x87) be sent in return and the no set points from the entire sequence SHOULD be used. If the transitions could be added successf ully a default response of SU C- be sent. Overlapping transitions is not allowed. If an overlap is detected and a default CESS(0x00) SHALL SHALL Day of Week for Sequence and Mode for Sequence fields be sent. The response of FAILURE(0x01) k for the flexibility to support multiple days and multiple modes within one command. If are defined as bitmas m- thermostat cannot handle incoming command with multiple days and/or multiple modes within one co send default response of INVALID_FIELD (0x85) in return . SHALL mand, it 2016 29  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 6 -

388 6 Chapter ZigBee Cluster Library Specification HVAC ZigBee Docum 075123 – ent 6.3.2.3.3 Get W eekl y Sched ule 6 Figure 13 - . Format of the Get Weekly Schedule Command Payload 1 1 Octets map8 map8 Data Type Days To Return Mode To Return Field Name 6 . 3 . 2 . 3 . 3 . 1 D a y s T o R e t u r n f days the client would like to return the set point values for and could be any This field indicates the number o e- combination of single days or the entire week. This field has the same format as the Day of Week for S . Set Weekly Schedule command quence field in the M o d e T o R e t u r n 6 . 3 . 2 . 3 . 3 . 2 ld indicates the mode the client would like to return the set point values for and could be any co This fie m- bination of heat only, cool only or heat&cool. This field has the same format as the Mode for Sequence field Set Weekly Schedule command . in the c e i p t E f f e c t o n R e 6 . 3 . 2 . 3 . 3 . 3 SHOULD When this command is received the unit send in return the Current Weekly Schedule command. The Days to Return and Mode to Return fields are defined as bitmask for the flexibility to support multiple If thermostat cannot handle incoming command with mu l- days and multiple modes within one command. tiple days and/or multiple modes within one command, it SHALL send default response of INV A- LID_FIELD (0x85) in return. Clear W eekl y Sch edule 6.3.2.3.4 The Clear Weekly Schedule command is used to clear the weekly schedule. The Clear weekly schedule has no payload. 6 . 3 . 2 . 3 . 4 . 1 E f f e c t o n R e c e i p t When this command is received, all transitions currently stored SHALL be cleared and a default response of be sent in response. There are no error responses to this command. SUCCESS (0x00) SHALL 6.3.2.3.5 Get Rela y Sta tus Log The Get Relay Status Log command is used to query the thermostat internal relay status log. This command has no payload. 51 The log storing order is First in First Out (FIFO) when the log is generated and stored into the Queue. The first record in the log (i.e., the oldest) one, is the first to be replaced when there is a new record and there Thus, the newest record will overwrite the oldest one if there is no space left. is no more space in the log. The log storing order is Las t In First Out (LIFO) when the log is being retrieved from the Queue by a client device. Once the "Get Relay Status Log Response" frame is sent by the Server, the "Unread Entries" attribute t remain in the queue. SHOULD be decremented to indicate the number of unread records tha If the "Unread Entries" attribute reaches zero and the Client sends a new "Get Relay Status Log Request", the send one of the following items as a response: MAY Server i) resend the last Get Relay Status Log Response or 51 0553 ZHA 1.2 errata - CCB 1823 13 Copyright , The ZigBee Alliance. All rights reserved. 6 - 30 Page  2007 - 2016

389 Chapter ZigBee Cluster Library Specification 6 075123 HVAC – ZigBee Document genera ii) te new log record at the time of request and send Get Relay Status Log Response with the new data 52 For both cases, the "Unread Entries" attribute will remain zero. 6 . 3 . 2 . 3 . 5 . 1 E f f e c t o n R e c e i p t When this command is received, the unit respond with Relay Status L og command if the relay status SHALL log feature is supported on the unit. Server Commands Sent 6.3.2.4 Table 6 - 39 shows the command sent by the server (received by the client). 6 Commands Send Command ID . Server 39 Table - Command Identifier Field Value Description 0x00 Get Weekly Schedule Response 0x01 Get Relay Status Log Response Get W eekl y Sched ule Res ponse 6.3.2.4.1 This command has the same payload format as the Set Weekly Schedule. Please refer to th e payload detail in , in this chapter. , Set Weekly Schedule Command Section Set Weekly Schedule Command Get Rela y Sta tus Log Resp onse 6.3.2.4.2 the Get Relay Status Log. After the This command is sent from the thermostat cluster server in response to Relay Status Entry is sent over the air to the requesting client, the specific entry will be cleared from the thermostat internal log. 6 . 3 . 2 . 4 . 2 . 1 P a y l o a d F o r m a t SHALL be formatted as shown in The relay status log command payload 6 - 14 . Figure Figure 6 - 14 . Format of the Relay Status Log Payload 2 2 2 2 1 2 Octets Data uint16 uint16 int16 uint8 int16 map8 Type Unread Local Humidity in Field Set Point Time of Day Relay Status Percentage Entries Temperat ure Name T i m e o f D a y F i e l d 6 . 3 . 2 . 4 . 2 . 2 Represents the sample time of the day, in minutes since midnight, when the relay status was captured for this inutes since midnight) and associated log entry. For example, 6am will be represented by 0x0168 (360 m 11:30pm will be represented by 0x0582 (1410 minutes since midnight). R e l a y S t a t u s F i e l d 6 . 3 . 2 . 4 . 2 . 3 Presents the relay status for thermostat when the log is captured. Each bit represents one relay used by the he associated relay is on and active. Each thermostat manufacturer can create its thermostat. If the bit is on, t own mapping between the bitmask and the associated relay. 52 - CCB 1823 13 0553 ZHA 1.2 errata 2016 31  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 6 -

390 Chapter ZigBee Cluster Library Specification 6 ZigBee Docum ent – 075123 HVAC L o c a l T e m p e r a t u r e F i e l d 6 . 3 . 2 . 4 . 2 . 4 ents the tempe Presents the local temperature when the log is captured. The format of this attribute repres r- ature in degrees Celsius with 0.01 deg C resolution. H u m i d i t y F i e l d 6 . 3 . 2 . 4 . 2 . 5 This field presents the humidity as a percentage when the log was captured. 6 . 3 . 2 . 4 . 2 . 6 S e t p o i n t F i e l d Presents the target setpoint temperature when the log is captured. The format of t his attribute represents the temperature in degrees Celsius with 0.01 deg C resolution. 6 . 3 . 2 . 4 . 2 . 7 U n r e a d E n t r i e s F i e l d This field presents the number of unread entries within the thermostat internal log system. Attribute Reporting 6.3.2.5 e reporting using the Report Attributes command and according to the This cluster SHALL support attribut minimum and maximum reporting interval and reportable change settings described in Chapter 2, Foundation and whenever they change. The following attributes SHALL be reported: ature LocalTemper   PICoolingDemand  PIHeatingDemand Other attributes MAY optionally be reported. Scene Table Extensions 6.3.2.6 If the Scenes server cluster (see 3.7) is implemented, the following extension fields SHALL be added to the attribute listed as 1 is added first: Scenes table in the given order, i.e., the 1) OccupiedCoolingSetpoint 2) OccupiedHeatingSetpoint 3) SystemMode Client 6.3.3 . ributes specific att The client cluster generates the commands The client has no specific dependencies n or received by the server cluster, as required by the application. 6.4 Fan Control 6.4.1 Overview Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classification, identification, etc. a heating / cooling system. This cluster specifies an interface to control the speed of a fan as part of 6.4.1.1 Revision History Description Rev attribute added ClusterRevision global mandatory 1 Copyright , The ZigBee Alliance. All rights reserved. 6 - 32 Page  2007 - 2016

391 ZigBee Cluster Library Specification Chapter 6 075123 HVAC – ZigBee Document Classification 6.4.1.2 Role PICS Code Hierarchy Primary Transaction Base Application FAN Type 1 (client to server) 6.4.1.3 Cluster Identifiers Identifier N ame 0x0202 Fan Control Server 6.4.2 Dependencies 6.4.2.1 None 6.4.2.2 Attributes The Fan Control Status attribute set contains the attributes summarized in 6 - 40 Attributes of the Fan Table Control Cluster . Table 6 - 40 . Attributes of the Fan Control Cluster M/O Default Access Range Type Name Identifier M FanMode enum8 0x00 – 0x06 RW 0x05 (auto) 0x0000 FanModeSequence enum8 0x00 – 0x04 RW 0x02 M 0x0001 u t e FanM ode At tr ib 6.4.2.2.1 FanMode The - bit value that specifies the current speed of the fan. It SHALL be set to one of attribute is an 8 the nonreserved values in Table 6 - 41 : Values Attribute FanMode . Table 6 - 41 Value Description 0x00 Off 0x01 Low Medium 0x02 0x03 High On 0x04 Auto (the fan speed is self regulated) - 0x05 Smart (when the heated/cooled space is occupied, the fan is always on) 0x06 Note that for Smart mode, information must be availab le as to whether the heated/cooled space is occupied. This MAY be accomplished by use of the Occupancy Sensing cluster (see 4.8). 2016 33  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 6 -

392 Chapter ZigBee Cluster Library Specification 6 ZigBee Docum ent – 075123 HVAC At tri bu te 6.4.2.2.2 FanM odeSe quenc e The rmostat can bit value that specifies the possible fan speeds that the the - attribute is an 8 FanModeSequence . ( 'Smart' is Note: FanSequenceOperatio 42 set. It SHALL be set to one of the non - reserved values in Table 6 - not in this table, as this mode resolves to one of the other modes depe nding on occupancy). . 42 Attribute Values FanSequenceOperation - Table 6 Attribute Value Description 0x00 Low/Med/High 0x01 Low/High Low/Med/High/Auto 0x02 Low/High/Auto 0x03 0x04 On/Auto Commands Received 6.4.2.3 No cluster specific commands are received by the server. 6.4.2.4 Commands Generated No cluster specific commands are generated by the server. 6.4.3 Client The Client cluster has no specific attributes. No cluster specific commands are received by the server. No cluster specific commands are generated by the server. 6.5 Dehumidification Control 6.5.1 Overview This cluster provides an interface to dehumidification functionality. 6.5.1.1 Revision History Rev Description 1 global mandatory ClusterRevision attribute added 6.5.1.2 Classification Hie rarchy Role PICS Code Primary Transaction ) server to client Type 1 ( Base DHUM Application Copyright , The ZigBee Alliance. All rights reserved. 6 - 34 Page  2007 - 2016

393 ZigBee Cluster Library Specification 6 Chapter 075123 HVAC – ZigBee Document Identifiers 6.5.1.3 Cluster Identifier Name 0x0203 Dehumidification Control Server 6.5.2 6.5.2.1 Dependencies None 6.5.2.2 Attributes For convenience, the attributes defined in this specificat ion are arranged into sets of related attributes; each set can contain up to 16 attributes. Attribute identifiers are encoded such that the most significant nibble the set. The currently specifies the attribute set and the least significant nibble specifies the attribute within Table . - defined attribute set for the dehumidification control cluster is listed in 43 6 43 Table 6 - . Dehumidification Control Attribute Sets fier Description Attribute Set Identi Dehumidification Information 0x000 0x001 Dehumidification Settings 6.5.2.2.1 Dehu midi fica tio n I nfo rma tio n At t rib ute Se t Table The Dehumidification Information attribute set contains the attributes summarized in 6 . Dehumidification Information Attribute Set 44 - - 44 . Dehumidification Information Attribute Set 6 Table Type Name Range Acc Def Id M/O 0x0000 RelativeHumidity uint8 0x00 – 0x64 R - O 0x0001 M - DehumidificationMaxCool P R DehumidificationCooling uint8 0 - At t r i b u t e R e l a t i v e H u m i d i t y 6 . 5 . 2 . 2 . 1 . 1 RelativeHumidity The attribute is an 8 - bit value that represents the current relative humidity (in %) measured 0x64 (0% to 100%). range ix 0x00 – by a local or remote sensor. The valid At t r i b u t e 6 . 5 . 2 . 2 . 1 . 2 D e h u m i d i f i c a t i o n C o o l i n g bit value that specifies the current dehumidification cooling - attribute is an 8 DehumidificationCooling The DehumidificationMaxCool. output (in %). The valid range is 0 to 2016 35  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 6 -

394 Chapter ZigBee Cluster Library Specification 6 ZigBee Docum ent 075123 HVAC – Dehu midi fica ti o n Setti ngs At t r ibu te Set 6.5.2.2.2 6 - 45 . The Dehumidification Settings attribute set contains the attributes summarized in Table 6 - 45 . Dehumidification Settings Attribute Set Table Name Identifier Type Range Access Default M/O 0x0010 RHDehumidificationSetpoint uint8 0x1E – RW 0x32 M 0x64 0x0011 RelativeHumidityMode enum8 0x00 – 0x01 RW 0x00 O 0x01 0x0012 enum8 0x00 – DehumidificationLockout RW 0x01 O 0x0013 DehumidificationHysteresis uint8 0x02 – 0x14 RW 0x02 M 0x0014 DehumidificationMaxCool uint8 0x14 – 0x64 RW 0x14 M O 0x00 RW 0x01 – 0x00 enum8 0x0015 RelativeHumidityDisplay 6 . 5 . 2 . 2 . 2 . 1 R H D e h u m i d i f i c a t i o n S e t p o i n t At t r i b u t e The RHDehumidificationSetpoint attribute is an 8 - bit value that represents the relative humidity (in %) at which dehumidification occurs. The valid range ix 0x1E 0x64 (30% to 100%). – 6 . 5 . 2 . 2 . 2 . 2 R e l a t i v e H u m i d i t y Mo d e At t r i b u t e attribute is an 8 The RelativeHumidityMode bit value that specifies how the - RelativeHumidity value is being updated - reserved values in Table 6 - 46 . . It SHALL be set to one of the non Table 6 - 46 . RelativeHumidityMode Attribute Values Attribute Value Description y measured locall 0x00 RelativeHumidity 0x01 RelativeHumidity updated over the network D e h u m i d i f i c a t i o n L o c k o u t At t r i b u t e 6 . 5 . 2 . 2 . 2 . 3 The DehumidificationLockout attribute is an 8 - bit value that specifies whether dehumidification is allowed or not. It SHALL be set to one of the non - reserved values in Table 6 - 47 DehumidificationLockou . DehumidificationLockout Attribute Values Table 6 - 47 . Description Attribute Value Dehumidification is not a 0x00 llowed. 0x01 Dehumidification is allowed. 6 . 5 . 2 . 2 . 2 . 4 D e h u m i d i f i c a t i o n H y s t e r e s i s At t r i b u t e The DehumidificationHysteresis attribute is an 8 - bit value that specifies the hysteresis (in %) associated with 0x14 (2% to 2 0%). RelativeHumidity value. The valid range ix 0x02 – 6 . 5 . 2 . 2 . 2 . 5 At t r i b u t e D e h u m i d i f i c a t i o n Ma x C o o l - attribute is an 8 DehumidificationMaxCool The bit value that specifies the maximum dehumidification – cooling output (in %). The valid range ix 0x14 0x64 (20% to 100%). Copyright , The ZigBee Alliance. All rights reserved. 6 - 36 Page  2007 - 2016

395 ZigBee Cluster Library Specification 6 Chapter 075123 HVAC ZigBee Document – 6 . 5 . 2 . 2 . 2 . 6 R e l a t i v e H u m i d i t y D i s p l a y At t r i b u t e midityDisplay value is RelativeHumidity bit value that specifies whether the - attribute is an 8 The RelativeHu - . 48 displayed to the user or not. It SHALL be set to one of the non - reserved values in Table 6 RelativeHumidityMode Attribute Values Table 6 - 48 . Attribute Value Description 0x00 is not displayed RelativeHumidity is displayed RelativeHumidity 0x01 6.5.2.3 Commands Received No commands are received by the server cluster except those to read / write attributes 6.5.2.4 Commands Generated No commands are generated by the server cluster except responses to commands to read/write attributes, and attribute reports. 6.5.2.5 Attribute Reporting This cluster SHALL support attribute reporting using the Report Attributes comma nd and according to the minimum and maximum reporting interval settings described in the ZCL Foundation specification. DehumidificationCooling The following attribute SHALL be reported: change is 1%). This attribute SHALL also be reported whenever it changes (a minimum Reports of this attribute MAY be used to control a remote dehumidifier device. 6.5.3 Client The client has no dependencies or attributes and there are no cluster specific commands defined. Thermostat User Interface Configuration 6.6 6.6.1 Overview Please se e Chapter 2 for a general cluster overview defining cluster architecture, revision, classification, identification, etc. This cluster provides an interface to allow configuration of the user interface for a thermostat, or a thermostat controller device, th at supports a keypad and LCD screen. 6.6.1.1 Revision History Rev Description ClusterRevision global mandatory 1 attribute added 2016 37  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 6 -

396 Chapter 6 ZigBee Cluster Library Specification ZigBee Docum – 075123 HVAC ent Classification 6.6.1.2 PICS Code Hierarchy Primary Transaction Role Application TSUI C Type 1 (client to server) Base Cluster Identifiers 6.6.1.3 entifier Name Id Thermostat User Interface Configuration 0x0204 Server 6.6.2 Dependencies 6.6.2.1 None Attributes 6.6.2.2 6 49 . Table - The attributes of this cluster are summarized in Table 49 . Thermostat User Interface Configuration Cluster 6 - Name Type Range Id Access Default M/O 0x0000 TemperatureDisplayMode enum8 0x00 – RW 0x00 (Celsius) M 0x01 enum8 M 0x00 (no lockout) RW 0x05 – 0x0001 0x00 KeypadLockout ScheduleProgrammingVisibility enum8 0x 00 – 0x01 RW 0x00 O 0x0002 6.6.2.2.1 Tempera tu reDis pl ayMode At t rib ute The attribute specifies the units of the temperature displayed on the thermostat TemperatureDisplayMode screen. This attribute SHALL be set to one of the non - reserved values in 6 - 50 . Table Attribute Values DisplayMode . Table 6 - 50 Description Attribute Value o Temperature in C 0x00 o 0x01 Temperature in F At trib ute 6.6.2.2.2 Keypad Locko ut ctionality that is available to the user via the keypad. attribute specifies the level of fun KeypadLockout The 6 This attribute SHALL be set to one of the non - reserved values Table - 51 KeypadLockou . . KeypadLockout Attribute Values Table 6 - 51 Attribute Value Description No lockout 0x00 Level 1 lockout 0x01 0x02 Level 2 lockout Copyright , The ZigBee Alliance. All rights reserved. 6 - 38 Page  2007 - 2016

397 ZigBee Cluster Library Specification Chapter 6 075123 HVAC – ZigBee Document Description Attribute Value Level 3 lockout 0x03 0x04 Level 4 lockout 0x05 Level 5 lockout (least functionality available to the user) The interpre of the various levels is device - dependent. tation ScheduleP rog ram mingVisi bili ty 6.6.2.2.3 At t r ibu te attribute is used to hide the weekly schedule programming functionality ScheduleProgrammingVisibility The or menu on a thermostat from a user to prevent local user pr ogramming of the weekly schedule. The schedule MAY still be performed via a remote interface, and the thermostat MAY programming operat e in schedule programming mode. This command is designed to prevent local tampering with or disabling of schedules that M AY have been programmed by users or service providers via a more capable remote interface. The programming schedule SHALL continue to run even though it is not visible to the user locally at the thermostat. - . 52 It SHALL be set to one of the non - reserved values in Table 6 . 52 - 6 Table Attribute Values ScheduleProgrammingVisibility ScheduleProgrammin g- Description Visibility Attribute Value Local schedule programming functionality is 0x00 enabled at the thermostat Local schedule programming functionality is 0x01 disabled at the thermostat 6.6.2.3 Commands Received No commands are received by the server except those to read and write the attributes of the server. 6.6.2.4 Commands Generated No commands are generated by the server except responses to commands to read and write the attributes of the server. 6.6.2.5 Sample Conversion Code versa conversion between devices - Sample code provided to ensure consistent Fahrenheit to Celsius and vice and across vendors. For d egF: the value is a int8u representing 2x temperature value in Farenheit (to get 0.5 resolution). For degC: the value is a int16s representing Celsius in 0.01 resolution as expected by the ZCL format. /* * Function : translateZclTemp() : Co nverts the temperature setpoints in ZCL * Description * to the half degF format. bit unsigned, - The half degF format is 8 * * and represents 2x temperature value in * Farenheit (to get 0.5 resolution). 2016 39  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 6 -

398 Chapter ZigBee Cluster Library Specification 6 ent ZigBee Docum 075123 HVAC – bit signed - The format used in ZCL is 16 * d multiplied by 100 * in Celsius an * to get 0.01 resolution. e.g. 2500(25.00 deg C) --- > 0x9A (77 deg F) * * Input Para : Temperature in ZCL (degC)format * Output Para: Temperature in half DegF format */ int8u translateZclTemp(int16s temperature) { int32s x = temperature; //rearrangement of // = (x * (9/5) / 100 + 32) * 2; // the added 250 is for proper rounding. // a rounding technique that only works // with positive numbers return (int8u) ((x*9*2 + 250)/ (5*100) + 64); } /* lateDegFTemp * Function : trans Converts the temperature in DegF * Description : protocol to the format * expected by the cluster attribute * Measured Value in the * * Temperature Measurement * Information Attribute Set. * The half deg F format is 8 bit - unsigned, a nd represents * * 2x temperature value in * Farenheit (to get 0.5 resolution). * The format expected by cluster * - bit signed in Celsius and is 16 multiplied by 100 to get * * 0.01 resolution. e.g. 0x9A(77 deg F) --- > 2500 (25.00 deg C) * * Input Para : temperature in DegF format * Output Para: temperature in ZCL format */ int16s translateDegFTemp(int8u temperature) { int32s x = temperature; // rearrangement of - 32) * 5/9 // = 100 * (x/2 // *1000 (should be 100), +90, then /10, r rounding. // is fo - 64)*5*1000 + 90) / (10*2*9)); return (int16s) (((x } Client 6.6.3 The client has no dependencies or cluster specific attributes and there are no cluster specific commands define. Copyright , The ZigBee Alliance. All rights reserved. 6 - 40 Page  2007 - 2016

399 ZigBee Cluster Library Specification Chapter 7 Closures – ZigBee Document 075123 CHAPTER 7 CLOSURES The ZigBee Cluster Library is made of individual chapter s such as this one. See Document Control in the ZigBee Cluster Library for a list of all chapters and documents . References between chapters are made using Y is the chapter and ternal to ex section within that chapter. References is the sub a X.Y notation where X - documents are contained in Chapter 1 and are made using [ Rn ] notation. General Description 7.1 Introduction 7.1.1 The clusters specified in this document are for use typically in ZigBee applications involving closures (e.g., shades, windows, doors), but MAY b e used in any application domain. Cluster List 7.1.2 This section lists the clusters specified in this document, and gives examples of typical usage for the purpose of clarification. . 1 - 7 Table The clusters defined in this document are listed in - 1 . Clusters Specified in the Closures Functional Domain 7 Table Cluster ID Description Cluster Name Attributes and commands for configuring a shade Shade Configuration 0x0100 nterface to a generic way to secure a door Door Lock An i 0x0101 Commands and attributes for controlling a window covering Window Covering 0x0102 2016 1  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

400 Chapter 7 ZigBee Cluster Library Specification ZigBee Document – 075123 Closures . Typical Usage of the Closures Clusters 1 Figure 7 - 7.2 Shade Configuration Overview 7.2.1 Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classification, identification, etc. This cluster provides an interface for reading information about a shade, and configuring its open and closed limits. n History Revisio 7.2.1.1 Description Rev mandatory global 1 ClusterRevision attribute added 7.2.1.2 Classification Primary Transaction PICS Code Role Hierarchy Application Base SHDC FG Type 2 (server to client) 7.2.1.3 Cluster Identifiers Name Identifier 0x0100 e Configuration d Sha Copyright , The ZigBee Alliance. All rights reserved. 7 - 2 Page  2007 - 2016

401 ZigBee Cluster Library Specification 7 Chapter – Closures ZigBee Document 075123 Server 7.2.2 7.2.2.1 Dependencies None Attributes 7.2.2.2 For convenience, the attributes defined in this specification are arranged into sets of related attributes; each b- set can contain up to 16 attributes. Attribute identifiers are encoded such that the most significant three ni bles specify the attribute set and the least significant nibble specifies the attribute within the set. The currently Table defined attribute sets are listed in - 2 . 7 7 - 2 . Sh ade Configuration Attribute Sets Table Description Attribute Set Identifier Shade information 0x000 Shade settings 0x001 Shade In f orma tio n At tri bu te Se t 7.2.2.2.1 Table 7 - 3 . The Shade Information attribute set contains the attributes summarized in Table 7 3 . Attributes of the Shade Information Attribute Set - Access Type Id Range Name Default M/O 0xfffe – 0x0001 uint16 O - Read Only 0x0000 PhysicalClosedLimit – Read Only MotorStepSize uint8 0x00 0x0001 0xfe - O 0b M 0000 0000 0x0002 Status map8 0b 0000 xxxx Read/Write P h y s i c a l C l o s e d L i m i t 7 . 2 . 2 . 2 . 1 . 1 A t t r i b u t e attribute indicates the most closed (numerically lowest) position that the shade can The PhysicalClosedLimit physically move to. This position is measure d in terms of steps of the motor, taking the physical most open position of the shade as zero. This attribute is for installation informational purposes only. The value 0xffff indicates an invalid or unknown PhysicalClosedLimit . 7 . 2 . 2 . 2 . 1 . 2 Mo t o r S t e p S i z e At t r i b u t e attribute indicates the angle the shade motor moves for one step, measured in 1/10ths of a MotorStepSize The degree. This attribute is for installation informational purposes only. The value 0xff indicates an invalid or unknown step size. S t a t u s e 7 . 2 . 2 . 2 . 1 . 3 At t r i b u t The 4 - 7 Table attribute indicates the status of a number of shade functions, as shown in . Writing a Status value to this attribute only affects those bits with Read/Write access. 2016 3  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

402 Chapter 7 ZigBee Cluster Library Specification ZigBee Document – 075123 Closures - 7 . Bit Values for the Status Attribute Table 4 Meaning Bit Number Access 0 Shade operational Read Only 0 = no 1 = yes Shade adjusting Read Only 1 0 = no 1 = yes 2 Shade direction Read Only 0 = closing 1 = opening Read/Write rection of motor 3 Direction corresponding to forward di 0 = closing 1 = opening 7.2.2.2.2 Shade Se tti ngs At trib ute Set The Shade Settings attribute set contains the attributes summarized in Table 7 - 5 . Table - 5 . Attribut es of the Shade Settings Attribute Set 7 Id M/O Type Range Access Default Name 0x0001 Read/Write 0xfffe – 0x0001 uint16 M 0x0010 ClosedLimit M 0x00 0x0011 Read/Write enum8 0x00 – 0xfe Mode 7 . 2 . 2 . 2 . 2 . 1 C l o s e d L i m i t At t r i b u t e attribute indicates the mos ClosedLimit The t closed position that the shade can move to. This position is measured in terms of steps of the motor, taking the physical most open position of the shade as zero. This attribute is set either by directly writing it, or by the following method. When the Mode attribute is set to Configure, the shade is opening, and either the shade is stopped or it reaches its physical most open limit (if there is one – the motor MAY continue to turn at the top), the zero point for the - motor to the current position of the shade. step measurement system is set When the Mode attribute is set to Configure, the shade is closing, and either the shade is stopped or it reaches ClosedLimit the , its physical closed limit e to the attribute is set to the current position of the shade, relativ zero point set as described above. 7 . 2 . 2 . 2 . 2 . 2 Mo d e At t r i b u t e The - Mode attribute indicates the current operating mode of the shade, as shown in Table 7 .The value 0xff 6 indicates an invalid or unknown mode. Table Attribute Mode . Values of the 6 - 7 Attribute Value Meaning Normal 0x00 0x01 Configure attribute MAY be set as described above. ClosedLimit In configure mode, the Commands Received 7.2.2.3 he server. No cluster specific commands are received by t 7 , The ZigBee Alliance. All rights reserved. 2016 - 2007  Copyright 4 - Page

403 Chapter ZigBee Cluster Library Specification 7 Closures – ZigBee Document 075123 7.2.2.4 Commands Generated No cluster specific commands are generated by the server. 7.2.3 Client The client has no specific at tributes and there are no cluster specific commands to receive or generate. 7.3 Door Lock Overview 7.3.1 uster overview defining cluster architecture, revision, classification, Please see Chapter 2 for a general cl identification, etc. The door lock cluster provides an interface to a generic way to secure a door. The physical object that pr o- vides the locking functionality is abstracted from the c luster. The cluster has a small list of mandatory a t- tributes and functions and a list of optional features. 7.3.1.1 Revision History Rev Description attribute ClusterRevision mandatory global 1 CCB 1811 1812 1821 ; added Classification 7.3.1.2 Role Hierarchy PICS Code Pr imary Transaction DRLK Type 2 (server to client) Base Application Identifiers Cluster 7.3.1.3 Name Identifier Door Lock 0x0101 Server 7.3.2 Generally the door lock itself implements the server side of this cluster. The attributes and commands listed l- in this cluster were developed to be implemented by a door lock which has the ability to keep track of mu tiple users and schedules. 7.3.2.1 Alarms, Reports, and Events a A door lock implementing all of the optional features provided in this cluster has the ability to push data to controller in three different forms, Alarms, Reports and Events. Alarms are used to report critical states on the door lock. Reports are used to inform a subscribed device of changes of state in specific attributes on the lock. a bound device about changes in state related to the operation and programming of Events are used to inform the door lock. Event commands are sent to a binding. Examples of events are locking and unlocking the lock and adding or deleting a user on the lock. 2016 5  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

404 Chapter 7 ZigBee Cluster Library Specification ZigBee Document 075123 Closures – Al arms 7.3.2.1.1 The door lock clu ster provides several alarms which can be sent when there is a critical state on the door lock. The alarms available for the door lock cluster are listed in the section below outlining the alarm mask a t- tribute. The Alarm cluster is used to generate the act ual alarms. Alarm example: If the first bit of the attribute Alarm Mask is set, any device that is bound to the alarm cluster will be informed each time the deadbolt becomes jammed. If for some reason the door lock became jammed, the door lock would send a n alarm command from the alarms cluster with the payload illustrated in . 2 7 - Figure - 2 . Format of the Alarm Cluster Figure 7 2 1 Octets Cluster ID enum8 Data Type Alarm C Cluster Identifier ode Field Name 0x0101 0x00 Field Value 7.3.2.1.2 Repo rts The reporting mechanism within the ZCL can be used to subscribe to changes in a specific attribute within the door lock. Report example: amming change is made on the door lock, wants to know each time a progr application If a n it can use the reporting mechanism to be informed of changes to the Operating Mode attribute. Each time the Operating Mode changes to programming mode, the will be informed and can then sync i ts application knowledge of user data to make sure that it has an up to date record of user the users supported on the door lock. 7.3.2.1.3 E ven ts The event mechanism described within this document is unique to the Door Lock Cluster and was designed er and no other. It is in part modeled on similar mechanisms in other clusters such as specifically for this clust the load control events in the Demand Response and Load Control cluster in Smart Energy (DRLC). The event mechanism in the door lock centers on the transmission of two c ommands autonomously generated by the server and sent to a bound device. The assumption is that the binding mechanism will be used to commission the server to send these commands. . Operational events relate to There are two types of events on the door lock, operational and programmatic the general operation of the door lock, when it locks and unlocks for instance. The programmatic events relate to the programming of the door lock, for example when users are added or modified via the keypad. mitted using two server commands, the Operation Event Notification Command and Pr o- Events are trans gramming Event Notification Command. A primary key uniquely identifies each event. The key consists of the event’s type (operation, programming ual, etc...) and event code. The event mask bit that matches its type, source etc...), source (keypad, RF, man and event code controls the generation of each event. A complete list of events is included in the description of their commands along with the specific attribute and bit that cont rol their generation. Door Lock Securit y 7.3.2.2 n- The following functionality has not been validated at a Specification Validation Event and is therefore co sidered provisional. Door locks have the ability to require the use of APS encryption for sending and recei ving of all cluster messages. The Security Level attribute is used to specify the type of encryption required by the door lock. Copyright , The ZigBee Alliance. All rights reserved. 7 - 6 Page  2007 - 2016

405 ZigBee Cluster Library Specification 7 Chapter 075123 Closures ZigBee Document – The APS key MUST be unique to the door lock device in order to provide the enhanced security needed. setting is selected, the device SHALL use a randomly generated install code to Therefore, if APS security generate the unique APS link key to join to the network and use this unique APS link key to encryption all Door Lock Cluster, Group Cluster, Scene Cluster messages. The hashing method used to convert install code into APS link key is AES - MMO. t- It SHOULD be noted that in order for the device with unique APS link key to join successfully to the ne will need to have a method for th e user/installer to input the unique install code for the work, the Trust Center device. Note that the ZigBee security setting will only take effect when the device is not part of a network. If the user modifies the ZigBee Security Level setting while the device is part of a net work, the setting will not be applied until the device leaves the network and commissions to a network again. ZigBee Time 7.3.2.3 There are various references to the ZigBee LocalTime within this cluster specification. - resents the number of seconds since January 1 2000, in the bit unsigned integer) rep ZigBee LocalTime (32 local zone with time saving adjusted. PIN/RFID Code Format 7.3.2.4 The PIN/RFID codes defined in this specification are all in ZCL OCTET STRING format. The first octet in octets contained in the remaining of the data field not including itself. the string specifies the number of All value in the PIN/RFID code SHALL be ASCII encoded regardless if the PIN/RFID codes are number or characters. For example, code of “1, 2, 3, 4” SHALL be represented as 0x31, 0x32 , 0x33, 0x34. 7.3.2.5 Process for Creating a New User w ith Schedule The following is the process that the client device SHALL follow for creating a new user with weekday schedule or yearday schedule. The following process SHOULD be implemented as an atomic set an d SHOULD not be broken up. Set Pin Code 5. 6. Set Weekday Schedule or Set Yearday Schedule Set User Type to the desired schedule user type. 7. 7.3.2.6 Process for Clearing All Schedules for a User earing all weekday schedule or all The following is the process that the client device SHALL follow for cl yearday schedule for a user. The following process SHOULD be implemented as an atomic set and SHOULD not be broken up. 8. Clear All Weekday Schedule or Clear All Yearday Schedule Set User Type to the Unrestricted User Type 9. If the User Type is not reset to Unrestricted User, the associated user Code (ex: PIN/RFID) will not Note: have access. Clarification of Changing the User Type 7.3.2.7 When the user type is changed from a scheduled user to some other user type, the door lock s erver MAY remove the user's schedule. 2016 7  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

406 Chapter 7 ZigBee Cluster Library Specification ZigBee Document 075123 Closures – Clarification for Changing the User Code 7.3.2.8 When changing the user code, the server SHALL not require that the user code be removed first. 7.3.2.9 Dependencies None 7.3.2.10 Server Attributes For convenience, the attributes defined in t his specification are arranged into sets of related attributes; each set can contain up to 16 attributes. Attribute identifiers are encoded such that the most significant three ni b- bles specify the attribute set and the least significant nibble specifies th e attribute within the set. The currently defined attribute sets for Door Lock Cluster Server are listed in Table 7 - 7 . . 7 - 7 Table Attribute Sets Description Identifier D escription Attribute Set – 0x000F 0x0000 Basic Information Attribute Set 0x0010 – 0x001F User, PIN, Schedule Information Attribute Set 0x002F 0x0020 – Operational Settings Attribute Set – 0x003F Security Settings Attribute Set 0x0030 0x0040 – 0x004F Alarm and Event Masks Attribute Set within this cluster MAY contain one of the following symbols: Attribute s Read Only:  Readable, but not writable  Readable and writable Read/Write: lly Writable. The ability to write to this attribute is not mandatory Readable and Optiona Read*Write:  but is determined by the vendor supplying the product. If not writable, a READ_ONLY error is returned for any write attempt. 7.3.2.11 Basic Information Attribute Set 7 - 8 . Current Information Attribute Set Table Access Name Type Identifier De f M/O Read Only M enum8 0x0000 - LockState Reportable M 0x0001 - enum8 Read Only LockType M 0x0002 - bool Read Only ActuatorEnabled Read Only O - 0x0003 enum8 DoorState Reportable O - uint32 0x0004 Read/Write DoorOpenEvents O 0x0005 Read/Write uint32 - DoorClosedEvents - Read/Write uint16 0x006 O OpenPeriod - 8 , The ZigBee Alliance. All rights reserved. 7 Page Copyright  2007 - 2016

407 ZigBee Cluster Library Specification Chapter 7 Closures – ZigBee Document 075123 7.3.2.11.1 LockSta te At t ri bu t e This attribute has the following possible values: Attribute Values LockState Table 7 - 9 . Value Definition 0x00 Not fully locked 0x01 Locked 0x02 Unlocked 0xFF Undefined LockTy pe At t rib ut e 7.3.2.11.2 LockType attribute is indicated by an enumeration: The . 10 - 7 Table Attribute Values LockType Value Definition Dead bolt 0x00 Magnetic 0x01 Other 0x02 Mortise 0x03 Rim 0x04 0x05 Latch Bolt 0x06 Cylindrical Lock Tubular Lock 0x07 0x08 Interconnected Lock Dead Latch 0x09 Door Furnitu re 0x0A At t ri bu te Ac t uat orEna bled 7.3.2.11.3 This attribute has the following possible values: Attribute Values ActuatorEnabled . 11 - 7 Table Boolean Definition Value , The ZigBee Alliance. All rights reserved. 2007 - 2016 Copyright Page 7 9  -

408 Chapter 7 ZigBee Cluster Library Specification 075123 – ZigBee Document Closures Boolean Definition Value 0 Disabled Enabled 1 7.3.2.11.4 Doo rSta te At t ri bu t e te has the following possible values: This attribu 12 Table 7 - . DoorState Attribute Values Definition Value Open 0x00 0x01 Closed 0x02 Error (jammed) Error (forced open) 0x03 0x04 Error (unspecified) Undefined 0xFF 7.3.2.11.5 At t ri bu te Doo rOpe nE ven ts This attribute holds the number of door open events that have occurred since it was last zeroed. At tri bu te Doo rCl osedE ven t s 7.3.2.11.6 This attribute holds the number of door closed events that have occurred since it was last zeroed. 7.3.2.11.7 ri od At t ri b ute OpenPe This attribute holds the number of minutes the door has been open since the last time it transitioned from closed to open. User, PIN, Schedule, Log Information Attribute 7.3.2.12 Set - 7 13 Table . User, P IN, Schedule, Log Information Attribute Set Access Id Description Type Def M /O NumberOfLogRecordsSupported 0x0010 O 0 uint16 Read Only 0x0011 NumberOfTotalUsersSupported uint16 Read Only 0 O 0x0012 NumberOfPINUsersSupported O uint16 Read Only 0 0x0013 NumberOfRFIDUsersSupported 0 Read Only uint16 O NumberOfWeekDaySchedulesSupportedPerUser 0x0014 O 0 Read Only uint8 Copyright , The ZigBee Alliance. All rights reserved. 7 - 10 Page  2007 - 2016

409 ZigBee Cluster Library Specification 7 Chapter 075123 Closures – ZigBee Document Id Description Type Access Def M /O 0x0015 NumberOfYearDaySchedulesSupportedPerUser O 0 Read Only uint8 0x0016 NumberOfHolidaySchedulesSupported O uint8 Read Only 0 0x0017 MaxPINCodeLength O 0x08 Read Only uint8 0x0018 MinPINCodeLength O 0x04 Read Only uint8 0x0019 MaxRFIDCodeLength uint8 O 0x14 Read Only MinRFIDCodeLength 0x001A uint8 Read Only 0x08 O Num berO fLo gRec ordsS upp or ted At trib ute 7.3.2.12.1 The number of available log re cords. 7.3.2.12.2 Num berO fTo tal Us ersSupp or ted At t r ibu te Number of total users supported by the lock. This value is equal to the higher one of [# of PIN Users Su p- ported] and [# of RFID Users Supported] 7.3.2.12.3 Num berO fPIN User sSupp or ted At t ri b ute The number of PIN users suppo rted. Num berO fR FID Us ersSupp or ted At t r ibu te 7.3.2.12.4 The number of RFID users supported. t- 7.3.2.12.5 Num berO fW eekDa yS che dulesS up po rtedPe rUser A trib ute The number of configurable week day schedule supported per user. 7.3.2.12.6 t- Num berO f YearDa ySchedulesS up por t edPerUser A trib ute The numbe r of configurable year day schedule supported per user. 7.3.2.12.7 At t rib ute Num berO fH olida ySchedulesS up por t ed The number of holiday schedules supported for the entire door lock device. At t rib ute MaxPIN Co deLen gt h 7.3.2.12.8 f a PIN Code on this device. The default is set to 8 An 8 bit value indicates the maximum length in bytes o since most lock manufacturers currently allow PIN Codes of 8 bytes or less. At t rib ute MinPI NC ode Leng t h 7.3.2.12.9 t to 4 An 8 bit value indicates the minimum length in bytes of a PIN Code on this device. The default is se since most lock manufacturers do not support PIN Codes that are shorter than 4 bytes. MaxR FID Co deLen gth 7.3.2.12.10 At t rib ute An 8 bit value indicates the maximum length in bytes of a RFID Code on this device. The value depends on - collision identifiers (UID) are used as the RFID code range specified by the manufacturer, if media anti RFID code, a value of 20 (equals 10 Byte ISO 14443A UID) is recommended. 2016 11  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

410 Chapter 7 ZigBee Cluster Library Specification ZigBee Document – 075123 Closures Min RFI DC ode Leng th At t ri bu te 7.3.2.12.11 ce. The value depends on An 8 bit value indicates the minimum length in bytes of a RFID Code on this devi - collision identifiers (UID) are used as the RFID code range specified by the manufacturer, if media anti RFID code, a value of 8 (equals 4 Byte ISO 14443A UID) is recommended. Operational Settings Attribute Set 7.3.2.13 n this attribute set affect the physical behavior on the server device. Some of the setting The attributes withi might not be applicable to the specific device. When the client sends the write attribute request with values that are not applicable to the server device, the serv SHALL send back a Write Attribute Response with er error status not equal to ZCL_SUCCESS(0x00). It is suggested that it SHOULD respond with an error status of ZCL_INVALID_VALUE (0x87). Table 7 - 14 . Operational Settings Attribute Set /O Id Description M Type Access Def Read * Write bool Enable Logging 0x0020 O 0 Reportable Read*Write string Language 0x0021 0 O (3bytes) Reportable Read*Write 0x0022 LED Settings uint8 O 0 Reportable d*Write Rea 0 O uint32 Time AutoRelock 0x0023 Reportable Read*Write Sound uint8 0x0024 Volume 0 O Reportable Read*Write 0x0025 Operating Mode enum8 O 0 Reportable O 0x0026 SupportedOperating Modes map16 Read Only 0x0001 Read Only 0x00 map16 O 00 0x0027 DefaultConfiguration Register Reportable Read*Write EnableLocal Programming bool 0x0028 O 0x01 Reportable Read/Write 0x0029 EnableOneTouch Locking O bool 0 Reportable Read/Write EnableInside StatusLED bool O 0x002A 0 Reportable Read/Write O bool ModeButton EnablePrivacy 0 0x002B Reportable En At trib ute 7.3.2.13.1 ableL og gin g Enable/disable event logging. When event logging is enabled, all event messages are stored on the lock for retrieval. Logging events can be but not limited to Tamper Alarm, Lock, Unlock, Autolock, User Code Added, User Code Deleted, S chedule Added, and Schedule Deleted. For a full detail of all the possible alarms and events, please refer to the full list in the Alarm and Event Masks Attribute Set. Copyright , The ZigBee Alliance. All rights reserved. 7 - 12 Page  2007 - 2016

411 ZigBee Cluster Library Specification Chapter 7 Closures – ZigBee Document 075123 Lang uage At t ri bu t e 7.3.2.13.2 Modifies the language for the on - screen or audible user interface usi ng three bytes from ISO - 639 - 1. It co n- sists of one byte of length and two bytes for the language code. For example if the language is set to English, the value would be "02 65 6E" for the language code "en". 7.3.2.13.3 Operati ng Mo de At trib ute shows the current operating mode and which interfaces are enabled during each of the operating 15 Table 7 - mode . Table 7 - 15 . Operating Modes Interface (E = Enabled; D = Disabled) Enum Operating Mode RF Keypad RFID 0x00 Normal E E E E 0x01 Vacation D E D D Privacy 0x02 D 0x03 No RF Lock/Unlock E D E N/A 0x04 Passage N/A N/A Normal Mode: The lock operates normally. All interfaces are enabled. Vacation Mode: Only RF interaction is enabled. The keypad ca nnot be operated. All external interaction with the door lock is disabled. This is intended so that users pr Privacy Mode: e- sumably inside the property will have control over the entrance. Privacy mode assumes that the lock can only be operated from inside by operating the thumb turn or some other means of ending privacy mode. This mode only disables RF interaction with the lock. It specifically applies to the No RF Lock or Unlock: Unlock with Timeout Commands. , and Lock, Unlock, Toggle Passage Mode: The loc k is open or can be open or closed at will without the use of a Keypad or other means of user validation. Note: For modes that disable the RF interface, the door lock SHALL respond to Lock, Unlock, Toggle, and Unlock with Timeout commands with a ZCL respon se of ZCL_GENERAL_FAILURE (0x01) and not take the action requested by those commands. The door lock SHALL NOT disable the radio or otherwise unbind still respond to all other commands and requests. SHALL or leave the network. It Supp or tedO perati ngM odes At t r ibu t e 7.3.2.13.4 This bitmap contains all operating bits of the Operating Mode Attribute supported by the lock. The value of the enumeration in “Operating Mode” defines the related bit to be set , as shown in Table 7 - 16 . All bits supported b y a lock SHALL be set to zero. SupportedOperatingModes Attribute - 7 Table . Bit Values for the 16 Description Bitmap Number 0 Normal Mode Supported 2016 13  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

412 Chapter 7 ZigBee Cluster Library Specification – 075123 Closures ZigBee Document Bitmap Number Description Vacation Mode Supported 1 2 Privacy Mode Supported No RF 3 Lock or Unlock Mode Supported 4 Passage Mode Supported 7.3.2.13.5 LEDSe tti ngs At tr i bute : 17 - 7 Table , shown in The settings for the LED support three different modes - 17 . Modes for the LEDSettings Attribute Table 7 Attribute Definition Identifier 0x00 Never use LED for signalization 0x01 Use LED signalization except for access allowed events Use LED signalization for all events 0x02 7.3.2.13.6 Att ribu te Au t o RelockT ime r unlocking a lock before it automatically locks again. 0=disabled. If set, The number of seconds to wait afte m- unlock operations from any source will be timed. For one time unlock with timeout use the specific co mand. 7.3.2.13.7 Soun dVol ume At t r ibu te The sound volume on a door lock has three possible settings: silent, low and high volumes , shown in Table 7 - 18 . 18 SoundVolume Attribute Table 7 - . Settings for the Definition Attribute Identifier 0x00 Silent Mode 0x01 Low Volume 0x 02 High Volume At t rib ute Defa ult Co nfi gu rati onRe giste r 7.3.2.13.8 d- This attribute represents the default configuration s as they are physically set on the device (example: har t setting for some of the attributes within this O p- ware dip switch setting, etc...) and represents the defaul erational Setting Attribute Set (for example: LED, Auto Lock, Sound Volume, and Operating Mode attri b- utes) . 19 - 7 Table , as in Copyright , The ZigBee Alliance. All rights reserved. 7 - 14 Page  2007 - 2016

413 ZigBee Cluster Library Specification 7 Chapter 075123 Closures – ZigBee Document need to be made This is a read - only attribute and is intended to allow clients to determine what changes M AY without having to query all the included attributes. It be beneficial for the clients to know what the MAY device’s original settings were in the event that the device needs to be restored to factory default settings. If the Client devic e would like to query and modify the door lock server’s operating settings, it SHOULD send read and write attribute request to the specific attributes. For example, the Buzzer bitmap within this attribute is off. It represents the hardware dip switch Buzz er setting (original default setting) is off and the Sound Volume attribute default value is in Silent Mode. However, it is possible that the current Sound Volume is in High Volume. Therefore, if the client wants to Sound Volume se t query/modify the curren tting on the server, the client SHOULD read/write to the Sound Volume attribute. 7 - 19 . Table Attribute DefaultConfigurationRegister Bitmap Description Number Enable Local Programming Attribute default v 0 - 0 alue is 0 (disabled) 1 - Enable Local Programming Attribute default value is 1 (enabled) 1 – 0 Keypad Interface default access is disabled 1 Keypad Interface default access is enabled - - 0 2 RF Interface default access is disabled - RF Interface defaul t access is enabled 1 5 0 – Sound Volume attribute default value is 0 (Slight Mode) 1 Sound Volume attribute default value is equal to something other than 0x00 – 6 0 – Auto Relock Time attribute default value = 0x00 Auto Relock Time attribute default value is equal to something other than 0x00 1 – Led Settings attribute default value = 0x00 – 0 7 1 – Led Settings attribute default value is equal to something other than 0x00 At t rib ute 7.3.2.13.9 EnableL ocalPro gr amming Enable/disable local programming on the door loc k. The local programming features includes but not limited to adding new user codes, deleting existing user codes, add new schedule, deleting existing schedule on the s enabled on the door local door lock interfaces. If this value is set to 0x01 or TRUE then local programming i lock. If it is set to 0x00 or FALSE then local programming is disabled on the door lock. Local programming is enabled by default. EnableOne To uchL ocking 7.3.2.13.10 At tr ibu te the door lock. Enable/disable the ability to lock the door lock with a single touch on 7.3.2.13.11 At t ri bu te EnableIns ideS tat u sLED Enable/disable an inside LED that allows the user to see at a glance if the door is locked. At t ri bu te EnablePri vac yM o d eBu tt on 7.3.2.13.12 Enable/disable a button inside the door that is used to put the lock into privacy mode. When the lock is in privacy mode it cannot be manipulated from the outside. 2016 15  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

414 Chapter 7 ZigBee Cluster Library Specification – 075123 ZigBee Document Closures Securit y Settings Attribute Set 7.3.2.14 Table 7 - 20 . Security Settings Attribute Set Id Description Type Access De f M /O Read*Write uint8 WrongCod eEntryLimit 0x0030 O 0 Reportable Read*Write uint8 0x0031 UserCodeTemporaryDisableTime 0 O Reportable Read*Write SendPINOverTheAir bool 0x0032 O 0 Reportable Read*Write 0x0033 RequirePINforRFOperation bool O 0 Reportable Read Only enum8 O ZigBeeSecurity 0x0034 0 Level Reportable At t ri bu te 7.3.2.14.1 W rong Co deEn tr yL imit The number of incorrect codes or RFID presentment attempts a user is allowed to enter before the door will UserCodeTemp oraryDisableTime . enter a lockout state. The lockout state will be for the duration of 7.3.2.14.2 UserC odeTe mp ora r yD isable Time At t ribu te The number of seconds that the lock shuts down following wrong code entry. 1 255 seconds. Device can shut - down to lock user out for specified amount of time. (Makes it difficult to try and guess a PI N for the device.) 7.3.2.14.3 SendPI NO verT he Air At t rib ute Boolean set to True if it is ok for the door lock server to send PINs over the air. This attribute determines the behavior of the server’s TX operation. If it is false, then it is not ok for the device to send PIN in any messages over the air. The PIN field within any door lock cluster message d unchange and masks the octet keep the first SHALL actual code by replacing with 0xFF. For example (PIN "1234" ): If the attribute value is True, 0x04 0x31 SHALL 0x32 0x33 0x34 be used in the PIN field in any door lock cluster message payload. If the attribute be used. value is False, 0x04 0xFF 0xFF 0xFF 0xFF SHALL 7.3.2.14.4 At t ribu t e Requi rePIN For RF Operati on Boolean set to True if the door lock server requires that an optional PINs be included in the payload of RF lock operation events like Lock, Unlock and Toggle in order to function. 7.3.2.14.5 At t ri bu te Zig BeeSecuri t yLe vel Door locks MAY sometimes wish to implement a higher level of security within the application protocol in the default network security. For instance a door lock MAY wish to use additional APS security additional to for cluster transactions. This protects the door lock against being controlled by any other devices which have access to the network key. ribute allows the door lock manufacturer to indicate what level of security the door The Security Level att lock requires. There are two levels of security possible within this cluster: 0 = Network Security (default)  1 = APS Security  This attribute is read only over the ZigBee n etwork to protect security method defined by each manufacturer. Copyright , The ZigBee Alliance. All rights reserved. 7 - 16 Page  2007 - 2016

415 ZigBee Cluster Library Specification 7 Chapter 075123 Closures ZigBee Document – However, manufacturer can provide method to modify the security setting locally on the device. The security setting modification will not take effect when the device is in a network. 7.3.2.15 d Event Masks Attribute Set Alarm an Table 7 - 21 . Alarm and Event Masks Attribute Set M/O Id Default Description Type Access Read/Write 53 0000 O 0x 0x0040 AlarmMask map16 Reportable Read/Write KeypadOperationEventMask map16 O 0x 0000 0x0041 Reportable Read/Write 0x0042 RFOperationEventMask map16 O 0000 0x Reportable Read/Write 0x0043 Manua l OperationEventMask O 0000 0x map16 Reportable Read/Write RFIDOperationEventMask 0x 000 0 O 0x0044 map16 Reportable Read/Write 0000 0x0045 map16 KeypadProgrammingEventMask 0x O Reportable Read/Write map16 0x0046 RFProgrammingEventMask 0x 0000 O Reportable Read/Write RFIDProgrammingEventMask map 16 0x0047 O 0x 0000 Reportable 7.3.2.15.1 Alarm Mask At t rib u te The alarm mask is used to turn on/off alarms for particular functions , as shown in Table 7 - 22 . Alarms for an alarm group are enabled if the associated alarm mask bit is set. Each bit represents a group of alarms. Entire alarm g roups can be turned on or off by setting or clearing the associated bit in the alarm mask. 7 Table - 22 . Alarm Code Table Alarm Code Alarm Condition Bitmap Number Deadbolt Jammed 0x00 0 1 0x01 ctory Defaults Lock Reset to Fa 0x02 2 Reserved 0x03 3 RF Module Power Cycled 0x04 4 Tamper Alarm – wrong code entry limit 0x05 5 Tamper Alarm - front escutcheon removed from main 0x06 6 Forced Door Open under Door Locked Condition 53 (13 CCB 1811 & 1812 value for attributes 0x40 to 0x47 default ZHA 1.2 Errata) 0553 - 2016 17  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

416 Chapter 7 ZigBee Cluster Library Specification – Closures 075123 ZigBee Document 7.3.2.15.2 Ke yp adO pera tio n E ven t Mask At t rib u te Event mask used to turn on and off the transmission of keypad operation events. This mask DOES NOT apply to the storing of events in the report table. For detail event mask value, please refer to 7 - 30 . Table t t rib ute A RFO perati onE ve nt Mask 7.3.2.15.3 Event mask used to turn on and off the transmission of RF operation events. This mask DOES NOT apply to the storing of events in the report table. For detail event mask value, please refer to Table 7 - 31 . 7.3.2.15.4 Manua lOpera tio nE v en t Mask At t rib ut e Event mask used to turn on and off manual operation events. This mask DOES NOT apply to the storing of events in the report table. For detail event mask value, please refer to Table 7 - 32 . 7.3.2.15.5 RFI DOpera ti onE ve nt Mask A t t rib ute Event mask used to turn on and off RFID operation events. This mask DOES NOT apply to the storing of events in the report table. Table - 7 33 . For detail event mask value, please refer to e At t ri but Ke yp adP rog rammi ngE ven tMask 7.3.2.15.6 Event mask used to turn on and off keypad programming events. This mask DOES NOT apply to the storing of events in the report table. Table 7 - 36 . For detail event mask value, please refer to RFPr ogra mmin gE ven t Mask At t rib ut e 7.3.2.15.7 mask used to turn on and off RF programming events. This mask DOES NOT apply to the storing of Event events in the report table. For detail event mask value, please refer to Table 7 - 37 . 7.3.2.15.8 RFI DPro gram ming E ven t Mask At t rib u te Event mask use d to turn on and off RFID programming events. This mask DOES NOT apply to the storing of events in the report table. . 38 Table - 7 For detail event mask value, please refer to 7.3.2.16 Server Com mands Received . The commands received by the se rver are listed in Table 7 - 23 . Commands Received by the Server Cluster Table 7 - 23 Command M/O ID Description Lock Door 0x00 M M Unlock Door 0x01 0x02 O Toggle Copyright , The ZigBee Alliance. All rights reserved. 7 - 18 Page  2007 - 2016

417 ZigBee Cluster Library Specification 7 Chapter 075123 Closures – ZigBee Document Command Description M/O ID 0x03 Unlock with Ti meout O Get Log Record 0x04 O 0x05 Set PIN Code O O 0x06 Get PIN Code O 0x07 Clear PIN Code O 0x08 Clear All PIN Codes 0x09 Set User Status O 0x0A O Get User Status Set Weekday Schedule 0x0B O Get Weekday Schedule O 0x0C 0x0D Clear Weekday Schedu le O 0x0E Set Year Day Schedule O 0x0F Get Year Day Schedule O O 0x10 Clear Year Day Schedule Set Holiday Schedule O 0x11 0x12 Get Holiday Schedule O 0x13 Clear Holiday Schedule O 0x14 Set User Type O 0x15 Get User Type O Set RFID Code O 0x16 7 O 0x1 Get RFID Code O Clear RFID Code 0x18 O Clear All RFID Codes 0x19 2016 19  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

418 Chapter 7 ZigBee Cluster Library Specification – ZigBee Document 075123 Closures 7.3.2.16.1 Lock D oo r C omma nd This command causes the lock device to lock the door. As of HA 1.2, this command includes an optional code for the lock. The door lock MAY require a PIN depending on the value of the [Require PIN for RF Operation attribute] . Figure 7 - 3 . Format of the Lock Door Command Variable Octets octstr Data Type PIN/RFID Code Field Name Unl ock D oor Co m mand 7.3.2.16.2 he lock device to unlock the door. As of HA 1.2, this command includes an optional This command causes t code for the lock. The door lock MAY require a code depending on the value of the [Require PIN for RF . Operation attribute] ed the lock will close when the auto relock time has expired. is support AutoRelockTime If the attribute Note: 7 Format of the Unlock Door Command . 4 - Figure Variable Octets octstr Data Type PIN/RFID Code Field Name 7.3.2.16.3 C omma nd Tog gle e lock. As of HA 1.2, this command includes an optional code for the lock. The door Request the status of th . lock MAY require a code depending on the value of the [Require PIN for RF Operation attribute] . ggle Command Format of the To 5 - Figure 7 Variable Octets octstr Data Type PIN/RFID Code Field Name Unl ock w ith Time out C omman d 7.3.2.16.4 This command causes the lock device to unlock the door with a timeout parameter. After the time in seconds will relock itself automatically. This timeout parameter is only specified in the timeout field, the lock device temporary for this message transition only and overrides the default relock time as specified in the [Auto not want to support te Relock Time attribute] attribute. If the door lock device is not capable of or does m- porary Relock Timeout, it SHOULD not support this optional command. Copyright , The ZigBee Alliance. All rights reserved. 7 - 20 Page  2007 - 2016

419 ZigBee Cluster Library Specification 7 Chapter 075123 Closures ZigBee Document – Format of the Unlock with Timeout Command . 6 - 7 Figure 1 Variable Octets uint16 octstr Data Type Timeout PIN/RFID Code in seconds Field Name Get L og Recor d 7.3.2.16.5 C omman d [Number of Log Records Supported attribute]. If log – Request a log record. Log number is between 1 number 0 is requested then the most recent log entry is returned. 7 Figure . Format of the Get Log Record Command 7 - 2 Octets uint16 Data Type Log Index Field Name Log record format: The log record format is defined in the description of the Get Response Log Record command. 7.3.2.16.6 User S tat us and U ser T ype Val ues The following User Status and User Type values are used in the payload of multiple commands: User Status: Used to indicate what the st atus is for a specific user ID. User Status Value . - 24 Table 7 Enum Description 0 Available Occupied / Enabled 1 3 Occupied / Disabled Not Supported 0xff User Type : Used to indicate what the type is for a specific user ID. 7 User Type Value - 25 . Table Description Enum User (default) Unrestricted 0 1 Year Day Schedule User 2016 21  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

420 Chapter 7 ZigBee Cluster Library Specification – Closures 075123 ZigBee Document Description Enum 2 Week Day Schedule User 3 Master User Non Access User 4 Not Supported 0xff Unrestricted: User has access 24/7 provided proper PIN is supplied (e.g., owner). Unrestricted user type is the default user type. Y ear Day Schedule User : User has ability to open lock within a specific time period (e.g., guest). User has ability to open lock based on specific time period within a reoccurring Week Day Schedule User : weekly schedule (e.g., cleaning worker). Master User User has ability to both program and operate the door lock. This user can manage the users and : user schedules. In all other respects this user matches the unrestricted (default) user. Master user is the only user that can disable the user interface (keypa d, RF, etc...). Non Access User : User is recognized by the lock but does not have the ability to open the lock. This user will only cause the lock to generate the appropriate event notification to any bound devices. Com mand 7.3.2.16.7 Set PIN C ode ock. Set a PIN into the l Format of the Set PIN Code Command . 8 - 7 Figure 2 1 1 Variable Octets octstr uint16 uint8 enum8 Data Type User Type User ID User Status PIN Field Name - attribute]. Only the values 1 (Occupied/Enabled) and 3 [# of PIN Users Supported ser ID is between 0 U (Occupied/Disabled) are allowed for User Status. 7.3.2.16.8 Get PI N C ode Com mand - [# of PIN Users Supported attribute]. Retrieve a PIN Code. User ID is between 0 - Format of the Get PIN Code Command . Figure 7 9 2 Octets uint16 Data Type User ID Field Name C omman d Clear PI N C ode 7.3.2.16.9 Delete a PIN. User ID is between 0 [# of PIN Users Supported attribute]. - Copyright , The ZigBee Alliance. All rights reserved. 7 - 22 Page  2007 - 2016

421 ZigBee Cluster Library Specification 7 Chapter ZigBee Document 075123 – Closures mat of the Clear PIN Code Command . 10 For Figure 7 - 2 Octets uint16 Data Type User ID Field Name If you delete a PIN Code and this user didn't have a RFID Code, the user status is set to "0 Note: Available", the user type is set to the default value and all schedules are also set to the default values. 7.3.2.16.10 Com mand Clear Al l PI N C od e s Clear out all PINs on the lock. have the same effect as the Clear PIN Code SHOULD On the server, the clear all PIN codes command Note: e and schedules. command with respect to the setting of user status, user typ Set User Sta tus 7.3.2.16.11 C omman d Set the status of a user ID. User Status value of 0x00 is not allowed. In order to clear a user id, the Clear ID Command SHALL be used. For user status value please refer to User Status Value. 7 - 11 . Format of the Set User Status Command Figure 1 2 Octets uint8 uint16 Data Type User ID User Status Field Name 7.3.2.16.12 Get Use r Sta tus C omman d Get the status of a user. Figure 7 - 12 . Format of the Get User Status Command 2 Octets uint16 Data Type User ID Field Name Comma nd Set W eek Da y Sch edule 7.3.2.16.13 Set a weekly repeating schedule for a specified user. 13 - 7 Format of the Set Week Da Figure y Schedule Command . 1 2 1 1 1 1 1 Octets Data uint8 uint16 map8 uint8 uint8 uint8 uint8 Type Schedule Field Days Mask Start Hour Start Minute End Hour User ID End Minute ID # Name 2016 23  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

422 Chapter 7 ZigBee Cluster Library Specification ZigBee Document – 075123 Closures – [# of Week Day Schedules Per User att ribute]. Schedule ID: number is between 0 User ID: – [# of Total Users Supported attribute]. is between 0 Days Mask: bitmask of the effective days in the order XSFTWTMS. Figure - 14 . Format of Days Mask Bits 7 2 6 0 7 1 5 4 3 Sun Sat F ri Thur Wed Tue Mon Reserved Days mask is listed as bitmask for flexibility to set same schedule across multiple days. For the door lock that does not support setting schedule across multiple days within one command, it SHOULD respond with ZCL INVALID_FIELD (0 x85) status when received the set schedule command days bitmask field has multiple days selected. in decimal format represented by 0x00 – 0x17 (00 to 23 hours). Start Hour: in decimal format represented by 0x00 0x3B (00 to 59 mins). – Start Minute: – in decimal format represented by 0x00 r: End Hou 0x17 (00 to 23 hours). End Hour SHALL be equal or greater than Start Hour. End Minute: in decimal format represented by 0x00 – 0x3B (00 to 59 mins). If End Hour is equal with Start Hour, End Minute SHALL be greate r than Start Minute. When the Server Device receives the command, the Server Device MAY change the user type to the specific 7.3.2.5 schedule user type. Please refer to section , Process for Creating a New User with Schedule , at the beginning of this cluster. 7.3.2.16.14 Get W eek Da y Sc h edule Comma nd Retrieve the specific weekly schedule for the specific user. Format of the Get Week Day Schedule Command 7 . 15 - Figure 2 1 ctets O uint16 uint8 Data Type User ID Schedule ID Field Name Clear W eek Da y S chedule 7.3.2.16.15 Co mman d Clear the specific weekly schedule for the specific user. Figure - 7 Command 16 . Format of the Clear Week Day Schedule 1 2 Octets uint16 uint8 Data Type User ID Schedule ID Field Name Com mand Set Year Da y Sche dule 7.3.2.16.16 - Set a time specific schedule ID for a specified user. Copyright , The ZigBee Alliance. All rights reserved. 7 - 24 Page  2007 - 2016

423 ZigBee Cluster Library Specification Chapter 7 Closures – ZigBee Document 075123 Figure - 17 . Format of the Set Year Day Schedule Command 7 4 4 2 1 Octets uint32 uint32 uint16 uint8 Data Type ZigBee Local End Time ZigBee Local Start Time User ID Schedule ID Field Name [# of Year Day Schedules Supported Per User attribute]. User ID is Schedule ID number is between 0 – between 0 – [ # of Total Users Supported attribute]. Start time and end time are given in ZigBee LocalTime. End time must be greater than the start time. When the Server Device receives the command, the Server Device MAY change the user type to the specific er type. Please refer to schedule us at the beginning of this Process for Creating a New User with Schedule cluster. Comma nd 7.3.2.16.17 Get Year Da y Sch edule Retrieve the specific year day schedule for the specific user. Format of the Get Year Day Schedule Command . Figure 7 - 18 1 2 Octets uint8 uint16 Data Type User ID Schedule ID Field Name 7.3.2.16.18 Co mman d Clear Year Da y Sc hedule schedule for the specific user. Clears the specific year day . 19 Figure - 7 Format of the Clear Year Day Schedule Command 1 2 Octets uint16 uint8 Data Type User ID Schedule ID Field Name Set H olida y Sc hed ule 7.3.2.16.19 C omman d ime and ZigBee local end time with respect to any Set the holiday Schedule by specifying ZigBee local start t Lock Operating Mode. 2016 25  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

424 Chapter 7 ZigBee Cluster Library Specification ZigBee Document 075123 Closures – 7 - 20 . Format of the Set Holiday Schedule Command Figure 1 4 4 1 Octets enum8 uint32 uint32 uint8 Data Type Operating Mode ZigBee Local End ZigBee Local Holiday Schedule Field Name Start Time ID During Holiday Time Holiday Schedule ID number is between 0 – [# of Holiday Schedules Supported attribute]. Start time and end time are given in ZigBee LocalTime. End time must be greater than th e start time. Operating Mode is valid enumeration value as listed in operating mode attribute. Com mand Get H olida y Sche dule 7.3.2.16.20 Get the holiday Schedule by specifying Holiday ID. - 7 Figure liday Schedule Command Format of the Get Ho . 21 1 Octets uint8 Data Type Holiday Schedule ID Field Name 7.3.2.16.21 Clear Holi da y Sch edule Comma nd Clear the holiday Schedule by specifying Holiday ID. chedule Command Format of the Clear Holiday S . 22 - 7 Figure 1 Octets uint8 Data Type Holiday Schedule ID Field Name 7.3.2.16.22 Set User T ype Co mmand Set the type byte for a specified user. For user type value please refer to User Type Value. - t of the Set User Type Command Forma Figure 7 . 23 2 1 Octets enum8 uint16 Data Type User ID User Type Field Name C o mmand Get Use r T ype 7.3.2.16.23 Retrieve the type byte for a specific user. Copyright , The ZigBee Alliance. All rights reserved. 7 - 26 Page  2007 - 2016

425 Chapter ZigBee Cluster Library Specification 7 Closures – ZigBee Document 075123 and 7 Figure - 24 . Format of the Get User Type Comm 2 Octets uint16 Data Type User ID Field Name Co mmand 7.3.2.16.24 Set R FID C ode Set an ID for RFID access into the lock. Figure 7 - 25 . Format of the Set RFID Code Command Variable 1 1 2 Octets octstr enum8 8 uint uint16 Data Type User ID User Status RFID Code User Type Field Name User ID : B etween 0 - [# of RFID Users Supported attribute]. Only the values 1 (Occupied/Enabled) and 3 (Occupied/Disabled) are allowed for User Status. Used to indicate what User Status: the status is for a specific user ID. The values are according to “Set PIN” while not all are supported. 26 - 7 Table . User Status Byte Values for Set RFID Code Command User Status Byte Value (Access Given) Occupied / Enabled 1 Occupied / Disabled 3 0xff Not Supported : User Type ” The values are the same as used for “Set PIN Code . 7.3.2.16.25 Co mmand Get R FID C ode - Retrieve an ID. User ID is between 0 [# of RFID Users Supported attribute]. 2016 27  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

426 Chapter 7 ZigBee Cluster Library Specification – Closures 075123 ZigBee Document 7 Figure - 26 Format of the Get RFID Code Command . 2 Octets uint16 Data Type User ID Field Name Clear RFI D C ode 7.3.2.16.26 Comma nd - Delete an ID. User ID is between 0 [# of RFID Users Supported attribute]. If you delete a RFID code and this user d idn't have a PIN code, the user status has to be set to "0 Available", the user type has to be set to the default value, and all schedules which are supported have to be set to the default values. - . 27 7 Format of the Clear RFID Code Command Figure 2 Octets uint16 Data Type User ID Field Name 7.3.2.16.27 Clear Al l R FI D C o des Co mman d Clear out all RFIDs on the lock. If you delete all RFID codes and this user didn't have a PIN code, the user status has to be set to "0 Ava ilable", the user type has to be set to the default value, and all schedules which are supported have to be set to the default values. Server C ommands Generated 7.3.2.17 7 - 27 . The commands generated by the server are listed in Table Table 7 - 27 . Commands Generated by the Server Cluster Command ID Description M/O M 0x00 Lock Door Response M 0x01 Unlock Door Response Toggle Response O 0x02 Unlock with Timeout Response O 0x03 0x04 Get Log Reco rd Response O O 0x05 Set PIN Code Response O Get PIN Code Response 0x06 0x07 O Clear PIN Code Response Clear All PIN Codes Response 0x08 O Copyright , The ZigBee Alliance. All rights reserved. 7 - 28 Page  2007 - 2016

427 ZigBee Cluster Library Specification 7 Chapter ZigBee Document 075123 Closures – Command ID Description M/O O 0x09 Set User Status Response O Get User Status Response 0x0A 0x0B Set Weekday Schedule Response O O 0x0C Get Weekday Schedule Response O 0x0D Clear Weekday Schedule Response O 0x0E Set Year Day Schedule Response Get Year Day Schedule Response 0x0F O 0x10 O Clear Year Day Schedule Response Set Holiday Schedule Response 0x11 O Get Holiday Schedule Res ponse O 0x12 O 0x13 Clear Holiday Schedule Response 0x14 Set User Type Response O Get User Type Response O 0x15 O 0x16 Set RFID Code Response Get RFID Code Response O 0x17 O 0x18 Clear RFID Code Response 0x19 Clear All RFID Codes Response O 0x20 O Operati ng Event Notification O 0x21 Programming Event Notification Lock D oo r Res pon se Com mand 7.3.2.17.1 This command is sent in response to a Lock command with one status byte payload. The Status field SHALL be set ). 2.5 to SUCCESS or FAILURE (see indicates if the message has received successfully. To determine the lock and/or door y The status byte onl status, the client SHOULD query to [Lock State attribute] and [Door State attribute]. 2016 29  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

428 Chapter 7 ZigBee Cluster Library Specification – ZigBee Document Closures 075123 . Format of the Lock Doo 28 r Response Command Payload Figure 7 - 8 Bits enum8 Data Type Status Field Name 7.3.2.17.2 Unl ock D oor Resp onse C omma nd This command is sent in response to a Toggle command with one status byte payload. The Status field SHALL b e set to SUCCESS or FAILURE (see 2.5 ). The statu s byte only indicates if the message has received successfully. To determine the lock and/or door and [Door State attribute]. status, the client SHOULD query to [Lock State attribute] he Unlock Door Response Command Payload . Format of t 29 - Figure 7 8 Bits enum8 Data Type Status Field Name Tog gle Res po nse Comma nd 7.3.2.17.3 This command is sent in response to a Toggle command with one status byte payload. The Status field 2.5 ). SHALL be set to SUCCESS or FAILURE (see e status byte only indicates if the message has received successfully. To determine the lock and/or door Th and [Door State attribute]. status, the client SHOULD query to [Lock State attribute] 7.3.2.17.4 Unl ock w ith Time out Resp onse Co mmand onse to an Unlock with Timeout command with one status byte payload. The This command is sent in resp Status field SHALL be set to SUCCESS or FAILURE (see 2.5 ). The status byte only indicates if the message has received successfully. To determine the lock and/or door status, the clien t SHOULD query to [Lock State attribute] and [Door State attribute]. 7.3.2.17.5 Get L og Recor d R esponse Com man d Returns the specified log record. If an invalid log entry ID was requested, it is set to 0 and the most recent log entry will be returned. Figure 7 - 30 . Format of the Get Log Record Response Command 1 1 1 4 Variable 2 2 Octets Data string uint16 uint8 uint8 enum8 uint32 uint16 Type p- O Event ID/Alarm Source (see Log Event Field Code (see eration Event PIN Entry Timestamp Operation User ID Type Name ID Codes ) Event Sources ) Copyright , The ZigBee Alliance. All rights reserved. 7 - 30 Page  2007 - 2016

429 ZigBee Cluster Library Specification Chapter 7 – Closures ZigBee Document 075123 he log entry requested is 0, the the index into the log table where this log entry is stored. If t Log Entry ID: most recent log is returned with the appropriate log entry ID. Timestamp: A ZigBee LocalTime used to timestamp all events and alarms on the door lock. Event Type: . Indicates the type of event that took place on the door lock 0x00 = Operation 0x01 = Programming 0x02 = Alarm Source: A source value where available sources are: 0x00 = Keypad 0x01 = RF 0x02 = Manual 0x03 = RFID 0xff = Indeterminate e 0xff (Indeterminate). If the Event type is 0x02 (Alarm) then the source SHOULD be but does not have to b A one byte value indicating the type of event that took place on the door lock depending on the Event ID: event code table provided for a given event type and source. ated the event on the door lock if one is User ID: A two byte value indicating the ID of the user who gener available. If none is available, 0xffff has to be used. A ZigBee string indicating the PIN code or RFID code that was used to create the event on the door PIN / ID: lock if one is available. 7.3.2.17.6 o mman d Set PIN C ode Res ponse C Returns status of the PIN set command. Possible values are: 0 = Success 1 = General failure 2 = Memory full 3 = Duplicate Code error Format of the Set PIN Code Response Command . 7 31 Figure - 1 Octets uint8 ata Type D Status Field Name Co mman d Get PI N C ode Res ponse 7.3.2.17.7 Returns the PIN for the specified user ID . 2016 31  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

430 Chapter 7 ZigBee Cluster Library Specification ZigBee Document 075123 Closures – 7 - 32 . Format of the Get PIN Code Response Command Figure Variable 1 1 2 Octets octstr enum8 t8 uint16 uin Data Type User Status User Type Code User ID Field Name UserId SHALL have the fo If the requested is valid and the Code doesn't exist, Get RFID Code Response l- lowing format: UserId = requested UserId UserStatus = 0 (available) UserType = 0xFF (not s upported) RFID = 0 (zero length) th an error status not equal to is invalid, send Default Response wi UserId requested the If ZCL_SUCCESS(0 x00). Com man d Clear PI N C ode Re sponse 7.3.2.17.8 Returns pass/fail of the command. 7 - 33 Figure . Format of the Clear PIN Code Response Command 1 Octets uint8 Data Type Status Field Name 0=pass Field Value 1=fail C om mand Clear Al l PI N C od es Respo nse 7.3.2.17.9 Returns pass/fail of the command. Figure Format of the Clear All PIN Codes Response Command . 34 - 7 1 Octets uint8 Data Type Status Field Name 0=pass Field Value 1=fail Com man d Set User Sta tus R esponse 7.3.2.17.10 Returns the pass or fail value for the setting of the user status. Copyright , The ZigBee Alliance. All rights reserved. 7 - 32 Page  2007 - 2016

431 Chapter ZigBee Cluster Library Specification 7 ZigBee Document 075123 Closures – Format of the Set User Status Response Command . 35 - Figure 7 1 Octets uint8 Data Type Status Field Name 0=pass Field Value 1=fail Get Use r Sta tus R esponse 7.3.2.17.11 Com man d Returns the user status for the specified user ID. 7 . Format of the Get User Status Response Command 36 - Figure 2 1 Octets uint8 uint16 Data Type User Status User ID Field Name 7.3.2.17.12 Set W eek Da y Sch edule Respo nse C omman d Returns pass/fail of the command . 37 7 Figure . Format of the Set Week Day Schedule Response Command - 1 Octets uint8 Data Type Status Field Name 0=pass Field Value 1=fail 7.3.2.17.13 Get W eek Da y Sc h edule Respo nse C omman d Returns the weekly repeating schedule data for the specified schedule ID. Figure 7 - 38 . Format of the Get Week Day Schedule Response Command 1 0/1 0/1 0/1 0/1 0/1 1 2 Octets Data uint8 uint8 uint8 uint8 uint8 uint8 uint8 uint16 Type i- Start M Start Days Schedule End Field End Hour U ser ID Status ID Hour Minute Mask nute Name 7 . 3 . 2 . 1 7 . 1 3 . 1 S c h e d u l e I D F i e l d The requested Schedule ID. 2016 33  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

432 Chapter 7 ZigBee Cluster Library Specification ZigBee Document – 075123 Closures U s e r I D F i e l d 7 . 3 . 2 . 1 7 . 1 3 . 2 The requested User ID. 7 . 3 . 2 . 1 7 . 1 3 . 3 S t a t u s ZCL SUCCESS (0x00) if both Schedule ID and User ID are valid and there is a corresponding schedul e entry. ZCL INVALID_FIELD (0x85) if either Schedule ID and/or User ID values are not within valid range ZCL NOT_FOUND (0x8B) if both Schedule ID and User ID are within the valid range, however, there is not corresponding schedule entry found. Only if the status is ZCL SUCCESS that other remaining fields are included. For other (error) status values, only the fields up to the status field SHALL be present. 7 . 3 . 2 . 1 7 . 1 3 . 4 D a y s M a s k enabled status of Days mask is a bitmask of the effective days in the order [E]SMT WTFS. Bit 7 indicates the the schedule ID, with the lower 7 bits indicating the effective days mask. 7 - 39 . Format of Days Mask Bits Figure 7 0 1 2 3 4 5 6 Sat Fri Thu Wed Tue Mon EN Sun nabled, 0=disabled Bit 7: Enabled status: 1=e 7 . 3 . 2 . 1 7 . 1 3 . 5 S t a r t H o u r The Start Hour of the Week Day Schedule: 0 - 23 7 . 3 . 2 . 1 7 . 1 3 . 6 S t a r t M i n u t e The Start Min of the Week Day Schedule: 0 59 - 7 . 3 . 2 . 1 7 . 1 3 . 7 E n d H o u r - 23, must be greater than Start Hour The End Hour of the Week Day Schedule: 0 7 . 3 . 2 . 1 7 . 1 3 . 8 E n d M i n u t e 59 - The End Min of the Week D ay Schedule: 0 7.3.2.17.14 Co mman d Clear W eek Da y S chedule I D Respo nse . Returns pass/fail of the command 40 Figure - 7 . Format of the Clear Week Day Schedule ID Response Command 1 Octets uint8 Data Type tus Sta Field Name 0=pass Field Value 1=fail Copyright , The ZigBee Alliance. All rights reserved. 7 - 34 Page  2007 - 2016

433 ZigBee Cluster Library Specification Chapter 7 Closures – 075123 ZigBee Document Set Year Da y Sche dule Respo nse 7.3.2.17.15 C o mmand Returns pass/fail of the command . 7 Figure - 41 . Format of the Set Year Day Schedule Response Command 1 Octets uint8 Data Type Status Field Name 0=pass Field Value 1=fail 7.3.2.17.16 Get Year Da y Sch edule Respo nse C omman d Returns the weekly repeating schedule data for the specified schedule ID. Format of the Get Year Day Schedule Response C ommand Figure 7 - 42 . 0/4 0/4 1 2 1 Octets uint16 uint32 uint32 uint8 uint8 Data Type ZigBee Local ZigBee Local User ID Status Schedule ID Field Name End Time Start Time S c h e d u l e I D F i e l d 7 . 3 . 2 . 1 7 . 1 6 . 1 The requested Schedule ID. U s e r I D F i e l d 7 . 3 . 2 . 1 7 . 1 6 . 2 The requested User ID. S t a t u s 7 . 3 . 2 . 1 7 . 1 6 . 3 SS (0x00) if both Schedule ID and User ID are valid and there is a corresponding schedule ZCL SUCCE entry. ZCL INVALID_FIELD (0x85) if either Schedule ID and/or User ID values are not within valid range the valid range, however, there is not ZCL NOT_FOUND (0x8B) if both Schedule ID and User ID are within corresponding schedule entry found. Only if the status is ZCL SUCCESS that other remaining fields are included. For other (error) status values, only the fields up to the status field SHALL be present. Z i g B e e L o c a l S t a r t T i m e 7 . 3 . 2 . 1 7 . 1 6 . 4 Start Time of the Year Day Schedule representing by ZigBee LocalTime. Z i g B e e L o c a l E n d T i m e 7 . 3 . 2 . 1 7 . 1 6 . 5 End Time of the Year Day Schedule representing by ZigBee LocalTime. 2016 35  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

434 Chapter 7 ZigBee Cluster Library Specification ZigBee Document 075123 Closures – Comma nd Clear Year Da y Sc hedule Resp onse 7.3.2.17.17 Returns pass/fail of the command . . 43 - 7 Figure Format of the Clear Year Day Schedule Response Command 1 Octets uint8 Data Type Status Field Name 0=pass Field Value 1=fail Set H olida y Sc hed ule Res ponse Co mmand 7.3.2.17.18 . Returns pass/fail of the command e Figur . 44 - 7 Format of the Set Holiday Schedule Response Command 1 Octets uint8 Data Type Status Field Name 0=pass Field Value 1=fail 7.3.2.17.19 Get H olida y Sche dule Respo nse C o mmand Returns the Holiday Schedule Entry fo r the specified Holiday ID. Figure 7 - 45 . Format of the Get Holiday Schedule Response Command 0/4 0/4 1 1 0/1 Octets uint8 uint8 uint32 enum8 uint32 Data Type ZigBee Local al ZigBee Loc Status Holiday Operating Mode During Field Name Holiday Schedule ID End Time Start Time H o l i d a y S c h e d u l e I D 7 . 3 . 2 . 1 7 . 1 9 . 1 The requested Holiday Schedule ID 7 . 3 . 2 . 1 7 . 1 9 . 2 S t a t u s ZCL SUCCESS (0x00) if both Schedule ID and User ID are valid and there is a corresponding schedule entry. ZCL INVALID_FIELD (0x 85) if either Schedule ID and/or User ID values are not within valid range ZCL NOT_FOUND (0x8B) if both Schedule ID and User ID are within the valid range, however, there is not corresponding schedule entry found. Copyright , The ZigBee Alliance. All rights reserved. 7 - 36 Page  2007 - 2016

435 ZigBee Cluster Library Specification 7 Chapter 075123 Closures ZigBee Document – er remaining fields are included. For other (error) status values, Only if the status is ZCL SUCCESS that oth only the fields up to the status field SHALL be present. Z i g B e e L o c a l S t a r t T i m e 7 . 3 . 2 . 1 7 . 1 9 . 3 Start Time of the Year Day Schedule representing by ZigBee LocalTime. Z i g B e e L o c a l E n d T i m e 7 . 3 . 2 . 1 7 . 1 9 . 4 Year Day Schedule representing by ZigBee LocalTime. End Time of the 7 . 3 . 2 . 1 7 . 1 9 . 5 O p e r a t i n g M o d e Operating Mode is valid enumeration value as listed in operating mode attribute . 7.3.2.17.20 C omman d Clear Holi da y Sch edule Respo nse . Returns pass/fail of the command Format of the Clear Holiday Schedule Response Command Figure . - 7 46 1 Octets uint8 Data Type Status Field Name 0=pass Field Value 1=fail 7.3.2.17.21 Set User T ype Res ponse Co mman d Returns the pass or fail value for the setting of the user type. 7 47 - Format of the Set User Type Response Command e . Figur 1 Octets uint8 Data Type Status Field Name 0=pass Field Value 1=fail Get Use r T ype Re sponse 7.3.2.17.22 Com man d Returns the user type for the specified user ID. - 48 . Format of the Get User Type Response Command 7 Fi gure 1 2 Octets enum8 uint16 Data Type User Type User ID Field Name , The ZigBee Alliance. All rights reserved. 2007 - 2016 Copyright 37  Page 7 -

436 Chapter 7 ZigBee Cluster Library Specification – 075123 ZigBee Document Closures 7.3.2.17.23 Set R FID C ode Re sponse Com man d Returns status of the Set RFID Code command. Possible v alues are: 0 = Success ailure 1 = General f 2 = Memory full 3 = Duplicate ID error Figure - 49 . Format of the Set RFID Code Response Command 7 1 Octets uint8 Data Type Status Field Name 7.3.2.17.24 Get R FID C ode Re sponse Com man d Returns the RFID code for the specified user ID . - . Format of the Get RFID Code Response Command 50 Figure 7 1 2 Variable 1 Octets octstr enum8 uint8 uint16 Data Type U ser Type User Status RFID Code User ID Field Name If the requested UserId is valid and the Code doesn't exist, Get RFID Code Response SHALL have the fo l- lowing format: UserId = requested UserId UserStatus = 0 (available) UserType = 0xFF (not supported) RFID = 0 (zero length) If request is invalid, send Default Response with an error status not equal to UserId ed ZCL_SUCCESS(0x00). 7.3.2.17.25 Clear RFI D C ode Respo nse C omma nd Returns pass/fail of the command. Format of the Clear RIFD Code R esponse Command . 7 Figure 51 - 1 Octets uint8 Data Type Status Field Name 0=pass Field Value 1=fail Copyright , The ZigBee Alliance. All rights reserved. 7 - 38 Page  2007 - 2016

437 ZigBee Cluster Library Specification 7 Chapter – Closures ZigBee Document 075123 7.3.2.17.26 Clear Al l R FI D C o des Resp onse Co mmand Returns pass/fail of the command. - 7 Figure Response Command ID Codes F Format of the Clear All R . 52 1 Octets uint8 Data Type Status Field Name 0=pass Field Value 1=fail 7.3.2.17.27 Operati on E ve nt N oti ficat ion C omma nd The door lock server sends out operation event notification when the event is triggered by the various event sources. The specif ic operation event will only be sent out if the associated bitmask is enabled in the various attributes in the Event Masks Attribute Set. All events are optional. Figure 7 53 . Format of the Operation Event No tification Command - 1 2 Variable/0 1 4 1 Octets uint16 tring uint8 uint8 s uint8 uint32 Data Type Operation Operation User ID PIN ZigBeeLocalTime Data Field Name Event C ode Event Source O p e r a t i o n E v e n t S o u r c e s 7 . 3 . 2 . 1 7 . 2 7 . 1 gered from. This field indicates where the event was trig - . Operation Event Source Value 28 Table 7 Value Source 0x00 Keypad 0x01 RF 0x02 Manual RFID 0x03 Indeterminate 0xFF 2016 39  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

438 Chapter 7 ZigBee Cluster Library Specification ZigBee Document – 075123 Closures O p e r a t i o n E v e n t C o d e s 7 . 3 . 2 . 1 7 . 2 7 . 2 The door lock optionally sends out notifications (if t hey are enabled) whenever there is a significant oper a- tional event on the lock. When combined with a source from the Event Source table above, the following operational event codes constitute an event on the door lock that can be both logged and sent to a bound device using the Operation Event Notification command. Table Not all operation event codes are applicable to each of the event source. - 29 marks each event code 7 applicable to the event source. with “A” if the event code is Table 7 - 29 . Operation Event Code Value Manual Value Operation Event Code Keypad RF RFID A 0x00 UnknownOrMfgSpecific A A A 0x01 Lock A A A A Unlock A 0x02 A A A 0x03 LockFailureInvalidPINorID A A A A A A ockFailureInvalidSchedule L 0x04 A 0x05 UnlockFailureInvalidPINorID A A A A 0x06 UnlockFailureInvalidSchedule A 0x07 OneTouchLock A 0x08 KeyLock A A 0x09 KeyUnlock A AutoLock 0x0A 0x0B ScheduleLock A A 0x0C ScheduleUnlock A Manual Lock (Key or Thumbturn) 0x0D A 0x0E Manual Unlock (Key or Thumbturn) A Access User Operational Event - Non 0x0F 7 . 3 . 2 . 1 7 . 2 7 . 3 U s e r I D The User ID who performed the event. P I N 7 . 3 . 2 . 1 7 . 2 7 . 4 The PIN that is associated with the User ID who performed the event. Copyright , The ZigBee Alliance. All rights reserved. 7 - 40 Page  2007 - 2016

439 ZigBee Cluster Library Specification 7 Chapter 075123 Closures – ZigBee Document L o c a l T i m e 7 . 3 . 2 . 1 7 . 2 7 . 5 he ZigBee LocalTime that indicates when the event is triggered. If time is not supported, the field SHALL T be populated with default not used value 0xFFFFFFFF. 7 . 3 . 2 . 1 7 . 2 7 . 6 D a t a The operation event notification command contains a variable string, which can be used to pa ss data ass o- ciated with a particular event. Generally this field will be left empty. However, manufacturer can choose to use this field to store/display manufacturer - specific information. K e y p a d O p e r a t i o n E v e n t N o t i f i c a t i o n 7 . 3 . 2 . 1 7 . 2 7 . 7 ion feature is enabled by setting the associated bitmasks in the [Keypad Keypad Operation Event Notificat Operation Event Mask attribute]. . Table 7 - 30 Keypad Operation Event Value Event Attribute Operation ription Event Desc Bitmask Source Event Code 0x00 0x00 BIT(0) Unknown or manufacturer - specific keypad operation event 0x00 0x01 BIT(1) Lock, source: keypad Unlock, source: keypad BIT(2) 0x00 0x02 Lock, source: keypad, error: invalid PIN BIT(3) 0x03 0x00 0x00 0x04 BIT(4) Lock, source: key pad, error: invalid schedule 0x00 0x05 BIT(5) Unlock, source: keypad, error: invalid code 0x00 0x06 BIT(6) Unlock, source: keypad, error: invalid schedule 0x00 0x0F BIT(7) Non - Access User operation event, source keypad. 7 . 3 . 2 . 1 7 . 2 7 . 8 R F O p e r a t i o n E v e n t N o t i f i c a t i o n RF Operation Event Notification feature is enabled by setting the associated bitmasks in the [RF Operation Event Mask attribute]. - 31 . RF Operation Event Value 7 Table Event Attribut e Operation Event Description Bitmask Source Event Code 0x01 0x00 BIT(0) Unknown or manufacturer - specific RF operation event 0x01 0x01 BIT(1) Lock, source: RF Unlock, source: RF BIT(2) 0x01 0x02 0x01 Lock, source: RF, error: invalid code BIT(3) 0x03 2016 41  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

440 Chapter 7 ZigBee Cluster Library Specification ZigBee Document 075123 – Closures Operation Attribut e Event Event Description Event Code Source Bitmask 0x04 BIT(4) 0x01 : RF, error: invalid schedule Lock, source 0x01 0x05 BIT(5) Unlock, source: RF, error: invalid code 0x06 Unlock, source: RF, error: invalid schedule BIT(6) 0x01 7 . 3 . 2 . 1 7 . 2 7 . 9 M a n u a l O p e r a t i o n E v e n t N o t i f i c a t i o n Manual Operation Event Notification feature is enabled by setting the associated bitmasks in the [Manual Operation Event Mask attribute] attribute. 7 - 32 . Manual Operation Event Value Table Event Operation Attribute Event Description Source Bitmask Event Code 0x02 0x00 BIT(0) U nknown or manufacturer - specific manual operation event BIT(1) Thumbturn Lock 0x02 0x01 BIT(2) 0x02 0x02 Thumbturn Unlock 0x02 BIT(3) One touch lock 0x07 0x08 BIT(4) Key Lock 0x02 0x02 0x09 BIT(5) Key Unlock 0x02 0x0A BIT(6) Auto lock 0x02 0x0B BIT(7 ) Schedule Lock BIT(8) 0x02 0x0C Schedule Unlock 0x02 0x0D BIT(9) Manual Lock (Key or Thumbturn) 0x02 0x0E BIT(10) Manual Unlock (Key or Thumbturn) 7 . 3 . 2 . 1 7 . 2 7 . 1 0 R F I D O p e r a t i o n E v e n t N o t i f i c a t i o n RFID Operation Event Notification feature is enabled by setting the as p- sociated bitmasks in the [RFID O eration Event Mask attribute]. Table 7 - 33 . RFID Operation Event Value Event Attribute Operation Event Description Event Code Source Bitmask turer Unknown or manufac BIT(0) 0x00 0x03 specific keypad operation event - Copyright , The ZigBee Alliance. All rights reserved. 7 - 42 Page  2007 - 2016

441 ZigBee Cluster Library Specification Chapter 7 075123 Closures – ZigBee Document Attribute Event Operation Event Description Source Bitmask Event Code 0x03 BIT(1) Lock, source: RFID 0x01 0x03 0x02 BIT(2) Unlock, source: RFID Lock, source: RFID, error: invalid RFID ID BIT(3) 0x03 0x03 0x03 0x04 BIT(4) Lock, source: RFID, error: invalid schedule U nlock, source: RFID, error: invalid RFID ID BIT(5) 0x03 0x05 BIT(6) 0x03 0x06 Unlock, source: RFID, error: invalid schedule Co mmand 7.3.2.17.28 Progra mmin g E ve nt No ti ficati on The door lock server sends out a programming event notification whenever a programming event takes place the door lock. on As with operational events, all programming events can be turned on and off by flipping bits in the associated event mask. The programming event notification command includes an optional string of data that can be used by the specific information if that is required. - pass some manufacturer manufacturer to 54 - 7 Figure Format of the Programming Event Notification Command . 1 Variable/0 1 1 2 4 1 1 Octets tring uint8 uint32 uint8 s uint16 uint8 enum8 ui nt8 Data Type Program ZigBee Program User Field Data User Type PIN User ID Status Event Code Event Source LocalTime Name 7 . 3 . 2 . 1 7 . 2 8 . 1 O p e r a t i o n E v e n t S o u r c e s This field indicates where the event was trigger ed from. . 34 Table - Operation Event Source Value 7 Source Value 0x00 Keypad 0x01 RF Reserved (Manual in Operation Event) 0x02 RFID 0x03 Indeterminate 0xFF 2016 43  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

442 Chapter 7 ZigBee Cluster Library Specification – Closures 075123 ZigBee Document 7 . 3 . 2 . 1 7 . 2 8 . 2 P r o g r a m m i n g E v e n t C o d e s The door lock optionally sends out notifications (if they are enabled) whenever t here is a significant pr o- gramming event on the lock. When combined with a source from the Event Source table above, the following programming event codes constitute an event on the door lock that can be both logged and sent to a bound device using the Prog ramming Event Notification command. 35 - 7 marks each event code with “A” if Not all event codes are applicable to each of the event source. Table applicable to the event source. the event code is 7 Table - 35 . Programming Event Codes Keypad Value Programming Event Code RFID RF A 0x00 UnknownOrMfgSpecific A A A MasterCodeChanged 0x01 A A PINCodeAdded 0x02 PINCodeDeleted A A 0x03 0x04 PINCodeChanged A A A 0x05 RFIDCodeAdded RFIDCodeDeleted 06 0x A 7 . 3 . 2 . 1 7 . 2 8 . 3 U s e r I D The User ID who performed the event P I N 7 . 3 . 2 . 1 7 . 2 8 . 4 The PIN that is associated with the User ID who performed the event 7 . 3 . 2 . 1 7 . 2 8 . 5 U s e r T yp e The User Type that is associated with the User ID who performed the event U s e r S t a t u s 7 . 3 . 2 . 1 7 . 2 8 . 6 is associated with the User ID who performed the event The User Status that L o c a l T i m e 7 . 3 . 2 . 1 7 . 2 8 . 7 The ZigBee LocalTime that indicates when the event is triggered. If time is not supported, the field SHALL be populated with default not used value 0xFFFFFFFF. 7 . 3 . 2 . 1 7 . 2 8 . 8 D a t a ification command contains a variable string, which can be used to pass data The programming event not associated with a particular event. Generally this field will be left empty. However, manufacturer can choose - to use this field to store/display manufacturer specific information. Copyright , The ZigBee Alliance. All rights reserved. 7 - 44 Page  2007 - 2016

443 ZigBee Cluster Library Specification 7 Chapter 075123 Closures ZigBee Document – 7 . 3 . 2 . 1 7 . 2 8 . 9 K e y p a d P r o g r a m m i n g E v e n t N o t i f i c a t i o n Keypad Programming Event Notification feature is enabled by setting the associated bitmasks in the [Keypad Programming Event Mask attribute]. Table ng Event Value Keypad Programmi . 36 - 7 Program Event Attribute Event Description Source Bitmask Event Code specific keypad programming event - Unknown or manufacturer BIT(0) 0x00 0x00 Master code changed, source: keypad BIT(1) 0x01 0x00 User ID: master user ID. master code if codes can be sent over the air per PIN: default or attribute. User type: default User Status: default BIT(2) 0x02 0x00 PIN added, source: keypad User ID: user ID that was added. PIN: code that was added (if codes can be sent over the air per attribute.) Us er type: default or type added. User Status: default or status added. 0x00 0x03 BIT(3) PIN deleted, source: keypad User ID: user ID that was deleted. PIN: code that was deleted (if codes can be sent over the air per attribute.) User type: default or type deleted. User Status: default or status deleted. ged 0x00 0x04 BIT(4) PIN chan Source: keypad User ID: user ID that was changed PIN: code that was changed (if codes can be sent over the air per attribute.) User type: default or type changed. User Status : d efault or status changed. R F P r o g r a m m i n g E v e n t N o t i f i c a t i o n 7 . 3 . 2 . 1 7 . 2 8 . 1 0 RF Programming Event Notification feature is enabled by setting the associated bitmasks in the [RF Pr o- gramming Event Mask attribute]. 37 7 - . Table RF Programming Event Value Attribute Event Program Event Description Source Event Code Bitmask BIT(0) 0x00 0x01 specific RF programming event. - Unknown or manufacturer 2016 45  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

444 Chapter 7 ZigBee Cluster Library Specification – 075123 Closures ZigBee Document Attribute Event Program Event Description Source Event Code Bitmask BIT(2) 0x02 0x01 PIN added, source RF Same as keypad source above 0x01 0x03 BIT(3) PIN d eleted, source RF Same as keypad source above. 0x01 PIN changed BIT(4) 0x04 Source RF Same as keypad source above 54 RFID code added, Source RF 0x01 BIT(5) 0x05 55 RFID code deleted, Source RF BIT(6) 0x01 0x06 R F I D P r o g r a m m i n g E v e n t N o t i f i c a t i o n 7 . 3 . 2 . 1 7 . 2 8 . 1 1 amming Event Notification feature is enabled by setting the associated bitmasks in the [RFID RFID Progr Programming Event Mask attribute]. 7 - 38 . RFID Programming Event Value Table e Event Attribut Program Event Description Source Bitmask Event Code 0x03 0x00 BIT(0) Unknown or manufacturer - specific keypad programming event 0x05 BIT(5) ID Added, Source: RFID 0x03 User ID: user ID that was added. ID: ID that was added (if codes can be sent over the air per a t- tribute.) User Type: default or type added. User Status: default or status added. ID Deleted, Source: RFID BIT(6) 0x03 0x06 User ID: user ID that was deleted. ID: ID that was deleted (if codes can be sent over the air per attribute.) User Type: default or type deleted. User Status: default or status deleted. Scene Table Extension 7.3.2.18 If the Scene server cluster is implemented, the following extension field is added to the Scene table: LockState  54 CCB 1821 13 553 ZHA 1.2 Errata 0 - 55 0553 ZHA 1.2 Errata - CCB 1821 13 Copyright , The ZigBee Alliance. All rights reserved. 7 - 46 Page  2007 - 2016

445 ZigBee Cluster Library Specification Chapter 7 075123 Closures ZigBee Document – as a writable command; that When the LockState attribute is part of a Scene table, the attribute is treated to unlock will LockState LockState is, setting the to lock will command the lock to lock, and setting the command the lock to unlock. Setting the LockState attribute to “not fully locked” is not supported. eld in the Scene table will be treated as a delay before setting the The Transition Time fi t- a LockState tribute; that is, it is possible to activate a scene with the lock actuation some seconds later. Locks that do not have an actuation mechanism SHOULD not support the Scene tab le extension. Client 7.3.3 The client receives the cluster specific commands generated - The client supports no cluster specific attributes. by the server, as shown in e- specific commands that wi - . The client generates the cluster 27 - 7 Table ll be r ceived by the server, as shown in . 23 - 7 Table Window Covering 7.4 Overview 7.4.1 Please see Chapter 2 for a general cluster overview defining cluster architecture, revision, classification, identification, etc. luster provides an interface for controlling and adjusting automatic window coverings The window covering c such as drapery motors, automatic shades, and blinds. Revision History 7.4.1.1 Rev Description 1 attribute added mandatory global ClusterRevision ; CCB 1994 1995 1996 1997 2086 7.4.1.2 Classification Primary Transaction Hierarchy Role PICS Code 56 (client 1 Type ) to server Base Application WNCV Identifiers Cluster 7.4.1.3 Identifier Name Window Covering 0x0102 Server 7.4.2 7.4.2.1 Attributes For convenience, the attributes defined in this cluster are arran ged into sets of related attributes; each set can contain up to 16 attributes. Attribute identifiers are encoded such that the most significant three nibbles The currently specify the attribute set and the least significant nibble specifies the attribute within the set. 7 defined attribute sets are listed in - Table 39 . 56 CCB 2086 Urgent Clarification 2016 47  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

446 Chapter 7 ZigBee Cluster Library Specification ZigBee Document – 075123 Closures - . Window Covering Attribute Set 7 Table 39 Description Attribute Set Identifier Window Covering Information 0x00 Window Covering Settings 0x01 W indow Co ver ing Inf orma tio n At t rib ute Se t 7.4.2.1.1 The Window Covering Information attribute set contains the attributes summarized in 7 - 40 . Table Table - 40 . Window Covering Information Attribute Set 7 Id Type Range Name Acc Default M/O Unit 0x0000 WindowCoveringType enum8 0x00 – 0x09 R 0x00 M – 0x0001 – Lift cm uint16 0x0000 PhysicalClosedLimit 0xffff R 0x0000 O 0x0002 PhysicalClosedLimit – Tilt 0 .1° uint16 0x0000 – 0xffff R 0x0000 O 0x0000 0x0003 CurrentPosition – Lift cm uint16 – 0xffff R 0x0000 O 0x0000 uint16 O 0x0000 R 0xffff – 0x0004 Current Position – Tilt 0 .1° 0x0005 – Lift uint16 0x0000 – Number of Actuations 0xffff R 0x0000 O uint16 Number of Actuatio ns – Tilt 0x0000 0x0000 – 0xffff R 0x0006 O 0b 0000 map8 0b 0xxx xxxx R 0x0007 Config/Status M 0011 0x0008 Current Position Lift Percentage uint8 0 - 0x64 R S P 0x00 M* 0x64 0x0009 0x00 - P S R 0 Current Position Tilt Percentage uint8 M* 57 Note : * "M*" design ates that the related attributes are required to be mandatory only if Closed Loop control is enabled and Lift/Tilt actions are correspondingly supported, i.e. the CurrentPositionLiftPercentage attribute SHALL be mandatory only if Closed Loop control and Li ft actions only if Closed Loop are supported; and the CurrentPosition Tilt Percentage attribute SHALL be mandatory control and Tilt actions are supported. W indow Co veri ng T yp e At t ribu te 7.4.2.1.2 The WindowCoveringType attribute identifies the type of window covering be ing controlled by this endpoint Table reserved values in and SHALL be set to one of the non - 7 - 41 . Table 7 - 41 . Window Covering Type Supported Window Covering Type Actions Value ollershade R 0x00 Lift 57 CCB 2096 Copyright , The ZigBee Alliance. All rights reserved. 7 - 48 Page  2007 - 2016

447 ZigBee Cluster Library Specification Chapter 7 075123 Closures ZigBee Document – Supported Actions Value Window Covering Type 0x01 Rollershade - 2 Motor Lift – Rollershade 0x02 Exterior Lift 0x03 Rollershade - Exterior - 2 Motor Lift 0x04 Drapery Lift 0x05 Awning Lift 0x06 Shutter Tilt - 0x07 Tilt Blind Tilt Only Tilt Lift and Tilt Tilt Blind - 0x08 Tilt Lift, 0x09 Projector Screen Lift 7 . 4 . 2 . 1 . 2 . 1 P h y s i c a l C l o s e d L i m i t - L i f t At t r i b u t e The PhysicalClosedLimitLift attribute identifies the maximum possible encoder position possible (in cent i- meters) to position the height of the window covering – this is ignored if the d evice is running in Open Loop Control. 7 . 4 . 2 . 1 . 2 . 2 P h y s i c a l C l o s e d L i m i t - T i l t At t r i b u t e The PhysicalClosedLimitTilt attribute identifies the maximum possible encoder position possible (tenth of a if the device is running in Open Loop this is ignored degrees) to position the angle of the window covering – Control. C u r r e n t P o s i t i o n 7 . 4 . 2 . 1 . 2 . 3 L i f t At t r i b u t e - The CurrentPositionLift attribute identifies the actual position (in centimeters) of the window covering from the top of the shade if Closed Loop Control is enabled. This attri bute is ignored if the device is running in Open Loop Control. - C u r r e n t P o s i t i o n 7 . 4 . 2 . 1 . 2 . 4 T i l t At t r i b u t e CurrentPositionTilt The attribute identifies the actual tilt position (in tenth of an degree) of the window covering from Open if Closed Loop Control is enable d. This attribute is ignored if the device is running in Open Loop Control. L i f t At t r i b u t e 7 . 4 . 2 . 1 . 2 . 5 - N u m b e r o f Ac t u a t i o n s NumberOfActuationsLift The attribute identifies the total number of lift actuations applied to the Window led. Covering since the device was instal T i l t At t r i b u t e N u m b e r o f Ac t u a t i o n s - 7 . 4 . 2 . 1 . 2 . 6 The NumberOfActuationsTilt attribute identifies the total number of tilt actuations applied to the Window Covering since the device was installed. 2016 49  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

448 Chapter 7 ZigBee Cluster Library Specification – Closures 075123 ZigBee Document C o n f i g / S t a t u s At t r i b u t e 7 . 4 . 2 . 1 . 2 . 7 The ConfigStatus attribute makes configura tion and status information available. To change settings, devices SHALL write to the Mode attribute of the Window Covering Settings Attribute Set. The behavior causing the for details on each bit. setting or clearing of each bit is vendor specific. See Table 7 - 42 Table Bit Meanings for the Config/Status Attribute . 42 - 7 Meaning Description Bit bit0 0 = Not Operational Operational: This status bit defines if the Wi n- 1 = Operational dow Covering is operational. Online: This status bit defines if the Window bit1 0 = Not Online 1 = Online Covering is enabled for transmitting over the ZigBee network. bit2 n- nds: This status bit ide Lift comma Reversal – 0 = Commands are normal 1 = Open/Up Commands tifies if the direction of rotation for the Window have been reversed Covering has been reversed in order for Open/Up commands to match the physical installation condition. Lift: This status bit identifies if the 0 = Lift control is Open Loop Control – bit3 window covering supports Open Loop or Closed 1 = Lift control is Closed Loop Lift Control Loop – bit4 0 = Tilt control is Open Loop Tilt: This status bit identifies if the Control 1 = Tilt control is Closed window covering supports Open Loop or Closed Loop Loop Tilt Control bit5 0 = Timer Controlled Lift: This status bit identifies if a – Encoder 1 = Encoder Controlled Closed Loop Controlled Window Covering is This bit is Ignored if running employing an encoder for posi tioning the height Lift in Open Loop Control. of the window covering. Tilt: This status bit identifies if a bit6 – Encoder 0 = Timer Controlled Closed Loop Controlled Window Covering is 1 = Encoder Controlled employing an e This bit is Ignored if running ncoder for tilting the window Tilt in Open Loop Control. covering. bit7 Reserved Reserved Curre nt 7.4.2.1.3 Posi tio n L ift Percen tage At t ribu te The CurrentPositionLift Percentage attribute identifies the actual position as a percentage between the 58 InstalledOpenLimitLift a ttribute and the InstalledClosedLimitLift attribute of the window covering from the if Closed Loop Control is enabled. If the device is running in Open Loop Control or the up/open position actions, this attribute is not required as an attribute but has a special interpr s device only support Tilt e tation when received as part of a scene command (see “Scene Table Extensions” below). 58 CCB 2094 Copyright , The ZigBee Alliance. All rights reserved. 7 - 50 Page  2007 - 2016

449 ZigBee Cluster Library Specification Chapter 7 075123 Closures ZigBee Document – Posi tio n T ilt Perce nta ge At t r ibu te 7.4.2.1.4 Curre nt Percentage attribute identifies the actual position as a percentage between the The CurrentPositionTilt 59 imitTilt attribute and the attribute of the window covering from the InstalledOpenLimitTilt InstalledClosedL if Closed up/open position Loop Control is enabled. If the device is running in Open Loop Control or the device only support Lift actions, this attribute is not required as an attribute but has a special interpretation sions” below). when received as part of a scene command (see “Scene Table Exten W indow Co ver ing Setti ngs At t r ibu te Set 7.4.2.1.5 WindowCovering Settings attribute set contains the attributes summarized in Table 7 - 43 . The 7 43 . Window Covering Settings Attribute Set Table - Name Unit Type Range Acc Default M/O Id – – InstalledOpenLimit 0x0000 uint16 0x0000 Lift 0xffff R 0x0000 M * cm Lift – 0x0001 0xffff – 0x0000 InstalledClosedLimit * M 0xffff R uint16 cm – 0.1° * M 0x0000 R xffff 0 0x0000 uint16 Tilt – InstalledOpenLimit 0x0002 0x0003 R * M 0xffff 0xffff – 0x0000 uint16 0.1° Tilt – imit InstalledClosedL O 0x0004 Velocity – Lift cm/sec uint16 0x0000 – 0xffff RW 0x0000 Acceleration Time – Lift 0.1sec uint16 0x0005 0x0000 0xffff RW 0x0000 O – 0xffff RW Deceleration 0x0000 uint16 O 0x0006 0.1sec Lift – Time 0x0000 – 0001 0b xxx0 0000 0x0007 M RW 0b map8 Mode 0100 RW - octstr Lift – Intermediate Setpoints 0x0008 O “1,0x0000” - octstr Tilt – Intermediate Setpoints 0x0009 O “1,0x0000” RW * Note: "M*" designates t hat the related attributes are required to be mandatory only if Closed Loop control is enabled and Lift/Tilt actions are correspondingly supported, i.e. the InstalledOpenLimitLift and op control and Lift actions are InstalledClosedLimitLift attributes SHALL be mandatory only if Closed Lo supported; and the InstalledOpenLimitTilt and InstalledClosedLimitTilt attributes SHALL be mandatory 60 only if Closed Loop control and Tilt actions are supported. L i f t 7 . 4 . 2 . 1 . 5 . 1 I n s t a l l e d O p e n L i m i t – identifies the Open Limit for Lifting the Window Covering whether attribute Lift InstalledOpenLimit The position (in centimeters) is encoded or timed. This attribute is ignored if the device is running in Open Loop Tilt actions . Control or only support s I n s t a l l e d C l o s e d L i m i t – 7 . 4 . 2 . 1 . 5 . 2 L i f t Lift attribute identifies the Closed Limit for Lifting the Window Covering whether The edClosedLimit Install position (in centimeters) is encoded or timed. This attribute is ignored if the device is running in Open Loop Control or only support s Tilt actions . 59 CCB 2095 60 CCB 2097 , The ZigBee Alliance. All rights reserved. 2007 - 2016 Page 7 - 51  Copyright

450 Chapter 7 ZigBee Cluster Library Specification – Closures 075123 ZigBee Document 7 . 4 . 2 . 1 . 5 . 3 I n s t a l l e d O p e n L i m i t – T i l t The Tilt attribute identifies the Open Limit for Tilting the Window Covering whether InstalledOpenLimit position (in tenth of a degree) is encoded or timed. This attribute is ignored if the device is running in Open Loop Control ort s Lift actions . or only supp I n s t a l l e d C l o s e d L i m i t T i l t – 7 . 4 . 2 . 1 . 5 . 4 InstalledClosedLimit Tilt attribute identifies the Closed Limit for Tilting the Window Covering whether The position (in tenth of a degree) is encoded or timed. This attribute is ignored if the device is runnin g in Open Loop Control or only support s Lift actions . V e l o c i t y 7 . 4 . 2 . 1 . 5 . 5 – L i f t Velocity Lift attribute identifies the velocity (in centimeters per second) associated with Lifting the The Window Covering. 7 . 4 . 2 . 1 . 5 . 6 A c c e l e r a t i o n T i m e – L i f t entifies any ramp up times to reaching the velocity setting (in tenth of a The Lift attribute id AccelerationTime second) for positioning the Window Covering. L i f t – D e c e l e r a t i o n T i m e 7 . 4 . 2 . 1 . 5 . 7 The attribute identifies any ramp down times associated with stopping the positioning Lift DecelerationTime (in tenth of a second) of the Window Covering. Mode 7.4.2.1.5.7.1 Mode attribute allows configuration of the Window Covering, such as: reversing the motor direction, The placing the Window Covering into calibration mode, placing the motor into maintenance mode, disabling th e Table 7 ZigBee network, and disabling status LEDs. See - 44 for details. Table - 44 . Bit Meanings for the Mode Attribute 7 Bit Meaning Description 0 = motor direction is normal bit0 Disables (0) or Enables (1) the reversal of the motor 1 rotating direction associated with an UP/OPEN = motor direction is reversed command. Should be set so that an UP/OPEN command matches moving the Window Covering physically in that direction. un in normal mode 0 = r bit1 Disables (0) or Enables (1) placing the Window 1 = run in calibration mode Covering into Calibration Mode where limits are either setup using physical tools or limits are learned by the controller based on physical setup of the ering by an installer. Window Cov Disables (0) or Enables (1) placing the motor into bit2 0 = motor is running normally 1 = motor is running in maintenance Maintenance Mode where the motor cannot be moved over the network or by a switch connected to mode a Local Swi tch Input. Disables (0) or Enables (1) the display of any bit3 0 = LEDs are off feedback LEDs resident especially on the packaging 1 = LEDs will display feedback of an endpoint where they may cause distraction to the occupant. ed Reserv Reserved bit7 – bit4 Copyright , The ZigBee Alliance. All rights reserved. 7 - 52 Page  2007 - 2016

451 ZigBee Cluster Library Specification 7 Chapter 075123 Closures – ZigBee Document 7 . 4 . 2 . 1 . 5 . 8 I n t e r m e d i a t e S e t p o i n t s – L i f t Identifies the number of Intermediate Setpoints supported by the Window Covering for Lift and then ide n- tifies the position settings for those Intermediate Setpoints if Closed Loop Control is supported. This is a 13, 0x0030” . For example: “2,0x00 character string ASCII mited comma deli 7 . 4 . 2 . 1 . 5 . 9 I n t e r m e d i a t e S e t p o i n t s – T i l t Identifies the number of Intermediate Setpoints supported by the Window Covering for Tilt and then ide n- tifies the position settings for those Intermediate Setpoints if Closed Loop Control is supported. This is a comma delimited ASCII character string. For example: “2,0x0013, 0x0030” Commands Received 7.4.2.2 Table 45 7 - . Commands Received by the Window Covering Server Cluster M/O Co mmand ID Description 0x00 Up / Open M 0x01 M Down / Close 0x02 M Stop 0x04 O Go To Lift Value Go to Lift Percentage O 0x05 Go to Tilt Value O 0x07 0x08 Go to Tilt Percentage O 7.4.2.2.1 Up / O pen Co mma nd 7 . 4 . 2 . 2 . 1 . 1 P a y l o a d F o r m a t This command has no payload. 7.4.2.2.1.1.1 Effect on Receipt Upon receipt of this command, the Window Covering will adjust the window so the physical lift is at the . This will happen as fast as possible. Tilt – InstalledOpenLimit Lift and the tilt is at the InstalledOpenLimit – Dow n / Close Com mand 7.4.2.2.2 P a y l 7 . 4 . 2 . 2 . 2 . 1 F o r m a t o a d This command has no payload. 7 . 4 . 2 . 2 . 2 . 2 E f f e c t o n R e c e i p t Upon receipt of this command, the Window Covering will adjust the window so the physical lift is at the Lift s- en as fast as po . This will happ Tilt – InstalledClosedLimit and the tilt is at the InstalledClosedLimit – sible. C omma nd 7.4.2.2.3 Sto p P a y l o a d F o r m a t 7 . 4 . 2 . 2 . 3 . 1 This command has no payload. 2016 53  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

452 Chapter 7 ZigBee Cluster Library Specification – Closures 075123 ZigBee Document 7 . 4 . 2 . 2 . 3 . 2 E f f e c t o n R e c e i p t Upon receipt of this command, the Window Covering will stop any adjusting to the physical tilt and lift that is currently occurring. 7.4.2.2.4 Go T o Li ft Value 7 . 4 . 2 . 2 . 4 . 1 P a y l o a d F o r m a t 55 - 7 Figure . The Go To Lift Value command payload SHALL be formatted as illustrated in Figure - 55 . Format of the Go To Lift Value Command 7 2 Octets uint16 Data Type Lift Value Field Name 7.4.2.2.4.1.1 Effect on Receipt Upon receipt of this command, the Window Covering will adjust the window so the physical lift is at the lift value specified in the payload of this command as long as that value is not larger than InstalledOpenLimit – – InstalledClosedLimit and not smaller than t . If the lift value is out of bounds a default response Lif Lift containing the status of INVALID_VALUE will be returned. G o t o L i f t P e r c e n t a g e 7 . 4 . 2 . 2 . 4 . 2 7.4.2.2.4.2.1 Format Payload 7 The Go To Lift Percentage command payload be forma tted as illustrated in Figure - 56 . SHALL 56 7 - Format of the Go To Lift Percentage Command . Figure 1 Octets uint8 Data Type Percentage Lift Value Field Name 7.4.2.2.4.2.2 Effect on Receipt Upon recei pt of this command, the Window Covering will adjust the window so the physical lift is at the lift - bit u n- percentage specified in the payload of this command.The percentage value will be mapped to a 8 signed integer value between InstalledOpenLimit and Inst alledClosedLimit. If the percentage lift value is larger than 100, no physical action will be taken and a default response containing the status of INV A- LID_VALUE will be returned. If the device only supports open loop lift action then a zero percentage SHO ULD be treated as a down/close command and a non - zero percentage SHOULD be treated as an up/open command. If the device is only a tilt control device, then the command be ignored and a U N- SHOULD SUPPORTED_COMMAND status SHOULD be returned. The device must s upport either the Go To Lift Percentage or the Go To Tilt Percentage command. 7 . 4 . 2 . 2 . 4 . 3 G o t o T i l t V a l u e Payload Format 7.4.2.2.4.3.1 The Go To Tilt Value command payload . 57 - 7 Figure be formatted as illustrated in SHALL Copyright , The ZigBee Alliance. All rights reserved. 7 - 54 Page  2007 - 2016

453 ZigBee Cluster Library Specification 7 Chapter 075123 Closures – ZigBee Document Format of the Go To Tilt Value Command . 57 - 7 Figure 2 Octets uint16 Data Type Tilt Value Field Name 7.4.2.2.4.3.2 Effect on Receipt Upon receipt of this command, the Window Covering will adjust the window so the physical tilt is at the tilt value speci fied in the payload of this command as long as that value is not larger than InstalledOpenLimit – InstalledClosedLimit . If the tilt value is out of bounds a default response – Tilt Tilt and not smaller than turned. containing the status of INVALID_VALUE will be re P e r c e n t a g e 7 . 4 . 2 . 2 . 4 . 4 G o t o T i l t 7.4.2.2.4.4.1 Payload Format below . be formatted as illustrated The Go To Tilt Percentage command payload SHALL Format of the Go To Lift Percentage Command 7 Figure 58 . - 1 Octets t8 uin Data Type Percentage Tilt Value Field Name 7.4.2.2.4.4.2 Effect on Receipt Upon receipt of this command, the Window Covering will adjust the window so the physical tilt is at the tilt n- percentage specified in the payload of this command. The percentage value will be mapped to a 8 - bit u - signed integer value between - Tilt and InstalledClosedLimit InstalledOpenLimit Tilt . If the percentage tilt value is larger than 100, no physical action will be taken and a default response containing the status of INVALID_VALUE will be returned. If the device only supports open loop tilt action then a zero percentage SHOULD zero percentage - be treated as an up/open SHOULD be treated as a down/close command and a non N- gnored and a U be i SHOULD command. If the device is only a lift control device, then the command be returned. The device must support either the Go To Lift SUPPORTED_COMMAND status SHOULD Percentage or the Go To Tilt Percentage command. Comma nds Ge ner ated 7.4.2.2.5 This cluster uses the standard Default Response command defined in the ZCL specifi cation for responding to received commands. Possible status values that can be returned are: SUCCESS, NOT_FOUND, NOT_AUTHORIZED, INSUFFICIENT_SPACE, UNSUP_CLUSTER_COMMAND, INVALID_FIELD, INVALID_VALUE, HARDWARE_FAILURE, FAILURE. Ex te nsions Scene Table 7.4.2.2.6 he Window Covering server cluster is implemented, the following extension field is added to the Scene If t table:  CurrentPositionLiftPercentage CurrentPositionLiftPercentage When the attribute is part of a Scene table, the attribute is treated as a writeable c ommand, that is, setting the lift percentage of the covering device to the value specified in the scene table extension over the specified transition time. The device treat the command as a linear MAY ate as it deems necessary. If the device is only a accelerate and deceler MAY transition if appropriate or tilt controlling device this scene table extension is ignored. If the device is an open loop controlled lift device, then a percentage of 0 is treated as a close command and a non zero percentage is treate d as an 2016 55  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 7 -

454 Chapter 7 ZigBee Cluster Library Specification – 075123 Closures ZigBee Document open command and the device will ignore the transition time and transition as fast as appropriate for that device.  CurrentPositionTiltPercentage When the CurrentPositionTiltPercentage a attribute is part of a Scene table, the attribute is treated as writeable command, that is, setting the tilt percentage of the covering device to the value specified in the treat the command as a linear MAY scene table extension over the specified transition time. The device transition if appropriate or accelerat e and decelerate as it deems necessary. If the device is only a MAY lift controlling device this scene table extension is ignored. If the device is an open loop controlled tilt device, then a percentage of 0 is treated as a close command and a non zero percent age is treated as an open command and the device will ignore the transition time and transition as fast as appropriate for that device. 7.4.2.2.7 At t ri bu te Re por ti n g This cluster SHALL support attribute reporting using the Report Attributes command and according to the minimum and maximum reporting interval settings described in the ZCL. The following attributes SHALL be reported: Current Position Percentage Lift - Percentage - Tilt Current Position 7.4.3 Client spe cific commands are received by the client. The No cluster The client has no cluster specific attributes. . 7.4.2.2 clause - commands detailed in sub ates the cluster specific client gener Copyright , The ZigBee Alliance. All rights reserved. 7 - 56 Page  2007 - 2016

455 ZigBee Cluster Library Specification Chapter 8 – Security and Safety ZigBee Document 075123 SECURITY AND SAFETY CHAPTER 8 The ZigBee Cluster Library is made of individual chapters such as this one. See Document Control in the ZigBee Cluster Library for a list of all chapters and documents . References between chapters are made using a Y is the chapter and to external section within that chapter. References - is the sub X.Y notation where X ] notation. documents are con tained in Chapter 1 and are made using [ Rn General Description 8.1 Introduction 8.1.1 The clusters specified in this document are for use in ZigBee security and safety related applications. The clusters currently defined are those that are used by wirele ss Intruder Alarm Systems (IAS). Intruder Alarm systems include functions for the detection of intruders and/or triggering, processing of information, notification of alarms and the means to operate the IAS. Functions additional to those MAY be included i n IAS providing they do not influence the correct operation of the mandatory functions. Components of other applications MAY be combined or integrated with a IAS, providing the performance of the IAS components is not adversely influenced. Cluster List 8.1.2 s section lists the clusters specified in this document, and gives examples of typical usage for the purpose Thi of clarification. Table The clusters defined in this document are listed in 8 . 1 - Table 1 . Clusters of the Security and Safety Functional Domain - 8 Cluster Name Cluster ID Description 0x500 Attributes and commands for IAS security zone devices. IAS Zone 0x501 Attributes and commands for IAS Ancillary Control Equipment. IAS ACE Attributes and commands for IAS Warning Devices IAS WD 0x502 2016 1  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 8 -

456 Chapte ZigBee Cluster Library Specification r 8 ZigBee Document – 075123 Security and Safety . Typical Usage of the IAS Clusters 1 - 8 Figure IAS Zone 8.2 Overview 8.2.1 defining cluster architectu re, revision, classification, Please see Chapter 2 for a general cluster overview identification, etc. The IAS Zone cluster defines an interface to the functionality of an IAS security zone device. IAS Zone supports up to two alarm types per zone, low battery reports and supervision of the IAS network. Rev 8.2.1.1 ision History Rev Description 1 ZHA 1.2 and 1.2.1 features; CCB 2045 ; ClusterRevision added mandatory global attribute 8.2.1.2 Classification Primary Transaction Role PICS Code Hierarchy IASZ Application Base Type 2 (server to client)  The ZigBee Alliance. All rights reserved. 8 - 2 Copyright Page 2007 - 2016 ,

457 ZigBee Cluster Library Specification 8 Chapter 075123 Security and Safety – ZigBee Document Identifiers 8.2.1.3 Cluster ifier Name Ident IAS Zone 0x0500 Server 8.2.2 Dependencies 8.2.2.1 None 8.2.2.2 Attributes For convenience, the attributes defined in this specification are arranged into sets of related attributes; each set can contain up to 16 attributes. Attribute identifiers are encoded such th at the most significant three ni b- bles specify the attribute set and the least significant nibble specifies the attribute within the set. The currently 2 . defined attribute sets are listed in Table 8 - 8 - 2 . Attribute Sets for the IAS Zone Cluster Table Attribute Set Identifier Description 0x000 Zone information Zone settings 0x001 8.2.2.2.1 Zone I n forma ti on At t ri bu te Set Table . 3 - 8 The Zone Information attribute set contains the attributes summarized in . Attributes of the Zone Information Attribute Set 3 - 8 Table Access Type Range Name Default M/O Id 0x0000 ZoneState enum8 All M 0x00 Read Only ZoneType M - All enum16 0x0001 d Only Rea 0x0002 ZoneStatus map16 All M 0x00 Read Only At t r i b u t e 8 . 2 . 2 . 2 . 1 . 1 Z o n e S t a t e . The ZoneState attribute contains the values summarized in Table 8 - 4 4 Attribute - 8 Table ZoneState . Values of the Meaning Attribute Value Not enrolled 0x00 0x01 Enrolled (the client will react to Zone State Change Notification commands from the server) 2016 3  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 8 -

458 Chapte 8 ZigBee Cluster Library Specification r ZigBee Document – 075123 Security and Safety Z o n e T y p e At t r i b u t e 8 . 2 . 2 . 2 . 1 . 2 ZoneType attribute values are summarized in Table 8 - 5 . The Zone Type dictates the meaning of Alarm1 The ZoneStatus and Alarm2 bits of the attribute, as also indicated in this table. 8 Attribute 5 . Values of the ZoneType Table - Zone Type Alarm1 Alarm2 Value ndard CIE Sta - 0x0000 System Alarm 0x000d Motion sensor Intrusion indication Presence indication nd st Contact switch 1 portal Open - Close 2 0x0015 portal Open - Close 0x0028 Fire sensor Fire indication - 0x002a Water sensor Water overflow indication - 0x002b Carbon Monoxide (CO) sensor CO indication Cooking indication Emergency button Personal emergency device Fall/Concussion 0x002c Vibration/Movement sensor 0x002d Vibration Movement indication 0x010f Panic Emergency Remote Control Emergency Panic 0x0115 Key fob Keypad Panic Emergency 0x021d Standard Warning Device 0x0225 - - (see [N1] part 4) 0x0226 Glass break sensor Glass breakage detected - 0x0229 Security repeater * - - - - 0x8000 - 0xfffe manufacturer specific t ypes 0xffff Invalid Zone Type - - * For example: a ZigBee repeater for security devices that needs to be supervised by the alarm pa n- el/IAS CIE to ensure a reliable security sensor network 8 . 2 . 2 . 2 . 1 . 3 Z o n e S t a t u s At t r i b u t e - The ZoneStatus attribute is a bit map. Th e meaning of each bit is summarized in 8 Table 6 . Table - 6 . Values of the ZoneStatus Attribute 8 Attribute Bit Values Meaning Number opened or alarmed – 1 Alarm1 0 – larmed closed or not a 0 1 opened or alarmed – 1 Alarm2  The ZigBee Alliance. All rights reserved. 8 - 4 Copyright Page 2007 - 2016 ,

459 ZigBee Cluster Library Specification Chapter 8 075123 Security and Safety – ZigBee Document Attribute Bit Meaning Values Number – 0 closed or not alarmed 1 – Tampered Tamper 2 – 0 Not tampered 1 – Low battery 3 Battery Battery OK 0 – – Reports 1 Supervision reports (Note 1) 4 Does not report – 0 1 – Reports rest ore Restore reports (Note 2) 5 0 – Does not report restore 1 Trouble/Failure – 6 Trouble OK 0 – 1 – AC/Mains fault 7 AC (mains) AC/Mains OK – 0 1 Sensor is in test mode – 8 Test Sensor is in operation mode – 0 – 1 Sensor detects a defective battery 9 Battery Defect – ttery is functioning normally 0 Sensor ba This bit indicates whether the Zone issues periodic Zone Status Change Notification commands. The Note 1: CIE device MAY use these periodic reports as an indication that a zone is operational. Zones that do not periodic reporting are required to set this bit to zero (the CIE will know not to interpret the lack implement the of reports as a problem). Note 2: This bit indicates whether or not a Zone Status Change Notification command will be sent to indicate that an alarm is no longer present. Some Zones do not have the ability to detect that alarm condition is no longer present, they only can tell that an alarm has occurred. These Zones must set the “Restore” bit to zero, - restore noti fications. indicating to the CIE not to look for alarm 8.2.2.2.2 Zone Se t tin gs At t r ibu te Set The Zone Settings attribute set contains the attributes summarized in Table - 7 . 8 8 - 7 . Attributes of the Zone Settings Attribute Set Table Id Nam e Type Range Access Def M/O 0x0010 IAS_CIE_Address M EUI64 - RW - 0xFF 0x0011 ZoneID uint8 0x00 – R 0xFF M 0x0012 NumberOfZoneSensitivityLevelsSupported uint 8 0x02 – 0xff R 0x02 O * * 0x0013 CurrentZoneSensitivityLevel uint 8 0x00 – 0xff R W 0x00 O e attributes depend on each Thes * if one is supported than both other and . SHALL be supported 2016 5  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 8 -

460 Chapte 8 r ZigBee Cluster Library Specification ZigBee Document 075123 Security and Safety – 8 . 2 . 2 . 2 . 2 . 1 I A S _ C I E _ A d d r e s s At t r i b u t e The IAS_CIE_Address attribute specifies the address that commands generated by the server SHALL be sent to. All commands received by the serve r must also come from this address. It is up to the zone's specific implementation to permit or deny change (write) of this attribute at specific times. . on setting this attribute for more information 8.2.2.2.3 See section 8 . 2 . 2 . 2 . 2 . 2 Z o n e I D At t r i b u t e A unique reference number allocated by the CIE at zone enrollment time. Used by IAS devices to reference specific zones when communicating with the CIE. The ZoneID of each zone stays fixed until that zone is unenro lled. 8 . 2 . 2 . 2 . 2 . 3 N u m b e r O f Z o n e S e n s i t i v i t y L e v e l s S u p p o r t e d At t r i b u t e Provides the total number of sensitivity levels supported by the IAS Zone server. The purpose of this a t- sensor). It tribute is to support devices that can be configured to be more or less sensitive (e.g., motion be presented to MAY provides IAS Zone clients with the range of sensitivity levels that are supported so they the user for configuration. The values 0x00 and 0x01 are reserved because a device that has zero or one sensitivity level SHOULD NOT support this attribute because no configuration of the IAS Zone server’s sensitivity level is possible. specific. However, the sensitivity level of the IAS - The meaning of each sensitivity level is manufacturer n- Zone server SHALL become more sensitive as th ey ascend. For example, if the server supports three se sitivity levels, then the value of this attribute would be 0x03 where 0x03 is more sensitive than 0x02, which is more sensitive than 0x01. 8 . 2 . 2 . 2 . 2 . 4 C u r r e n t Z o n e S e n s i t i v i t yL e v e l At t r i b u t e Allows an IAS Zone cli c- ent to query and configure the IAS Zone server’s sensitivity level. Please see Se Attribute for more detail on how to interpret this attribute. NumberOfZoneSensitivityLevelsSupported tion MAY configured by the manufacturer. It The default value 0x00 is the device’s default sensitivity level as correspond to the same sensitivity as another value in the , but this NumberOfZoneSensitivityLevelsSupported is the default sensitivity to be used if the CurrentZoneSensitivityLevel attribute is not otherwise configu red by an IAS Zone client. Impleme nta tio n G uideli nes 8.2.2.2.3 Use of the IAS_CIE_Address and ZoneID attributes functions as an additional enrollment step that is not employed by other ZigBee devices. The reason for this is to provide an extra layer of security due to the nature of these devices in protecting premises from physical intrusion and attack. There are three methods for enrolling IAS Zone server to an IAS CIE (i.e., IAS Zone client):  Trip - to - pair Auto Response Enroll - -  Request  Auto - Enroll - IAS Zone servers S HALL support either: to  Trip - - pair AND Auto - Enroll - Response, OR  Auto - Enroll - Request An IAS Zone client SHALL support either: - Enroll pair AND Auto - Response, OR  Trip - to - Request - Enroll - Auto   The ZigBee Alliance. All rights reserved. 8 - 6 Copyright Page 2007 - 2016 ,

461 ZigBee Cluster Library Specification 8 Chapter 075123 Security and Safety – ZigBee Document An IAS Zone client MAY support all enrollment methods. The Trip - to - P air enrollment method is primarily intended to be used when there is a desire for an explicit enrollment method (e.g., when a GUI wizard or other commissioning tool is used by a user or installer to add multiple IAS Zone servers in an orderly fashion, assi gn names to them, configure them in the system). A commissioning tool MAY device for either commissioning as an agent , on behalf of an IAS CIE act . or the IAS CIE defined below f that are perform any of the actions MAY A commissioning tool , method wing requirements are intended to ensure a timely and interoperable commissioning process: The follo SHALL data poll  After joining a network, an IAS Zone server implemented as a ZigBee End Device at least once every seven seconds until its ZoneState attribute has be en updated to “enrolled” (i.e., until it receives a Zone Enroll Response command from an IAS Zone client). After joining a network, an IAS Zone server SHOULD data poll at least once every two seconds  ZoneState until its attribute has been updated to “enrol led” (i.e., until it receives a Zone Enroll Response command from an IAS Zone client).  If the IAS Zone server supports Poll Control cluster, it SHOULD continue data polling at this rate until its Poll Control cluster parameters are configured otherwise.  Th e IAS_CIE_Address attribute of the IAS Zone server to be enrolled SHALL be configured only (or an agent of an IAS CIE) - . A self detect - configuration based on any kind of auto by the IAS CIE 61 d. approach triggered by the IAS Zone server itself SHALL be prohibite The detailed requirements for each commissioning method follow: - Trip to Pair - s- MAY perform service di IAS CIE After an IAS Zone server is commissioned to a network, the 1. covery. 2. If the IAS CIE determines it wants to enroll the IAS Zone server, it SHALL se nd a Write Attribute command on the IAS Zone server’s IAS_CIE_Address attribute with its IEEE address. 3. The IAS Zone server MAY configure a binding table entry for the IAS CIE’s address because all of its communication will be directed to the IAS CIE. a user input determined by the manufacturer (e.g., a button, change to device’s 4. Upon ZoneStatus attribute that would result in a Zone Status Change Notification command) and the IAS Zone ZoneState attribute equal to 0x00 (unenrolled), the IAS Zone serv er SHALL send a Zone server’s Enroll Request command. 5. The IAS CIE SHALL send a Zone Enroll Response command, which assigns the IAS Zone ser v er’s ZoneID attribute. ZoneState attribute to 0x01 (enrolled). 6. The IAS Zone server SHALL change its Au - Enroll - to Response s- Afte r an IAS Zone server is commissioned to a network, the IAS CIE MAY perform service di 1. covery. determines it wants to enroll the IAS Zone server, it SHALL send a Write Attribute 2. If the IAS CIE its IEEE address. attribute with CIE_IAS_Address command on the IAS Zone server’s The IAS Zone server MAY configure a binding table entry for the IAS CIE’s address because all of 3. its communication will be directed to the IAS CIE. ZoneID 4. The IAS CIE SHALL send a Zone Enroll Response, which assigns the IAS Zone server’s attribute. 5. The IAS Zone server SHALL change its ZoneState attribute to 0x01 (enrolled). - Request Enroll Auto - s- IAS CIE 1. MAY perform service di After an IAS Zone server is commissioned to a network, the covery. 61 CCB 2044 2016 7  2007 - Copyright , The ZigBee Alliance. All rights reserved. Page 8 -

462 8 Chapte ZigBee Cluster Library Specification r ZigBee Document 075123 Security and Safety – IAS CIE If the 2. AS Zone server, it SHALL send a Write Attribute determines it wants to enroll the I command on the IAS Zone server’s IAS_CIE_Address attribute with its IEEE address. The IAS Zone server MAY configure a binding table entry for the IAS CIE’s address because all of 3. its communication will be dir ected to the IAS CIE. 4. The IAS Zone server SHALL send a Zone Enroll Request command. IAS CIE SHALL send a Zone Enroll Response command, which assigns the IAS Zone ser er’s v 5. The attribute. ZoneID ZoneState attribute to 0x0 1 (enrolled). 6. The IAS Zone server SHALL change its IAS_CIE_Address Once the attribute has been written on an IAS Zone server, the IAS Zone server SHALL only act upon commands received from an initiator that matches the attribute. IAS_CIE_Address to create, modify or remove binding table entry on a device Any attempt via the ZDO bind or unbind request embodying the IAS Zone server SHALL be rejected and responded with the status NOT_AUTHORIZED, if not come the subjected binding table entry is related to an IAS Zone server cluster and the ZDP request does 62 from the paired IAS CIE. Commands Received 8.2.2.3 Table 8 - 8 Received Command IDs for The command IDs received by the IAS Zone server cluster are listed in the IAS Zone Cluster . . Received Command IDs for the IAS Zone Cluster Table 8 - 8 Command Id Description M/O Zone Enroll Response M 0x00 O Initiate Normal Operation Mode 0x0 1 Initiate Test Mode 0x02 O 8.2.2.3.1 Zone E nro ll Res p onse C omma nd 8 . 2 . 2 . 3 . 1 . 1 P a y l o a d F o r m a t 2 8 Figure The Zone Enroll Response command payload SHALL be formatted as illustrated in - Format of the Zone Enroll Respons