Simple HLC Question

Desert_AIP

Senior Member
I've got my entire UPB install reconfigured from UPB to HLC and allocated my "rooms" and switches.
I've read through the "Configuring non-HAI UPB switches to use HLC" docs and looked at the spread sheets.
I understand the room scheme and the 6 links and 8 units and the room controllers and links.

This part is stumping me.

"Links 243-250 – assigned to any HSS configured to function as a macro-executer"

Is "macro" here being used as a synonym for HAI "Buttons"?
If yes, are these simply links set aside to execute buttons from a UPB/HLC link?

If yes, what will happen if I use those links for general UPB links?
I don't see any embedded functions for those links, though they are noted as "reserved" in the UPB scene setting section of PCAccess.
I assume that I configure the HSS and use those links from the buttons by writing programming that says "when Link 243 on, then execute button X".

So if I don't write that code, can I use these links for other functions?
What does the controller do or expect when it sees those links?
 
Hi Desert_AIP,

In answer to your question about links 243 - 250. When the controller sees these links it triggers a SWITCH x BUTTON y event in the controller. Look at the UPB Switch Trigger. To use the "macro" functionality you would set up programming like "WHEN Living Room SW7 PRESSED" where "Living Room" is the name of an 8 button switch configures as a "macro" controller.

So using those links will trigger events in the controller but the controller will not automatically transmit anything on the UPB network that will interfere with anything. If you have no programming in the controller that is triggered by those events then you can use links 243 - 250 as you please.

If you need more links perhaps a better understanding of HLC would be helpful. HLC is just a schema that allows the controller to know how to automatically do certain things without additional programming.

For example let's say you use link 195 and using UPStart program some switches to go to a preset level when they receive that link. You then program the room controller for that room so that when you press button "A" it transmits that link. So in effect link 195 = room 1 scene A. This will work fine, but the controller doesn't know the purpose you had in mind for link 195. In order to get updated status, now you have to set up programming in the controller so that when is sees link 195 it waits a few seconds for the loads to ramp to whatever level then poll them for status. So do it right it requires some work, programming the UPB devices in UPStart and setting up some programming in the controller using PC Access.

To make it MUCH simpler HLC was developed. HLC defines/reserves certain links so that for example it knows link 3 = room 1 scene A and it knows what units are in room 1. When it sees link 3 it automatically knows to poll those units for status without you having to do anything. Furthermore all of our HAI devices are set up so they can be automatically programmed by the controller so you don't even need Upstart for basic setup. Just tap the ON button 5 times to put the switch in the setup mode, go to a touch screen, find the unit and press the Configure button.

We have published this scheme in our Knowledge Base (probably the docs are looking at) so that you can manually program 3rd party UPB devices to work like a HLC device.

OK but one size doesn't always fit all. HLC is a good starting point but often you may want or need to tweak the base configuration by defining additional links or customizing switch behavior. For this use UPStart.

You can use any link that HLC is not using. Links 1 - 192 are reserved for HLC rooms 1 - 32. There are 6 links per room (ON, OFF, Scene A, B, C, D). However if the house code is not set to HLC (or UPB) any of these links can be used for whatever you want. So if house code 16 is set to "Standard", for example, then you are free to use links 181 - 192. Do not use links for rooms that are set to HLC or UPB because as I mentioned above, they will trigger actions in the controller like polling for status or setting button statuses on the UPB network.

I hope this is useful information.
 
So just a question about HLC, what if you don't use room controllers? Just all switches in all room. Is there any reason to use HLC then?
 
IMHO The automatic status tracking is worth it by itself.

I don't have room controllers in most of my rooms. I mean the kids bed rooms basically have only a light switch and a fan switch, same for the garage, patio, kitchen, bath rooms, etc. Whether you have an actual room controller or not HLC switches are still programmed to respond to "room" and "scene" commands so HLC simplifies and speeds up my macros.

