Questions on Crosslinking and Groups

51 views
Skip to first unread message

Burzin Sumariwalla

unread,
Jun 8, 2021, 10:01:43 AM6/8/21
to insteon-terminal
Hello,

I just used insteon-terminal to program a new PLM (again) at the same time, I figured I'd clean up the ALDBs on all the Insteon devices throughout my network.  Fortunately, Insteon-Terminal makes this relatively painless.   To that end I have a couple of questions.

1.  I'm using commands such as what follows to add devices to the PLM.

Kitchen_Island_Lights_A.enterLinkingModeExtended(0x01)
Modem1.linkAsResponder(0x01)
Kitchen_Island_Lights_A.enterLinkingModeExtended(0x01)
Modem1.linkAsController(0x01)

Kitchen_Island_Lights_B.enterLinkingModeExtended(0x01)
Modem1.linkAsResponder(0x01)
Kitchen_Island_Lights_B.enterLinkingModeExtended(0x01)
Modem1.linkAsController(0x01)

Q1a - I understood it was necessary for the PLM (Modem1) to be linked as both a controller and responders.  Is that correct, and if so why?   Thinking about it the PLM is only a controller.   Am I missing something?

Q1b - Is it a no-no to have the same group used for Controllers and Responders?   I thought I read somewhere that this could cause problems.   (I can't recall where I read that though.)

2.  Kitchen_Island_Lights_A and Kitchen_Island_Lights_B are in a three-way setup as shown below.

getting db, be patient!
sent db query msg, incoming records:  1 2 3 4 5 6 7 8dbbuilder.done() is called
0fff Kitchen_Island_Lights_B        43.48.66  RESP  10101010 group: 01 ON LVL: 255 RMPRT:  28 BUTTON:   1
0ff7 Kitchen_Island_Lights_B        43.48.66  CTRL  11100010 group: 01 ON LVL:   3 RMPRT:  28 BUTTON:   1
0fef Modem2                         44.85.B2  CTRL  11101010 group: 01 ON LVL:   3 RMPRT:  28 BUTTON:   1
0fe7 Modem2                         44.85.B2  CTRL  11101010 group: fe ON LVL:   3 RMPRT:  28 BUTTON: 254
0fdf Modem1                         4C.17.2B  CTRL  11100010 group: 01 ON LVL:   3 RMPRT:  28 BUTTON:   1
0fd7 Modem1                         4C.17.2B  RESP  10101010 group: 01 ON LVL:   0 RMPRT:  28 BUTTON:   1
0fcf Modem2                         44.85.B2  RESP  10101010 group: 01 ON LVL:   0 RMPRT:  28 BUTTON:   1
0fc7 00.00.00                       00.00.00 (STOP) 00000000 group: 00 ON LVL:   0 RMPRT:   0 BUTTON:   0
>>> Kitchen_Island_Lights_B.getdb()
getting db, be patient!
sent db query msg, incoming records:  1 2 3 4 5 6 6 7 8 9dbbuilder.done() is called
0fff Kitchen_Island_Lights_A        43.14.90  CTRL  11100010 group: 01 ON LVL:   3 RMPRT:  28 BUTTON:   1
0ff7 Kitchen_Island_Lights_A        43.14.90  RESP  10101010 group: 01 ON LVL: 255 RMPRT:  28 BUTTON:   1
0fef 4C.4C.4C                       4C.4C.4C (RESP) 00101010 group: 01 ON LVL:   0 RMPRT:  28 BUTTON:   1
0fe7 Modem2                         44.85.B2 (RESP) 00101010 group: fe ON LVL:   3 RMPRT:  28 BUTTON: 254
0fdf 00.00.00                       00.00.00 (RESP) 00101010 group: fe ON LVL: 255 RMPRT:  28 BUTTON: 254
0fd7 Modem1                         4C.17.2B  RESP  10101010 group: 01 ON LVL: 255 RMPRT:  28 BUTTON:   1
0fcf Modem1                         4C.17.2B  CTRL  11101010 group: 01 ON LVL:   3 RMPRT:  28 BUTTON:   1
0fc7 4C.4C.4C                       4C.4C.4C (RESP) 00101010 group: 01 ON LVL:   3 RMPRT:  28 BUTTON:   1
0fbf 00.00.00                       00.00.00 (STOP) 00000000 group: 00 ON LVL:   0 RMPRT:   0 BUTTON:   0

Q2a - When crosslinking doing the button dance, what is the default group that holds the crosslinking?   If I'm reading the above correctly, it appears to be group 1.   However, I'd have expected the first group to be used.   What's group 0 used for Insteon-wise?

Q2b - What is best practice with multiple multi-way switches?   Should each multi-way set have it's own group?


Regards,
Burzin

Bernd Pfrommer

unread,
Jun 8, 2021, 2:24:19 PM6/8/21
to insteon-terminal
As I have sold my Insteon devices along with the house the following answer is from memory, so take it with a grain of salt:
Q1a: link modem controller such that the device listens to it. That's easy to understand. The reverse accomplishes that when the device changes state (e.g. switch is flipped), the modem will pick up the group message that the devices sends out. I also believe there is some protocol then that the device makes sure the modem has heard about the message, i.e. it expects an ACK back from the modem. Not sure about that though.
Q1b:  I think you can reuse the groups. For sure within the same house. So if you have a few 3-way switches, you don't need to program to separate groups.
Q2a: default is group 1 but I don't know why they skipped group 0. You might want to search the insteon docs. There is a lot of info out there
Q2b: Reuse group 1 for all of them. It is my understanding that when a broadcast for group 1 is sent, it also has the source address of the controller on it. Any responding device that is not linked will look at the source address, not find it in its database, and simply discard the message. I don't think that's more work for the device than checking that the group is unknown. Either way the device will have to decode the message to decide that it shouldn't respond. I believe the groups are mainly used if you want to trigger different functionality on a device. So let's say a device has multiple buttons etc that you want to switch on or off, then you can link those to different groups. So if the message goes to group 1, the device will perform action A, if it goes to group 2, it will perform action B. And of course, you can have things like a special group (e.g. 7) that all your devices are programmed to just as responders. Then you can send an OFF broadcast from the modem and all lights in the house will go off at once.


Reply all
Reply to author
Forward
0 new messages