[RELEASE] Alarm.com Z-Wave Thermostat ADC-T2000


I love the look of this thermostat and it has a ton of configuration options. I used it for a couple months and it was pretty reliable. There is one problem that I have with it that is pretty annoying. It does not let you set the heat or cool setpoint closer than 3 degrees. For example, if the heat is set to 69 and you set the cool setpoint to 71, it changes the heat setpoint to 68. I talked to the manufacturer who described this as a "feature", but it is really annoying. The reason is that if you have an automation that sets both setpoints to 70 degrees (like when you arrive home), only one of them will end up being 70 degrees! I've had automations like this with so many thermostats because I don't know if the thermostat is going to be in heat mode or cool mode, but either way I want it to be 70 degrees when I get home.

Anyway, I have made some changes to the device handler to only adjust the temperature based on what mode it is in. Works well, but just keep that in mind. Also, this was influenced by a z-wave device handler I found a long, long, time ago and can’t remember who. If it was you, please let me know so I can give you credit.

This thing has so many configuration options I don’t even know what they all do. Here is a list:

HVAC System Type
Balance Setpoint
Recovery Settings
Fan Circulation Period
Fan Circulation Duty Cycle
Fan Purge Time
Maximum Heat Setpoint
Minimum Heat Setpoint
Maximum Cool Setpoint
Minimum Cool Setpoint
Thermostat Lock
Heat Stages
Compressor Delay
Demand Response Period
Demand Response Duty Cycle
Temperature Display Units
HVAC Modes Enabled
Configurable Terminal Setting
Power Source
Battery Alert Threshold Low
Battery Alert Threshold Very Low
Number of Cool Stages
Remote Temperature Enable
Heat Differential
Cool Differential
Temperature Reporting Threshold
O/B Select
Z-Wave Echo Association Reports
Heat Fuel Type
Calibration Temperature
Overshoot
Swing
Heat Staging Delay
Cool Staging Delay

1 Like

I tried installing this device, but it seems as though my Thermostat keeps crashing upon open. Any suggestions?

Are you on Android or iOS?

Also, can you take a screenshot of the current states of the device in the ide. It will look like this:

Hi Eric. I am an iOS user. Current states only show
* currentMode: heat
* needUpdate: YES

My guess is that there is a null value somewhere in one of the device states. Just to clarify, you open the device in the SmartThings app and the SmartThings app closes?

Can you try to load the default Z-Wave Thermostat handler, hit refresh and wait a few minutes. Then switch back to the ADC-T2000 handler.

Thanks Eric, that did the trick!

No problem, glad it is working for you.

How do I recalibrate the thermostat, the temperature is off?

Change the “Calibration Temperature” setting in the device preferences.

Just got a ST a few days ago. I was trying to set this up in my house. Added it to the page and my apps, but when I go to it on the app, I just get “??” for the temperature and all other buttons are blank. I looked and couldn’t find anything referencing calibrate. Any help would be greatly appreciated.

Have you installed the handler from the first post and assigned it to the device? All of the settings for the device should appear once you click the “gear” icon for the device in the SmartThings Mobile App.

I took the code from the post linked above, and created the device handler and published it.
Then I went to the ‘Create a Device’ section on the website and made a thermostat device (e.g- ADCTHERMO).
Went to the ST app on my phone, went to My Home -> Things and a thermostat was listed there.
I went to the “Add a new Device” screen "“thermostat” would show up, I would rename it and hit Save at the top right and it would give me the message that it was finishing syncing/pairing with the system, but nothing would seem to happen after this point.

Is there a step I am leaving out, doing wrong, or should the thermostat by syncing up and displaying information properly after this?

This step is incorrect. You should include the thermostat like other Z-Wave devices (pairing instructions are in the device manual I believe). The device should get installed with the correct handler, but if it doesn’t for some reason, you need to find it in the IDE, edit it, and assign the device handler manually.

Ahh I see. So delete the device I created, make sure handler is still there (should be) and then put thermostat in pairing mode and then add it to ST that way, correct?

Sorry for all the questions…this is the first device I have tried to add since I got it… outside of messing with using ST over the ADC app itself.

Thanks for the help so far.

Yep, you’ve got it.