What I am talking about is something like my "Away", "Vacation" or "Sleep" programming blocks. When I go to bed I put the house in "sleep mode" which basically sets the thermostat, and turns off all lights in common areas but leaves the bed rooms alone in case someone is reading or has their fan on. Rater than having programming like:

THEN Living Room Light OFF
THEN Living Room Fan OFF
THEN Living Room Corner Light OFF
THEN Living Room Table Light OFF
THEN Kitchen...
THEN Office...
THEN Garage...
THEN Patio...
etc.

I can just do:

THEN Living Room OFF
THEN Kitchen OFF
THEN Office OFF
THEN Garage OFF
THEN Patio OFF
etc.

Much simpler.

I guess the main thing is it is easy and just works. From the basic programming of the switches to not having to set up programming to track statuses.
 
HAI_fjh, thanks that answers my question perfectly.
I wasn't making the macro = "switch x button y" connection.

I have 26 "rooms" allocated but I'm reserving the other units and their room links for future expansion, that's why I'm not using those links. I was really just wondering what action the controller would take if it saw those macro links.

I am switching to HLC primarily for polling/status update, but the simplification you mention is another great reason.

That jogged my memory, I have a couple of other questions regarding status polling/tracking.


Does the controller poll the status of room units whenever it sees the room links, from whatever source, or does it only poll when those links are sent from room controller or HSS units?

i.e. I have Room 1 set as my master Bedroom. Unit 1 is blank (no room controlelr) Unit 2 is my Master Bedroom Lights, Unit 3 is my Master Bedroom Nook, Units 4 and 5 are bedside lamps.
As I understand it, if I turn the main lights on from the switch on Unit 2, the controller will poll the status of all the units in the room.
Does it poll the entire room? Or just the unit that was operated?

Does it only poll the room when one of the 6 room scenes are used?

Also. Does the controller poll the room when a room scene is transmitted from ANY source or just from a designated room or HSS controller?

i.e. if I did have a room controller as Unit 1 and sent Scene A (Link 3) as I understand it the controller will poll all the units in the room to update thier statuses.
If I send link 3 from a unit outside the room ,(say unit 91) will the controller still poll Room 1 because it associates Link 3 with room 1?
Or is it looking for Link 3 to come from Unit 1 (or one of the appropriate HSS unit numbers) and therefore will not poll the room?

I assume it simply associates the link with the room. I do not have access to my controller right now, so I have no way of testing this.

Thanks for all the help!
 
Wow; a lot of questions there...

OK first I think it is important to understand that a room is just a logical concept and has no physical relationship to where the unit is on the UPB network. From a UPB perspective all of the units are on the same network.

When the controller sees a link on the UPB network it polls all units that it believes were affected. It does this based on the HLC schema not the source of the link. So if does not matter if it came from the controller itself, a room controller or a HSS.

So if you operate a switch, i.e. press and hold to fade up, the controller will poll the switch to see where it stopped. If you send a link associated with a Scene it will poll the units to see what levels they went to. Remember that each switch can be set to go to a different level for a scene and that level is actually stored in the switch.

FYI: Even though I don't have room controllers in most rooms, I still name the first unit so I have something like:

Unit 33: Guest Room
Unit 34: Guest Rm Lt
Unit 35: Guest Rm Fan

This way the room controls show up on touch screens and in PC Access programming.

Another thing to consider is that you might want to take advantage of the HLC programming capability offered by 8 button switches in the "macro" mode. I mean you could have 32, 8 button switches and only use 8 links and still have 256 individual button functions.

You might want to look at some of our on-line learning resources to get the most out of your system.
 
Thanks for your time. Makes a lot of sense.
So the "room" links work as I'd hoped, the controller is looking at the link itself not the source unit. Good.

I've been reading prodigiously over the past several months, all the Knowledgebase docs, the HAI developer Forum, this site...,.
I'm at sea and don't have access to my system to test anything.
I am trying to plan everything, write my PCAccess programs and UPStart configs and upload them as soon as I get back.
 
Back
Top