Home Control Assistant Newsletter for April 18 2021

Have you looked over the version 17 release notes? Lots of changes that you can incorporate into your designs right away. Easy upgrade.

Looking for answers to the most common questions about HCA? Check out our
Frequently Asked Questions page.
I know there has been a lot of philosophy lately, so here is something you can use in your own HCA design right away.

Long running programs
In my own home I have programs that run every so often. These programs look at environmental conditions and, based upon what they see, do stuff. From looking at user designs sent to me while handling support questions I see that these “long running programs” are not uncommon. 

I want to cover two aspects of this today. The first is a “best practice” for this sort of task, and the second is part of my quest for better resiliency.

The old way to handle this sort of “every ‘n’ minutes do something” was to create a program that performs the action and then executes a delay programmer element to wait for the necessary hold time and then begin again. A better method is to use the “Run again” option. The option for this is on the program “Advanced Properties”.

All you need do is to enable the option and choose the time to wait after execution completes to begin again. Why is this better than using a Delay element? Three reasons. First, I find it a “cleaner” solution. You need not have all paths through the program converge at the Delay element. This can easily be overlooked in large programs and if one path doesn’t go to the delay element then the program terminates if that path is taken. Second, it is more reliable. If the program unexpectedly terminates for some reason, it will not restart because once stopped there is no mechanism to get it going again. The last reason is that a program that uses the “Run again” option can be suspended and while suspended the program will not be started but will continue to process the Run again option. It keeps trying to start every ‘n’ minutes, and while suspended it will not start but when the suspend is removed it does start.

What if something goes wrong? What if for some reason the program doesn’t start and run every ‘n’ minutes? Maybe you were modifying the program and forgot to start it up again. I have done this more than once I can assure you!

In HCA 17.0.34 the concept of an “overdue device alert” was broadened to allow for configuring that alert for programs and devices. If a program is on the overdue list and it has not executed in the specified number of minutes, then it raises an overdue alert. I have my system configured to send me a message so I know something has gone wrong, and to just start the program again. The handler for the overdue alert is provided the name of the object that is overdue, which in this case is the program name.

Long running programs are useful and using these two features – the “Run again” option and the overdue alert - can make your design easier to manage and more resilient.

Keeping up
In the above section I noted that a change was made in 17.0.34. This was a “point version” of HCA 17. If you purchased HCA 17 or an upgrade to it when first released, this feature wasn’t included. It was added later in a point version and you could have it if you did the download and install. These changes to fix bugs and add features are a free way to get increased function and all you need to do is to download and install. But from the data I see from the user database, not everyone does this and that’s dumb.


When was the last time you made a backup of your HCA design? Not a month goes by without at least one tale of woe from a HCA user. Please use the "Design Backup Assistant" on the Tools ribbon category. The work you save will be your own.

Want to take the next step in automation? Want to get started with Amazon Alexa and Google Assistant and control HCA by voice commands? Even if you are a long-time user of HCA, the Getting Started guides have all the info you need on client-server, mobile applications, DDNS, and voice assistants.

All of the
Getting Started Guides are available on the support website.
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