x046866x Posted January 4, 2020 Posted January 4, 2020 Folks, I have a 2441TH and a little program that turns a light on when the heat comes on ("is Calling for Heat") . I'd like to also flash the light (different pattern) when the heat turns off. I'm looking at "is not Calling for Heat" but if enabled it will respond all the time? If disabled then how to I trigger the program to wait until the heat is turned off? Russell
larryllix Posted January 4, 2020 Posted January 4, 2020 (edited) 2 hours ago, x046866x said: Folks, I have a 2441TH and a little program that turns a light on when the heat comes on ("is Calling for Heat") . I'd like to also flash the light (different pattern) when the heat turns off. I'm looking at "is not Calling for Heat" but if enabled it will respond all the time? If disabled then how to I trigger the program to wait until the heat is turned off? Russell Please post the programs you have now. Right click on the program title in the program tree and select Copy to clipboard. Paste into a post using the code '<>' icon. Also, are you running ISY v5.xx ? Edited January 4, 2020 by larryllix
x046866x Posted January 5, 2020 Author Posted January 5, 2020 I made some changes but have not had an opportunity to test this yet. The heat on (BulbsGlowUp) seemed to work OK as expected, but another program was using the bulbs when the heat turned off so I wasn't able to verify the heat-off (BulbsGlowDown). I did see the program exit as expected. Your thoughts? HeaterIndicatorLight: <?xml version="1.0" ?><triggers><d2d><trigger><id>37</id><name>HeaterIndicatorLight</name><parent>2</parent><if><and /><status id="CLIHCS" node="52 C9 7E 1" op="IS"><val uom="66" prec="0">1</val></status></if><then><var id="1" type="1"><op>EQ</op><val prec="0">1</val></var><runthen>38</runthen><repeat><while><var id="1" type="1"><op>IS</op><val prec="0">1</val></var></while></repeat><wait><seconds>30</seconds></wait><runif>41</runif><repeat><for><times>1</times></for></repeat><runthen>40</runthen></then><else></else><comment></comment></trigger></d2d></triggers> HeaterCheck: <?xml version="1.0" ?><triggers><d2d><trigger><id>41</id><name>HeaterCheck</name><parent>2</parent><if><and /><status id="ST" node="52 C9 7E 3" op="IS"><val uom="51" prec="0">100</val></status></if><then><var id="1" type="1"><op>EQ</op><val prec="0">1</val></var></then><else><var id="1" type="1"><op>EQ</op><val prec="0">0</val></var></else><comment></comment></trigger></d2d></triggers> BulbsGlowUp: <?xml version="1.0" ?><triggers><d2d><trigger><id>38</id><name>BulbsGlowUp</name><parent>5</parent><if></if><then><repeat><for><times>2</times></for></repeat><cmd id="DFOF" node="24253"></cmd><cmd id="FDUP" node="24253"></cmd><wait><seconds>6</seconds></wait><repeat><for><times>1</times></for></repeat><runthen>26</runthen></then><else></else><comment></comment></trigger></d2d></triggers> BulbsGlowDown: <?xml version="1.0" ?><triggers><d2d><trigger><id>40</id><name>BulbsGlowDown</name><parent>5</parent><if></if><then><repeat><for><times>2</times></for></repeat><cmd id="DFON" node="24253"></cmd><cmd id="FDDOWN" node="24253"></cmd><wait><seconds>6</seconds></wait><repeat><for><times>1</times></for></repeat><runthen>26</runthen></then><else></else><comment></comment></trigger></d2d></triggers>
hart2hart Posted January 5, 2020 Posted January 5, 2020 I made some changes but have not had an opportunity to test this yet. The heat on (BulbsGlowUp) seemed to work OK as expected, but another program was using the bulbs when the heat turned off so I wasn't able to verify the heat-off (BulbsGlowDown). I did see the program exit as expected. Your thoughts? HeaterIndicatorLight: xml version="1.0" ?>37HeaterIndicatorLight2 /> id="CLIHCS" node="52 C9 7E 1" op="IS"> uom="66" prec="0">1 id="1" type="1">EQ prec="0">138 id="1" type="1">IS prec="0">13041140 HeaterCheck: xml version="1.0" ?>41HeaterCheck2 /> id="ST" node="52 C9 7E 3" op="IS"> uom="51" prec="0">100 id="1" type="1">EQ prec="0">1 id="1" type="1">EQ prec="0">0 BulbsGlowUp: xml version="1.0" ?>38BulbsGlowUp52 id="DFOF" node="24253"> id="FDUP" node="24253">6126 BulbsGlowDown: xml version="1.0" ?>40BulbsGlowDown52 id="DFON" node="24253"> id="FDDOWN" node="24253">6126 Please Copy them to clipboard and then post as regular text. Others may have utility to read this but many likely won’t.
x046866x Posted January 6, 2020 Author Posted January 6, 2020 Will do. In answer to your other question; Yes I do have 5.x (5.0.16B). HeaterIndicatorLight: HeaterIndicatorLight - [ID 0025][Parent 0002] If 'GarageMahal / Thermostat / GarageThermostat' Heat/Cool State is Heating Then $GarageIsHeating = 1 Run Program 'BulbsGlowUp' (Then Path) Repeat While $GarageIsHeating is 1 Wait 30 seconds Run Program 'HeaterCheck' (If) Repeat 1 times Run Program 'BulbsGlowDown' (Then Path) Else - No Actions - (To add one, press 'Action') HeaterCheck: HeaterCheck - [ID 0029][Parent 0002] If 'GarageMahal / Thermostat / Garage-HeatControl' Status is On Then $GarageIsHeating = 1 Else $GarageIsHeating = 0 BulbsGlowUp: BulbsGlowUp - [ID 0026][Parent 0005] If - No Conditions - (To add one, press 'Schedule' or 'Condition') Then Repeat 2 times Set 'IndoorSensorLights' Fast Off Set 'IndoorSensorLights' Fade Up Wait 6 seconds Repeat 1 times Run Program 'BulbsTurnOff' (Then Path) Else - No Actions - (To add one, press 'Action') BulbsGlowDown: BulbsGlowDown - [ID 0028][Parent 0005] If - No Conditions - (To add one, press 'Schedule' or 'Condition') Then Repeat 2 times Set 'IndoorSensorLights' Fast On Set 'IndoorSensorLights' Fade Down Wait 6 seconds Repeat 1 times Run Program 'BulbsTurnOff' (Then Path) Else - No Actions - (To add one, press 'Action')
hart2hart Posted January 6, 2020 Posted January 6, 2020 (edited) 9 hours ago, x046866x said: Will do. In answer to your other question; Yes I do have 5.x (5.0.16B). HeaterIndicatorLight: HeaterIndicatorLight - [iD 0025][Parent 0002]If 'GarageMahal / Thermostat / GarageThermostat' Heat/Cool State is HeatingThen $GarageIsHeating = 1 Run Program 'BulbsGlowUp' (Then Path) Repeat While $GarageIsHeating is 1 Wait 30 seconds Run Program 'HeaterCheck' (If) Repeat 1 times Run Program 'BulbsGlowDown' (Then Path)Else - No Actions - (To add one, press 'Action') HeaterCheck: HeaterCheck - [iD 0029][Parent 0002]If 'GarageMahal / Thermostat / Garage-HeatControl' Status is OnThen $GarageIsHeating = 1Else $GarageIsHeating = 0 BulbsGlowUp: BulbsGlowUp - [iD 0026][Parent 0005]If - No Conditions - (To add one, press 'Schedule' or 'Condition')Then Repeat 2 times Set 'IndoorSensorLights' Fast Off Set 'IndoorSensorLights' Fade Up Wait 6 seconds Repeat 1 times Run Program 'BulbsTurnOff' (Then Path)Else - No Actions - (To add one, press 'Action') BulbsGlowDown: BulbsGlowDown - [iD 0028][Parent 0005]If - No Conditions - (To add one, press 'Schedule' or 'Condition')Then Repeat 2 times Set 'IndoorSensorLights' Fast On Set 'IndoorSensorLights' Fade Down Wait 6 seconds Repeat 1 times Run Program 'BulbsTurnOff' (Then Path)Else - No Actions - (To add one, press 'Action') Lights have two methods to evaluate state of the light. Status of a light — if light state is on/off Control of light —- if light is switched on/off Control is only true when a device enters that state and status is true while device is in that state and this leads to very different results when combined with and or in the same if. Does thermostat have status and control? Not where I can try it. Edit: Arrvied home and thermostat supports both, so if I recall the original question you could use if xxx-Heat is Switched Off which equates to using Control Vs Status. Sample of how they look follows: Test:Heat State - [ID 0124][Parent 0067][Not Enabled] If 'Basement / Basement:Thermostat- Heat' is switched On And 'Basement / Basement:Thermostat- Heat' Status is On And 'Basement / Basement:Thermostat- Heat' is switched Off And 'Basement / Basement:Thermostat- Heat' Status is Off Then - No Actions - (To add one, press 'Action') Else - No Actions - (To add one, press 'Action') Edited January 7, 2020 by hart2hart
TrojanHorse Posted January 7, 2020 Posted January 7, 2020 Folks, I have a 2441TH and a little program that turns a light on when the heat comes on ("is Calling for Heat") . I'd like to also flash the light (different pattern) when the heat turns off. I'm looking at "is not Calling for Heat" but if enabled it will respond all the time? If disabled then how to I trigger the program to wait until the heat is turned off? Russell I use “not calling for heat” and it’s a trigger so the ISY will only trigger that program when that state changes, not continuously. Go ahead and try it. “Not calling for heat” is similar to a “control” trigger (not status) however I believe I’ve read and experienced that this is sort of interpreted by the ISY. In any case I think it’s a one shot deal and can’t be queried. So good communication with the thermostat is important to not miss the trigger. Sent from my iPhone using Tapatalk
x046866x Posted January 7, 2020 Author Posted January 7, 2020 There is no selection "Calling for Heat". I should have been more clear but I was referring to my goal and not what was offered in the ISY. I find it difficult to know which are triggers. I didn't want to wait for the status to change as the polling method is undesirable. "Calling for Heat" strikes me as a trigger so I'd prefer something like that but in the Heat control I have: Status On Off Responding True False On the main thermostat I have things referring to humidity and temp change, but the one that triggers this on is: Heat/Cool State Heating Cooling Idle Given the input from you two I've got some more to try. I think "is not" should be the inverse of "is" so it stands to reason that it should provide what I need. I think, however, that "Control" is may be more well suited. I interpreted "Control" as an instruction rather than reaction to a control of some sort. I will tinker some more and report back. Thank you!
x046866x Posted January 7, 2020 Author Posted January 7, 2020 (edited) Follow up: When I use Control and select "Off" in the drop-down the text in the "If" section of the program reflects "is switched Off" (same for "On" of course). This text is more in line with what I was looking for, it just wasn't in the drop-down. Thank you! Program: HeaterIndicatorLight-Off(Work) - [ID 002B][Parent 0002] If 'GarageMahal / Thermostat / Garage-HeatControl' is switched Off Then Run Program 'BulbsGlowDown' (Then Path) Else - No Actions - (To add one, press 'Action') Drop-down: Edited January 7, 2020 by x046866x
x046866x Posted January 7, 2020 Author Posted January 7, 2020 This seems to work well and makes a lot more sense. Thanks for the help. It also illuminated a little light-bulb in my head (a Control, not a Status) and I think I can make better use of my programming. Thank you!
Recommended Posts