Announcement

Collapse
No announcement yet.

Honeywell WiFi Thermostat Plugin Beta Testing

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Honeywell WiFi Thermostat Plugin Beta Testing

    My new home came with a Honeywell WiFi Thermostat (RTH6580WF), but I quickly found that there was no support for individual developers to access their API. After trying to ask nicely if I could get access, I gave up and wrote my own plugin. I've actually been using this plugin to control my own thermostat for about 18 months, so I'm pretty confident it works in my situation, but I've decided to open it up to some beta testing to see if others with the same thermostat (or others that use the "Total Connect Comfort" system for control) could use it as well.

    NOTE: This only works for US users, unfortunately the website doesn't provide the same functionality for other countries, and since they won't give out the actual API, I'm relying on web user impersonation for this plugin.

    NOTE: This plugin is supported on Linux, but only with Mono 2.x (due to a serious bug in Mono 3.x's implementation of WebClient). For instructions on how to switch back to 2.x, see this post.

    As with my Device History plugin, I will run the beta test here, post new updates as they're available, and eventually turn this into a commercially available plugin.

    For instructions on how to install this manually distributed plugin, see this post.

    For reference, the way I use this plugin is to let my thermostat's programming run like normal, and use HS to override it when we leave and resume when we return, or to change from heat to cool if the temperature passes my comfort thresholds. You could also control it completely from HS by placing permanent holds for the temp you want as conditions warrant (time, temp, occupancy, etc.).

    *** RELEASE 1.0.2 - GA *** - 1/28/2016
    • Added back +1/-1 buttons in addition to dropdown control for setpoints.
    • Added support for Emergency Heat mode.
    • Fixed an issue with the setpoint device value not being updated correctly when in Emergency Heat mode.

    License mode enabled - no expiration date, but installing this version begins your 30-day free trial



    *** RELEASE 0.9.92 - RC5 *** - 1/5/2016

    • Added separate Hold Type device.
    • Moved “Resume Schedule” button from Thermostat device to Hold Type device (now “None”)
    • Moved “Temporary Hold” & “Permanent Hold” buttons from Setpoint device to Hold Type device (now “Temporary” and “Permanent”)
    • Updated Hold Type status to show "Hold Until" time for temporary holds
    • Changed “Resume Schedule” action to “Change Hold” for “None”, “Temporary” or “Permanent.”
    • Changed “ResumeSchedule” function to “ChangeHold” and added HoldType parameter
    • Configured all commands to go through a single queue to prevent concurrent web request errors
    • Added “Minimum Command Frequency” option to prevent overloading command requests to Honeywell’s Total Connect Comfort Portal. (Default=3s)
    • Added “Minimum Update Frequency” option to prevent overloading update requests to Honeywell’s Total Connect Comfort Portal. (Default=30s)
    • Added “Terms & Conditions” checkbox to Options – must be accepted to continue (See documentation for terms)
    • Added “Maximum Queue Size” option to abort processing & shut down plugin if the queue is flooded with requests
    • Added setpoint dropdown control with valid temperatures
    • Removed +1/-1 buttons

    • Expires 1/31/2016


    *** RELEASE 0.9.91 - RC4 *** - 12/20/2015

    • Changed the way new thermostat devices were created - only the parent and status device are created at first; new devices are added as needed
    • Fixed an issue where the timer would fire on two separate schedules, causing frequent "Waiting to update…" statuses ("too soon" in the logs)
    • Updated plugin functions to include an additional argument for "update" (true/false) to cause an immediate attempt to get updated data or not


    • Expires 1/31/2016


    *** RELEASE 0.9.9 - RC3 *** - 12/2/2015

    • Added plugin functions ChangeMode, ChangeFanMode, ChangeSetpoint, and ResumeSchedule (see Documentation for details).
    • Changed options to force a minimum polling time of 300 seconds.
    • Added a minimum 30-second wait period between retrieving updated data (commands can still be run ad-hoc, but results may take up to 30 seconds to show; a wait period will be added for commands in a future release).

    • Expires 12/31/2015


    *** RELEASE 0.9.8 - RC2 *** - 10/31/2015

    • Added enforcement of limits on remote changes - if an update comes in with a setpoint that's out of bounds, resets to boundary value

    • Fixed issue with heat/cool setpoints updating with Dim labels
    • Fixed change setpoint event actions to use the same "if permanent, keep permanent, else temporary" hold logic as elsewhere

    • Expires 11/30/2015


    *** RELEASE 0.9.7 - RC1 *** - 10/29/2015

    • Redesigned configuration page for registering thermostats
    • Added support for user-defined min/max heat and cool values for each thermostat
    • Updated event definition to work within min/max ranges
    • Updated event definition to include system mode in setpoint changes
    • Updated event definition to exclude/include options based on report capabilities
    • Added support for Circulate & Scheduled Fan modes in event actions
    • Added new icons for fan circulate and scheduled modes
    • Added ability to update thermostat devices based on new capabilities discovered in this and future versions of the plugin

    • Expires 11/30/2015


    *** RELEASE 0.9.6 *** - 9/29/2015

    • Improved hold logic - permanent hold stays permanent with +/- 1 buttons
    • Added Permanent and Temporary Hold buttons
    • Removed messages about schedule for thermostats with no schedule

    • Slight fix to logging where it was over-correcting for HTML syntax
    • Fixed updates to display values when only hold status changed on setpoints

    • Expires 10/31/2015


    *** RELEASE 0.9.5 *** - 8/16/2015 (NOTE: Recommended to delete devices and/or remove all thermostats from config before upgrading.)

    • Added support for thermostats with no Fan control
    • Added devices for separate setpoints for thermostats that support "Auto" mode (Note: Actions do not yet support different setpoints)
    • Added experimental support for changing to "Auto" mode
    • Added experimental support for changing to "Fan Circulate" mode
    • Added new device for update status
    • Changed to HomeSeer-provided contemporary icons where possible
    • Updated custom icons for connected/disconnected to match contemporary icons

    • Expires 9/30/2015


    *** RELEASE 0.9.4 *** - 8/13/2015

    • Added logging for thermostat client library
    • Fixed issue with TRACE logging with labels of objects in parameter variables
    • Fixed issue with startup failures after upgrading (introduced in 0.9.3)

    • Expires 9/30/2015


    *** RELEASE 0.9.3 *** - 8/11/2015

    • Fixed issue with repeated attempts to add devices (introduced in 0.9.2).
    • Improved support for additional devices added in 0.9.2.

    • Expires 9/30/2015


    *** RELEASE 0.9.2 *** - 8/10/2015

    • Added support for Outdoor Temp, Indoor Humidity and Outdoor Humidity devices.
    • Updated internal storage method to increase stability.
    • Added startup wait processing to ensure proper sequence of events.

    • Expires 9/30/2015


    *** INITIAL RELEASE 0.9.1 *** - 8/1/2015

    In addition to installing the files necessary to control the thermostat, this installation will place documentation in your Docs folder - please check that out for information on configuring and controlling your thermostat.

    And please provide any input on what thermostat you're using and any issues, comments, feature requests or suggestions you have!

    • Connect multiple thermostats.
    • Control setpoint, fan speed and system mode.
    • Monitor the interior temperature.

    • Expires 9/30/2015
    Last edited by shill; January 29, 2017, 06:00 PM.

    #2
    The documentation doesn't actually say how to install the plug-in... Unless I'm just missing it....
    RJ_Make On YouTube

    Comment


      #3
      Originally posted by ServiceXp View Post
      The documentation doesn't actually say how to install the plug-in... Unless I'm just missing it....
      Sorry, meant to include a link to that: How to manually distribute a plugin for testing

      Comment


        #4
        No dice.. Will not even load after an HS3 restart.

        8/1/2015 8:29:09 PM ~!~Error~!~Initializing plug-in(2): Honeywell WiFi Thermostat Instance::Could not load file or assembly 'Newtonsoft.Json, Version=7.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)STACK:Server stack trace: Exception rethrown at [0]: at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessag e(IMessage reqMsg, IMessage retMsg) at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(Mess ageData& msgData, Int32 type) at HomeSeerAPI.IPlugInAPI.InitIO(String port) at Scheduler.clsHSPI.CheckInterfaces()Startup Complete, 1 errors detected, check the log for more information.
        RJ_Make On YouTube

        Comment


          #5
          It does create the base devices
          Attached Files
          RJ_Make On YouTube

          Comment


            #6
            There also seems to be a slight defect in the documentation example of the url string. As presented, it includes the " /" at the end, but when that is actually used it fails to save the configuration until removed.
            Attached Files
            RJ_Make On YouTube

            Comment


              #7
              Originally posted by ServiceXp View Post
              No dice.. Will not even load after an HS3 restart.
              Can you check your HS3\bin\skWare\WiFiThermostat directory and make sure you have the Newtonsoft.Json.dll file there, dated 7/15/2015? Also, is that file already found in your HS3 or HS3\bin directory?

              Comment


                #8
                1) Yes
                2) Date is correct
                3) Yes there is one in the main HS3 Directory (11/30/2014), and several in other directory's
                RJ_Make On YouTube

                Comment


                  #9
                  Is there one in the HS3\bin directory?

                  Comment


                    #10
                    No, but there is one in the HS3 Root Dir.
                    RJ_Make On YouTube

                    Comment


                      #11
                      I think it's the one in your HS3 directory that's causing the problem; it's a different version than the one I'm using, and gets loaded first. I just did a fresh install of HS3, and it doesn't come with HS3, so I guess some other plugin dumps it there instead of in its own bin directory. I'm looking for tricks to make .NET ignore assemblies in the root directory and use the search path specified in the .config directory...

                      (I actually recall having this problem on my system, and I just deleted the offending HS3\newtonsoft.json.dll without any problems I've detected so far. You could try moving it to a temp directory and seeing if it solves the problem temporarily, too.)

                      Comment


                        #12
                        That was indeed the problem. Removed it and we have success!


                        Will mess with it over the next week or so..


                        Until then, some feature Idea's:

                        Outside Temperature.
                        Outside Humidity.
                        Inside Humidity.
                        RJ_Make On YouTube

                        Comment


                          #13
                          Originally posted by ServiceXp View Post
                          That was indeed the problem. Removed it and we have success!

                          Will mess with it over the next week or so..

                          Until then, some feature Idea's:

                          Outside Temperature.
                          Outside Humidity.
                          Inside Humidity.
                          What model thermostat are you using? Does it have an indoor humidity sensor? And is the Outside Temp/Humidity coming from the unit somehow (exterior sensors?)? If you're getting outside temp/humidity via their app, which just reads internet weather data, I would propose there are many other, better ways to get that data in HomeSeer already. If it's truly specific to your thermostat, that's a different story...

                          Comment


                            #14
                            Prestige IAQ w/RedLINK Internet Gateway Support?

                            I've been wanting a Honeywell Prestige IAQ thermostat for a while for its control of things like humidifiers, dehumidifiers and ventilation systems, but haven't bothered since there was no HomeSeer support.

                            Apparently by connecting the unit to a Honeywell RedLINK Internet Gateway it can be controlled by the Honeywell Total Connect Comfort portal.

                            Is it extremely risky of me to assume your plugin would be capable of controlling this thermostat also?

                            This would be my third thermostat this year (weird, huh?) and the only one that might be dead in the water as far as HomeSeer is concerned if things don't work out. I guess I'm concerned that Honeywell might make portal changes that would break things.

                            Thanks
                            Jim Madigan

                            Comment


                              #15
                              Originally posted by shill View Post
                              What model thermostat are you using? Does it have an indoor humidity sensor? And is the Outside Temp/Humidity coming from the unit somehow (exterior sensors?)? If you're getting outside temp/humidity via their app, which just reads internet weather data, I would propose there are many other, better ways to get that data in HomeSeer already. If it's truly specific to your thermostat, that's a different story...
                              These are actual sensors.

                              Here is the Model.

                              Originally posted by madigan View Post
                              I've been wanting a Honeywell Prestige IAQ thermostat for a while for its control of things like humidifiers, dehumidifiers and ventilation systems, but haven't bothered since there was no HomeSeer support.

                              Apparently by connecting the unit to a Honeywell RedLINK Internet Gateway it can be controlled by the Honeywell Total Connect Comfort portal.

                              Is it extremely risky of me to assume your plugin would be capable of controlling this thermostat also?

                              This would be my third thermostat this year (weird, huh?) and the only one that might be dead in the water as far as HomeSeer is concerned if things don't work out. I guess I'm concerned that Honeywell might make portal changes that would break things.

                              Thanks
                              Jim Madigan
                              Any Honeywell thermostat connected to the TCC service should work with this plug-in.


                              EDIT: Oh and by the way, that is the thermostat I have..
                              RJ_Make On YouTube

                              Comment

                              Working...
                              X