New OH2 binding for Venstar Colortouch thermostats

Hey Bill, thanks for the quick response!

First off, I think my initial issue was refreshing BasicUI before OH had a chance to reload. I thought I was introducing errors into my items file but that wasn’t the case. I just had to give OH a chance to reload the file after I made my edits. No issue there. (I thought the refresh issue was related, it sounds like it’s not.)

I am having trouble with state and mode. Mode is always ‘Off’ and state is always null. I thought I had issues with my item definition but maybe not? So far temp and humidity are fine, I haven’t moved beyond mode and state yet.

Can I trouble you to post examples of the item and sitemap entries for each item? I think that would help me get going and may help in troubleshooting as well.

Thanks again for your work on this, it is appreciated!

~Mark

Hi Bill, It comes up as a number. See below:

Hi Bill,

It very well could be a problem with paperui. I have taken a screen shots to help illustrate the issue. This screen shot is just after I click on green check mark to set the new temperature (in paperui). I thought I should also mention that when I change the temperature from paperui, the change is never made on the thermostat. I will try connecting the items to habpanel and see if I can get it to change the temperature on the thermostat from there.

Thanks Bill

Yes, I get the same sort of result in PaperUI (a number 0 when the system is idle, etc). This used to work, and I’m pretty sure the code on the binding end hasn’t changed in any meaningful way, so I’m inclined to think the problem is in the UI (as is the strange behavior when changing values that involve units conversion). I will dig a little deeper when I have a little free time over the next week or so.

Most all of my OpenHAB devices are “managed” by OpenHAB… which I am learning means discovered and configured in PaperUI, so I don’t really have much in my .items files. I’ve set up all of the bindings I’ve written to work that way, as I was under the impression that was “the way forward”, though my experience is that that path isn’t exactly smooth yet.

My thermostat related portions of the sitemap look a little like this (where Downstairs is the name of one of my thermostats):

    Frame {
        Text label="Heating" icon="heating" {
        Frame {
	      Text label="Downstairs" icon="heating"
            Default item=Downstairs_Temperature label="Temperature"
            Default item=Downstairs_SystemState label="State"
            Setpoint item=Downstairs_HeatingSetpoint label="Setpoint"
       }
   }
}

It might also be informative to see if you can change values using the OpenHAB console… something like this:

smarthome:send venstarthermostat_colorTouchThermostat_98f17068b1b5_heatingSetpoint XX

where XX is the temperature you want to set the thermostat to… this should bypass any problems in the UI and REST interfaces and speak directly to the thermostat (I think).

Progress! When I looked closely at the venstar channels in PaperUI I noticed they were all ‘Number’, even the mode and state. When I changed my item data types for those two to Number my sitemap started showing the correct (text) values. (Idle and Cool)

Number  HVACState               "State [%s]"                    {channel="venstarthermostat:colorTouchThermostat:00aefabb372c:systemState"}
Number  HVACMode                "Mode [%s]"                     {channel="venstarthermostat:colorTouchThermostat:00aefabb372c:systemMode"}

    Frame label="Climate" {
        Text item=HVACTemperature icon="temperature"
        Text item=HVACHumidity icon="water"
        Text item=HVACState
        Text item=HVACMode

    }

I assumed the mode and state would be text values so I originally defined them as strings in my items file.

For the PaperUI control my mode now shows correctly but my state is now a number, same as you guys. I am able to change the mode from PaperUI and have it update the thermostat.

Onward and upward!

~Mark

I uploaded a new version of the binding, it should fix the System Mode and System State mappings. Because the fix involved changing the data type of these channels, you’ll need to remove your things and re-add them once you’ve upgraded the binding version. Once you’ve done that, you should see that the system state and mode channels are now of type “String” rather than “Number”.

I don’t have a fix for the problem with changing values when using SI units; I am still pretty sure that the problem is outside the binding. It might be helpful for someone to open a bug report or a new topic here to see if the OpenHAB wizards are aware of the problem.

The download link is:

https://bitbucket.org/hww3/org.openhab.binding.venstarthermostat/downloads/org.openhab.binding.venstarthermostat-2.3.0-SNAPSHOT.jar

Hey Bill! I finally found time to update the binding and everything seems to work! (Both the PaperUI control and my sitemap.)

Nice work!

Thanks,

~Mark

