Keep the thermostats at the Setpoint instead of 8 degrees

Posted on
Tue Nov 09, 2021 7:00 am
autolog offline
Posts: 3988
Joined: Sep 10, 2013
Location: West Sussex, UK [GMT aka UTC]

Re: Keep the thermostats at the Setpoint instead of 8 degree

Hi Mark,
The plugin is really designed to control TRVs that are monitored via a remote thermostat. Typically, TRVs located ajacent to the radiators will have their temperatures affected by the heat coming off the radiators.

That's why typically the Remote Delta Max Value is set to say 5ºC so that the TRV doesn't switch off when the setpoint is reached on the TRV. So, for example, the Remote Stat is set to 21ºC and the Spirit TRV would be set to 26ºC (Delta Max = 5ºC). So the radiator will keep heating even if the TRV reaches 24ºC but the Remote Stat is reading 20ºC. When the Remote stat reaches it's setpoint, then the TRV is switched off (8ºC) and the remote stat is monitored and when the temperature falls beneath its setpoint, the TRV is turned on again.

Changing the design of how the plugin works could be a lot of work which I am unable to undertake at the moment.

Posted on
Wed Nov 24, 2021 5:46 am
Stoutjesdijk offline
User avatar
Posts: 135
Joined: Dec 21, 2014
Location: The Netherlands

Re: Keep the thermostats at the Setpoint instead of 8 degree

Hi Jon,

Thank you for the explanation. It sounds like this would do what I'd like: if the remote thermostat reports below the setpoint of the TRV, the TRV starts heating again.

On that subject: my NeoCoolcam multisensor (luminance, motion, temp) cannot be used as a remote temp by t he plugin. It is not a very recent zwave device, but just in case: what would you need to add this device to the list of possible temp sensors?

Best,
Mark

Best regards,

Mark

Trying to tie it all together...
| Indigo | Plex | NAD M33 | Unifi | LG WebOS | Tado | Sonos | SolarEdge | HUE |

Posted on
Sat Nov 27, 2021 4:05 am
autolog offline
Posts: 3988
Joined: Sep 10, 2013
Location: West Sussex, UK [GMT aka UTC]

Re: Keep the thermostats at the Setpoint instead of 8 degree

Hi Mark,
Stoutjesdijk wrote:
... my NeoCoolcam multisensor (luminance, motion, temp) cannot be used as a remote temp by the plugin. It is not a very recent zwave device, but just in case: what would you need to add this device to the list of possible temp sensors?

Please do a device print for me :

To do this:
  • Go to the Indigo main plugin menu, scroll to the bottom and click on Open Scripting Shell
  • enter: print(u'Thermostat Device:\n{0}'.format(indigo.devices[<YOUR DEVICE ID i.e. 12345678>]))
  • Copy and paste the output back as a reply

I will take a look and create a test version for you to try. :)

Posted on
Sun Nov 28, 2021 4:42 pm
Stoutjesdijk offline
User avatar
Posts: 135
Joined: Dec 21, 2014
Location: The Netherlands

Re: Keep the thermostats at the Setpoint instead of 8 degree

