Elk and UPB

Steve said:
If you manually control a switch, the M1 should see it fine. A UPB switch will transmit its status locally, but if a switch changes as a result of receiving a link, then you will not see that switched status change. Thats an issue with UPB and the only solution is really to do polling - or, instead of having UPB devices control each other directly via links, have the M1 pick up the link and have the M1 control the device, then it will always know the status.
So you are saying that if I create a VIRTUAL 3way switch using 2 US2-40 switches, the M1 will only know if I turn the light on from the load controlling switch? The M1 will not know the light is on if I use the linked switch?

And it appears the M1 doesn't support polling for UPB, so it there any good workaround? Using the M1 to translate two non-linked devices seems like trouble if you want to do any dimming, right?
If you configure the switches to send a different link to each other then yes, the M1 will not see a status change in them.

Correct, the M1 does not poll. There is no workaround other than what I mentioned to let the M1 control all the lights. UPB does have the capability to be self sufficient and create its own 'scenes' etc. but thats where you will lose status info. The M1 CAN full control all the lights, there just may be small delays, etc. It probably is a bigger issue in a large install, but I simply have the M1 control all my lights by either time, motion (coming soon) or some other rule. I also admittedly do not do much in the way of scenes.
Thanks Steve. I saw that UPB stuff in the manual when I was first setting things up several weeks ago, but forgot about it. Now it makes sense on the links.

So, if I want the M1G to really know the status of all the lights, the links on my US2-40 really have to not do the lighting changes, but just be single commands and let the M1 do the control. Or, I could repeat the effect of each link in the M1G -- say a link turns off the MBR lamps and family room lamp, then the M1G could just do the same thing. I'm thinking that would cut down on the delay, and it doesn't hurt to turn things off (or on) twice. That way the M1G knows the status.

But, I have a keypad near the door to the garage, and when I look at the status of the garage light, the keypad does not indicate when I turn the light off (or on) at the switch. Everything else works well with UPB, but what could be wrong there? Or do I have to set up every switch to transmit a link when I turn it on or off?

You may be able to get by with just the M1 controlling the lights. I have never tested delays between direct links and the M1, so if you are only doing a few lights, you should be ok. For example, until I get the touchscreen setup in my MBR, I have an 8 button SAI keypad in the tabletop mount. One of the buttons turns off like 90% of the lights. It is just 1 rule - WHENEVER Button6 is TURNED ON, THEN adjust light 1, THEN adjust light 2, etc... As long as you have rule space, you should be ok.

What are your switches that don't show status? My US240's show properly using the default link of 241. Keep in mind if you are looking at the light status on the keypad, it does not change in real time. You need to cursor up or down and back to see the new status. I do see the status immediately on my CQC interface.
The switch I can test easily is an HAI 35A00-3 600W non-dimming switch. Yes, I did discover I have to scroll up and down to get the correct status. It reads correct if I use the M1 (motion detector) to turn it on, but not the switch.

As I just looked at the UPStart dialogs, there is a checkbox for "Report light level after rocker switch is pressed" on the Rocker Switch tab. I didn't have that checked (until now), so I will try that again and report back.

Yeah, that should do it. Different switches have different options, thats why I asked. You should be golden now.
Well, I tried a couple of things. First, I tried turning on that checkbox ("Report Light Level"), and nothing changed. So, I realized that there is nothing in the "Transmit Components" for the switch, so I tried invoking a link for when the bottom and top buttons are pressed. I didn't try checking with a rule, but, going to the keypad and cheking lighting #065 (the link is link 1), it always says off -- even when I hit the button on the US2-40 controller for that link. Maybe the keypad is the wrong place to test that, but shouldn't it know the status? And, yes, I reenter 065 to re-display the value.
I did go one step further and check both switches with rules, both on "lighting change" for the switch, and a link corresponding to the switch (including the link that should be invoked when I hit the top and bottom rocker switches). Nada.

I also tried changing the transmit type for one of the switches (under the advanced tab) to direct packet versus link packet. No success.

Any other ideas?
And, a related question -- when I originally set up the links in UPstart, I didn't pay attention to the link numbers. Well, they start at 106 (except for a couple of them). So, it looks like there is no way to change the numbers. I'll just have to delete them and re-enter everything so I can get link numbers less than 64. Is that right?
Well, I learned today that UPStart can log incoming messages, so I tested to see if my switches are sending the signals. They are sending just fine (both links and actual switch data), but the M1G doesn't seem to be receiving either. The M1G controls the lights just fine, so the communication is one way.

Is there something I could have screwed up with the M1XSP installation that would cause this?
On Globals 29-42 make sure you have Serial Port 0, Transmit Lighting Changes checked. But you see the status on the keypads? Remember the device ID has to match the # in Elk and the dimmers need to be configured as Serial Expander, Dimmer. As long as you can see and control the lights via Elk then it sounds like everything else is ok.
Thanks Steve -- yes, transmit lighting changes is checked, and I double checked from the kaypad that is it set to Yes.

And no, I do not see the status on the keypad unless the M1G controlled the light. The switches are all configured as Serial Expander, On/Off switch. Do they need to say Dimmer if they are not dimmable?
Ok, I went back and re-read, lets try from the beginning - I'm gonna assume all the settings - Network, ID, etc are all ok and that RP matches UPStart, etc.

Configure one of your HAI switches - leave out all transmit link stuff for now, make sure it is 'Unused' and all transmit components are greyed out. In options, next to LED the transmit changes is checked. And program the switch...

Now in RP... assuming say this is device #5, you need to enter the switch info in position 5(A5) and setup as serial expander, on/off.

Try to test from UPStart - go to Test tab and turn light on/off. The light should change and the M1 should see it.

If it still does not work, grab this file (M1 SDK). When you run it and connect, you can see the ascii strings. You shoud see strings like:

RECV 14:34:25 -- 0BPCA16000093
RECV 14:34:23 -- 0BPCA16010092

when a light goes on and off. If you don't see those strings then Elk will not have a status and we need to look at why.
I really appreciate all the help. When I try to run M1_SDK.exe, I get --

"Component 'MSCOMM32.OCX' or one of its dependencies not correctly registered. A file is missing or invalid."

Rather than tell you I checked everything, I decided to take screen shots of my RP setup and UpStart setup and put them all in a Word Doc, attached. Hopefully, that shows you what I've got. I only have one UPB interface, so it is either hooked to the computer or the M1. But, I can log the responses in UpStart, which I include in the document -- so I'm pretty sure the switches are transmitting (the Family Room switch has links and transmits status, as a test).

See the docs ... I just discovered a 150 k limit, so I had to break the document into four pieces, hence the multiple posts.


  • UPBSetup29Mar2007A.doc
    82 KB · Views: 34