Thermostat driven ceiling fan automation with subscription issues


#1

1) Give a description of the problem
Webcore is advising me that “This piston does not subscribe to any events”. I did have this working at one point, but did a partial re-write to accommodate some other scenarios, and I’ve buggered it in the process. Any help getting me back on track is greatly appreciated.

2) What is the expected behavior?
The intent of the piston is to utilize the AC temperature setpoint from the thermostat (captured to a variable in another piston) as a baseline and adapt the ceiling fan speed accordingly to keep the room near the target temperature. In the case of thermostat being turned off, it has a separate section to work with hard coded temperatures instead. There is also a separate section to accommodate one of us sleeping in late (mostly weekends) while the other has gotten up and woken up the house.

Some caveats: I do have separate automations that will turn on the ceiling fan if the humidifier in the room is running, or if the HVAC is running. These are intended to respectively spread the effect around the room. To accommodate these, I have restrictions that won’t turn the fan off unless they’re both dormant.

3) What is happening/not happening?
The piston is telling me it won’t trigger because it doesn’t subscribe to any events, and I can’t figure out where my logic is off.

4) Post a Green Snapshot of the pistonimage

5) Attach any logs (From ST IDE and by turning logging level to Full)
There really aren’t any logs from ST for this at present, as it’s not making it to the triggering point.

I am however getting the following from webcore logs:
+398ms ║An error has occurred while subscribing: groovy.lang.MissingPropertyException: No such property: r for class: java.lang.Boolean


#2

So…are you saying it’s not working, or that it’s just telling you that you’re not subscribed to any events?

Technically you really don’t have any Triggers in your piston, you have all conditions (well aside from the one Timer at the bottom). So it might work but still give you that message.

For reference:


#3

Can you post more from the log? We need to see where it’s failing to find the error - that snippet doesn’t give enough information to figure out what line has the fault.

It looks like it’s trying to subscribe to something that doesn’t exist - either for a variable or a physical device. For example, if you had “is Boolean variable between 71 and 75”. Since boolean is only true or false, it could throw an error. Or if I forced/wrote in “if my temperature sensor contact is open”… something like that.

With more logs we can figure it out.