Code: Select all
Python 2.7.16 (default, Dec 21 2020, 23:00:36)
[GCC Apple LLVM 12.0.0 (clang-1200.0.30.4) [+internal-os, ptrauth-isa=sign+stri
Connected to Indigo Server v2021.1.1, api v2.5 (localhost:1176)
>>> print(u'Thermostat Device\n{0}'.format(indigo.devices[67561323]))


Output:
Code: Select all
Thermostat Device
address : 73
allowOnStateChange : False
allowSensorValueChange : False
batteryLevel : 66
buttonGroupCount : 0
configured : True
description : NeoCoolcam Multi
deviceTypeId : zwOnOffSensorType
displayStateId : onOffState
displayStateImageSel : MotionSensorTripped
displayStateValRaw : True
displayStateValUi : on
enabled : True
energyAccumBaseTime : None
energyAccumTimeDelta : None
energyAccumTotal : None
energyCurLevel : None
errorState :
folderId : 130146719
globalProps : MetaProps : (dict)
     com.perceptiveautomation.indigoplugin.zwave : (dict)
          SupportsBatteryLevel : true (bool)
          SupportsOnState : true (bool)
          SupportsSensorValue : false (bool)
          address : 73 (integer)
          disableStatusLogging : false (bool)
          indigoObjVersion : 9 (integer)
          modelNameAndFirmware : Multi Sensor (NEOEMS02Z), firmware 3.81 (string)
          propsPushTickler : 7 (string)
          tempAlwaysFalse : false (bool)
          userConfigVal001 : 12 (integer)
          userConfigVal002 : 30 (integer)
          userConfigVal004 : true (bool)
          userConfigVal006 : 8 (integer)
          userConfigVal007 : 180 (integer)
          userConfigVal009 : 100 (integer)
          userConfigVal010 : 5 (integer)
          userConfigVal011 : true (bool)
          userPollAfterActivity : true (bool)
          userPollInterval : 0 (integer)
          userPollingEnabled : true (bool)
          userWakeInterval : 60 (integer)
          version : 3.81 (string)
          zwAppVersMajor : 3 (integer)
          zwAppVersMinor : 81 (integer)
          zwAssociationsMap : (dict)
               g1 : (list)
                    Item : 1 (integer)
               g2 : (list)
               g3 : (list)
               g4 : (list)
          zwAssociationsMapStr : 1:[1] 2:[] 3:[] 4:[] (string)
          zwClassCmdBase : 0 (integer)
          zwClassCmdMap : (dict)
               c112 : 1 (integer)
               c113 : 1 (integer)
               c114 : 1 (integer)
               c115 : 1 (integer)
               c128 : 1 (integer)
               c132 : 2 (integer)
               c133 : 1 (integer)
               c134 : 1 (integer)
               c32 : 1 (integer)
               c48 : 1 (integer)
               c49 : 7 (integer)
               c89 : 1 (integer)
               c90 : 1 (integer)
               c94 : 1 (integer)
          zwClassCmdMapStr : 20v1 80v1 84v2 85v1 86v1 30v1 70v1 71v1 72v1 73v1 59v1 31v7 5Av1 5Ev1 (string)
          zwClassIds : (list)
               Item : 4 (integer)
               Item : 7 (integer)
               Item : 1 (integer)
          zwClassInstanceCountMap : (dict)
          zwClassInstanceCountMapStr : - none - (string)
          zwClassName : Notification Sensor (string)
          zwConfigVals : (dict)
               p1 : 12 (integer)
               p10 : 5 (integer)
               p11 : 1 (integer)
               p2 : 30 (integer)
               p4 : 1 (integer)
               p6 : 8 (integer)
               p7 : 180 (integer)
               p9 : 100 (integer)
          zwConfigValsStr : 1:12 2:30 4:1 6:8 7:180 9:100 10:5 11:1 (string)
          zwDevSubIndex : 0 (integer)
          zwEncryptClassCmdMap : (dict)
          zwEncryptClassCmdMapStr : - none - (string)
          zwEncryptionStatusStr : Not Supported (string)
          zwEndpointClassMap : (dict)
          zwEndpointClassMapStr : - none - (string)
          zwEndpointDevTypeMap : (dict)
          zwEndpointDevTypeMapStr : - none - (string)
          zwFeatureListStr : routing, battery, beaming, waking (string)
          zwLibType : 6 (integer)
          zwManufactureId : 600 (integer)
          zwManufactureName : Neo (string)
          zwModelDefnVers : 1 (integer)
          zwModelId : 200845 (integer)
          zwModelName : Multi Sensor (NEOEMS02Z) (string)
          zwNodeNeighbors : (list)
               Item : 5 (integer)
               Item : 27 (integer)
               Item : 34 (integer)
               Item : 35 (integer)
               Item : 36 (integer)
               Item : 37 (integer)
               Item : 39 (integer)
               Item : 42 (integer)
               Item : 43 (integer)
               Item : 46 (integer)
               Item : 47 (integer)
               Item : 48 (integer)
               Item : 49 (integer)
               Item : 51 (integer)
          zwNodeNeighborsStr : 5, 27, 34, 35, 36, 37, 39, 42, 43, 46, 47, 48, 49, 51 (string)
          zwProtoVersMajor : 4 (integer)
          zwProtoVersMinor : 24 (integer)
          zwShowDumpDevToLog : true (bool)
          zwShowMainUI : true (bool)
          zwShowManualModifyConfigParmUI : false (bool)
          zwShowPollingUI : false (bool)
          zwShowSubmitModelInfoUI : false (bool)
          zwShowWakeIntervalUI : true (bool)
          zwWakeInterval : 60 (integer)
id : 67561323
lastChanged : 2021-11-28 23:34:03
lastSuccessfulComm : 2021-11-28 23:34:03
model : Multi Sensor (NEOEMS02Z)
name : 2 Mark Motion
onState : True
ownerProps : com.perceptiveautomation.indigoplugin.zwave : (dict)
     SupportsBatteryLevel : true (bool)
     SupportsOnState : true (bool)
     SupportsSensorValue : false (bool)
     address : 73 (integer)
     disableStatusLogging : false (bool)
     indigoObjVersion : 9 (integer)
     modelNameAndFirmware : Multi Sensor (NEOEMS02Z), firmware 3.81 (string)
     propsPushTickler : 7 (string)
     tempAlwaysFalse : false (bool)
     userConfigVal001 : 12 (integer)
     userConfigVal002 : 30 (integer)
     userConfigVal004 : true (bool)
     userConfigVal006 : 8 (integer)
     userConfigVal007 : 180 (integer)
     userConfigVal009 : 100 (integer)
     userConfigVal010 : 5 (integer)
     userConfigVal011 : true (bool)
     userPollAfterActivity : true (bool)
     userPollInterval : 0 (integer)
     userPollingEnabled : true (bool)
     userWakeInterval : 60 (integer)
     version : 3.81 (string)
     zwAppVersMajor : 3 (integer)
     zwAppVersMinor : 81 (integer)
     zwAssociationsMap : (dict)
          g1 : (list)
               Item : 1 (integer)
          g2 : (list)
          g3 : (list)
          g4 : (list)
     zwAssociationsMapStr : 1:[1] 2:[] 3:[] 4:[] (string)
     zwClassCmdBase : 0 (integer)
     zwClassCmdMap : (dict)
          c112 : 1 (integer)
          c113 : 1 (integer)
          c114 : 1 (integer)
          c115 : 1 (integer)
          c128 : 1 (integer)
          c132 : 2 (integer)
          c133 : 1 (integer)
          c134 : 1 (integer)
          c32 : 1 (integer)
          c48 : 1 (integer)
          c49 : 7 (integer)
          c89 : 1 (integer)
          c90 : 1 (integer)
          c94 : 1 (integer)
     zwClassCmdMapStr : 20v1 80v1 84v2 85v1 86v1 30v1 70v1 71v1 72v1 73v1 59v1 31v7 5Av1 5Ev1 (string)
     zwClassIds : (list)
          Item : 4 (integer)
          Item : 7 (integer)
          Item : 1 (integer)
     zwClassInstanceCountMap : (dict)
     zwClassInstanceCountMapStr : - none - (string)
     zwClassName : Notification Sensor (string)
     zwConfigVals : (dict)
          p1 : 12 (integer)
          p10 : 5 (integer)
          p11 : 1 (integer)
          p2 : 30 (integer)
          p4 : 1 (integer)
          p6 : 8 (integer)
          p7 : 180 (integer)
          p9 : 100 (integer)
     zwConfigValsStr : 1:12 2:30 4:1 6:8 7:180 9:100 10:5 11:1 (string)
     zwDevSubIndex : 0 (integer)
     zwEncryptClassCmdMap : (dict)
     zwEncryptClassCmdMapStr : - none - (string)
     zwEncryptionStatusStr : Not Supported (string)
     zwEndpointClassMap : (dict)
     zwEndpointClassMapStr : - none - (string)
     zwEndpointDevTypeMap : (dict)
     zwEndpointDevTypeMapStr : - none - (string)
     zwFeatureListStr : routing, battery, beaming, waking (string)
     zwLibType : 6 (integer)
     zwManufactureId : 600 (integer)
     zwManufactureName : Neo (string)
     zwModelDefnVers : 1 (integer)
     zwModelId : 200845 (integer)
     zwModelName : Multi Sensor (NEOEMS02Z) (string)
     zwNodeNeighbors : (list)
          Item : 5 (integer)
          Item : 27 (integer)
          Item : 34 (integer)
          Item : 35 (integer)
          Item : 36 (integer)
          Item : 37 (integer)
          Item : 39 (integer)
          Item : 42 (integer)
          Item : 43 (integer)
          Item : 46 (integer)
          Item : 47 (integer)
          Item : 48 (integer)
          Item : 49 (integer)
          Item : 51 (integer)
     zwNodeNeighborsStr : 5, 27, 34, 35, 36, 37, 39, 42, 43, 46, 47, 48, 49, 51 (string)
     zwProtoVersMajor : 4 (integer)
     zwProtoVersMinor : 24 (integer)
     zwShowDumpDevToLog : true (bool)
     zwShowMainUI : true (bool)
     zwShowManualModifyConfigParmUI : false (bool)
     zwShowPollingUI : false (bool)
     zwShowSubmitModelInfoUI : false (bool)
     zwShowWakeIntervalUI : true (bool)
     zwWakeInterval : 60 (integer)
pluginId : com.perceptiveautomation.indigoplugin.zwave
pluginProps : emptyDict : (dict)
protocol : ZWave
remoteDisplay : True
sensorValue : None
sharedProps : com.indigodomo.indigoserver : (dict)
states : States : (dict)
     batteryLevel : 66 (integer)
     batteryLevel.ui : 66% (string)
     onOffState : on (on/off bool)
subModel : Motion,ui=Motion Sensor
subType : Motion
supportsAllLightsOnOff : False
supportsAllOff : False
supportsOnState : True
supportsSensorValue : False
supportsStatusRequest : True
version : 3.81

Best regards,

Mark

Trying to tie it all together...
| Indigo | Plex | NAD M33 | Unifi | LG WebOS | Tado | Sonos | SolarEdge | HUE |

Posted on
Mon Nov 29, 2021 12:32 pm
autolog offline
Posts: 3988
Joined: Sep 10, 2013
Location: West Sussex, UK [GMT aka UTC]

Re: Keep the thermostats at the Setpoint instead of 8 degree

I need the print to be of the device that reflects the Thermostat, I think this is the motion sensor sub-device as it doesn't have any temperature information AFAICS?

Posted on
Thu Dec 02, 2021 5:07 am
Stoutjesdijk offline
User avatar
Posts: 135
Joined: Dec 21, 2014
Location: The Netherlands

Re: Keep the thermostats at the Setpoint instead of 8 degree

Indeed. Apologies!

Code: Select all
Python 2.7.16 (default, Dec 21 2020, 23:00:36)
[GCC Apple LLVM 12.0.0 (clang-1200.0.30.4) [+internal-os, ptrauth-isa=sign+stri
Connected to Indigo Server v2021.1.1, api v2.5 (localhost:1176)
>>> print(u'Thermostat Device:\n{0}'.format(indigo.devices[849117847]))

Code: Select all
Thermostat Device:
address : 73
allowOnStateChange : False
allowSensorValueChange : False
batteryLevel : None
buttonGroupCount : 0
configured : True
description : NeoCoolcam Multi

deviceTypeId : zwValueSensorType
displayStateId : sensorValue
displayStateImageSel : TemperatureSensor
displayStateValRaw : 19.8
displayStateValUi : 19.8 °C
enabled : True
energyAccumBaseTime : None
energyAccumTimeDelta : None
energyAccumTotal : None
energyCurLevel : None
errorState :
folderId : 130146719
globalProps : MetaProps : (dict)
     com.perceptiveautomation.indigoplugin.zwave : (dict)
          SensorUnits : 1 (integer)
          SupportsOnState : false (bool)
          SupportsSensorValue : true (bool)
          address : 73 (integer)
          disableStatusLogging : false (bool)
          indigoObjVersion : 9 (integer)
          modelNameAndFirmware : Multi Sensor (NEOEMS02Z), firmware 3.81 (string)
          propsPushTickler : 1 (string)
          tempAlwaysFalse : false (bool)
          userPollInterval :  (string)
          userPollingEnabled : false (bool)
          userWakeInterval :  (string)
          version : 3.81 (string)
          zwAssociationsMapStr :  (string)
          zwClassCmdBase : 0 (integer)
          zwDevSubIndex : 1 (integer)
          zwEncryptionStatusStr :  (string)
          zwManufactureId : 600 (integer)
          zwManufactureName : Neo (string)
          zwModelId : 200845 (integer)
          zwModelName : Multi Sensor (NEOEMS02Z) (string)
          zwNodeNeighborsStr :  (string)
          zwShowDumpDevToLog : false (bool)
          zwShowMainUI : false (bool)
          zwShowManualModifyConfigParmUI : false (bool)
          zwShowPollingUI : false (bool)
          zwShowSubmitModelInfoUI : false (bool)
          zwShowWakeIntervalUI : false (bool)
id : 849117847
lastChanged : 2021-12-02 11:37:17
lastSuccessfulComm : 2021-12-02 11:37:17
model : Multi Sensor (NEOEMS02Z)
name : 2 Mark Remote Temp
onState : None
ownerProps : com.perceptiveautomation.indigoplugin.zwave : (dict)
     SensorUnits : 1 (integer)
     SupportsOnState : false (bool)
     SupportsSensorValue : true (bool)
     address : 73 (integer)
     disableStatusLogging : false (bool)
     indigoObjVersion : 9 (integer)
     modelNameAndFirmware : Multi Sensor (NEOEMS02Z), firmware 3.81 (string)
     propsPushTickler : 1 (string)
     tempAlwaysFalse : false (bool)
     userPollInterval :  (string)
     userPollingEnabled : false (bool)
     userWakeInterval :  (string)
     version : 3.81 (string)
     zwAssociationsMapStr :  (string)
     zwClassCmdBase : 0 (integer)
     zwDevSubIndex : 1 (integer)
     zwEncryptionStatusStr :  (string)
     zwManufactureId : 600 (integer)
     zwManufactureName : Neo (string)
     zwModelId : 200845 (integer)
     zwModelName : Multi Sensor (NEOEMS02Z) (string)
     zwNodeNeighborsStr :  (string)
     zwShowDumpDevToLog : false (bool)
     zwShowMainUI : false (bool)
     zwShowManualModifyConfigParmUI : false (bool)
     zwShowPollingUI : false (bool)
     zwShowSubmitModelInfoUI : false (bool)
     zwShowWakeIntervalUI : false (bool)
pluginId : com.perceptiveautomation.indigoplugin.zwave
pluginProps : emptyDict : (dict)
protocol : ZWave
remoteDisplay : True
sensorValue : 19.8
sharedProps : com.indigodomo.indigoserver : (dict)
states : States : (dict)
     sensorValue : 19.800000 (real)
     sensorValue.ui : 19.8 °C (string)
subModel : Temperature,ui=Temperature
subType : Temperature
supportsAllLightsOnOff : False
supportsAllOff : False
supportsOnState : False
supportsSensorValue : True
supportsStatusRequest : True
version : 3.81
>>>

Best regards,

Mark

Trying to tie it all together...
| Indigo | Plex | NAD M33 | Unifi | LG WebOS | Tado | Sonos | SolarEdge | HUE |

Posted on
Mon Dec 13, 2021 7:00 am
autolog offline
Posts: 3988
Joined: Sep 10, 2013
Location: West Sussex, UK [GMT aka UTC]

Re: Keep the thermostats at the Setpoint instead of 8 degree

Hi Mark,
Apologies for the delay in getting back to you on this.

I have created a new pre-release (Version 1.5.1) that hopefully will resolve the problem.
It is available here: Handle Indigo 2021.1+ SubModel Changes

Indigo has changed the way it handles the SubModel device field. It has introduced the new SubType field. The plugin was checking the SubModel for the value Temperature but the field now contains Temperature,ui=Temperature, so the plugin didn't find a match. Hopefully this new version will work-around this.

Let me know how you get on :)

Posted on
Tue Dec 14, 2021 7:20 am
Stoutjesdijk offline
User avatar
Posts: 135
Joined: Dec 21, 2014
Location: The Netherlands

Re: Keep the thermostats at the Setpoint instead of 8 degree

Looks good so far! Thank you 8)
Going on a 2-week vacation now. I'll be doing more testing in the new year.

Cheers
Mark

Best regards,

Mark

Trying to tie it all together...
| Indigo | Plex | NAD M33 | Unifi | LG WebOS | Tado | Sonos | SolarEdge | HUE |

Who is online

Users browsing this forum: No registered users and 1 guest