[Release] Nuheat Signature Thermostat

I’ve been sitting on this for quite a while because I was going to build an app manager to auto create the devices for you, but I’ve never gotten around to it. In the last few months, I’ve had enough people ask me that I thought it was worth releasing.

This device handler is for controlling the Nuheat Signature Floor Thermostat. They are available at Amazon for about $190 (July '17).

A couple items you should know…

  1. This uses the Nuheat API so you must have an internet connection for it to work.
  2. Nuheat has not officially published an API so it can change without warning.
  3. I did not use the Async beta to build this, but I have since updated a few of my other DH so I’ll likely update this.
  4. I designed the DH to how I thought I would use it. Let me know if you want changes. I can’t make any promises.
  5. To use this DH you will need your Nuheat username and password along with your thermostat(s) id. You can find the thermostat ID at online. Go into the thermostat and it is the “Thermostat ID”.

Name - Just pick something, required

Thermostate Serial Number - from the website, required

Default Hold Time - If you manually change the temp, it will be set to hold that time for this duration, required

Default On Temperature - If the on() method is called it will use this temp as the heating set point.

Power Usage - This device will report power usage. However, the API was not reliable when calculating it. So if you want to use it, you have to enter the value you think it is using based on the length of your cable. Sorry, this is the best I could do, most of the time the API reports 0W.
Auto Refresh - Interval at which the DH will poll Nuheat for changes. You cannot change this. I wouldn’t recommend changing it in the code to make it faster.

Username - Your Nuheat username

Password - Your Nuheat password

Show Password in Log - For debugging, leave it off unless you want to see the password in the logs.

Log Level - Amount of log detail.

Help in working with the API from @erobertshaw. Thanks!

FYI - @KJ61 @huydnguyen @wkearney99 @Actuary @sgonsalves @Paulo


Thanks for making this DH!
Can you add option for temperature to be in Celsius please? Also I tried
using Google home to give command to increase temperature but gave error,
wondered if you knew anything about this?


What was the command you gave google home? I think I implemented all of the right methods.

Celsius, hmmm… I can do that. I’ll have to take a look how other DH handle that. I’ll also have to determine if Nuheat always sends it in F or if it changes based on your settings. I am assuming the Thermostat on your wall is in Celsius, right?

Thanks Eric, yes it’s in Celsius on my thermostat.

I first tell Google home to turn nuheat to 80, then Google replies that it
can’t because the nuheat is not on.
So I tell to turn on nuheat and that’s when it gave me error.
However when I look at the thermostat, it resumed schedule from an
indefinite hold state.

Thank you so much for this DH! exactly what I was looking for.
One issue I find - when opening in the ST app (android), and entering settings for first time, I fill all fields but then get an error “please fill all required fields”.
I ended up going to the code and changing all fields ‘required’ attribute to ‘false’, then it worked. But there must be a better way…

Thank you for doing this! I’ve been waiting for ages to connect my thermostats and have already lost hope in Nuheat doing something on their side.
I had the same problem than Actuary using the android ST app. In the end I used an iOS device to enter the settings.
Also, a Celsius options would be very nice.
Thank you!

Thanks guys. I am finishing up an outdoor project this week (I hope) and then I will look into adding celsius.

Having a problem with the settings. It keeps telling me to please fill out all required fields and I have.

I added the device handler and created a new device.

Any suggestions?

One other thing. Is the serial number that you mention what the website has listed as the Thermostat ID?
Screenshot 2017-08-02 at 10


Update from github. I just removed the required requirement. There is some issue with Android…

Thanks. Working perfectly now.

1 Like

Hi, any news on the possibility of adding Celsius?

Also, if it is of any help, indigo also have a controller for this thermostat in github: https://github.com/mpoulson/Indigo-NuHeat

It shouldn’t be hard, but I’ve been really busy with travel. I take a look in 2 weeks. Sorry for the delay.

Please can someone direct me on how to install this? I have two nuheat thermostats which I would love to see on Smartthings.

Do you not know how to install custom device handlers or do you just need help with configuring this one?

I managed to figure it out by adding the device handler from code and then I added a device, then applied the “type” to your handler. One thing I noticed is the temperature bar seems like it may need a UI adjustment. What do you think? Image-1

It does ever since ST updated their UI. I haven’t’ gotten around to it. I have about 5 or 6 DH that have this issue now.


I think i found an anomaly while using the temperature bar in the app. My current floor temp is 70F, If I click the temperature bar up to 80F, the temperature bar reverts back to a lower value, say 71F or 72F. If I attempt to raise it again to 80F, the app raises the temperature again by only 1 or 2 degrees. It doesn’t seem to make it to 80F. Same logic holds true for lowering the temperature.

Let me give it a try when I get home today. I haven’t used the DH in a while as it has been warm out. Now that it is getting cold, I’ll be using it again.