Do, If, When, Repeat, While loop Help


#21

No problem Jeff, glad to help!

Oh, ok, that makes more sense. Except it should be turning the thermostat down for you. We’ll figure out why. Side note - so wherever your thermostat is you can have a 6+ degree difference compared to your temp sensor? That’s something to keep in mind when setting your cooling point on your thermostat.

Scrolll down to the bottom of your piston and, for the first few times, set logging to Full. That will let us see pretty much everything going on, and figure out where the piston is reacting differently than we expect:

Can’t say I’m certain on that one. What do you mean the piston says false? The variable “hotDay” at the top is set to true? Or false? The logs will help us figure that out, too.


#22

This is the program…

I am on the road and do not have my computer so here is the piston

And here are the logs, but unfortunately I first tried to restart the piston and lost the logs from this morning since it was so hot in the house…and yes I know there is a huge difference between the morning sun room and the rest of the house and have taken that into consideration when writing this program.

║║Comparison (time) 40090097 is_between (time) 15000000 .. (time) 75000000 = true (4ms)

+227ms ║║Time restriction check passed
+228ms ║║Condition #346 evaluated true (7ms)
+228ms ║║Condition group #180 evaluated true (state did not change) (8ms)
+236ms ║║Comparison (decimal) 78.0 is_greater_than_or_equal_to (integer) 73 = true (1ms)
+237ms ║║Condition #173 evaluated true (7ms)
+237ms ║║Condition group #180 evaluated true (state did not change) (8ms)
+241ms ║║Comparison (boolean) true is (boolean) true = true (2ms)
+242ms ║║Condition #343 evaluated true (4ms)
+242ms ║║Condition group #174 evaluated true (state did not change) (4ms)
+243ms ║║Cancelling statement #174’s schedules…
+252ms ║║Skipped execution of physical command [Nest Downstairs].setThermostatMode([cool]) because it would make no change to the device. (3ms)
+253ms ║║Executed [Nest Downstairs].setThermostatMode (5ms)
+601ms ║║Executed physical command [Nest Downstairs].setCoolingSetpoint([68.0]) (347ms)
+602ms ║║Executed [Nest Downstairs].setCoolingSetpoint (347ms)
+606ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+607ms ║║Condition #344 evaluated false (3ms)
+608ms ║║Condition group #224 evaluated false (state did not change) (4ms)
+611ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+612ms ║║Condition #345 evaluated false (3ms)
+612ms ║║Condition group #240 evaluated false (state did not change) (3ms)
+615ms ║║Comparison (boolean) false is (boolean) true = false (0ms)
+616ms ║║Condition #348 evaluated false (2ms)
+617ms ║║Condition group #253 evaluated false (state did not change) (4ms)
+620ms ║║Comparison (time) 40090495 happens_daily_at (time) 15000000 = false (1ms)
+621ms ║║Condition #284 evaluated false (2ms)
+621ms ║║Cancelling statement #284’s schedules…
+623ms ║║Requesting time schedule wake up at Thu, Jun 7 2018 @ 4:10:00 AM MDT
+625ms ║║Condition group #283 evaluated false (state did not change) (7ms)
+631ms ║║Comparison (time) 40090506 happens_daily_at (time) 76200000 = false (1ms)
+632ms ║║Condition #320 evaluated false (2ms)
+632ms ║║Cancelling statement #320’s schedules…
+634ms ║║Requesting time schedule wake up at Wed, Jun 6 2018 @ 9:10:00 PM MDT
+635ms ║║Condition group #313 evaluated false (state did not change) (6ms)
+641ms ║║Comparison (decimal) 78.0 is_greater_than (integer) 76 = true (1ms)
+642ms ║║Condition #332 evaluated true (5ms)
+648ms ║║Comparison (time) 40090518 is_between (time) 76200000 … (time) 13200000 = false (5ms)
+649ms ║║Condition #333 evaluated false (7ms)
+650ms ║║Condition group #325 evaluated false (state did not change) (12ms)
+651ms ║║Cancelling statement #326’s schedules…
+656ms ║║Skipped execution of physical command [Nest Downstairs].setThermostatMode([cool]) because it would make no change to the device. (3ms)
+657ms ║║Executed [Nest Downstairs].setThermostatMode (5ms)
+917ms ║║Executed physical command [Nest Downstairs].setCoolingSetpoint([78.0]) (258ms)
+918ms ║║Executed [Nest Downstairs].setCoolingSetpoint (259ms)
+937ms ║╚Execution stage complete. (738ms)
+940ms ║Setting up scheduled job for Wed, Jun 6 2018 @ 4:10:00 PM MDT (in 18109.185s), with 5 more jobs pending
+982ms ╚Event processed successfully (982ms)
6/6/2018, 11:07:57 AM +873ms
+3ms ╔Starting piston… (v0.3.104.20180323)
+239ms ║╔Subscribing to devices…
+503ms ║║Subscribing to Nest Downstairs…
+504ms ║║Subscribing to Nest Upstairs…
+504ms ║╚Finished subscribing (273ms)
+920ms ║Comparison (dynamic) 64.3 is_greater_than (integer) 82 = false (8ms)
+938ms ║Error calling comparison comp_is_between: java.lang.ClassCastException
+945ms ║Error calling comparison comp_is_between: java.lang.ClassCastException
+964ms ║Comparison (dynamic) 78.4 is_less_than (integer) 69 = false (3ms)
+966ms ║Cancelling condition #276’s schedules…
+968ms ║Cancelling condition #271’s schedules…
+984ms ║Comparison (time) 40078848 is_between (time) 15000000 … (time) 75000000 = true (7ms)
+985ms ║Time restriction check passed
+996ms ║Comparison (decimal) 78.0 is_greater_than_or_equal_to (integer) 73 = true (2ms)
+1003ms ║Comparison (boolean) true is (boolean) true = true (3ms)
+1010ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+1015ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+1019ms ║Comparison (boolean) false is (boolean) true = false (0ms)
+1024ms ║Comparison (boolean) true is (boolean) true = true (1ms)
+1028ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+1032ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+1037ms ║Comparison (boolean) false is (boolean) true = false (0ms)
+1044ms ║Comparison (time) 40078913 happens_daily_at (time) 15000000 = false (1ms)
+1056ms ║Cancelling statement #284’s schedules…
+1059ms ║Requesting time schedule wake up at Thu, Jun 7 2018 @ 4:10:00 AM MDT
+1063ms ║Comparison (boolean) true is (boolean) true = true (1ms)
+1067ms ║Comparison (boolean) true is (boolean) true = true (1ms)
+1072ms ║Comparison (boolean) false is (boolean) true = false (0ms)
+1076ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+1080ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+1091ms ║Comparison (dynamic) 74.3 is_greater_than (integer) 77 = false (0ms)
+1098ms ║Comparison (dynamic) 74.3 is_less_than_or_equal_to (integer) 68 = false (2ms)
+1099ms ║Cancelling condition #306’s schedules…
+1100ms ║Cancelling condition #302’s schedules…
+1109ms ║Comparison (dynamic) 74.3 is_greater_than (integer) 77 = false (1ms)
+1114ms ║Comparison (time) 40078986 happens_daily_at (time) 76200000 = false (0ms)
+1115ms ║Cancelling statement #320’s schedules…
+1116ms ║Requesting time schedule wake up at Wed, Jun 6 2018 @ 9:10:00 PM MDT
+1119ms ║Comparison (boolean) false is (boolean) true = false (0ms)
+1129ms ║Comparison (decimal) 78.0 is_greater_than (integer) 76 = true (1ms)
+1135ms ║Comparison (time) 40079003 is_between (time) 76200000 … (time) 13200000 = false (4ms)
+1138ms ║Comparison (boolean) false is (boolean) false = true (0ms)
+1167ms ║Setting up scheduled job for Wed, Jun 6 2018 @ 4:10:00 PM MDT (in 18120.962s), with 5 more jobs pending
+1184ms ╚Piston successfully started (1183ms)

As far as the piston showing state false in the quick facts here is a copy and paste of what I see:

Quick Facts
Piston state: false

Last executed: 6/6/2018, 11:08:09 AM

Next scheduled: 6/6/2018, 4:10:00 PM

Subscriptions: no events, no controls

Devices used: none

Memory used: 41% (41294 bytes)