Hi, I’m new two Smartthings. I managed to get the device handler installed and notice that there is no means to program the thermostat on a schedule. I previously had alarm.com which allowed the programming and figured if I got smartthings, I would have that ability since the thermostat can’t be programmed otherwise. Is it possible to update the device handler to have scheduled program capability? If not, are there any other thermostats which have this ability? It sucks to go and buy a new smart thermostat just for this but we always use the programming of our thermostats.

Thanks,
Bob

No thermostat inside of SmartThings will have a “schedule” within the device itself. Scheduling is handled by SmartApps or routines. For example, I use the Good Morning, Good Night, Goodbye, and I’m back routines to handle most of my scheduling. Goodbye and I’m back will trigger automatically when those in my family leave and come back setting the thermostat automatically. Good Morning sets it to a higher setting at a certain time in the morning and Good Night sets it to a lower setting at a time in the evening. Of course, the latter two will not change the temperature if everyone is gone (the system will be in “away” mode). There is also WebCoRE if you want a single place to setup something similar to “schedules”.

Thank you Eric,
So it sounds like I’ll need a new thermostat which ill have it’s own app where I can set up the schedule. That’s unfortunate.

Bob

Would you happen to know if there is anywhere in the device handler where I can apply a temperature offset to correct the unit’s inaccuracy? I noticed you mentioned above Eric that its in the “Calibration Temperature” setting in the device preferences. But I can’t seem to locate that area. These are all that I see available for change:

Settings - Once you change values on this page, the corner of the “configuration” icon will change orange until all configuration parameters are updated. HVAC System Type Range: 0 to 1 Default: 0 (Normal) - Tap to set
0
Heat Fuel Type Range: 0-1 Default: 1 (Electric) - Tap to set
-3
Overshoot Overshoot Range (in deg. F) Precision is tenths of a degree. Range: 0 to 30 Default: 5 - Tap to set
5
Maximum Heat Setpoint Max Heat Setpoint Range (in deg. F) Precision is tenths of a degree. Range: 350 to 950 Default: 950 - Tap to set
950
Minimum Heat Setpoint Min Heat Setpoint Range (in deg. F) Precision is tenths of a degree. Range: 350 to 950 Default: 350 - Tap to set
350
Maximum Cool Setpoint Max Cool Setpoint Range(in deg. F) Precision is tenths of a degree. Range: 500 to 950 Default: 950 - Tap to set
950
Minimum Cool Setpoint Min Cool Setpoint (in deg. F) Precision is tenths of a degree. Range: 500 to 950 Default: 500 - Tap to set
500
Thermostat Lock Range: 0 to 1 Default: 0 (Disabled) - Tap to set
0
Temperature Display Units Range: 0 to 1 Default: 1 (Farenheit) - Tap to set
1
HVAC Modes Enabled Range: 3, 5, 7, 15, 31, 23, 19 Default: 15 (Off, Heat, Cool, Auto) - Tap to set
15
Power Source Range: 0 to 1 Default: 0 (Battery) - Tap to set
1
Battery Alert Threshold Low Battery Alert Range (percentage) Range: 0 to 100 Default: 30 - Tap to set
30
Battery Alert Threshold Very Low Very Low Battery Alert Range (percentage) Range: 0 to 100 Default: 15 - Tap to set
15
Heat Differential Heat Differential (in deg. F) Precision is tenths of a degree. Range: 10 to 100 Default: 30 - Tap to set
30
Cool Differential Cool Differential (in deg. F) Precision is tenths of a degree. Range: 10 to 100 Default: 30 - Tap to set
30
Temperature Reporting Threshold Temperature Reporting Range (in deg. F) Precision is tenths of a degree. Range: 5 to 20 Default: 10 - Tap to set
10
Auto Mode Threshold Temperature in which you do not want your thermostat to heat above or cool below. Used for auto mode adjustments - Tap to set
70
Enable Debug Logging?

Bob

For some reason I don’t have that setting enabled. Towards the bottom of the code in the IDE you can change:

<Value type="byte" byteSize="4" index="5" label="Calibration Temperature" min="-100" max="100" value="0" setting_type="zwave" fw="" disabled="true">

to

<Value type="byte" byteSize="4" index="5" label="Calibration Temperature" min="-100" max="100" value="0" setting_type="zwave" fw="" disabled="false">

Or I’ll be posting an update soon with that option enabled and some other minor modifications.