Hello all. I’m new to ISY and OpenHAB, but have made good progress in getting things setup, using Harmony(lighting) and iRule(lighting, thermostat). I have started creating dashboards with OpenHAB and have made progress but I am having issues controlling an Insteon 2414 thermostat. I have the Binding installed, and online, solid green, and I am able to set the temperature setpoints and read the temp/humidity and states, but I have not figured out how to set Mode(Off,Heat,Cool,Auto, Auto Prog) and Fan Mode(On, Auto). I can read their current state, but cannot change them. I have tried and tried all sorts of combinations and iterations without luck. I have looked at a number of forums for examples and guidance, but just can’t seem to crack the code Can anyone provide me with guidance and point me in the right direction. Other than these two open items I have no issues.

Apologies if this not the right forum for this post. I also requested assistance on the UD forum.

Thanks in advance for your help.

John

I should also add that it works fine from PaperUI Control if I type in HEAT, COOL, etc at the Mode Item display, just not in Basic or HABPanel.

I’m trying to get this binding to work, but I’m getting the following error (I xx’d out the USN and ip address):

2019-06-20 10:27:17.398 [TRACE] [org.openhab.binding.venstarthermostat.internal.discovery.VenstarThermostatDiscoveryService] - key: man value: ssdp:discover.
2019-06-20 10:27:17.399 [TRACE] [org.openhab.binding.venstarthermostat.internal.discovery.VenstarThermostatDiscoveryService] - key: st value: colortouch:ecp.
2019-06-20 10:27:17.407 [TRACE] [org.openhab.binding.venstarthermostat.internal.discovery.VenstarThermostatDiscoveryService] - Found thermostat, name: null uuid: null url: null
2019-06-20 10:27:17.408 [TRACE] [org.openhab.binding.venstarthermostat.internal.discovery.VenstarThermostatDiscoveryService] - Bad Format from thermostat
2019-06-20 10:27:17.497 [TRACE] [org.openhab.binding.venstarthermostat.internal.discovery.VenstarThermostatDiscoveryService] - Match: HTTP/1.1 200 OK
Cache-Control: max-age=300
ST: colortouch:ecp
Location: https://192.168.xx.xx/
USN: ecp:98:f1:70:xx:xx:xx:name:Breezeway:type:residential
(this if followed by a blank line and a long string of nulls in the log file)

Any ideas? Or is there somewhere I can access the source code to debug?

Hi, I’m sorry for not replying sooner; for some reason I didn’t see that you’d posted to this thread. I’ve got a newer version of the software that might solve your problems. I’ll post that info in another message as a reply to another question on this thread.

Hi,

What model thermostat and firmware version are you running?

I’ve got a newer version that I’ve been working on as part of an attempt to get this binding added to the openhab core. You might want to try that out:

https://bitbucket.org/hww3/org.openhab.binding.venstarthermostat/downloads/org.openhab.binding.venstarthermostat-2.4.0-SNAPSHOT.jar

If you want to have a look at the source for the latest version, it’s available here:

under addons/bindings/org.openhab.binding.venstarthermostat

Thanks, I have 4 Colortouch thermostats. All on firmware version 4.08.
2 are T5800
1 is a T5900
1 is a T7850

It looks like the problem is the USN_PATTERN, mine starts with ecp, not colortouch.

That sounds familiar… I think the format of that field changed somewhere along the way; you might try upgrading the firmware to see if that resolves the problem (we’ve also noticed that there are stability improvements with newer firmwares…

I’ll also take a look and see if the binding can be made to recognize either format.

Ah, so I was able to update my T7850 and now I see it in the binding, but for my T5800s and T5900 4.08 is still the current/latest firmware.

OK, that makes sense. Give me a couple days and I’ll see if I can switch things to support both. Might take a round or two of testing, but I think we can get both versions of the firmware supported.

Have you made any progress in creating a binding that can support both firmware versions? I’m happy to test.

Hi, I’ve done a little research and think I have a plan for how to work with both versions of the firmware. Last weekend was a bit busier than expected, so I didn’t write much code. I’m hopeful that I can get something to test before the end of this weekend. I think it will probably take one or two rounds of testing, so you’ll definitely get a chance to participate :slight_smile:

Will be in touch soon!

Just a bump to see if you’ve made any progress updating the binding.