Announcement

Collapse
No announcement yet.

Thermostat Creation

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

    Thermostat Creation

    I am trying to setup my google home to control the thermostats. Rich said my thermostats need to have the Control Use set and none of them are setup. You might want to add that to be setup correctly.

    #2
    Originally posted by chrkov View Post
    I am trying to setup my google home to control the thermostats. Rich said my thermostats need to have the Control Use set and none of them are setup. You might want to add that to be setup correctly.
    It took a bit of digging to figure out what Rich was talking about. The thermostat values for ControlUse are recent and my HS installation didn't have them.

    I've updated my HS version and made the changes to the plug-in, but now my plug-in isn't working correctly (or the HS upgrade isn't working) so I'll have to figure out what's going on there.
    --
    Bob Paauwe
    ISYInsteon Plug-in
    http://www.bobsplace.com/ISYInsteon/

    Comment


      #3
      One other thing Rich said was "For ISY thermostats, the associated devices property in the child devices is not set. It needs to be set to the root device."

      He said he was going to email you this also.

      Comment


        #4
        Thanks!

        I just uploaded a new version (3.0.0.48) and it should be available as an update through the updater. I added both the ControlUse values and added the reverse association to what they already had.

        Let me know if this works for you.
        --
        Bob Paauwe
        ISYInsteon Plug-in
        http://www.bobsplace.com/ISYInsteon/

        Comment


          #5
          Ok, I installed the version but now I have problems linking my account. Not sure why, but I asked Rich to take a look to see why. Will let you know the outcome.

          Comment


            #6
            I hooked up IFTTT to try and test the thermostat controls. Looks like thermostat mode changing works, but the heat/cool setpoints don't (didn't).

            Yet another undocumented requirement seems to be that set points need to have a range control for this to work. I had them set up as button up/down controls.

            Version 3.0.0.49 adds range controls to the setpoints and that seems to work with IFTTT.

            Just in case anyone else is having problems with thermostat configuration, here's what I've set up to make it all work.

            Code:
            // thermostat root device
            dt.Device_API = DeviceTypeInfo_m.DeviceTypeInfo.eDeviceAPI.Thermostat;
            dt.Device_Type = (int)DeviceTypeInfo_m.DeviceTypeInfo.eDeviceType_Thermostat.Root;
            dv_root.set_Relationship(host, Enums.eRelationship.Parent_Root);
            dv_root.set_DeviceType_Set(host, dt);
            
            // thermostat operating mode (set mode) device
            dt.Device_API = DeviceTypeInfo_m.DeviceTypeInfo.eDeviceAPI.Thermostat;
            dt.Device_Type = (int)DeviceTypeInfo_m.DeviceTypeInfo.eDeviceType_Thermostat.Mode_Set;
            
            dv.set_Relationship(host, Enums.eRelationship.Child);
            
            // Set bi-directional relationship between this and the root device
            dv.AssociatedDevice_Add(host, dv_root.get_Ref(host));
            dv_root.AssociatedDevice_Add(host, dv.get_Ref(host));
            dv.set_DeviceType_Set(host, dt);
            
            // Create a VS pair containing a list of operating modes and add this to the device
            // I used a set of single value type VS Pairs rendered as a list box. Each
            // value is one of the thermostat modes. The critical bit is to set the 
            // ControlUse property of each VS Pair to the corresponding enum value.
            
            // thermostat set point device (cool)
            dt.Device_API = DeviceTypeInfo_m.DeviceTypeInfo.eDeviceAPI.Thermostat;
            dt.Device_Type = (int)DeviceTypeInfo_m.DeviceTypeInfo.eDeviceType_Thermostat.Setpointt;
            dt.Device_SubType = (int)DeviceTypeInfo_m.DeviceTypeInfo.eDeviceSubType_Setpoint.Cooling_1;
            dt.Device_SubType_Description = "Cool Setpoint";
            
            dv.set_Relationship(host, Enums.eRelationship.Child);
            
            // Set bi-directional relationship between this and the root device
            dv.AssociatedDevice_Add(host, dv_root.get_Ref(host));
            dv_root.AssociatedDevice_Add(host, dv.get_Ref(host));
            dv.set_DeviceType_Set(host, dt);
            
            // Add a VS Pair control that is a range type (textbox, dropdown, slider).
            // It's critical that the ControlUse property is properly set:
            //   ePairControlUse._CoolSetPoint
            //   ePairControlUse._HeatSetPoint
            
            // Configuring a heat setpoint is the same as cool above, but using the heat setpoint subtype.
            --
            Bob Paauwe
            ISYInsteon Plug-in
            http://www.bobsplace.com/ISYInsteon/

            Comment


              #7
              That fixed it on the Google home side also! I now see them show up in the list. Thanks!
              Last edited by chrkov; December 7, 2017, 11:27 AM.

              Comment


                #8
                Great! Let me know if you have any other issues.
                --
                Bob Paauwe
                ISYInsteon Plug-in
                http://www.bobsplace.com/ISYInsteon/

                Comment


                  #9
                  The only issue I am having is when a thermostat is turned off. When a thermostat is off, then it says it cant communicate with it. Not sure that this is your issue though, I think it might be with HS because I can still control it and change it to heat or cool.

                  Will let you know what Rich says on it.

                  Comment


                    #10
                    I don't see that issue using IFTTT, I'm able to set the thermostat mode to off and then set it back to something else or update a setpoint.

                    So it may be a problem with the Google Home interface.
                    --
                    Bob Paauwe
                    ISYInsteon Plug-in
                    http://www.bobsplace.com/ISYInsteon/

                    Comment

                    Working...
                    X