1) Give a description of the problem
I currently have a centralized bathroom exhaust fan that is controlled by three different switches (not a three way configuration). The fan is a retrofit where I had three individual fans, but after remodel installed the centralized fan option. It exhausts two different showers and a water closet. I currently have three pistons controlling the fans successfully. They use variables to flag if the light switch in the area has been on longer than five minutes. The flag to start the sequence is when the light is turned off. The piston will then turn on the fan, wait 30 minutes, turn off the fan, then reset the variable. In isolation this works great, but given all locations are calling the same fan, if two zones are being used at the same time they do not take into consideration each other. I’d like to link the three programs to take into consideration each other and trigger the fan shut off based on the last call to initiate the 30 minutes. I think I can use a single variable to define status, but need to find a way to coordinate the timing as each zone can kill power to the fan. Currently the timing of dan shut off is managed with a WAIT command. The three programs each have their own and a single program can shut the fan off while other zones still need the fan.
**4) Post a Green Snapshot of the piston!
All three current pistons are very similar to the example below, but use a different variable to flag the fan status: