Jump to content

What am I doing wrong with my new Thermostat Program?


teksavy

Recommended Posts

Just wrote a new thermostat program to help reduce energy costs during peak times.

 

If
        On Mon, Tue, Wed, Thu, Fri
        From     1:00:00PM on 2017/05/01
        To       7:00:00PM on 2017/10/31
    And Status  'Devices / HALL / HALL-Therm- Main' is Mode Cool
    And Status  'Devices / HALL / HALL-Therm- Main' <= 77° (Cool Setpoint)
 
Then
        Set 'Devices / HALL / HALL-Therm- Main' Mode Cool
        Wait  2 seconds
        Set 'Devices / HALL / HALL-Therm- Main' 78° (Cool Setpoint)
        Stop program 'Sched-ThermSetPeakRate'
 
Else
   - No Actions - (To add one, press 'Action')
 
Program does what I want EXCEPT that the time condition doesn't seem to get evaluated. If I try lowering the thermostat to 72 after 9pm, it keeps setting the thermostat to 78... Yes I checked the on board clock.. it is correct. 
 
What am I doing wrong?
 
Help please :)
 
-Ed
Link to comment

Your time frame is from May 1 to Oct 31 if it is a weekday, all inclusive.

 

One way would be to double up your time frame filter. Leave what you have there and add into your If section.

 

AND from 1:01 PM

....To 6:59 PM (same day)

 

Note the times are inside the original time frame so no race occurs with one being enabled before the other is ready.

 

V5.0.10 has much better ways of doing this by using the ISY clock features available.

 

If the last line to stop a program is itself, it is not required and serves no purpose.

Link to comment

Ahhh! THANK YOU! I incorrectly made the assumption that the time applied to the daily schedule rather than on that start date and end date.

 

It 5.0.10 still in beta?

 

Your time frame is from May 1 to Oct 31 if it is a weekday, all inclusive.

One way would be to double up your time frame filter. Leave what you have there and add into your If section.

AND from 1:01 PM
....To 6:59 PM (same day)

Note the times are inside the original time frame so no race occurs with one being enabled before the other is ready.

V5.0.10 has much better ways of doing this by using the ISY clock features available.

If the last line to stop a program is itself, it is not required and serves no purpose.

Link to comment

Ahhh! THANK YOU! I incorrectly made the assumption that the time applied to the daily schedule rather than on that start date and end date.

 

It 5.0.10 still in beta?

V5.0.10 is being called alpha. I do not have any Zwave (the newer implementation in v5) and I see no problems with it. In fact I have used full release versions from other equipment that have many more bugs.

 

If you jump to v5 early in the game you will never appreciate not having abilities to write device analogue values to variables, use "repeat while" conditional loops, and more. I have been using it for two years and don;t know what I would be missing, except for wondering why people sound so crippled with v4 problems. :)

 

For now the double time frame should do your trick, though, all in one program, too.

Link to comment

Here is the new program with tweaks made to it to actually work... :) 

 

Posting here in case someone else runs into the same understanding problem I did...

 

If
        From    12:59:00PM on 2017/05/01
        To       7:01:00PM on 2017/10/31
    And On Mon, Tue, Wed, Thu, Fri
        From     1:00:00PM
        To       7:00:00PM (same day)
    And Status  'Devices / HALL / HALL-Therm- Main' is Mode Cool
    And Status  'Devices / HALL / HALL-Therm- Main' <= 77° (Cool Setpoint)
 
Then
        Set 'Devices / HALL / HALL-Therm- Main' Mode Cool
        Wait  2 seconds
        Set 'Devices / HALL / HALL-Therm- Main' 78° (Cool Setpoint)
 
Else
   - No Actions - (To add one, press 'Action')
 
Couple of notes for newbies like myself:
  • If you place the weekday (Mon, Tues, Wed...) on the first date line (12:59:00PM on 2017/05/01), it will not work correctly (ask me how I know).
  • The weekday specification must be on the daily time portion of the if statement (from 1:00:00pm, etc).

Thank you everyone for the help!

 

-Ed

Link to comment

Here is the new program with tweaks made to it to actually work... :)

 

Posting here in case someone else runs into the same understanding problem I did...

 

If
        From    12:59:00PM on 2017/05/01
        To       7:01:00PM on 2017/10/31
    And On Mon, Tue, Wed, Thu, Fri
        From     1:00:00PM
        To       7:00:00PM (same day)
    And Status  'Devices / HALL / HALL-Therm- Main' is Mode Cool
    And Status  'Devices / HALL / HALL-Therm- Main' <= 77° (Cool Setpoint)
 
Then
        Set 'Devices / HALL / HALL-Therm- Main' Mode Cool
        Wait  2 seconds
        Set 'Devices / HALL / HALL-Therm- Main' 78° (Cool Setpoint)
 
Else
   - No Actions - (To add one, press 'Action')
 
Couple of notes for newbies like myself:
  • If you place the weekday (Mon, Tues, Wed...) on the first date line (12:59:00PM on 2017/05/01), it will not work correctly (ask me how I know).
  • The weekday specification must be on the daily time portion of the if statement (from 1:00:00pm, etc).

Thank you everyone for the help!

 

-Ed

Now you're cooking with ISY!

 

Personally I would have used 12:01 AM to 11:59 PM just an indicator the times are all inclusive for when you look at your program a year from now and think...

 

.... WTF was I doing here? What is the significance of those exact times? :)  Just me.

 

Good on ya' mate!

Link to comment

Archived

This topic is now archived and is closed to further replies.


×
×
  • Create New...