Home Control Assistant Newsletter for Nov 21 2021

Have you read the Important Announcement posted on August 1, 2021? If you haven't you need to.
Program triggers: When to ignore and when not to
There is an option in HCA programs that can easily be overlooked. I wanted to take a few minutes to make sure you know it is there and to show how a requirement of a program was easily handled by using this option.

On the Triggers tab of a program’s properties is this section:

This section is all about the action HCA takes when a trigger arrives that would start a program. If the program is already running what should HCA do? Should it start the program or not? Or not ignore the trigger but save it for later when the program completes? 

Let’s see what the options are and some ideas on when each option might be used.

Option A: Ignore it
It does exactly what it says. If the program is running and one of the triggers for that program occurs, then it is as if the trigger never happened. A good use is for a program that when started needs to perform some action to completion without interruption.

Option B: Restart the program
If a trigger arrives for the program while it is running, whatever element is currently being executed completes and then the program is restarted from the beginning. The exception to allowing the current element to fully complete are the delay and wait-until elements. For those elements execution is cut off early even if the delay timer hasn’t expired or the wait-until time not reached. A good use of this is for a program started by a motion sensor. When triggered it controls a device, waits a while, and then controls that device to off. By using the “Restart” option, each time motion is seen the program begins the delay timer over again.

Option C: Start a copy
When a trigger arrives, the program is always started. If the program is already running that instance isn’t stopped or messed with in any way. Another instance of the program is started to process the newly arrived trigger. A use of this could be for a program that performs some action that is specific to the trigger and doesn’t modify any state. For example, a program that sees some event and uses the messaging element to report it. This way each trigger gets processed as quickly as possible. You must take care when using this option if the program modifies any state. There could be more than one instance of the program accessing that state simultaneously.

Option D: Add trigger to a queue
Like the previous option, this option makes sure that each arriving trigger gets processed, but in a sequential manner. If the program is running, then HCA saves the trigger and waits until the program completes before starting it again with the saved trigger. Unlike the “Start a copy” option, this is a good way to make sure that each trigger is processed but in an orderly manner. Each trigger received is processed in the order received. Uses are like the previous option.

The reason I bring this up is that I was working with a user to automate an entry gate. A button press would start the gate opening or closing. Given how the hardware worked, it was imperative that while the gate was opening or closing that it doesn’t get another signal.

The way this was accomplished was to have the program start the gate action and then delay for several seconds to give the time for the gate opening or closing to complete. When the delay was completed, the program terminated. Because the trigger option was set to “ignore”, having the program running – performing the delay - for the full opening or closing time effectively and easily blocked any subsequent triggers from having an effect until the full delay time completed.
If you are using a version of HCA prior to version 17, you may have questions about the wisdom of upgrading to version 17 given the future of HCA. Here is something to consider. 

The support policy for older HCA versions has been changed
 as I can no longer devote time to past version users. Support will only be available for HCA 17 users.

If you are on version 16 or earlier and want to continue using the cloud features and want to be assured that if you have a question that it gets answered, it is indeed time to upgrade.

HCA is fully operational for several more years so the update cost, spread out over that time, is very little. Knowing support is available when you need it is worth it.
Upgrade to HCA 17
Anyone who is using Hubitat with HCA – not SmartThings – please drop me a note as I would like to add you to a discussion list for those users. I have some Hubitat ideas that I would like to “kick around” and it would help to have a group of users who have experience with Hubitat. Please just send a note to the regular support address saying you would like to be added to that discussion list.
Copyright © 2021 Advanced Quonset Technology, Inc, All rights reserved.

Want to change how you receive these emails?
You can update your preferences or unsubscribe from this list.

Email Marketing Powered by Mailchimp