External URL: (click to open/execute

On the road so sorry for the copy and paste.

Jeff


#23

just ran it again and it says boolean for hot day is true but again set the downstairs thermostat to 78 and the remote thermostat is currently 74:

6/6/2018, 7:48:40 PM +112ms
+4ms ╔Received event [Home].test = 1528336120112 with a delay of 0ms
+215ms ║RunTime Analysis CS > 21ms > PS > 92ms > PE > 98ms > CE
+221ms ║Runtime (67647 bytes) successfully initialized in 92ms (v0.3.104.20180323) (216ms)
+224ms ║╔Execution stage started
+274ms ║║Comparison (time) 71320373 is_between (time) 15000000 … (time) 75000000 = true (11ms)
+277ms ║║Time restriction check passed
+278ms ║║Condition #346 evaluated true (18ms)
+279ms ║║Condition group #180 evaluated true (state did not change) (19ms)
+289ms ║║Comparison (decimal) 74.0 is_greater_than_or_equal_to (integer) 73 = true (3ms)
+291ms ║║Condition #173 evaluated true (11ms)
+292ms ║║Condition group #180 evaluated true (state did not change) (13ms)
+297ms ║║Comparison (boolean) true is (boolean) true = true (1ms)
+298ms ║║Condition #343 evaluated true (4ms)
+299ms ║║Condition group #174 evaluated true (state did not change) (5ms)
+302ms ║║Cancelling statement #174’s schedules…
+317ms ║║Skipped execution of physical command [Nest Downstairs].setThermostatMode([cool]) because it would make no change to the device. (4ms)
+318ms ║║Executed [Nest Downstairs].setThermostatMode (7ms)
+724ms ║║Executed physical command [Nest Downstairs].setCoolingSetpoint([68.0]) (404ms)
+724ms ║║Executed [Nest Downstairs].setCoolingSetpoint (404ms)
+731ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+733ms ║║Condition #344 evaluated false (6ms)
+734ms ║║Condition group #224 evaluated false (state did not change) (7ms)
+738ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+739ms ║║Condition #345 evaluated false (3ms)
+740ms ║║Condition group #240 evaluated false (state did not change) (4ms)
+744ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+745ms ║║Condition #348 evaluated false (3ms)
+746ms ║║Condition group #253 evaluated false (state did not change) (4ms)
+752ms ║║Comparison (time) 71320860 happens_daily_at (time) 15000000 = false (2ms)
+753ms ║║Condition #284 evaluated false (5ms)
+764ms ║║Cancelling statement #284’s schedules…
+769ms ║║Requesting time schedule wake up at Thu, Jun 7 2018 @ 4:10:00 AM MDT
+781ms ║║Condition group #283 evaluated false (state did not change) (33ms)
+791ms ║║Comparison (time) 71320902 happens_daily_at (time) 76200000 = false (0ms)
+792ms ║║Condition #320 evaluated false (2ms)
+794ms ║║Cancelling statement #320’s schedules…
+797ms ║║Requesting time schedule wake up at Wed, Jun 6 2018 @ 9:10:00 PM MDT
+798ms ║║Condition group #313 evaluated false (state did not change) (9ms)
+805ms ║║Comparison (decimal) 74.0 is_greater_than (integer) 76 = false (1ms)
+806ms ║║Condition #332 evaluated false (6ms)
+807ms ║║Condition group #325 evaluated false (state did not change) (7ms)
+808ms ║║Cancelling statement #326’s schedules…
+814ms ║║Skipped execution of physical command [Nest Downstairs].setThermostatMode([cool]) because it would make no change to the device. (2ms)
+814ms ║║Executed [Nest Downstairs].setThermostatMode (3ms)
+1092ms ║║Executed physical command [Nest Downstairs].setCoolingSetpoint([78.0]) (276ms)
+1093ms ║║Executed [Nest Downstairs].setCoolingSetpoint (277ms)
+1127ms ║╚Execution stage complete. (905ms)
+1141ms ║Setting up scheduled job for Wed, Jun 6 2018 @ 9:00:00 PM MDT (in 4278.751s), with 5 more jobs pending
+1156ms ╚Event processed successfully (1156ms)
6/6/2018, 7:47:16 PM +493ms
+1ms ╔Received event [Home].test = 1528336036490 with a delay of 3ms
+164ms ║RunTime Analysis CS > 16ms > PS > 60ms > PE > 87ms > CE
+168ms ║Runtime (67647 bytes) successfully initialized in 60ms (v0.3.104.20180323) (167ms)
+169ms ║╔Execution stage started
+204ms ║║Comparison (time) 71236691 is_between (time) 15000000 … (time) 75000000 = true (5ms)
+205ms ║║Time restriction check passed
+206ms ║║Condition #346 evaluated true (9ms)
+207ms ║║Condition group #180 evaluated true (state did not change) (10ms)
+214ms ║║Comparison (decimal) 74.0 is_greater_than_or_equal_to (integer) 73 = true (1ms)
+215ms ║║Condition #173 evaluated true (7ms)
+216ms ║║Condition group #180 evaluated true (state did not change) (8ms)
+221ms ║║Comparison (boolean) true is (boolean) true = true (2ms)
+222ms ║║Condition #343 evaluated true (4ms)
+223ms ║║Condition group #174 evaluated true (state did not change) (6ms)
+224ms ║║Cancelling statement #174’s schedules…
+238ms ║║Skipped execution of physical command [Nest Downstairs].setThermostatMode([cool]) because it would make no change to the device. (2ms)
+238ms ║║Executed [Nest Downstairs].setThermostatMode (7ms)
+526ms ║║Executed physical command [Nest Downstairs].setCoolingSetpoint([68.0]) (285ms)
+527ms ║║Executed [Nest Downstairs].setCoolingSetpoint (287ms)
+532ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+533ms ║║Condition #344 evaluated false (4ms)
+534ms ║║Condition group #224 evaluated false (state did not change) (5ms)
+539ms ║║Comparison (boolean) false is (boolean) true = false (0ms)
+541ms ║║Condition #345 evaluated false (4ms)
+542ms ║║Condition group #240 evaluated false (state did not change) (6ms)
+546ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+547ms ║║Condition #348 evaluated false (3ms)
+548ms ║║Condition group #253 evaluated false (state did not change) (5ms)
+552ms ║║Comparison (time) 71237044 happens_daily_at (time) 15000000 = false (0ms)
+553ms ║║Condition #284 evaluated false (3ms)
+556ms ║║Cancelling statement #284’s schedules…
+559ms ║║Requesting time schedule wake up at Thu, Jun 7 2018 @ 4:10:00 AM MDT
+563ms ║║Condition group #283 evaluated false (state did not change) (13ms)
+572ms ║║Comparison (time) 71237064 happens_daily_at (time) 76200000 = false (0ms)
+573ms ║║Condition #320 evaluated false (2ms)
+574ms ║║Cancelling statement #320’s schedules…
+576ms ║║Requesting time schedule wake up at Wed, Jun 6 2018 @ 9:10:00 PM MDT
+578ms ║║Condition group #313 evaluated false (state did not change) (8ms)
+585ms ║║Comparison (decimal) 74.0 is_greater_than (integer) 76 = false (1ms)
+586ms ║║Condition #332 evaluated false (6ms)
+587ms ║║Condition group #325 evaluated false (state did not change) (7ms)
+589ms ║║Cancelling statement #326’s schedules…
+596ms ║║Skipped execution of physical command [Nest Downstairs].setThermostatMode([cool]) because it would make no change to the device. (4ms)
+597ms ║║Executed [Nest Downstairs].setThermostatMode (5ms)
+846ms ║║Executed physical command [Nest Downstairs].setCoolingSetpoint([78.0]) (246ms)
+847ms ║║Executed [Nest Downstairs].setCoolingSetpoint (248ms)
+877ms ║╚Execution stage complete. (709ms)
+885ms ║Setting up scheduled job for Wed, Jun 6 2018 @ 9:00:00 PM MDT (in 4362.623s), with 5 more jobs pending
+897ms ╚Event processed successfully (897ms)
6/6/2018, 7:47:11 PM +359ms
+0ms ╔Starting piston… (v0.3.104.20180323)
+194ms ║╔Subscribing to devices…
+336ms ║║Subscribing to Nest Downstairs…
+337ms ║║Subscribing to Nest Upstairs…
+337ms ║╚Finished subscribing (146ms)
+714ms ║Comparison (dynamic) 57.2 is_greater_than (integer) 82 = false (7ms)
+730ms ║Error calling comparison comp_is_between: java.lang.ClassCastException
+738ms ║Error calling comparison comp_is_between: java.lang.ClassCastException
+759ms ║Comparison (dynamic) 61.5 is_less_than (integer) 69 = true (3ms)
+760ms ║Cancelling condition #276’s schedules…
+761ms ║Cancelling condition #271’s schedules…
+774ms ║Comparison (time) 71232126 is_between (time) 15000000 … (time) 75000000 = true (5ms)
+775ms ║Time restriction check passed
+785ms ║Comparison (decimal) 74.0 is_greater_than_or_equal_to (integer) 73 = true (4ms)
+789ms ║Comparison (boolean) true is (boolean) true = true (1ms)
+796ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+802ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+809ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+815ms ║Comparison (boolean) true is (boolean) true = true (2ms)
+820ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+825ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+830ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+837ms ║Comparison (time) 71232192 happens_daily_at (time) 15000000 = false (3ms)
+851ms ║Cancelling statement #284’s schedules…
+856ms ║Requesting time schedule wake up at Thu, Jun 7 2018 @ 4:10:00 AM MDT
+860ms ║Comparison (boolean) true is (boolean) true = true (1ms)
+864ms ║Comparison (boolean) true is (boolean) true = true (1ms)
+870ms ║Comparison (boolean) false is (boolean) true = false (2ms)
+876ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+881ms ║Comparison (boolean) false is (boolean) true = false (0ms)
+892ms ║Comparison (dynamic) 59.9 is_greater_than (integer) 77 = false (1ms)
+901ms ║Comparison (dynamic) 59.9 is_less_than_or_equal_to (integer) 68 = true (3ms)
+902ms ║Cancelling condition #306’s schedules…
+903ms ║Cancelling condition #302’s schedules…
+915ms ║Comparison (dynamic) 59.9 is_greater_than (integer) 77 = false (1ms)
+922ms ║Comparison (time) 71232280 happens_daily_at (time) 76200000 = false (0ms)
+923ms ║Cancelling statement #320’s schedules…
+925ms ║Requesting time schedule wake up at Wed, Jun 6 2018 @ 9:10:00 PM MDT
+929ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+941ms ║Comparison (decimal) 74.0 is_greater_than (integer) 76 = false (1ms)
+941ms ║Cancelling condition #332’s schedules…
+948ms ║Comparison (time) 71232301 is_between (time) 76200000 … (time) 13200000 = false (5ms)
+952ms ║Comparison (boolean) false is (boolean) false = true (1ms)
+965ms ║Setting up scheduled job for Wed, Jun 6 2018 @ 9:00:00 PM MDT (in 4367.676s), with 5 more jobs pending
+984ms ╚Piston successfully started (984ms)


#24

Ok, I see the problem. It’s the IF statement starting at line 232… if any of those conditions are False, it executes the “else” part of your code, which is “set thermostat to 78”. Prior to that, in the logs I can see it’s being set lower… it is just overwritten in a fraction of second.

The “false” thing on your piston state… don’t worry about that, it’s nothing.

I’ll read over that condition at line 232 and offer a suggestion in a while.

Edit: need your help to offer any suggestions. Your condition reads:
IF temp sensor is over 76
AND Time is between 9pm and 4am (roughly)
AND low night temps is false

THEN set cooling to to 72

ELSE set cooling to 78

So if any of the 3 conditions are false, cooling will be set to 78. What did you want to trigger your cooling set to 78? If the first 2 conditions were true but the last (cold night variable) is false?


#25

At 9 pm to morning if it is not a cool night then the temp sensor should maintain the room at 76 by turning on and off the dumb thermostat to 78 for off and 72 for on.


#26

Ok, the easiest fix for that is to set the time as a restriction for the whole IF condition.

This screen capture should show how to do it. Under Options on the far right, make sure Show Restrictions is enabled. Then modify your piston as shown starting at line 383.


#27

Made the changes and will monitor system.

Again thank you for your help…

Is there a place I can make a donation for all of your help.

Sincerely,

Jeff


#28

Made the changes, but the Den Temp Sensor is going all the way down to 70 degrees and the downstairs thermostat does not change from the cooling temp of 68…

This is before and after 3 pm.

The only changes I made were your suggestions at 910 pm to 350 am at the end of the program.

Here are the logs:

6/7/2018, 3:09:59 PM +88ms
+0ms ╔Received event [Home].time = 1528409400000 with a delay of -913ms
+191ms ║RunTime Analysis CS > 19ms > PS > 79ms > PE > 93ms > CE
+195ms ║Runtime (67873 bytes) successfully initialized in 79ms (v0.3.104.20180323) (194ms)
+196ms ║╔Execution stage started
+279ms ║║Cancelling statement #284’s schedules…
+282ms ║║Requesting time schedule wake up at Fri, Jun 8 2018 @ 4:10:00 AM MDT
+660ms ║║Comparison (dynamic) 68.1 is_greater_than (integer) 77 = false (2ms)
+661ms ║║Cancelling condition #312’s schedules…
+662ms ║║Condition #312 evaluated false (336ms)
+663ms ║║Cancelling condition #308’s schedules…
+664ms ║║Condition group #308 evaluated false (state changed) (338ms)
+671ms ║╚Execution stage complete. (474ms)
+674ms ║Setting up scheduled job for Thu, Jun 7 2018 @ 9:00:00 PM MDT (in 17400.239s), with 4 more jobs pending
+684ms ╚Event processed successfully (684ms)

6/7/2018, 12:39:02 PM +771ms
+0ms ╔Received event [Home].test = 1528400342770 with a delay of 0ms
+178ms ║RunTime Analysis CS > 17ms > PS > 75ms > PE > 86ms > CE
+183ms ║Runtime (67870 bytes) successfully initialized in 75ms (v0.3.104.20180323) (181ms)
+183ms ║╔Execution stage started
+209ms ║║Comparison (time) 49142971 is_between (time) 15000000 … (time) 75000000 = true (8ms)
+210ms ║║Time restriction check passed
+211ms ║║Condition #346 evaluated true (11ms)
+212ms ║║Condition group #180 evaluated true (state did not change) (13ms)
+220ms ║║Comparison (decimal) 73.0 is_greater_than_or_equal_to (integer) 73 = true (1ms)
+221ms ║║Condition #173 evaluated true (8ms)
+222ms ║║Condition group #180 evaluated true (state did not change) (9ms)
+227ms ║║Comparison (boolean) true is (boolean) true = true (1ms)
+228ms ║║Condition #343 evaluated true (4ms)
+229ms ║║Condition group #174 evaluated true (state did not change) (5ms)
+230ms ║║Cancelling statement #174’s schedules…
+238ms ║║Skipped execution of physical command [Nest Downstairs].setThermostatMode([cool]) because it would make no change to the device. (3ms)
+239ms ║║Executed [Nest Downstairs].setThermostatMode (4ms)
+656ms ║║Executed physical command [Nest Downstairs].setCoolingSetpoint([68.0]) (415ms)
+657ms ║║Executed [Nest Downstairs].setCoolingSetpoint (416ms)
+662ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+663ms ║║Condition #344 evaluated false (4ms)
+664ms ║║Condition group #224 evaluated false (state did not change) (5ms)
+669ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+670ms ║║Condition #345 evaluated false (4ms)
+671ms ║║Condition group #240 evaluated false (state did not change) (5ms)
+677ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+678ms ║║Condition #348 evaluated false (4ms)
+679ms ║║Condition group #253 evaluated false (state did not change) (5ms)
+683ms ║║Comparison (time) 49143452 happens_daily_at (time) 15000000 = false (0ms)
+684ms ║║Condition #284 evaluated false (3ms)
+685ms ║║Cancelling statement #284’s schedules…
+689ms ║║Requesting time schedule wake up at Fri, Jun 8 2018 @ 4:10:00 AM MDT
+692ms ║║Condition group #283 evaluated false (state did not change) (10ms)
+707ms ║║Comparison (time) 49143471 is_between (time) 76200000 … (time) 13200000 = false (5ms)
+708ms ║║Condition #360 evaluated false (9ms)
+709ms ║║Condition group #313 evaluated false (state did not change) (10ms)
+718ms ║║Comparison (time) 49143482 is_between (time) 76200000 … (time) 13200000 = false (5ms)
+720ms ║║Condition #361 evaluated false (8ms)
+720ms ║║Condition group #325 evaluated false (state did not change) (9ms)
+730ms ║╚Execution stage complete. (547ms)
+733ms ║Setting up scheduled job for Thu, Jun 7 2018 @ 4:10:00 PM MDT (in 9056.497s), with 4 more jobs pending
+827ms ╚Event processed successfully (828ms)
Clear Full


#29

Ugh, it’s always the simplest things that come back to bite you after making so many edits! :slight_smile:

Quick change and this will be working for you. Click on the lines that say “IF temperature sensor is greater than or equal to…” then on the far right, change the Subscribe option from Auto to Always. I think there are only two instances to do this for… around lines 71 and 233.

This will make the best run every time the temperature sensor reports a new value. Right now the piston is only being triggered by the Time conditions because of how it’s rewritten. Sorry about that!


#30

Good news bad and bad news…

The piston runs great when the forecasted temp are above 82 to day the temp is going to be in the warm category, but awoke to the heat on…we originally had if all of the other variables failed that it would be a cold day…I changed that to being below 68.

All variables below Hot are coming up false.

6/11/2018, 8:10:16 AM +238ms
+1ms ╔Received event [Home].test = 1528726216238 with a delay of 0ms
+250ms ║RunTime Analysis CS > 18ms > PS > 98ms > PE > 133ms > CE
+255ms ║Runtime (74823 bytes) successfully initialized in 98ms (v0.3.104.20180323) (253ms)
+256ms ║╔Execution stage started
+276ms ║║Comparison (time) 29416506 is_between (time) 15000000 … (time) 75000000 = true (6ms)
+277ms ║║Time restriction check passed
+278ms ║║Condition #346 evaluated true (11ms)
+279ms ║║Cancelling condition #180’s schedules…
+280ms ║║Condition group #180 evaluated true (state changed) (12ms)
+288ms ║║Comparison (decimal) 74.0 is_greater_than_or_equal_to (integer) 75 = false (1ms)
+289ms ║║Condition #173 evaluated false (8ms)
+290ms ║║Cancelling condition #180’s schedules…
+291ms ║║Condition group #180 evaluated false (state changed) (11ms)
+296ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+298ms ║║Condition #340 evaluated false (5ms)
+299ms ║║Condition group #177 evaluated false (state did not change) (5ms)
+304ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+306ms ║║Condition #341 evaluated false (4ms)
+306ms ║║Condition group #218 evaluated false (state did not change) (5ms)
+312ms ║║Comparison (boolean) false is (boolean) true = false (2ms)
+313ms ║║Condition #342 evaluated false (4ms)
+314ms ║║Condition group #234 evaluated false (state did not change) (6ms)
+320ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+321ms ║║Condition #347 evaluated false (5ms)
+322ms ║║Condition group #259 evaluated false (state did not change) (5ms)
+326ms ║║Comparison (time) 29416563 happens_daily_at (time) 15000000 = false (0ms)
+328ms ║║Condition #284 evaluated false (4ms)
+330ms ║║Cancelling statement #284’s schedules…
+332ms ║║Requesting time schedule wake up at Tue, Jun 12 2018 @ 4:10:00 AM MDT
+335ms ║║Condition group #283 evaluated false (state did not change) (11ms)
+349ms ║║Comparison (time) 29416579 is_between (time) 76200000 … (time) 13200000 = false (6ms)
+351ms ║║Condition #360 evaluated false (9ms)
+351ms ║║Condition group #313 evaluated false (state did not change) (10ms)
+362ms ║║Comparison (time) 29416592 is_between (time) 76200000 … (time) 13200000 = false (6ms)
+363ms ║║Condition #361 evaluated false (9ms)
+364ms ║║Condition group #325 evaluated false (state did not change) (11ms)
+370ms ║╚Execution stage complete. (115ms)
+374ms ║Setting up scheduled job for Mon, Jun 11 2018 @ 9:10:00 AM MDT (in 3583.388s), with 4 more jobs pending
+388ms ╚Event processed successfully (387ms)
6/11/2018, 8:09:59 AM +91ms
+0ms ╔Received event [Home].time = 1528726200000 with a delay of -910ms
+415ms ║RunTime Analysis CS > 15ms > PS > 79ms > PE > 322ms > CE
+419ms ║Runtime (74828 bytes) successfully initialized in 79ms (v0.3.104.20180323) (418ms)
+420ms ║╔Execution stage started
+434ms ║║Cancelling statement #335’s schedules…
+440ms ║║Executed virtual command setVariable (3ms)
+446ms ║║Executed virtual command setVariable (2ms)
+451ms ║║Executed virtual command setVariable (3ms)
+457ms ║║Executed virtual command setVariable (2ms)
+10579ms ║║Comparison (dynamic) is_greater_than (integer) 82 = false (3ms)
+10580ms ║║Condition #189 evaluated false (10120ms)
+10581ms ║║Condition group #184 evaluated false (state did not change) (10122ms)
+10854ms ║║Error calling comparison comp_is_between: java.lang.ClassCastException
+10856ms ║║Condition #375 evaluated false (272ms)
+10857ms ║║Condition group #190 evaluated false (state did not change) (273ms)
+10865ms ║║Error calling comparison comp_is_between: java.lang.ClassCastException
+10867ms ║║Condition #374 evaluated false (7ms)
+10868ms ║║Condition group #196 evaluated false (state did not change) (8ms)
+10875ms ║║Comparison (dynamic) 80.4 is_less_than (decimal) 68.9 = false (2ms)
+10876ms ║║Condition #373 evaluated false (6ms)
+10877ms ║║Condition group #368 evaluated false (state did not change) (7ms)
+10882ms ║╚Execution stage complete. (10462ms)
+10884ms ║Setting up scheduled job for Mon, Jun 11 2018 @ 9:10:00 AM MDT (in 3590.025s), with 4 more jobs pending
+10895ms ╚Event processed successfully (10895ms)
6/11/2018, 8:08:44 AM +395ms
+1ms ╔Received event [Home].test = 1528726124395 with a delay of 0ms
+222ms ║RunTime Analysis CS > 12ms > PS > 64ms > PE > 145ms > CE
+226ms ║Runtime (74824 bytes) successfully initialized in 64ms (v0.3.104.20180323) (225ms)
+227ms ║╔Execution stage started
+245ms ║║Comparison (time) 29324632 is_between (time) 15000000 … (time) 75000000 = true (7ms)
+246ms ║║Time restriction check passed
+247ms ║║Condition #346 evaluated true (11ms)
+248ms ║║Cancelling condition #180’s schedules…
+249ms ║║Condition group #180 evaluated true (state changed) (13ms)
+256ms ║║Comparison (decimal) 74.0 is_greater_than_or_equal_to (integer) 75 = false (1ms)
+258ms ║║Condition #173 evaluated false (8ms)
+259ms ║║Cancelling condition #180’s schedules…
+259ms ║║Condition group #180 evaluated false (state changed) (9ms)
+265ms ║║Comparison (boolean) false is (boolean) true = false (2ms)
+266ms ║║Condition #340 evaluated false (4ms)
+267ms ║║Condition group #177 evaluated false (state did not change) (6ms)
+273ms ║║Comparison (boolean) false is (boolean) true = false (2ms)
+274ms ║║Condition #341 evaluated false (5ms)
+275ms ║║Condition group #218 evaluated false (state did not change) (6ms)
+281ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+282ms ║║Condition #342 evaluated false (5ms)
+283ms ║║Condition group #234 evaluated false (state did not change) (6ms)
+288ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+290ms ║║Condition #347 evaluated false (4ms)
+291ms ║║Condition group #259 evaluated false (state did not change) (5ms)
+296ms ║║Comparison (time) 29324689 happens_daily_at (time) 15000000 = false (0ms)
+297ms ║║Condition #284 evaluated false (4ms)
+298ms ║║Cancelling statement #284’s schedules…
+301ms ║║Requesting time schedule wake up at Tue, Jun 12 2018 @ 4:10:00 AM MDT
+303ms ║║Condition group #283 evaluated false (state did not change) (10ms)
+320ms ║║Comparison (time) 29324707 is_between (time) 76200000 … (time) 13200000 = false (6ms)
+322ms ║║Condition #360 evaluated false (10ms)
+323ms ║║Cancelling condition #313’s schedules…
+324ms ║║Condition group #313 evaluated false (state changed) (11ms)
+334ms ║║Comparison (time) 29324721 is_between (time) 76200000 … (time) 13200000 = false (6ms)
+336ms ║║Condition #361 evaluated false (10ms)
+337ms ║║Condition group #325 evaluated false (state did not change) (11ms)
+345ms ║╚Execution stage complete. (118ms)
+347ms ║Setting up scheduled job for Mon, Jun 11 2018 @ 8:10:00 AM MDT (in 75.258s), with 4 more jobs pending
+360ms ╚Event processed successfully (360ms)
6/11/2018, 8:08:29 AM +426ms
+1ms ╔Starting piston… (v0.3.104.20180323)
+300ms ║╔Subscribing to devices…
+377ms ║║Subscribing to Den Temp.temperature…
+441ms ║║Subscribing to Nest Downstairs…
+442ms ║║Subscribing to Nest Upstairs…
+442ms ║╚Finished subscribing (154ms)
+821ms ║Comparison (dynamic) 80.4 is_greater_than (integer) 82 = false (2ms)
+836ms ║Error calling comparison comp_is_between: java.lang.ClassCastException
+849ms ║Error calling comparison comp_is_between: java.lang.ClassCastException
+858ms ║Comparison (dynamic) 80.4 is_less_than (decimal) 68.9 = false (1ms)
+879ms ║Comparison (dynamic) 76.0 is_less_than (integer) 69 = false (2ms)
+880ms ║Cancelling condition #276’s schedules…
+881ms ║Cancelling condition #271’s schedules…
+896ms ║Comparison (time) 29310314 is_between (time) 15000000 … (time) 75000000 = true (6ms)
+897ms ║Time restriction check passed
+899ms ║Cancelling condition #180’s schedules…
+907ms ║Comparison (decimal) 74.0 is_greater_than_or_equal_to (integer) 75 = false (1ms)
+909ms ║Cancelling condition #180’s schedules…
+914ms ║Comparison (boolean) false is (boolean) true = false (2ms)
+921ms ║Comparison (boolean) false is (boolean) true = false (2ms)
+928ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+934ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+941ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+948ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+955ms ║Comparison (boolean) false is (boolean) true = false (2ms)
+962ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+968ms ║Comparison (time) 29310392 happens_daily_at (time) 15000000 = false (0ms)
+969ms ║Cancelling statement #284’s schedules…
+972ms ║Requesting time schedule wake up at Tue, Jun 12 2018 @ 4:10:00 AM MDT
+977ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+983ms ║Comparison (boolean) false is (boolean) true = false (2ms)
+990ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+996ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+1004ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+1020ms ║Comparison (dynamic) 78.3 is_greater_than (integer) 77 = true (1ms)
+1021ms ║Cancelling condition #300’s schedules…
+1022ms ║Cancelling condition #296’s schedules…
+1030ms ║Comparison (dynamic) 78.3 is_less_than_or_equal_to (integer) 68 = false (1ms)
+1031ms ║Cancelling condition #306’s schedules…
+1032ms ║Cancelling condition #302’s schedules…
+1048ms ║Comparison (dynamic) 78.3 is_greater_than (integer) 77 = true (1ms)
+1049ms ║Cancelling condition #312’s schedules…
+1050ms ║Cancelling condition #308’s schedules…
+1064ms ║Comparison (time) 29310481 is_between (time) 76200000 … (time) 13200000 = false (6ms)
+1069ms ║Comparison (boolean) true is (boolean) true = true (1ms)
+1070ms ║Cancelling condition #313’s schedules…
+1085ms ║Comparison (time) 29310503 is_between (time) 76200000 … (time) 13200000 = false (7ms)
+1092ms ║Comparison (decimal) 74.0 is_greater_than (integer) 76 = false (1ms)
+1097ms ║Comparison (boolean) true is (boolean) false = false (2ms)
+1108ms ║Setting up scheduled job for Mon, Jun 11 2018 @ 8:10:00 AM MDT (in 89.467s), with 4 more jobs pending
+1131ms ╚Piston successfully started (1130ms)
6/11/2018, 8:06:20 AM +505ms
+0ms ╔Received event [Home].test = 1528725980504 with a delay of 0ms
+236ms ║RunTime Analysis CS > 16ms > PS > 82ms > PE > 138ms > CE
+240ms ║Runtime (74809 bytes) successfully initialized in 82ms (v0.3.104.20180323) (239ms)
+241ms ║╔Execution stage started
+266ms ║║Comparison (time) 29180763 is_between (time) 15000000 … (time) 75000000 = true (6ms)
+267ms ║║Time restriction check passed
+269ms ║║Condition #346 evaluated true (11ms)
+270ms ║║Cancelling condition #180’s schedules…
+271ms ║║Condition group #180 evaluated true (state changed) (13ms)
+279ms ║║Comparison (decimal) 74.0 is_greater_than_or_equal_to (integer) 75 = false (1ms)
+280ms ║║Condition #173 evaluated false (8ms)
+281ms ║║Cancelling condition #180’s schedules…
+282ms ║║Condition group #180 evaluated false (state changed) (10ms)
+287ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+289ms ║║Condition #340 evaluated false (4ms)
+290ms ║║Condition group #177 evaluated false (state did not change) (6ms)
+295ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+297ms ║║Condition #341 evaluated false (5ms)
+298ms ║║Condition group #218 evaluated false (state did not change) (6ms)
+304ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+305ms ║║Condition #342 evaluated false (5ms)
+306ms ║║Condition group #234 evaluated false (state did not change) (6ms)
+312ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+313ms ║║Condition #347 evaluated false (5ms)
+314ms ║║Condition group #259 evaluated false (state did not change) (6ms)
+319ms ║║Comparison (time) 29180822 happens_daily_at (time) 15000000 = false (1ms)
+320ms ║║Condition #284 evaluated false (3ms)
+321ms ║║Cancelling statement #284’s schedules…
+326ms ║║Requesting time schedule wake up at Tue, Jun 12 2018 @ 4:10:00 AM MDT
+343ms ║║Condition group #283 evaluated false (state did not change) (27ms)
+359ms ║║Comparison (time) 29180855 is_between (time) 76200000 … (time) 13200000 = false (7ms)
+361ms ║║Condition #360 evaluated false (11ms)
+362ms ║║Condition group #313 evaluated false (state did not change) (12ms)
+374ms ║║Comparison (time) 29180870 is_between (time) 76200000 … (time) 13200000 = false (8ms)
+375ms ║║Condition #361 evaluated false (11ms)
+376ms ║║Condition group #325 evaluated false (state did not change) (12ms)
+388ms ║╚Execution stage complete. (147ms)
+392ms ║Setting up scheduled job for Mon, Jun 11 2018 @ 9:10:00 AM MDT (in 3819.104s), with 4 more jobs pending
+406ms ╚Event processed successfully (407ms)
6/11/2018, 8:04:59 AM +74ms
+0ms ╔Received event [Home].time = 1528725900000 with a delay of -927ms
+247ms ║RunTime Analysis CS > 19ms > PS > 79ms > PE > 150ms > CE
+252ms ║Runtime (74799 bytes) successfully initialized in 79ms (v0.3.104.20180323) (251ms)
+253ms ║╔Execution stage started
+269ms ║║Cancelling statement #335’s schedules…
+276ms ║║Executed virtual command setVariable (2ms)
+282ms ║║Executed virtual command setVariable (2ms)
+287ms ║║Executed virtual command setVariable (2ms)
+294ms ║║Executed virtual command setVariable (3ms)
+533ms ║║Comparison (dynamic) 80.4 is_greater_than (integer) 82 = false (2ms)
+535ms ║║Condition #189 evaluated false (238ms)
+536ms ║║Condition group #184 evaluated false (state did not change) (239ms)
+554ms ║║Error calling comparison comp_is_between: java.lang.ClassCastException
+556ms ║║Condition #375 evaluated false (16ms)
+557ms ║║Condition group #190 evaluated false (state did not change) (19ms)
+566ms ║║Error calling comparison comp_is_between: java.lang.ClassCastException
+568ms ║║Condition #374 evaluated false (8ms)
+570ms ║║Condition group #196 evaluated false (state did not change) (10ms)
+578ms ║║Comparison (dynamic) 80.4 is_less_than (decimal) 68.9 = false (2ms)
+580ms ║║Cancelling condition #373’s schedules…
+581ms ║║Condition #373 evaluated false (9ms)
+582ms ║║Cancelling condition #368’s schedules…
+583ms ║║Condition group #368 evaluated false (state changed) (11ms)
+592ms ║╚Execution stage complete. (339ms)
+616ms ║Setting up scheduled job for Mon, Jun 11 2018 @ 9:10:00 AM MDT (in 3900.311s), with 4 more jobs pending
+729ms ╚Event processed successfully (729ms)
6/11/2018, 8:02:54 AM +347ms
+2ms ╔Received event [Den Temp].temperature = 74 with a delay of 1131ms
+263ms ║RunTime Analysis CS > 16ms > PS > 105ms > PE > 141ms > CE
+268ms ║Runtime (74801 bytes) successfully initialized in 105ms (v0.3.104.20180323) (265ms)
+269ms ║╔Execution stage started
+292ms ║║Comparison (time) 28974630 is_between (time) 15000000 … (time) 75000000 = true (7ms)
+293ms ║║Time restriction check passed
+294ms ║║Condition #346 evaluated true (12ms)
+296ms ║║Cancelling condition #180’s schedules…
+296ms ║║Condition group #180 evaluated true (state changed) (14ms)
+302ms ║║Comparison (decimal) 74.0 is_greater_than_or_equal_to (integer) 75 = false (2ms)
+304ms ║║Condition #173 evaluated false (6ms)
+305ms ║║Cancelling condition #180’s schedules…
+305ms ║║Condition group #180 evaluated false (state changed) (8ms)
+312ms ║║Comparison (boolean) false is (boolean) true = false (2ms)
+313ms ║║Condition #340 evaluated false (5ms)
+314ms ║║Condition group #177 evaluated false (state did not change) (7ms)
+321ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+322ms ║║Condition #341 evaluated false (5ms)
+323ms ║║Condition group #218 evaluated false (state did not change) (7ms)
+329ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+331ms ║║Condition #342 evaluated false (5ms)
+332ms ║║Condition group #234 evaluated false (state did not change) (7ms)
+338ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+340ms ║║Condition #347 evaluated false (6ms)
+341ms ║║Condition group #259 evaluated false (state did not change) (6ms)
+346ms ║║Comparison (time) 28974691 happens_daily_at (time) 15000000 = false (0ms)
+347ms ║║Condition #284 evaluated false (3ms)
+348ms ║║Cancelling statement #284’s schedules…
+352ms ║║Requesting time schedule wake up at Tue, Jun 12 2018 @ 4:10:00 AM MDT
+354ms ║║Condition group #283 evaluated false (state did not change) (11ms)
+371ms ║║Comparison (time) 28974709 is_between (time) 76200000 … (time) 13200000 = false (7ms)
+373ms ║║Condition #360 evaluated false (11ms)
+374ms ║║Condition group #313 evaluated false (state did not change) (12ms)
+386ms ║║Comparison (time) 28974724 is_between (time) 76200000 … (time) 13200000 = false (7ms)
+388ms ║║Condition #361 evaluated false (10ms)
+389ms ║║Condition group #325 evaluated false (state did not change) (12ms)
+394ms ║╚Execution stage complete. (125ms)
+397ms ║Setting up scheduled job for Mon, Jun 11 2018 @ 8:05:00 AM MDT (in 125.257s), with 4 more jobs pending
+411ms ╚Event processed successfully (411ms)
6/11/2018, 8:01:22 AM +541ms
+1ms ╔Received event [Home].test = 1528725682541 with a delay of 0ms
+276ms ║RunTime Analysis CS > 18ms > PS > 101ms > PE > 156ms > CE
+280ms ║Runtime (74797 bytes) successfully initialized in 101ms (v0.3.104.20180323) (279ms)
+281ms ║╔Execution stage started
+301ms ║║Comparison (time) 28882834 is_between (time) 15000000 … (time) 75000000 = true (7ms)
+302ms ║║Time restriction check passed
+304ms ║║Condition #346 evaluated true (11ms)
+304ms ║║Cancelling condition #180’s schedules…
+305ms ║║Condition group #180 evaluated true (state changed) (13ms)
+314ms ║║Comparison (decimal) 73.0 is_greater_than_or_equal_to (integer) 75 = false (2ms)
+315ms ║║Condition #173 evaluated false (9ms)
+316ms ║║Cancelling condition #180’s schedules…
+317ms ║║Condition group #180 evaluated false (state changed) (11ms)
+323ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+324ms ║║Condition #340 evaluated false (5ms)
+325ms ║║Condition group #177 evaluated false (state did not change) (6ms)
+331ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+332ms ║║Condition #341 evaluated false (5ms)
+333ms ║║Condition group #218 evaluated false (state did not change) (6ms)
+339ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+340ms ║║Condition #342 evaluated false (5ms)
+341ms ║║Condition group #234 evaluated false (state did not change) (6ms)
+347ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+348ms ║║Condition #347 evaluated false (5ms)
+349ms ║║Condition group #259 evaluated false (state did not change) (6ms)
+354ms ║║Comparison (time) 28882893 happens_daily_at (time) 15000000 = false (1ms)
+355ms ║║Condition #284 evaluated false (3ms)
+356ms ║║Cancelling statement #284’s schedules…
+359ms ║║Requesting time schedule wake up at Tue, Jun 12 2018 @ 4:10:00 AM MDT
+361ms ║║Condition group #283 evaluated false (state did not change) (10ms)
+377ms ║║Comparison (time) 28882910 is_between (time) 76200000 … (time) 13200000 = false (6ms)
+379ms ║║Condition #360 evaluated false (10ms)
+380ms ║║Cancelling condition #313’s schedules…
+381ms ║║Condition group #313 evaluated false (state changed) (12ms)
+391ms ║║Comparison (time) 28882924 is_between (time) 76200000 … (time) 13200000 = false (6ms)
+393ms ║║Condition #361 evaluated false (10ms)
+394ms ║║Condition group #325 evaluated false (state did not change) (11ms)
+401ms ║╚Execution stage complete. (120ms)
+404ms ║Setting up scheduled job for Mon, Jun 11 2018 @ 8:05:00 AM MDT (in 217.056s), with 4 more jobs pending
+417ms ╚Event processed successfully (417ms)
6/11/2018, 8:00:30 AM +146ms
+0ms ╔Starting piston… (v0.3.104.20180323)
+511ms ║╔Subscribing to devices…
+610ms ║║Subscribing to Den Temp.temperature…
+685ms ║║Subscribing to Nest Downstairs…
+686ms ║║Subscribing to Nest Upstairs…
+687ms ║╚Finished subscribing (185ms)
+10850ms ║Comparison (dynamic) is_greater_than (integer) 82 = false (3ms)
+12162ms ║Comparison (dynamic) is_between (integer) 75 … (decimal) 81.9 = false (4ms)
+12175ms ║Comparison (dynamic) is_between (integer) 69 … (decimal) 74.9 = false (4ms)
+12176ms ║Cancelling condition #196’s schedules…
+12186ms ║Comparison (dynamic) is_less_than (decimal) 68.9 = true (2ms)
+12188ms ║Cancelling condition #373’s schedules…
+12188ms ║Cancelling condition #368’s schedules…
+12208ms ║Comparison (dynamic) is_less_than (integer) 69 = true (2ms)
+12210ms ║Cancelling condition #276’s schedules…
+12211ms ║Cancelling condition #271’s schedules…
+12230ms ║Comparison (time) 28842366 is_between (time) 15000000 … (time) 75000000 = true (7ms)
+12231ms ║Time restriction check passed
+12233ms ║Cancelling condition #180’s schedules…
+12242ms ║Comparison (decimal) 73.0 is_greater_than_or_equal_to (integer) 75 = false (1ms)
+12243ms ║Cancelling condition #180’s schedules…
+12248ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+12255ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+12262ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+12269ms ║Comparison (boolean) false is (boolean) true = false (2ms)
+12276ms ║Comparison (boolean) false is (boolean) true = false (2ms)
+12283ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+12289ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+12296ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+12302ms ║Comparison (time) 28842446 happens_daily_at (time) 15000000 = false (0ms)
+12308ms ║Cancelling statement #284’s schedules…
+12325ms ║Requesting time schedule wake up at Tue, Jun 12 2018 @ 4:10:00 AM MDT
+12330ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+12336ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+12343ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+12350ms ║Comparison (boolean) false is (boolean) true = false (2ms)
+12357ms ║Comparison (boolean) false is (boolean) true = false (2ms)
+12372ms ║Comparison (dynamic) is_greater_than (integer) 77 = false (2ms)
+12381ms ║Comparison (dynamic) is_less_than_or_equal_to (integer) 68 = true (1ms)
+12383ms ║Cancelling condition #306’s schedules…
+12383ms ║Cancelling condition #302’s schedules…
+12400ms ║Comparison (dynamic) is_greater_than (integer) 77 = false (2ms)
+12414ms ║Comparison (time) 28842551 is_between (time) 76200000 … (time) 13200000 = false (6ms)
+12419ms ║Comparison (boolean) true is (boolean) true = true (1ms)
+12420ms ║Cancelling condition #313’s schedules…
+12436ms ║Comparison (time) 28842574 is_between (time) 76200000 … (time) 13200000 = false (6ms)
+12444ms ║Comparison (decimal) 73.0 is_greater_than (integer) 76 = false (2ms)
+12448ms ║Comparison (boolean) true is (boolean) false = false (1ms)
+12468ms ║Setting up scheduled job for Mon, Jun 11 2018 @ 8:05:00 AM MDT (in 257.386s), with 4 more jobs pending
+12492ms ╚Piston successfully started (12492ms)


#31

You changed the values in the IF conditions again… you can’t leave gaps or else it will register as a cold day.

IF forecast greater than or equal to 82 then hot day
IF forecast between 75 and 82 (not 81.9) then med day (82.0 is NOT between 75 and 82, so 81.999 meets this condition, 82 meets the one above)
IF forecast between 69 and 75 (not 74.9) then warm day (69.0 is NOT between 69 and 75, but 69.1 or 70 is… 69.0 and below will fail this and register as a cold day)
Else cold day


#32

Here’s the real problem - the temperature being returned by the weather forecast isn’t coming is as an decimal or number (it’s dynamic); this is messing up the IF comparisons. Wrap your weather statements in this decimal conversion and it’ll work properly (still need to get rid of the gaps as posted above though)

decimal($weather.hourly.hourly_forecast[10].temp.english)

I proved this out with a few expressions on my end and it worked. :slight_smile:


#33

Sorry, I just did that to see if I could force the true to the Boolean…

Corrected, but still getting all false.

I think it might be an error in the java comparison; what do you think?

6/11/2018, 12:34:10 PM +549ms
+212ms ╔Stopping piston…
+301ms ╚Piston successfully stopped (90ms)
6/11/2018, 12:34:10 PM +549ms
+212ms ╔Stopping piston…
+301ms ╚Piston successfully stopped (90ms)
6/11/2018, 12:33:20 PM +407ms
+1ms ╔Starting piston… (v0.3.104.20180323)
+357ms ║╔Subscribing to devices…
+431ms ║║Subscribing to Den Temp.temperature…
+522ms ║║Subscribing to Nest Downstairs…
+523ms ║║Subscribing to Nest Upstairs…
+524ms ║╚Finished subscribing (181ms)
+1701ms ║Comparison (dynamic) 80.0 is_greater_than (integer) 82 = false (2ms)
+1711ms ║Error calling comparison comp_is_between: java.lang.ClassCastException
+1722ms ║Error calling comparison comp_is_between: java.lang.ClassCastException
+1731ms ║Comparison (dynamic) 80.0 is_less_than (integer) 69 = false (1ms)
+1749ms ║Comparison (dynamic) 82.5 is_less_than (integer) 69 = false (1ms)
+1880ms ║Comparison (time) 45202165 is_between (time) 15000000 … (time) 75000000 = true (121ms)
+1881ms ║Time restriction check passed
+1883ms ║Cancelling condition #180’s schedules…
+1892ms ║Comparison (decimal) 74.0 is_greater_than_or_equal_to (integer) 75 = false (2ms)
+1893ms ║Cancelling condition #180’s schedules…
+1899ms ║Comparison (boolean) false is (boolean) true = false (2ms)
+1906ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+1914ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+1921ms ║Comparison (boolean) false is (boolean) true = false (2ms)
+1928ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+1936ms ║Comparison (boolean) false is (boolean) true = false (2ms)
+1943ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+1950ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+1957ms ║Comparison (time) 45202362 happens_daily_at (time) 15000000 = false (1ms)
+1959ms ║Cancelling statement #284’s schedules…
+1963ms ║Requesting time schedule wake up at Tue, Jun 12 2018 @ 4:10:00 AM MDT
+1969ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+1975ms ║Comparison (boolean) false is (boolean) true = false (2ms)
+1982ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+1990ms ║Comparison (boolean) false is (boolean) true = false (2ms)
+1997ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+2014ms ║Comparison (dynamic) 82.3 is_greater_than (integer) 77 = true (2ms)
+2024ms ║Comparison (dynamic) 82.3 is_less_than_or_equal_to (integer) 68 = false (1ms)
+2044ms ║Comparison (dynamic) 82.3 is_greater_than (integer) 77 = true (2ms)
+2058ms ║Comparison (time) 45202457 is_between (time) 76200000 … (time) 13200000 = false (6ms)
+2064ms ║Comparison (boolean) true is (boolean) true = true (2ms)
+2065ms ║Cancelling condition #313’s schedules…
+2082ms ║Comparison (time) 45202480 is_between (time) 76200000 … (time) 13200000 = false (6ms)
+2090ms ║Comparison (decimal) 74.0 is_greater_than (integer) 76 = false (2ms)
+2095ms ║Comparison (boolean) true is (boolean) false = false (2ms)
+2106ms ║Setting up scheduled job for Mon, Jun 11 2018 @ 12:35:00 PM MDT (in 97.488s), with 4 more jobs pending
+2131ms ╚Piston successfully started (2131ms)
6/11/2018, 12:32:43 PM +882ms
+1ms ╔Received event [Den Temp].temperature = 74 with a delay of 898ms
+218ms ║RunTime Analysis CS > 18ms > PS > 75ms > PE > 124ms > CE
+222ms ║Runtime (74789 bytes) successfully initialized in 75ms (v0.3.104.20180323) (220ms)
+223ms ║╔Execution stage started
+244ms ║║Comparison (time) 45164117 is_between (time) 15000000 … (time) 75000000 = true (7ms)
+245ms ║║Time restriction check passed
+247ms ║║Condition #346 evaluated true (12ms)
+248ms ║║Condition group #180 evaluated true (state did not change) (14ms)
+254ms ║║Comparison (decimal) 74.0 is_greater_than_or_equal_to (integer) 75 = false (1ms)
+255ms ║║Cancelling condition #173’s schedules…
+256ms ║║Condition #173 evaluated false (7ms)
+257ms ║║Cancelling condition #180’s schedules…
+258ms ║║Condition group #180 evaluated false (state changed) (9ms)
+264ms ║║Comparison (boolean) false is (boolean) true = false (2ms)
+266ms ║║Condition #340 evaluated false (5ms)
+266ms ║║Condition group #177 evaluated false (state did not change) (6ms)
+273ms ║║Comparison (boolean) false is (boolean) true = false (2ms)
+274ms ║║Condition #341 evaluated false (5ms)
+275ms ║║Condition group #218 evaluated false (state did not change) (6ms)
+282ms ║║Comparison (boolean) false is (boolean) true = false (2ms)
+283ms ║║Condition #342 evaluated false (5ms)
+284ms ║║Condition group #234 evaluated false (state did not change) (6ms)
+291ms ║║Comparison (boolean) false is (boolean) true = false (2ms)
+292ms ║║Condition #347 evaluated false (5ms)
+293ms ║║Condition group #259 evaluated false (state did not change) (7ms)
+299ms ║║Comparison (time) 45164179 happens_daily_at (time) 15000000 = false (1ms)
+300ms ║║Condition #284 evaluated false (4ms)
+301ms ║║Cancelling statement #284’s schedules…
+304ms ║║Requesting time schedule wake up at Tue, Jun 12 2018 @ 4:10:00 AM MDT
+307ms ║║Condition group #283 evaluated false (state did not change) (11ms)
+324ms ║║Comparison (time) 45164197 is_between (time) 76200000 … (time) 13200000 = false (7ms)
+326ms ║║Condition #360 evaluated false (11ms)
+327ms ║║Condition group #313 evaluated false (state did not change) (13ms)
+339ms ║║Comparison (time) 45164212 is_between (time) 76200000 … (time) 13200000 = false (7ms)
+340ms ║║Condition #361 evaluated false (11ms)
+341ms ║║Condition group #325 evaluated false (state did not change) (12ms)
+347ms ║╚Execution stage complete. (124ms)
+350ms ║Setting up scheduled job for Mon, Jun 11 2018 @ 4:10:00 PM MDT (in 13035.768s), with 4 more jobs pending
+379ms ╚Event processed successfully (378ms)
6/11/2018, 12:32:43 PM +225ms
+0ms ╔Received event [Home].test = 1528741963224 with a delay of 0ms
+196ms ║RunTime Analysis CS > 11ms > PS > 64ms > PE > 122ms > CE
+201ms ║Runtime (74787 bytes) successfully initialized in 64ms (v0.3.104.20180323) (200ms)
+202ms ║╔Execution stage started
+250ms ║║Comparison (time) 45163466 is_between (time) 15000000 … (time) 75000000 = true (7ms)
+251ms ║║Time restriction check passed
+253ms ║║Condition #346 evaluated true (11ms)
+253ms ║║Condition group #180 evaluated true (state did not change) (13ms)
+262ms ║║Comparison (decimal) 75.0 is_greater_than_or_equal_to (integer) 75 = true (1ms)
+263ms ║║Condition #173 evaluated true (9ms)
+264ms ║║Condition group #180 evaluated true (state did not change) (10ms)
+270ms ║║Comparison (boolean) false is (boolean) true = false (2ms)
+271ms ║║Condition #343 evaluated false (4ms)
+272ms ║║Condition group #174 evaluated false (state did not change) (6ms)
+278ms ║║Comparison (boolean) false is (boolean) true = false (2ms)
+279ms ║║Condition #344 evaluated false (4ms)
+280ms ║║Condition group #224 evaluated false (state did not change) (6ms)
+286ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+288ms ║║Condition #345 evaluated false (4ms)
+288ms ║║Condition group #240 evaluated false (state did not change) (6ms)
+294ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+295ms ║║Condition #348 evaluated false (4ms)
+296ms ║║Condition group #253 evaluated false (state did not change) (6ms)
+301ms ║║Comparison (time) 45163525 happens_daily_at (time) 15000000 = false (0ms)
+303ms ║║Condition #284 evaluated false (4ms)
+307ms ║║Cancelling statement #284’s schedules…
+310ms ║║Requesting time schedule wake up at Tue, Jun 12 2018 @ 4:10:00 AM MDT
+315ms ║║Condition group #283 evaluated false (state did not change) (16ms)
+333ms ║║Comparison (time) 45163549 is_between (time) 76200000 … (time) 13200000 = false (6ms)
+334ms ║║Condition #360 evaluated false (10ms)
+335ms ║║Condition group #313 evaluated false (state did not change) (11ms)
+347ms ║║Comparison (time) 45163563 is_between (time) 76200000 … (time) 13200000 = false (8ms)
+349ms ║║Condition #361 evaluated false (12ms)
+350ms ║║Condition group #325 evaluated false (state did not change) (13ms)
+367ms ║╚Execution stage complete. (165ms)
+373ms ║Setting up scheduled job for Mon, Jun 11 2018 @ 4:10:00 PM MDT (in 13036.403s), with 4 more jobs pending
+385ms ╚Event processed successfully (385ms)
6/11/2018, 12:28:59 PM +78ms
+1ms ╔Received event [Home].time = 1528741740000 with a delay of -922ms
+248ms ║RunTime Analysis CS > 16ms > PS > 107ms > PE > 124ms > CE
+252ms ║Runtime (74792 bytes) successfully initialized in 107ms (v0.3.104.20180323) (250ms)
+253ms ║╔Execution stage started
+269ms ║║Cancelling statement #335’s schedules…
+276ms ║║Executed virtual command setVariable (4ms)
+282ms ║║Executed virtual command setVariable (3ms)
+288ms ║║Executed virtual command setVariable (3ms)
+295ms ║║Executed virtual command setVariable (3ms)
+489ms ║║Comparison (dynamic) 80.0 is_greater_than (integer) 82 = false (2ms)
+491ms ║║Condition #189 evaluated false (193ms)
+492ms ║║Condition group #184 evaluated false (state did not change) (195ms)
+505ms ║║Error calling comparison comp_is_between: java.lang.ClassCastException
+508ms ║║Condition #375 evaluated false (13ms)
+509ms ║║Condition group #190 evaluated false (state did not change) (14ms)
+518ms ║║Error calling comparison comp_is_between: java.lang.ClassCastException
+520ms ║║Condition #374 evaluated false (9ms)
+521ms ║║Condition group #196 evaluated false (state did not change) (10ms)
+548ms ║║Comparison (dynamic) 80.0 is_less_than (integer) 69 = false (21ms)
+550ms ║║Condition #373 evaluated false (26ms)
+550ms ║║Condition group #368 evaluated false (state did not change) (27ms)
+557ms ║╚Execution stage complete. (304ms)
+560ms ║Setting up scheduled job for Mon, Jun 11 2018 @ 4:10:00 PM MDT (in 13260.363s), with 4 more jobs pending
+570ms ╚Event processed successfully (570ms)
6/11/2018, 12:28:36 PM +172ms
+1ms ╔Received event [Home].test = 1528741716172 with a delay of 0ms
+202ms ║RunTime Analysis CS > 12ms > PS > 65ms > PE > 125ms > CE
+207ms ║Runtime (74786 bytes) successfully initialized in 65ms (v0.3.104.20180323) (206ms)
+208ms ║╔Execution stage started
+234ms ║║Comparison (time) 44916397 is_between (time) 15000000 … (time) 75000000 = true (7ms)
+235ms ║║Time restriction check passed
+237ms ║║Condition #346 evaluated true (11ms)
+238ms ║║Condition group #180 evaluated true (state did not change) (13ms)
+247ms ║║Comparison (decimal) 75.0 is_greater_than_or_equal_to (integer) 75 = true (2ms)
+249ms ║║Condition #173 evaluated true (10ms)
+250ms ║║Condition group #180 evaluated true (state did not change) (12ms)
+256ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+257ms ║║Condition #343 evaluated false (5ms)
+258ms ║║Condition group #174 evaluated false (state did not change) (6ms)
+265ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+267ms ║║Condition #344 evaluated false (5ms)
+268ms ║║Condition group #224 evaluated false (state did not change) (6ms)
+273ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+275ms ║║Condition #345 evaluated false (5ms)
+276ms ║║Condition group #240 evaluated false (state did not change) (6ms)
+282ms ║║Comparison (boolean) false is (boolean) true = false (2ms)
+283ms ║║Condition #348 evaluated false (5ms)
+284ms ║║Condition group #253 evaluated false (state did not change) (6ms)
+289ms ║║Comparison (time) 44916459 happens_daily_at (time) 15000000 = false (0ms)
+291ms ║║Condition #284 evaluated false (4ms)
+295ms ║║Cancelling statement #284’s schedules…
+298ms ║║Requesting time schedule wake up at Tue, Jun 12 2018 @ 4:10:00 AM MDT
+303ms ║║Condition group #283 evaluated false (state did not change) (16ms)
+319ms ║║Comparison (time) 44916483 is_between (time) 76200000 … (time) 13200000 = false (6ms)
+320ms ║║Condition #360 evaluated false (10ms)
+321ms ║║Cancelling condition #313’s schedules…
+322ms ║║Condition group #313 evaluated false (state changed) (12ms)
+333ms ║║Comparison (time) 44916497 is_between (time) 76200000 … (time) 13200000 = false (6ms)
+334ms ║║Condition #361 evaluated false (9ms)
+335ms ║║Condition group #325 evaluated false (state did not change) (11ms)
+353ms ║╚Execution stage complete. (146ms)
+358ms ║Setting up scheduled job for Mon, Jun 11 2018 @ 12:29:00 PM MDT (in 23.47s), with 4 more jobs pending
+375ms ╚Event processed successfully (375ms)
6/11/2018, 12:28:24 PM +772ms
+1ms ╔Starting piston… (v0.3.104.20180323)
+282ms ║╔Subscribing to devices…
+394ms ║║Subscribing to Den Temp.temperature…
+547ms ║║Subscribing to Nest Downstairs…
+548ms ║║Subscribing to Nest Upstairs…
+549ms ║╚Finished subscribing (272ms)
+871ms ║Comparison (dynamic) 80.0 is_greater_than (integer) 82 = false (1ms)
+886ms ║Error calling comparison comp_is_between: java.lang.ClassCastException
+899ms ║Error calling comparison comp_is_between: java.lang.ClassCastException
+910ms ║Comparison (dynamic) 80.0 is_less_than (integer) 69 = false (1ms)
+931ms ║Comparison (dynamic) 82.5 is_less_than (integer) 69 = false (1ms)
+951ms ║Comparison (time) 44905712 is_between (time) 15000000 … (time) 75000000 = true (9ms)
+952ms ║Time restriction check passed
+954ms ║Cancelling condition #180’s schedules…
+964ms ║Comparison (decimal) 75.0 is_greater_than_or_equal_to (integer) 75 = true (1ms)
+966ms ║Cancelling condition #173’s schedules…
+972ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+979ms ║Comparison (boolean) false is (boolean) true = false (2ms)
+986ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+994ms ║Comparison (boolean) false is (boolean) true = false (2ms)
+1002ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+1009ms ║Comparison (boolean) false is (boolean) true = false (2ms)
+1017ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+1024ms ║Comparison (boolean) false is (boolean) true = false (2ms)
+1031ms ║Comparison (time) 44905801 happens_daily_at (time) 15000000 = false (0ms)
+1036ms ║Cancelling statement #284’s schedules…
+1040ms ║Requesting time schedule wake up at Tue, Jun 12 2018 @ 4:10:00 AM MDT
+1045ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+1051ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+1059ms ║Comparison (boolean) false is (boolean) true = false (2ms)
+1066ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+1073ms ║Comparison (boolean) false is (boolean) true = false (1ms)
+1092ms ║Comparison (dynamic) 82.3 is_greater_than (integer) 77 = true (1ms)
+1103ms ║Comparison (dynamic) 82.3 is_less_than_or_equal_to (integer) 68 = false (1ms)
+1121ms ║Comparison (dynamic) 82.3 is_greater_than (integer) 77 = true (1ms)
+1136ms ║Comparison (time) 44905899 is_between (time) 76200000 … (time) 13200000 = false (6ms)
+1141ms ║Comparison (boolean) true is (boolean) true = true (2ms)
+1142ms ║Cancelling condition #313’s schedules…
+1160ms ║Comparison (time) 44905923 is_between (time) 76200000 … (time) 13200000 = false (6ms)
+1169ms ║Comparison (decimal) 75.0 is_greater_than (integer) 76 = false (1ms)
+1174ms ║Comparison (boolean) true is (boolean) false = false (2ms)
+1197ms ║Setting up scheduled job for Mon, Jun 11 2018 @ 12:29:00 PM MDT (in 34.033s), with 4 more jobs pending
+1218ms ╚Piston successfully started (1217ms)


#34

You didn’t put the decimal wrapper around it from my post above - that’s the real issue. You can see in the log sometimes it treats the weather forecast variable as a number, sometimes it’s blank and just shows it as “dynamic” in the bolded lines.


#35

Sorry, on the road and did not see the decimal wrapper at the bottom of your above post…l will wrap and monitor…a lot of little things. Thanks for all of your timely and much needed suggestions.


#36

No problem! That seems to be the nature of these beasts… they start out simple, then we figure out we can add more things and they quickly get complicated and have a few little quirks to sort out. But in the end when it’s running - then it’s all worth it! :slight_smile:


#37

Thanks for understanding…

I believe I made the corrections you suggested, but again today is forecasted to be in the 80’s and I again awoke to the house in the heat mode.

Here is what the current code and logs look like…very confused.

6/12/2018, 7:16:26 AM +921ms
+1ms ╔Received event [Den Temp].temperature = 67 with a delay of 728ms
+229ms ║RunTime Analysis CS > 14ms > PS > 62ms > PE > 152ms > CE
+234ms ║Runtime (75707 bytes) successfully initialized in 62ms (v0.3.104.20180323) (231ms)
+235ms ║╔Execution stage started
+256ms ║║Comparison (time) 26187167 is_between (time) 15000000 … (time) 75000000 = true (7ms)
+257ms ║║Time restriction check passed
+258ms ║║Condition #346 evaluated true (12ms)
+260ms ║║Cancelling condition #180’s schedules…
+260ms ║║Condition group #180 evaluated true (state changed) (15ms)
+266ms ║║Comparison (decimal) 67.0 is_greater_than_or_equal_to (integer) 75 = false (2ms)
+268ms ║║Condition #173 evaluated false (7ms)
+269ms ║║Cancelling condition #180’s schedules…
+270ms ║║Condition group #180 evaluated false (state changed) (9ms)
+276ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+278ms ║║Condition #340 evaluated false (6ms)
+279ms ║║Condition group #177 evaluated false (state did not change) (7ms)
+286ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+287ms ║║Condition #341 evaluated false (5ms)
+288ms ║║Condition group #218 evaluated false (state did not change) (7ms)
+295ms ║║Comparison (boolean) false is (boolean) true = false (2ms)
+296ms ║║Condition #342 evaluated false (5ms)
+297ms ║║Condition group #234 evaluated false (state did not change) (7ms)
+304ms ║║Comparison (boolean) true is (boolean) true = true (1ms)
+305ms ║║Condition #347 evaluated true (5ms)
+306ms ║║Condition group #259 evaluated true (state did not change) (7ms)
+307ms ║║Cancelling statement #259’s schedules…
+1175ms ║║Executed physical command [Nest Downstairs].setThermostatMode([heat]) (862ms)
+1176ms ║║Executed [Nest Downstairs].setThermostatMode (864ms)
+1221ms ║║Executed physical command [Nest Downstairs].setHeatingSetpoint([76.0]) (40ms)
+1221ms ║║Executed [Nest Downstairs].setHeatingSetpoint (42ms)
+1227ms ║║Comparison (time) 26188146 happens_daily_at (time) 15000000 = false (1ms)
+1228ms ║║Condition #284 evaluated false (3ms)
+1229ms ║║Cancelling statement #284’s schedules…
+1232ms ║║Requesting time schedule wake up at Wed, Jun 13 2018 @ 4:10:00 AM MDT
+1235ms ║║Condition group #283 evaluated false (state did not change) (11ms)
+1252ms ║║Comparison (time) 26188164 is_between (time) 76200000 … (time) 13200000 = false (6ms)
+1253ms ║║Condition #360 evaluated false (11ms)
+1254ms ║║Condition group #313 evaluated false (state did not change) (12ms)
+1266ms ║║Comparison (time) 26188178 is_between (time) 76200000 … (time) 13200000 = false (7ms)
+1267ms ║║Condition #361 evaluated false (10ms)
+1268ms ║║Condition group #325 evaluated false (state did not change) (12ms)
+1274ms ║╚Execution stage complete. (1040ms)
+1277ms ║Setting up scheduled job for Tue, Jun 12 2018 @ 9:10:00 AM MDT (in 6811.803s), with 4 more jobs pending
+1288ms ╚Event processed successfully (1288ms)
6/12/2018, 7:11:27 AM +477ms
+1ms ╔Received event [Den Temp].temperature = 66 with a delay of 487ms
+237ms ║RunTime Analysis CS > 24ms > PS > 72ms > PE > 141ms > CE
+242ms ║Runtime (75707 bytes) successfully initialized in 72ms (v0.3.104.20180323) (240ms)
+243ms ║╔Execution stage started
+270ms ║║Comparison (time) 25887737 is_between (time) 15000000 … (time) 75000000 = true (8ms)
+271ms ║║Time restriction check passed
+273ms ║║Condition #346 evaluated true (14ms)
+274ms ║║Cancelling condition #180’s schedules…
+275ms ║║Condition group #180 evaluated true (state changed) (16ms)
+281ms ║║Comparison (decimal) 66.0 is_greater_than_or_equal_to (integer) 75 = false (2ms)
+283ms ║║Condition #173 evaluated false (7ms)
+284ms ║║Cancelling condition #180’s schedules…
+285ms ║║Condition group #180 evaluated false (state changed) (8ms)
+292ms ║║Comparison (boolean) false is (boolean) true = false (2ms)
+293ms ║║Condition #340 evaluated false (5ms)
+294ms ║║Condition group #177 evaluated false (state did not change) (7ms)
+302ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+303ms ║║Condition #341 evaluated false (6ms)
+304ms ║║Condition group #218 evaluated false (state did not change) (7ms)
+311ms ║║Comparison (boolean) false is (boolean) true = false (2ms)
+313ms ║║Condition #342 evaluated false (5ms)
+314ms ║║Condition group #234 evaluated false (state did not change) (6ms)
+321ms ║║Comparison (boolean) true is (boolean) true = true (1ms)
+322ms ║║Condition #347 evaluated true (6ms)
+323ms ║║Condition group #259 evaluated true (state did not change) (7ms)
+324ms ║║Cancelling statement #259’s schedules…
+334ms ║║Skipped execution of physical command [Nest Downstairs].setThermostatMode([heat]) because it would make no change to the device. (3ms)
+335ms ║║Executed [Nest Downstairs].setThermostatMode (5ms)
+957ms ║║Executed physical command [Nest Downstairs].setHeatingSetpoint([76.0]) (618ms)
+958ms ║║Executed [Nest Downstairs].setHeatingSetpoint (620ms)
+964ms ║║Comparison (time) 25888439 happens_daily_at (time) 15000000 = false (0ms)
+966ms ║║Condition #284 evaluated false (4ms)
+967ms ║║Cancelling statement #284’s schedules…
+970ms ║║Requesting time schedule wake up at Wed, Jun 13 2018 @ 4:10:00 AM MDT
+973ms ║║Condition group #283 evaluated false (state did not change) (12ms)
+993ms ║║Comparison (time) 25888459 is_between (time) 76200000 … (time) 13200000 = false (7ms)
+995ms ║║Condition #360 evaluated false (12ms)
+996ms ║║Condition group #313 evaluated false (state did not change) (13ms)
+1009ms ║║Comparison (time) 25888476 is_between (time) 76200000 … (time) 13200000 = false (8ms)
+1011ms ║║Condition #361 evaluated false (12ms)
+1012ms ║║Condition group #325 evaluated false (state did not change) (14ms)
+1019ms ║╚Execution stage complete. (775ms)
+1022ms ║Setting up scheduled job for Tue, Jun 12 2018 @ 9:10:00 AM MDT (in 7111.502s), with 4 more jobs pending
+1127ms ╚Event processed successfully (1127ms)
6/12/2018, 6:56:29 AM +90ms
+2ms ╔Received event [Den Temp].temperature = 65 with a delay of 479ms
+248ms ║RunTime Analysis CS > 19ms > PS > 75ms > PE > 153ms > CE
+253ms ║Runtime (75707 bytes) successfully initialized in 75ms (v0.3.104.20180323) (251ms)
+254ms ║╔Execution stage started
+276ms ║║Comparison (time) 24989355 is_between (time) 15000000 … (time) 75000000 = true (7ms)
+277ms ║║Time restriction check passed
+278ms ║║Condition #346 evaluated true (13ms)
+280ms ║║Cancelling condition #180’s schedules…
+280ms ║║Condition group #180 evaluated true (state changed) (15ms)
+287ms ║║Comparison (decimal) 65.0 is_greater_than_or_equal_to (integer) 75 = false (1ms)
+288ms ║║Condition #173 evaluated false (6ms)
+289ms ║║Cancelling condition #180’s schedules…
+290ms ║║Condition group #180 evaluated false (state changed) (9ms)
+297ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+298ms ║║Condition #340 evaluated false (6ms)
+299ms ║║Condition group #177 evaluated false (state did not change) (7ms)
+306ms ║║Comparison (boolean) false is (boolean) true = false (2ms)
+307ms ║║Condition #341 evaluated false (5ms)
+308ms ║║Condition group #218 evaluated false (state did not change) (7ms)
+315ms ║║Comparison (boolean) false is (boolean) true = false (2ms)
+317ms ║║Condition #342 evaluated false (5ms)
+318ms ║║Condition group #234 evaluated false (state did not change) (6ms)
+324ms ║║Comparison (boolean) true is (boolean) true = true (1ms)
+326ms ║║Condition #347 evaluated true (6ms)
+327ms ║║Condition group #259 evaluated true (state did not change) (7ms)
+328ms ║║Cancelling statement #259’s schedules…
+338ms ║║Skipped execution of physical command [Nest Downstairs].setThermostatMode([heat]) because it would make no change to the device. (4ms)
+339ms ║║Executed [Nest Downstairs].setThermostatMode (5ms)
+981ms ║║Executed physical command [Nest Downstairs].setHeatingSetpoint([76.0]) (638ms)
+982ms ║║Executed [Nest Downstairs].setHeatingSetpoint (640ms)
+988ms ║║Comparison (time) 24990076 happens_daily_at (time) 15000000 = false (0ms)
+990ms ║║Condition #284 evaluated false (4ms)
+991ms ║║Cancelling statement #284’s schedules…
+994ms ║║Requesting time schedule wake up at Wed, Jun 13 2018 @ 4:10:00 AM MDT
+997ms ║║Condition group #283 evaluated false (state did not change) (11ms)
+1014ms ║║Comparison (time) 24990095 is_between (time) 76200000 … (time) 13200000 = false (7ms)
+1016ms ║║Condition #360 evaluated false (12ms)
+1017ms ║║Condition group #313 evaluated false (state did not change) (13ms)
+1029ms ║║Comparison (time) 24990110 is_between (time) 76200000 … (time) 13200000 = false (7ms)
+1031ms ║║Condition #361 evaluated false (11ms)
+1032ms ║║Condition group #325 evaluated false (state did not change) (13ms)
+1038ms ║╚Execution stage complete. (784ms)
+1048ms ║Setting up scheduled job for Tue, Jun 12 2018 @ 9:10:00 AM MDT (in 8009.87s), with 4 more jobs pending
+1062ms ╚Event processed successfully (1062ms)
6/12/2018, 6:46:30 AM +348ms
+2ms ╔Received event [Den Temp].temperature = 64 with a delay of 796ms
+276ms ║RunTime Analysis CS > 20ms > PS > 105ms > PE > 150ms > CE
+281ms ║Runtime (75709 bytes) successfully initialized in 105ms (v0.3.104.20180323) (278ms)
+282ms ║╔Execution stage started
+303ms ║║Comparison (time) 24390641 is_between (time) 15000000 … (time) 75000000 = true (8ms)
+304ms ║║Time restriction check passed
+306ms ║║Condition #346 evaluated true (13ms)
+307ms ║║Cancelling condition #180’s schedules…
+308ms ║║Condition group #180 evaluated true (state changed) (16ms)
+314ms ║║Comparison (decimal) 64.0 is_greater_than_or_equal_to (integer) 75 = false (2ms)
+315ms ║║Condition #173 evaluated false (6ms)
+316ms ║║Cancelling condition #180’s schedules…
+317ms ║║Condition group #180 evaluated false (state changed) (8ms)
+324ms ║║Comparison (boolean) false is (boolean) true = false (2ms)
+325ms ║║Condition #340 evaluated false (5ms)
+326ms ║║Condition group #177 evaluated false (state did not change) (7ms)
+333ms ║║Comparison (boolean) false is (boolean) true = false (2ms)
+335ms ║║Condition #341 evaluated false (5ms)
+336ms ║║Condition group #218 evaluated false (state did not change) (6ms)
+343ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+344ms ║║Condition #342 evaluated false (6ms)
+363ms ║║Condition group #234 evaluated false (state did not change) (25ms)
+379ms ║║Comparison (boolean) true is (boolean) true = true (10ms)
+381ms ║║Condition #347 evaluated true (15ms)
+382ms ║║Condition group #259 evaluated true (state did not change) (15ms)
+383ms ║║Cancelling statement #259’s schedules…
+393ms ║║Skipped execution of physical command [Nest Downstairs].setThermostatMode([heat]) because it would make no change to the device. (3ms)
+394ms ║║Executed [Nest Downstairs].setThermostatMode (5ms)
+1089ms ║║Executed physical command [Nest Downstairs].setHeatingSetpoint([76.0]) (690ms)
+1089ms ║║Executed [Nest Downstairs].setHeatingSetpoint (692ms)
+1096ms ║║Comparison (time) 24391441 happens_daily_at (time) 15000000 = false (0ms)
+1097ms ║║Condition #284 evaluated false (4ms)
+1098ms ║║Cancelling statement #284’s schedules…
+1101ms ║║Requesting time schedule wake up at Wed, Jun 13 2018 @ 4:10:00 AM MDT
+1104ms ║║Condition group #283 evaluated false (state did not change) (10ms)
+1121ms ║║Comparison (time) 24391460 is_between (time) 76200000 … (time) 13200000 = false (7ms)
+1123ms ║║Condition #360 evaluated false (12ms)
+1124ms ║║Condition group #313 evaluated false (state did not change) (13ms)
+1136ms ║║Comparison (time) 24391475 is_between (time) 76200000 … (time) 13200000 = false (7ms)
+1138ms ║║Condition #361 evaluated false (11ms)
+1139ms ║║Condition group #325 evaluated false (state did not change) (12ms)
+1144ms ║╚Execution stage complete. (863ms)
+1147ms ║Setting up scheduled job for Tue, Jun 12 2018 @ 9:10:00 AM MDT (in 8608.506s), with 4 more jobs pending
+1160ms ╚Event processed successfully (1159ms)
6/12/2018, 6:21:33 AM +576ms
+1ms ╔Received event [Den Temp].temperature = 63 with a delay of 546ms
+240ms ║RunTime Analysis CS > 25ms > PS > 73ms > PE > 143ms > CE
+245ms ║Runtime (75707 bytes) successfully initialized in 73ms (v0.3.104.20180323) (242ms)
+246ms ║╔Execution stage started
+271ms ║║Comparison (time) 22893837 is_between (time) 15000000 … (time) 75000000 = true (8ms)
+272ms ║║Time restriction check passed
+274ms ║║Condition #346 evaluated true (13ms)
+275ms ║║Cancelling condition #180’s schedules…
+276ms ║║Condition group #180 evaluated true (state changed) (14ms)
+282ms ║║Comparison (decimal) 63.0 is_greater_than_or_equal_to (integer) 75 = false (1ms)
+283ms ║║Condition #173 evaluated false (6ms)
+284ms ║║Cancelling condition #180’s schedules…
+285ms ║║Condition group #180 evaluated false (state changed) (9ms)
+291ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+293ms ║║Condition #340 evaluated false (6ms)
+294ms ║║Condition group #177 evaluated false (state did not change) (7ms)
+300ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+302ms ║║Condition #341 evaluated false (6ms)
+303ms ║║Condition group #218 evaluated false (state did not change) (7ms)
+309ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+311ms ║║Condition #342 evaluated false (6ms)
+312ms ║║Condition group #234 evaluated false (state did not change) (7ms)
+318ms ║║Comparison (boolean) true is (boolean) true = true (1ms)
+320ms ║║Condition #347 evaluated true (6ms)
+321ms ║║Condition group #259 evaluated true (state did not change) (7ms)
+322ms ║║Cancelling statement #259’s schedules…
+332ms ║║Skipped execution of physical command [Nest Downstairs].setThermostatMode([heat]) because it would make no change to the device. (4ms)
+333ms ║║Executed [Nest Downstairs].setThermostatMode (6ms)
+1172ms ║║Executed physical command [Nest Downstairs].setHeatingSetpoint([76.0]) (835ms)
+1172ms ║║Executed [Nest Downstairs].setHeatingSetpoint (836ms)
+1179ms ║║Comparison (time) 22894753 happens_daily_at (time) 15000000 = false (1ms)
+1180ms ║║Condition #284 evaluated false (4ms)
+1181ms ║║Cancelling statement #284’s schedules…
+1184ms ║║Requesting time schedule wake up at Wed, Jun 13 2018 @ 4:10:00 AM MDT
+1187ms ║║Condition group #283 evaluated false (state did not change) (11ms)
+1205ms ║║Comparison (time) 22894771 is_between (time) 76200000 … (time) 13200000 = false (7ms)
+1206ms ║║Condition #360 evaluated false (11ms)
+1207ms ║║Condition group #313 evaluated false (state did not change) (13ms)
+1220ms ║║Comparison (time) 22894786 is_between (time) 76200000 … (time) 13200000 = false (8ms)
+1222ms ║║Condition #361 evaluated false (12ms)
+1223ms ║║Condition group #325 evaluated false (state did not change) (13ms)
+1228ms ║╚Execution stage complete. (983ms)
+1231ms ║Setting up scheduled job for Tue, Jun 12 2018 @ 9:10:00 AM MDT (in 10105.193s), with 4 more jobs pending
+1315ms ╚Event processed successfully (1315ms)
6/12/2018, 5:41:38 AM +651ms
+1ms ╔Received event [Den Temp].temperature = 62 with a delay of 457ms
+239ms ║RunTime Analysis CS > 36ms > PS > 67ms > PE > 136ms > CE
+244ms ║Runtime (75707 bytes) successfully initialized in 67ms (v0.3.104.20180323) (242ms)
+245ms ║╔Execution stage started
+275ms ║║Comparison (time) 20498917 is_between (time) 15000000 … (time) 75000000 = true (7ms)
+276ms ║║Time restriction check passed
+278ms ║║Condition #346 evaluated true (13ms)
+279ms ║║Cancelling condition #180’s schedules…
+280ms ║║Condition group #180 evaluated true (state changed) (15ms)
+285ms ║║Comparison (decimal) 62.0 is_greater_than_or_equal_to (integer) 75 = false (1ms)
+287ms ║║Condition #173 evaluated false (6ms)
+288ms ║║Cancelling condition #180’s schedules…
+289ms ║║Condition group #180 evaluated false (state changed) (8ms)
+295ms ║║Comparison (boolean) false is (boolean) true = false (2ms)
+296ms ║║Condition #340 evaluated false (5ms)
+297ms ║║Condition group #177 evaluated false (state did not change) (7ms)
+304ms ║║Comparison (boolean) false is (boolean) true = false (1ms)
+305ms ║║Condition #341 evaluated false (5ms)
+306ms ║║Condition group #218 evaluated false (state did not change) (7ms)
+313ms ║║Comparison (boolean) false is (boolean) true = false (1ms)


#38

Ok, I’m going to import your piston and run some values through it to see if I can figure out where that sequence of IF statements is breaking. It should be pretty straight-forward.

Unfortunately those log file events are only from the Den temperature sensor changing, not from the piston running at 4am to determine what kind of day it was going to be, so I can’t figure out where it went wrong.


#39

It worked when I ran it here, see below for one variable set True while the others are false. For testing purposes, can you change your “every day at 4am” to a time around now so it’ll force it to run the hot/warm… day IF conditions? Then post up the logs so I can see what’s happening.


#40

Just had another thought, too. We should write in a fail-safe so if the weather forecast ever returns a blank, the piston ignores it. That would certainly fail all conditions and execute whatever is in the “else” of the final condition.