1、 ANSI/CTA Standard Modular Communications Interface for Thermostat Message Set ANSI/CTA-2045.3 (Formerly ANSI/CEA-2045.3) August 2014 NOTICE Consumer Technology Association (CTA) Standards, Bulletins and other technical publications are designed to serve the public interest through eliminating misun
2、derstandings between manufacturers and purchasers, facilitating interchangeability and improvement of products, and assisting the purchaser in selecting and obtaining with minimum delay the proper product for his particular need. Existence of such Standards, Bulletins and other technical publication
3、s shall not in any respect preclude any member or nonmember of the Consumer Technology Association from manufacturing or selling products not conforming to such Standards, Bulletins or other technical publications, nor shall the existence of such Standards, Bulletins and other technical publications
4、 preclude their voluntary use by those other than Consumer Technology Association members, whether the standard is to be used either domestically or internationally. Standards, Bulletins and other technical publications are adopted by the Consumer Technology Association in accordance with the Americ
5、an National Standards Institute (ANSI) patent policy. By such action, the Consumer Technology Association does not assume any liability to any patent owner, nor does it assume any obligation whatever to parties adopting the Standard, Bulletin or other technical publication. This document does not pu
6、rport to address all safety problems associated with its use or all applicable regulatory requirements. It is the responsibility of the user of this document to establish appropriate safety and health practices and to determine the applicability of regulatory limitations before its use. This documen
7、t is copyrighted by the Consumer Technology Association and may not be reproduced, in whole or part, without written permission. Federal copyright law prohibits unauthorized reproduction of this document by any means. Organizations may obtain permission to reproduce a limited number of copies by ent
8、ering into a license agreement. Requests to reproduce text, data, charts, figures or other material should be made to the Consumer Technology Association. (Formulated under the cognizance of the CTA R7.8 Modular Communication Interface for Energy Management Subcommittee.) Published by CONSUMER TECHN
9、OLOGY ASSOCIATION 2015 Technology Phone 800-699-9277; Fax 734-780-2046; Internet http:/; Email 2.2 Compliance Notation As used in this document “shall” and “must” denote mandatory provisions of the standard. “Should” denotes a provision that is recommended but not mandatory. “May” denotes a feature
10、 whose presence does not preclude compliance, and implementation of which is optional. “Optional” denotes items that may or may not be present in a compliant device. 2.3 Definitions Big-Endian Specifies that the transmission byte order of a data stream is MSB first LSB Least Significant Byte e.g. fo
11、r the value 0x12345678, 0x78 is the LSB LSN Bits 23through 20e.g. the LSN of 0xAB is 0xB 2 MSB Most Significant Byte e.g. for the value 0x12345678, 0x12 is the MSB MSN Bits 27through 24e.g. the MSN of 0xAB is 0xA Nibble Four bit value obtained by dividing a byte in half SGD Smart Grid Device the end
12、 device that is being informed of grid conditions SINT8 Eight-bit signed value (ones compliment) SINT16 16-bit signed value (ones compliment) UCM Universal Communications Module the communications device that provides communication connectivity to an SGD UINT8 Eight-bit unsigned value UINT16 16-bit
13、unsigned value UINT32 32-bit unsigned value 2.4 Symbols and Abbreviations TOD Time of Day Schedule, typically a Weekday/Weekend or seven-day schedule of times and set points 3 Thermostat Message Set The thermostat message set is an extension of the ANSI/CEA-2045 Intermediate DR message set (Message
14、Type = 0x08, 0x02). Unlike the Basic DR Application message set, which is fixed at 8 bytes total message length, Intermediate DR application messages have variable lengths. Some message definitions include Null terminated strings which causes the length of the packet to be content specific. Prior to
15、 sending any of the messages defined in this document, the device must negotiate the maximum payload size using the “Query: Maximum payload length?“ and “Response: Maximum payload length“ messages defined in Section 6 of ANSI/CEA-2045. ANSI/CEA-2045 prohibits transfer of serial messages that would o
16、verflow buffers of the recipient. Intermediate DR commands are all optional. Where the terms “optional” and “mandatory” are used in the tables in this section, they refer only to the requirement for those fields within the message being described. Where multiple fields are labeled as “optional”, the
17、 sender must include all elements up to the last “optional” value transmitted. 3.1 Required Command Support Devices implementing the Thermostat Message Set must support the following commands: 3 Thermostat Mode Hold Mode Thermostat Status Thermostat Features 3.2 Operational Mode Commands These comma
18、nds are used to determine the current operating state or alter the current operating state. 3.2.1 Thermostat Mode This command is used to get or set the current operating mode in the thermostat. Parameters System Mode Value Mode 0 Off 1 Auto 2 Reserved 3 Cool 4 Heat 5 Aux/Emer Heat 6 Reserved 7 Rese
19、rved SGD Get: Not Applicable SGD Set: Not Applicable UCM Get: SGD responds UCM Set: SGD responds Get Thermostat Mode Request Payload Byte Value Comments Mandatory/Optional 1 0x07 OpCode1 M 2 0x01 OpCode2 M 4 Get Thermostat Mode Response Payload Byte Value Comments Mandatory/Optional 1 0x07 OpCode1 M
20、 2 0x81 OpCode2 M 3 Response Code M 4 System Mode M Set Thermostat Mode Request Payload Byte Value Comments Mandatory/Optional 1 0x07 OpCode1 M 2 0x01 OpCode2 M 3 System Mode M Set Thermostat Mode Response Payload Byte Value Comments Mandatory/Optional 1 0x07 OpCode1 M 2 0x81 OpCode2 M 3 Response Co
21、de M 3.2.2 Fan Mode This command is used to get or set the current fan mode in the thermostat. Parameters Fan Mode Value Mode 0 Auto 1 On 2 Circulate SGD Get: Not Applicable SGD Set: Not Applicable UCM Get: SGD responds UCM Set: SGD responds Get Fan Mode Request Payload Byte Value Comments Mandatory
22、/Optional 1 0x07 OpCode1 M 2 0x02 OpCode2 M 5 Get Fan Mode Response Payload Byte Value Comments Mandatory/Optional 1 0x07 OpCode1 M 2 0x82 OpCode2 M 3 Response Code M 4 Fan Mode M Set Fan Mode Request Payload Byte Value Comments Mandatory/Optional 1 0x07 OpCode1 M 2 0x02 OpCode2 M 3 Fan Mode M Set F
23、an Mode Response Payload Byte Value Comments Mandatory/Optional 1 0x07 OpCode1 M 2 0x82 OpCode2 M 3 Response Code M 3.2.3 Hold Mode This command is used to get or set the current Hold mode in the thermostat. Parameters Hold Mode Value Mode 0 No Hold 1 Temporary Hold 2 Permanent Hold 3 Timed Hold Hol
24、d Set Point: the current hold set point in F, UINT8. Timed Hold Time Remaining: Minutes, if in Time Hold, the time remaining before the hold expires, UINT16. SGD Get: Not Applicable SGD Set: Not Applicable UCM Get: SGD responds UCM Set: SGD responds 6 Get Hold Request Payload Byte Value Comments Man
25、datory/Optional 1 0x07 OpCode1 M 2 0x03 OpCode2 M Get Hold Response Payload Byte Value Comments Mandatory/Optional 1 0x07 OpCode1 M 2 0x83 OpCode2 M 3 Response Code M 4 Hold Mode M 5 Hold Setpoint F O 6-7 Timed Hold Time Remaining O Set Hold Request Payload Byte Value Comments Mandatory/Optional 1 0
26、x07 OpCode1 M 2 0x03 OpCode2 M 3 Hold Mode M 4 Hold Setpoint F O 5-6 Timed Hold Time O Set Hold Response Payload Byte Value Comments Mandatory/Optional 1 0x07 OpCode1 M 2 0x83 OpCode2 M 3 Response Code M 7 3.2.4 Curtailment Mode This command is used to get or set the curtailment mode in the thermost
27、at. The curtailment mode is used to enable cycling and/or temperature controls and to display status using LED indicators and/or messaging. Parameters Curtailment Timer: 1 to 255 minutes, when the timer expires all actions implemented by this message are terminated, UINT8. Shed Outputs: disable the
28、indicated outputs until the curtailment timer expires. Bits Use 7 Prevent UI Initiated Hold 6 Clear Temp Hold 5 Future Use 4 Future Use 3 Future Use 2 Shed Alternate Heat/Aux 1 Shed Stage 2 and above 0 Shed All LED State: Bits Use 7 4 On Time in second intervals 3 0 Off Time in second intervals Heat
29、/Cool Curtailment Hold: set point to use until the curtailment timer expires. A zero indicates that there is no curtailment hold active, UINT8. Tier Icons: each pair of bits controls the display of the indicated tier icon. Value Use 0 Off 1 Outline 2 Solid 3 Blinking 8 Bits (2n) Use 0-1 Tier 1 2-3 T
30、ier 2 4-5 Tier 3 6-7 Tier 4 8-9 Tier 5 10-11 Tier 6 12-15 Future Use Audible Alerter Mode: Value Use 0 Off 1 On Curtailment Message: Null terminated string to display on the thermostat UI. SGD Get: Not Applicable SGD Set: Not Applicable UCM Get: SGD responds UCM Set: SGD responds Get Curtailment Mod
31、e Request Payload Byte Value Comments Mandatory/Optional 1 0x07 OpCode1 M 2 0x04 OpCode2 M 9 Get Curtailment Mode Response Payload Byte Value Comments Mandatory/Optional 1 0x07 OpCode1 M 2 0x84 OpCode2 M 3 Response Code M 4 Curtailment Timer M 5 Shed Outputs M 6 LED State, Green M 7 LED State, Red M
32、 8 LED State, Yellow M 9 Heat Curtailment Hold Set Point F M 10 Cool Curtailment Hold Set Point F M 11-12 Tier Icons M 13 Audible Alerter Mode M 14-? Curtailment Message M Set Curtailment Mode Request Payload Byte Value Comments Mandatory/Optional 1 0x07 OpCode1 M 2 0x04 OpCode2 M 3 Curtailment Time
33、r M 4 Shed Outputs M 5 LED State, Green M 6 LED State, Red M 7 LED State, Yellow M 8 Heat Curtailment Hold Set Point F M 9 Cool Curtailment Hold Set Point F M 10-11 Tier Icons M 12 Audible Alerter Mode M 13-? Curtailment Message M 10 Set Curtailment Mode Response Payload Byte Value Comments Mandator
34、y/Optional 1 0x07 OpCode1 M 2 0x84 OpCode2 M 3 Response Code M 3.2.5 Communications Timeout This command is used to get or set the communications timeout period. Parameters Comm Timeout: communications timeout value in minutes. Range is 1 to 10 minutes, UINT8. SGD Get: Not Applicable SGD Set: Not Ap
35、plicable UCM Get: SGD responds UCM Set: SGD responds Get Communications Timeout Request Payload Byte Value Comments Mandatory/Optional 1 0x07 OpCode1 M 2 0x05 OpCode2 M 11 Get Communications Timeout Response Payload Byte Value Comments Mandatory/Optional 1 0x07 OpCode1 M 2 0x85 OpCode2 M 3 Response
36、Code M 4 Comm Timeout M Set Communications Timeout Request Payload Byte Value Comments Mandatory/Optional 1 0x07 OpCode1 M 2 0x05 OpCode2 M 3 Comm Timeout M Set Communications Timeout Response Payload Byte Value Comments Mandatory/Optional 1 0x07 OpCode1 M 2 0x85 OpCode2 M 3 Response Code M 3.2.6 Hu
37、midity Control This command is used to get or set the current humidity control mode in the thermostat. Parameters Humidity Mode Value Mode 0 Off 1 Humidify 2 Dehumidify 3 Auto Changeover Humidify Set Point: Target humidity setting, 0xFF = not supported, UINT8 Dehumidify Set Point: Target dehumidify
38、setting, 0xFF = not supported, UINT8 SGD Get: Not Applicable SGD Set: Not Applicable UCM Get: SGD responds UCM Set: SGD responds 12 Get Humidity Control Request Payload Byte Value Comments Mandatory/Optional 1 0x07 OpCode1 M 2 0x06 OpCode2 M Get Humidity Control Response Payload Byte Value Comments
39、Mandatory/Optional 1 0x07 OpCode1 M 2 0x86 OpCode2 M 3 Response Code M 4 Humidity Mode M 5 Humiditfy Set Point M 6 Dehumidify Set Point M Set Humidity Control Request Payload Byte Value Comments Mandatory/Optional 1 0x07 OpCode1 M 2 0x06 OpCode2 M 3 Humidity Mode M 4 Humidify Set Point M 5 Dehumidif
40、y Set Point M Set Humidity Control Response Payload Byte Value Comments Mandatory/Optional 1 0x07 OpCode1 M 2 0x86 OpCode2 M 3 Response Code M 3.2.7 Away Mode This command is used to get or set the current Away state. Parameters Away State 0 = inactive, 1 = active SGD Get: Not Applicable SGD Set: No
41、t Applicable UCM Get: SGD responds UCM Set: SGD responds 13 Get Away Mode Request Payload Byte Value Comments Mandatory/Optional 1 0x07 OpCode1 M 2 0x07 OpCode2 M Get Away Mode Response Payload Byte Value Comments Mandatory/Optional 1 0x07 OpCode1 M 2 0x87 OpCode2 M 3 Response Code M 4 Away State M
42、Set Away Mode Request Payload Byte Value Comments Mandatory/Optional 1 0x07 OpCode1 M 2 0x07 OpCode2 M 3 Away State M Set Away Mode Response Payload Byte Value Comments Mandatory/Optional 1 0x07 OpCode1 M 2 0x87 OpCode2 M 3 Response Code M 14 3.3 Status Commands 3.3.1 Thermostat Status This command
43、is used to query the current operating status of the thermostat. It can also be used by the thermostat to asynchronously send changes as they occur. Parameters System Mode Value Mode 0 Off 1 Auto 2 Reserved 3 Cool 4 Heat 5 Aux/Emer Heat 6 Reserved 7 Reserved Fan Mode Value Mode 0 Auto 1 On 2 Circula
44、te Output States Bit Indication 15 Fan 14 9 Future Use 8 Aux Stage 2 7 Aux Stage 1 6 Heat Stage 4 5 Heat Stage 3 4 Heat Stage 2 3 Heat Stage 1 2 Cool Stage 3 1 Cool Stage 2 0 Cool Stage 1 15 Hold State Value Mode 0 No Hold 1 Temporary 2 Permanent 3 Timed Hold TOD Period Value Mode 0 Morning 1 Day 2
45、Evening 3 Night 4 Occupied 5 Unoccupied 255 Non-Programmable Current Set Point: current TOD period cool and heat set points in degrees Fahrenheit, UINT8. Working Set Point: current working set point. If there is an active hold this will be the hold set point. When no active hold will be either the h
46、eat or cool TOD set point, UINT8. Current Temperature: measured indoor and outdoor (if supported) temperatures in 1/10 degrees Fahrenheit. 0xFFFF = not supported/unknown, UINT16. Displayed Temperature: temperature displayed on the thermostat in 1/10 degrees Fahrenheit, UINT16.Configuration Changed F
47、lags Bit Indication 7 Future Use 6 Keypad Lockout Changed 5 Temperature Limits Changed 4 System Config Changed 3 Filter Reminder Changed 2 Display Parameters Changed 1 TOD Cool Schedule Changed 0 TOD Heat Schedule Changed 16 Status Flags Bit Indication 7 Future Use 6 Future Use 5 Future Use 4 Clock
48、Changed 3 Filter Reminder Expired 2 No AC 1 Low Battery 0 Restart Current Time Time value displayed on the thermostat clock. o Year: years since 2000, UINT8 o Month: 1 = January, UINT8 o Day: 1 31, UINT8 o Hour: 0 23, UINT8 o Minute 0 59, UINT8 o Second 0 59, UINT8 o Day of Week: 0 = Sunday, UINT8 A
49、way State 0 = inactive, 1 = active Humidity Mode Value Mode 0 Off 1 Humidify 2 Dehumidify 3 Auto Changeover Humidify Set Point: Target humidity setting, 0xFF = not supported, UINT8 Dehumidify Set Point: Target dehumidify setting, 0xFF = not supported, UINT8 Current Humidity: measured indoor humidity in 1/10 %. 0xFFFF = not supported, UINT16 SGD Get: Not Applicable SGD Set: UCM responds UCM Get: SGD responds UCM Set: Not Appli