Skip to content

Instantly share code, notes, and snippets.

@PatrickCronin
Last active June 3, 2019 12:21
Show Gist options
  • Save PatrickCronin/53ff07d4881a576dd413e90a15cc1b0b to your computer and use it in GitHub Desktop.
Save PatrickCronin/53ff07d4881a576dd413e90a15cc1b0b to your computer and use it in GitHub Desktop.
<?xml version="1.0" encoding="utf-8"?>
<Product xmlns='http://code.google.com/p/open-zwave/'>
<!--
Radio Thermostat Company of America CT80B Thermostat connected to a ZWave
network with an RTZW-02 USNAP module.
Installation and operation manual available at:
https://radiothermostat.desk.com/customer/en/portal/articles/1216509-ct80b-installation-and-operation-manuals
Details of the RTZW-02 USNAP module available at:
https://radiothermostat.desk.com/customer/portal/kb_article_attachments/20336/original.pdf?1379455676
-->
<CommandClass id="32">
<Value type="list" index="1" genre="config" label="Energy Mode" units="" min="0" max="1" value="1" size="1">
<Help>
Energy Savings applies a 4 deg F setback to the existing set point temperature to comply with EPA recommendations for energy savings.
</Help>
<Item label="Energy Saving Mode" value="0"/>
<Item label="Comfort Mode" value="1"/>
</Value>
</CommandClass>
<!-- This thermostat's setpoint descriptions are 0 based, not 1 -->
<CommandClass id="67" base="0"/>
<CommandClass id="112">
<Value type="list" index="1" genre="config" label="Temperature Reporting Threshold" units="F" min="0" max="4" value="2" size="1">
<Help>
The Temperature Reporting Threshold Configuration Set Command sets the reporting threshold for changes in the ambient temperature as detected by the thermostat.
</Help>
<Item label="Disabled" value="0"/>
<Item label="0.5F" value="1"/>
<Item label="1.0F" value="2"/>
<Item label="1.5F" value="3"/>
<Item label="2.0F" value="4"/>
</Value>
<Value type="list" index="2" genre="config" label="HVAC Settings" read_only="true" units="" min="0" max="2147483647" value="17891585" size="4">
<Help>
Bits 0 - 7 -> HVAC Setup: Normal (0x01) or Heat Pump (0x02)
Bits 8 - 11 -> Number of Auxiliary Stages (Heat Pump) / Number of Heat Stages (Normal)
Bits 12 - 15 -> Aux Setup: Gas (0x01) or Electric (0x02)
Bits 16 - 23 -> Number of Heat Pump Stages
Bits 24 - 31 -> Number of Cool Stages
</Help>
<Item label="HVAC: Normal, Heat Stages: 1, Heat Setup: Gas, Heat Pump Stages: 1, Cool Stages: 1" value="17891585"/> <!-- 0x01,0x1,0x1,0x01,0x01 -->
<Item label="HVAC: Normal, Heat Stages: 1, Heat Setup: Gas, Heat Pump Stages: 1, Cool Stages: 2" value="17891586"/> <!-- 0x01,0x1,0x1,0x01,0x02 -->
<Item label="HVAC: Normal, Heat Stages: 1, Heat Setup: Gas, Heat Pump Stages: 2, Cool Stages: 1" value="17891841"/> <!-- 0x01,0x1,0x1,0x02,0x01 -->
<Item label="HVAC: Normal, Heat Stages: 1, Heat Setup: Gas, Heat Pump Stages: 2, Cool Stages: 2" value="17891842"/> <!-- 0x01,0x1,0x1,0x02,0x02 -->
<Item label="HVAC: Normal, Heat Stages: 1, Heat Setup: Elec, Heat Pump Stages: 1, Cool Stages: 1" value="17957121"/> <!-- 0x01,0x1,0x2,0x01,0x01 -->
<Item label="HVAC: Normal, Heat Stages: 1, Heat Setup: Elec, Heat Pump Stages: 1, Cool Stages: 2" value="17957122"/> <!-- 0x01,0x1,0x2,0x01,0x02 -->
<Item label="HVAC: Normal, Heat Stages: 1, Heat Setup: Elec, Heat Pump Stages: 2, Cool Stages: 1" value="17957377"/> <!-- 0x01,0x1,0x2,0x02,0x01 -->
<Item label="HVAC: Normal, Heat Stages: 1, Heat Setup: Elec, Heat Pump Stages: 2, Cool Stages: 2" value="17957378"/> <!-- 0x01,0x1,0x2,0x02,0x02 -->
<Item label="HVAC: Normal, Heat Stages: 2, Heat Setup: Gas, Heat Pump Stages: 1, Cool Stages: 1" value="18940161"/> <!-- 0x01,0x2,0x1,0x01,0x01 -->
<Item label="HVAC: Normal, Heat Stages: 2, Heat Setup: Gas, Heat Pump Stages: 1, Cool Stages: 2" value="18940162"/> <!-- 0x01,0x2,0x1,0x01,0x02 -->
<Item label="HVAC: Normal, Heat Stages: 2, Heat Setup: Gas, Heat Pump Stages: 2, Cool Stages: 1" value="18940417"/> <!-- 0x01,0x2,0x1,0x02,0x01 -->
<Item label="HVAC: Normal, Heat Stages: 2, Heat Setup: Gas, Heat Pump Stages: 2, Cool Stages: 2" value="18940418"/> <!-- 0x01,0x2,0x1,0x02,0x02 -->
<Item label="HVAC: Normal, Heat Stages: 2, Heat Setup: Elec, Heat Pump Stages: 1, Cool Stages: 1" value="19005697"/> <!-- 0x01,0x2,0x2,0x01,0x01 -->
<Item label="HVAC: Normal, Heat Stages: 2, Heat Setup: Elec, Heat Pump Stages: 1, Cool Stages: 2" value="19005698"/> <!-- 0x01,0x2,0x2,0x01,0x02 -->
<Item label="HVAC: Normal, Heat Stages: 2, Heat Setup: Elec, Heat Pump Stages: 2, Cool Stages: 1" value="19005953"/> <!-- 0x01,0x2,0x2,0x02,0x01 -->
<Item label="HVAC: Normal, Heat Stages: 2, Heat Setup: Elec, Heat Pump Stages: 2, Cool Stages: 2" value="19005954"/> <!-- 0x01,0x2,0x2,0x02,0x02 -->
<Item label="HVAC: Heat Pump, Aux Stages: 1, Aux Setup: Gas, Heat Pump Stages: 1, Cool Stages: 1" value="34668801"/> <!-- 0x02,0x1,0x1,0x01,0x01 -->
<Item label="HVAC: Heat Pump, Aux Stages: 1, Aux Setup: Gas, Heat Pump Stages: 1, Cool Stages: 2" value="34668802"/> <!-- 0x02,0x1,0x1,0x01,0x02 -->
<Item label="HVAC: Heat Pump, Aux Stages: 1, Aux Setup: Gas, Heat Pump Stages: 2, Cool Stages: 1" value="34669057"/> <!-- 0x02,0x1,0x1,0x02,0x01 -->
<Item label="HVAC: Heat Pump, Aux Stages: 1, Aux Setup: Gas, Heat Pump Stages: 2, Cool Stages: 2" value="34669058"/> <!-- 0x02,0x1,0x1,0x02,0x02 -->
<Item label="HVAC: Heat Pump, Aux Stages: 1, Aux Setup: Elec, Heat Pump Stages: 1, Cool Stages: 1" value="34734337"/> <!-- 0x02,0x1,0x2,0x01,0x01 -->
<Item label="HVAC: Heat Pump, Aux Stages: 1, Aux Setup: Elec, Heat Pump Stages: 1, Cool Stages: 2" value="34734338"/> <!-- 0x02,0x1,0x2,0x01,0x02 -->
<Item label="HVAC: Heat Pump, Aux Stages: 1, Aux Setup: Elec, Heat Pump Stages: 2, Cool Stages: 1" value="34734593"/> <!-- 0x02,0x1,0x2,0x02,0x01 -->
<Item label="HVAC: Heat Pump, Aux Stages: 1, Aux Setup: Elec, Heat Pump Stages: 2, Cool Stages: 2" value="34734594"/> <!-- 0x02,0x1,0x2,0x02,0x02 -->
<Item label="HVAC: Heat Pump, Aux Stages: 2, Aux Setup: Gas, Heat Pump Stages: 1, Cool Stages: 1" value="35717377"/> <!-- 0x02,0x2,0x1,0x01,0x01 -->
<Item label="HVAC: Heat Pump, Aux Stages: 2, Aux Setup: Gas, Heat Pump Stages: 1, Cool Stages: 2" value="35717378"/> <!-- 0x02,0x2,0x1,0x01,0x02 -->
<Item label="HVAC: Heat Pump, Aux Stages: 2, Aux Setup: Gas, Heat Pump Stages: 2, Cool Stages: 1" value="35717633"/> <!-- 0x02,0x2,0x1,0x02,0x01 -->
<Item label="HVAC: Heat Pump, Aux Stages: 2, Aux Setup: Gas, Heat Pump Stages: 2, Cool Stages: 2" value="35717634"/> <!-- 0x02,0x2,0x1,0x02,0x02 -->
<Item label="HVAC: Heat Pump, Aux Stages: 2, Aux Setup: Elec, Heat Pump Stages: 1, Cool Stages: 1" value="35782913"/><!-- 0x02,0x2,0x2,0x01,0x01 -->
<Item label="HVAC: Heat Pump, Aux Stages: 2, Aux Setup: Elec, Heat Pump Stages: 1, Cool Stages: 2" value="35782914"/><!-- 0x02,0x2,0x2,0x01,0x02 -->
<Item label="HVAC: Heat Pump, Aux Stages: 2, Aux Setup: Elec, Heat Pump Stages: 2, Cool Stages: 1" value="35783169"/><!-- 0x02,0x2,0x2,0x02,0x01 -->
<Item label="HVAC: Heat Pump, Aux Stages: 2, Aux Setup: Elec, Heat Pump Stages: 2, Cool Stages: 2" value="35783170"/><!-- 0x02,0x2,0x2,0x02,0x02 -->
</Value>
<Value type="list" index="3" genre="config" label="Utility Lock" write_only="true" units="" min="0" max="1" value="0" size="1">
<Help>
The Utility Lock Configuration Set command enables or disables the utility lock.
If the utility lock is enabled, the setpoint cannot be modified directly via the thermostat screen.
</Help>
<Item label="Disable" value="0"/>
<Item label="Enable" value="1"/>
</Value>
<Value type="list" index="4" genre="config" label="C-Wire/Battery Status" read_only="true" units="" min="1" max="2" value="1" size="1">
<Help>
1 -> C-Wire
2 -> Battery
</Help>
<Item label="C-Wire" value="1"/>
<Item label="Battery" value="2"/>
</Value>
<Value type="list" index="5" genre="config" label="Humidity Reporting Threshold" units="% RH" min="0" max="3" value="2" size="1">
<Help>
The Humidity Reporting Threshold Configuration Set Command sets the reporting threshold for changes in the relative humidity as detected by the thermostat.
</Help>
<Item label="Disabled" value="0"/>
<Item label="3" value="1"/>
<Item label="5" value="2"/>
<Item label="10" value="3"/>
</Value>
<Value type="list" index="6" genre="config" label="Auxiliary/Emergency heat" units="" min="0" max="1" value="0" size="1">
<Help>
The Auxiliary/Emergency configuration command enables or disables auxiliary / emergency heating in the thermostat.
Auxiliary / emergency heating is only available if the thermostat is configured in heat pump mode and with at least one stage of auxiliary heating.
This command enables auxiliary / emergency heating when the thermostat is in Auto mode.
The Thermostat Set Mode command with mode Auxiliary/Emergency Heat will enable emergency heating but only if the thermostat is in Heat mode.
This command should only be used on thermostats that support Auxiliary/Emergency Heat thermostat mode.
</Help>
<Item label="Disabled" value="0"/>
<Item label="Enabled" value="1"/>
</Value>
<Value type="list" index="7" genre="config" label="Thermostat Swing Temperature" units="F" min="1" max="8" value="2" size="1">
<Help>
Thermostat Swing Temperature configuration command sets the maximum allowed difference between ambient temperature and the set temperature.
</Help>
<Item label="0.5F" value="1"/>
<Item label="1.0F" value="2"/>
<Item label="1.5F" value="3"/>
<Item label="2.0F" value="4"/>
<Item label="2.5F" value="5"/>
<Item label="3.0F" value="6"/>
<Item label="3.5F" value="7"/>
<Item label="4.0F" value="8"/>
</Value>
<Value type="list" index="8" genre="config" label="Thermostat Differential Temperature" units="F" min="2" max="32767" value="4" size="2">
<Help>
(Set Only) The Thermostat Differential Temperature configuration command sets the differential temperature for multi-stage HVAC systems.
The differential temperature delta defines when the thermostat will turn on additional stages.
There are two differential temperatures, one for multistage cool systems and one for multistage heat systems.
If the thermostat is not configured for multistage HVAC systems then these parameters have no effect.
</Help>
<Item label="2.0F Heat" value="4"/>
<Item label="3.0F Heat" value="6"/>
<Item label="4.0F Heat" value="8"/>
<Item label="5.0F Heat" value="10"/>
<Item label="6.0F Heat" value="12"/>
<Item label="2.0F Cool" value="260"/>
<Item label="3.0F Cool" value="262"/>
<Item label="4.0F Cool" value="264"/>
<Item label="5.0F Cool" value="266"/>
<Item label="6.0F Cool" value="268"/>
</Value>
<Value type="list" index="9" genre="config" label="Thermostat Recovery Mode" units="" min="1" max="2" value="2" size="1">
<Help>
The Thermostat Recovery Mode configuration command sets the HVAC recovery mode type.
The recovery mode determines when additional HVAC stages are turned off as the ambient temperature returns to the target temperature.
If the recovery mode is set to economy, the thermostat will turn off additional HVAC stages when the ambient temperature reaches the target temperature plus/minus the differential temperature.
If the recovery mode is set to fast, the thermostat will leave all stages on (assuming they were already on) until the ambient temperature reaches the target temperature.
</Help>
<Item label="Fast" value="1"/>
<Item label="Economy" value="2"/>
</Value>
<Value type="raw" index="10" genre="config" label="Temperature Reporting Filter" units="F" min="0" max="4294967295" size="4" value="0x09 0x00 0x09 0x00">
<Help>
The Temperature Reporting Filter configuration command sets upper and lower bounds of the ambient temperature reporting.
The thermostat won't report ambient temperature changes if the ambient temperature falls between these bounds.
For example, if the upper bound is 80F and the lower bound is 60F, the thermostat will not send SENSOR_MULTI_LEVEL_REPORTS for ambient temperature values between 60F and 80F.
The thermostat will only send ambient temperature changes if the thermostat has been added to an association group (see Command Class Association) and the temperature reporting threshold is non-zero (see Temperature Reporting Threshold).
Input in hexadecimal only like so: 0x09 0x05 0x09 0x0A.
It must always have four 1 byte sized numbers.
The first two bytes control the lower temperature bound for the Temperature Reporting Filter the last two control the upper temperature bound.
The first byte in the byte pair always refers to temperature scale (Celsius 0x01 or Fahrenheit 0x09).
While the second byte in each byte pair is the bound temperature.
The max/min temp you can use is 127 degrees.
To convert decimal to hex goto: https://www.binaryhexconverter.com/decimal-to-hex-converter or you can use the built in Windows calculator program in Programmer mode.
If you mess up your thermostat copy and paste 0x09 0x00 0x09 0x00 (for a F Thermostat) or 0x01 0x00 0x01 0x00 (for a C Thermostat).
This will remove any bounds.
</Help>
</Value>
<Value type="short" index="10" genre="config" label="Temperature Reporting Filter" units="F" min="0" max="124" value="124" size="2">
<Help>
The Temperature Reporting Filter configuration command sets upper and lower bounds of the ambient temperature reporting. The thermostat will not report ambient temperature changes if the ambient temperature falls between these bounds. For example, if the upper bound is 80F and the lower bound is 60F, the thermostat will not send SENSOR_MULTI_LEVEL_REPORTS for ambient temperature values between 60F and 80F. The thermostat will only send ambient temperature changes if the
thermostat has been added to an association group (see Command Class Association) and the temperature reporting threshold is non-zero (see Temperature Reporting Threshold).
</Help>
</Value>
<!--
<Value type="raw" index="10" genre="config" label="Temperature Reporting Filter" units="F" min="0" max="32767" size="4" value="0x09 0x00 0x09 0x00">
<Help>
The Temperature Reporting Filter configuration command sets upper and lower bounds of the ambient temperature reporting.
The thermostat won't report ambient temperature changes if the ambient temperature falls between these bounds.
For example, if the upper bound is 80F and the lower bound is 60F, the thermostat will not send SENSOR_MULTI_LEVEL_REPORTS for ambient temperature values between 60F and 80F.
The thermostat will only send ambient temperature changes if the thermostat has been added to an association group (see Command Class Association) and the temperature reporting threshold is non-zero (see Temperature Reporting Threshold).
Input in hexadecimal only like so: 0x09 0x05 0x09 0x0A.
It must always have four 1 byte sized numbers.
The first two bytes control the lower temperature bound for the Temperature Reporting Filter the last two control the upper temperature bound.
The first byte in the byte pair always refers to temperature scale (Celsius 0x01 or Fahrenheit 0x09).
While the second byte in each byte pair is the bound temperature.
The max/min temp you can use is 127 degrees.
To convert decimal to hex goto: https://www.binaryhexconverter.com/decimal-to-hex-converter or you can use the built in Windows calculator program in Programmer mode.
If you mess up your thermostat copy and paste 0x09 0x00 0x09 0x00 (for a F Thermostat) or 0x01 0x00 0x01 0x00 (for a C Thermostat).
This will remove any bounds.
</Help>
</Value>
-->
<Value type="short" index="10" genre="config" label="Temperature Reporting Filter" units="F" min="0" max="124" value="124" size="2">
<Help>
The Temperature Reporting Filter configuration command sets upper and lower bounds of the ambient temperature reporting. The thermostat will not report ambient temperature changes if the ambient temperature falls between these bounds. For example, if the upper bound is 80F and the lower bound is 60F, the thermostat will not send SENSOR_MULTI_LEVEL_REPORTS for ambient temperature values between 60F and 80F. The thermostat will only send ambient temperature changes if the
thermostat has been added to an association group (see Command Class Association) and the temperature reporting threshold is non-zero (see Temperature Reporting Threshold).
</Help>
</Value>
<Value type="list" index="11" genre="config" label="UI Mode" units="" min="0" max="1" value="1" size="1">
<Help>
UI Mode Normal/Simple
</Help>
<Item label="Normal" value="0"/>
<Item label="Simple" value="1"/>
</Value>
<Value type="list" index="12" genre="config" label="Multicast" units="" min="0" max="1" value="0" size="1">
<Help>
Multicast Enable/Disable
</Help>
<Item label="Disabled" value="0"/>
<Item label="Enabled" value="1"/>
</Value>
</CommandClass>
<CommandClass id="133">
<Associations num_groups="1">
<Group index="1" max_associations="2" label="Reporting"/>
</Associations>
</CommandClass>
</Product>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment