Thermostat adjustment not working


#1

1) Give a description of the problem
When office temp sensor goes above 75 degrees the thermostat set point should change until temp sensor reaches 75 degrees.,

2) What is the expected behaviour?
Thermostat changes to lower room temp
3) What is happening/not happening?
Thermostat set point remains the same doesn’t lower.
4) Post a Green Snapshot of the pistonimage
(UPLOAD YOUR IMAGE HERE)


5) Attach logs after turning logging level to Full
(PASTE YOUR LOGS HERE THEN HIGHLIGHT ALL OF THE LOGS AND CLICK ON THE </> ICON TO FORMAT THEM CORRECTLY)

5/20/2019, 2:28:57 PM +171ms
+0ms ╔Received event [Home].test = 1558376937170 with a delay of 0ms
+94ms ║RunTime Analysis CS > 21ms > PS > 45ms > PE > 27ms > CE
+96ms ║Runtime (39888 bytes) successfully initialized in 45ms (v0.3.10b.20190514) (94ms)
+98ms ║╔Execution stage started
+121ms ║║Comparison (time) 52137276 is_between (time) 28800000 … (time) 86340000 = true (13ms)
+123ms ║║Time restriction check passed
+126ms ║║Condition #2 evaluated true (20ms)
+130ms ║║Cancelling statement #2’s schedules…
+138ms ║║Requesting time schedule wake up at Mon, May 20 2019 @ 11:59:00 PM EDT
+153ms ║║Comparison (enum) idle is (string) cooling = false (3ms)
+155ms ║║Condition #3 evaluated false (12ms)
+157ms ║║Condition group #1 evaluated false (state did not change) (53ms)
+171ms ║║Comparison (decimal) 85.1 is_equal_to (integer) 75 = false (2ms)
+173ms ║║Condition #6 evaluated false (12ms)
+175ms ║║Condition group #5 evaluated false (state did not change) (15ms)
+206ms ║╚Execution stage complete. (109ms)
+210ms ║Setting up scheduled job for Mon, May 20 2019 @ 11:55:00 PM EDT (in 33962.62s), with 1 more job pending
+267ms ╚Event processed successfully (267ms)

REMOVE BELOW AFTER READING
If a solution is found for your question then please mark the post as the solution.


#2

You should be using A TRIGGER and after that CONDITIONS…
I’ll share what i have for the AC system in a couple of hours…


#3

Thank you, as I am lost!


#4

Did you notice that the Thermostat running state evaluates to as idle and not cooling. That’s why it never sets the lower cooling point.


#5

I would also remove the automatic subscription to the time and thermostat cooling state if you want the trigger to be temperature.


#6

Just to be clear I am not sure on this advanced piston. Are there examples?


#7


#8

I removed automatic and made it Always Subscribe, is that what you were telling me to do?


#9

I am not sure how to fix this.


#10

I just re-arranged it and removed the subscription… not tested at all.


#11

OK here is the new one using your model.



#12

Use Thermostat mode as opposed to Thermostat Operating state.


#13

I changed it to Thermostat mode, but before I changed it the Thermostat dropped the temp and went into a temporary hold. Will the piston below prevent that, as I am not sure it will start to follow the schedule after 11:59PM. Take a look at the new piston and logs.



#14

You will need another section to set the cooling back up if it’s still set down and you pass the 11:30 mark.


#15

I thought that is what I had!


#16

The only things I’m seeing in the piston are for between 8:00 am and 11:29 am. What I’m saying is that you need to add:
If time is after 11:30 am
and
Thermostat 1’s thermostatmode is cool
and
Thermostat:coolingpoint is less than 75
then
Set colling point at 75
resumeProgram();
end if


#17

Where would I place this statement?


#18

Oddly enough, it doesn’t matter. Whenever a trigger event caused the piston to run, it starts at the beginning. (That took me a while to figure out. I thought it started at the If that had the trigger condition.)
I would just add it to the end, however.


#19

As you can see the program started but show permanent hold. Is that what it should be.

OK, please look at this and let me know if this is correct.




#20

Not exactly. You need to put in a separate If with the last two conditions. The way it is right now you’re looking for the time being between 8:00 am and 11:29 pm and after 11:29 pm. Clearly, that won’t ever happen.
Try this: