3.2.33. Multi Channel Association Command Class, version 2 [OBSOLETED]¶
Warning
THIS COMMAND CLASS HAS BEEN OBSOLETED
New implementations MUST NOT support this Command Class.
New implemenetations MUST use the Association Command Class, version 3, or newer instead.
The Multi Channel Association Command Class is used to manage associations to Multi Channel End Point destinations as well as to NodeID destinations.
An association group sends an unsolicited command to the configured destinations when triggered by an event. The parameters of the command may be dynamic, e.g. the temperature of a sensor reading or the light level for a dimmer.
A NodeID association identifies its destination by a NodeID.
An End Point association identifies its destination by a combination of a NodeID and an End Point.
Refer to Section 4 for an introduction to the Multi Channel concept.
3.2.33.1. Compatibility Considerations¶
\requirement{CC:008E.02.00.21.001}{4}
The Multi Channel Association Command Class extends the functionality of the Association command class. A device supporting this Command Class version MUST also support the (non-Multi Channel) Association Command Class, version 2.
\requirement{CC:008E.02.00.22.001}{0}
A controlling device SHOULD NOT create End Point associations to dynamic Multi Channel End Points.
\requirement{CC:008E.02.00.22.002}{0}
The Association Group Information (AGI) Command Class SHOULD be supported to enable automated discovery of association group properties.
\requirement{CC:008E.02.00.21.002}{0}
The Association and Multi Channel Association Command Classes MUST access the same collection of association groups. Further, the following applies:
\requirement{CC:008E.02.00.21.003}{0}
The two command classes MUST advertise the total number of association groups.
\requirement{CC:008E.02.00.21.004}{0}
The two command classes MUST advertise the total number of supported nodes for a given association group.
\requirement{CC:008E.02.00.21.005}{0}
Any advertised association group MUST support NodeID destinations as well as End Point destinations.
\requirement{CC:008E.02.00.21.006}{0}
NodeID associations maintained via the Multi Channel Association Command Class MUST be identical to NodeID associations maintained via the Association Command Class.
\requirement{CC:008E.02.00.21.007}{4} \requirement{CC:008E.02.00.23.001}{8}
The Multi Channel Command Class specifies that, for backwards compatibility with non-Multi Channel devices, the Root Device of a Multi Channel device MUST mirror the functionality of End Point 1 and it MAY mirror the functionality of more End Points. This principle also applies to association groups advertised by the Root Device.
\requirement{CC:008E.02.00.22.003}{0}
Each association group advertised by the Root Device, except for association group 1, SHOULD mirror an association group of an End Point.
\requirement{CC:008E.02.00.22.004}{0}
If a Root Device association group mirrors an End Point association group, the Root Device SHOULD map all Association commands for that group to the mirrored End Point association group.
\requirement{CC:008E.02.00.22.005}{4}
Except for association group 1 (the Z-Wave Plus Lifeline), a Multi Channel aware controlling device SHOULD ignore all Root Device association groups since they are just mirrored End Point association groups.
\requirement{CC:008E.02.00.21.008}{0}
The use of encapsulation MUST comply with Table 3.128.
Source -> Destination |
Association Type |
Allowed Transmissions |
|---|---|---|
NodeID -> NodeID (V2) |
NodeID |
Non-encapsulated |
End Point -> NodeID (V2) |
NodeID |
Non-encapsulated |
NodeID -> End Point (V2) |
End Point |
Encapsulated *) (src≥0, dst>0) |
End Point -> End Point (V2) |
End Point |
Encapsulated (src>0, dst>0) |
REMOVED NodeID -> Root Device |
End Point |
None **) |
*) The source End Point MAY be different than 0 if the associated group is an End Point group mapped to the Root Device
**) Version 2 of this command class does not allow the destination End Point to be zero.
3.2.33.2. Z-Wave Plus Considerations¶
\requirement{CC:008E.02.00.11.001}{4} \requirement{CC:008E.02.00.13.001}{12}
The Z-Wave Plus certification program mandates that Association group 1 is reserved for the Lifeline association group. Group 1 MUST NOT be assigned to any other use than the Lifeline group. The actual Device Type specifies a mandatory list of commands which the device must be able to send to all lifeline group destinations. A manufacturer MAY add additional commands to the lifeline group.
\requirement{CC:008E.02.00.12.001}{0}
End Points SHOULD NOT implement the Lifeline Association Group. End Points SHOULD report that zero NodeIDs are supported for association group 1.
The Z-Wave Plus certification program mandates support for the Association Group Information (AGI) Command Class if a device supports the Multi Channel Association Command Class.
3.2.33.3. Security Considerations¶
\requirement{CC:008E.02.00.41.001}{0}
A node that is included securely MUST NOT accept Association commands unless the commands are received via the highest security key assigned to the device.
\requirement{CC:008E.02.00.41.002}{0}
A supporting node issuing commands via association groups MUST send those commands with its highest granted Security Class.
\requirement{CC:008E.02.00.42.001}{0}
A supporting node issuing Set or Report type commands via association groups SHOULD use Supervision encapsulation only if sending commands with S2 (or higher security) encapsulation.
3.2.33.4. Multi Channel Association Set Command¶
This command is used to request that one or more destinations are added to a given association group.
\requirement{CC:008E.02.01.13.001}{0}
The destinations MAY be a mix of NodeID destinations and End Point destinations.
\requirement{CC:008E.02.01.12.001}{0}
The receiving node SHOULD add the specified destinations to the specified association group.
\requirement{CC:008E.02.01.13.002}{0}
This command MAY be ignored if the association group is already full.
\requirement{CC:008E.02.01.11.001}{0}
Routing end nodes MUST have return routes assigned to all association destinations.
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|---|---|---|---|---|---|---|---|
Command Class = COMMAND_CLASS_MULTI_CHANNEL_ASSOCIATION (0x8E) |
|||||||
Command = MULTI_CHANNEL_ASSOCIATION_SET (0x01) |
|||||||
Grouping Identifier |
|||||||
NodeID 1 |
|||||||
… |
|||||||
NodeID M |
|||||||
Marker = MULTI_CHANNEL_ASSOCIATION_SET_MARKER |
|||||||
Multi Channel NodeID 1 |
|||||||
Bit Address 1 |
End Point 1 |
||||||
… |
|||||||
Multi Channel NodeID N |
|||||||
Bit Address N |
End Point N |
||||||
Grouping Identifier (8 bits)
\requirement{CC:008E.02.01.11.002}{0}
This field is used to specify the actual association group. Grouping Identifiers MUST be assigned in a consecutive range starting from 1.
\requirement{CC:008E.02.01.11.003}{0}
A node that receives an unsupported Grouping Identifier MUST ignore this command
NodeID (M bytes)
This field specifies a list of NodeID destinations that are to be added to the specified association group as a NodeID association.
\requirement{CC:008E.02.01.11.004}{0}
A NodeID association created via this field MUST be identical to a NodeID association created with the (non-Multi Channel) Association Set command.
Marker (8 bits)
\requirement{CC:008E.02.01.11.005}{4} \requirement{CC:008E.02.01.13.003}{8}
This field is used to indicate the end of NodeID destinations and the start of End Point destinations. The Marker field MUST be set to the value MULTI_CHANNEL_ASSOCIATION_SET_MARKER. The field MAY be omitted if no End Point destinations are specified.
Multi Channel NodeID (N bytes)
The Multi Channel NodeID, Bit Address and End Point fields specify a list of End Points which are to be added to the specified association group as an End Point association.
\requirement{CC:008E.02.01.13.004}{4}
The complete identification of an End Point destination requires a NodeID as well as an End Point identifier. This command MAY carry multiple copies of the same Multi Channel NodeID in combination with different End Point identifiers.
Bit Address + End Point (N bytes)
\requirement{CC:008E.02.01.11.006}{0}
These fields MUST be processed in combination with the Multi Channel NodeID field.
\requirement{CC:008E.02.01.12.005}{0}
The receiving node SHOULD treat the Bit Address flag and the End Point identifier as one scalar value; thus creating only one association group entry. Using a single scalar value enables:
Better utilization of association group capacity
Simple transmission of command for a multi-End Point destination
Well-defined removal of bit addressed End Points
Refer to the Multi Channel Command Class for the actual encoding of bit addressed End Points.
\requirement{CC:008E.02.01.11.007}{0}
The 7-bit End Point value MUST be in the range 1..127.
3.2.33.5. Multi Channel Association Get Command¶
This command is used to request the current destinations of a given association group.
\requirement{CC:008E.02.02.11.001}{0}
The Multi Channel Association Report Command MUST be returned in response to this command.
\requirement{CC:008E.02.02.11.002}{0}
This command MUST NOT be issued via multicast addressing.
\requirement{CC:008E.02.02.11.003}{0}
A receiving node MUST NOT return a response if this command is received via multicast addressing. The Z-Wave Multicast frame, the broadcast NodeID and the Multi Channel multi-End Point destination are all considered multicast addressing methods.
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|---|---|---|---|---|---|---|---|
Command Class = COMMAND_CLASS_MULTI_CHANNEL_ASSOCIATION (0x8E) |
|||||||
Command = MULTI_CHANNEL_ASSOCIATION_GET (0x02) |
|||||||
Grouping Identifier |
|||||||
Grouping Identifier (8 bits)
\requirement{CC:008E.02.02.11.004}{0}
This field is used to specify the actual association group. Grouping Identifiers MUST be assigned in a consecutive range starting from 1.
\requirement{CC:008E.02.02.12.001}{0}
A node that receives an unsupported Grouping Identifier SHOULD return information relating to Grouping Identifier 1.
3.2.33.6. Multi Channel Association Report Command¶
This command is used to advertise the current destinations for a given association group.
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|---|---|---|---|---|---|---|---|
Command Class = COMMAND_CLASS_MULTI_CHANNEL_ASSOCIATION (0x8E) |
|||||||
Command = MULTI_CHANNEL_ASSOCIATION_REPORT (0x03) |
|||||||
Grouping Identifier |
|||||||
Nax Nodes Supported |
|||||||
Reports to Follow |
|||||||
NodeID 1 |
|||||||
… |
|||||||
NodeID M |
|||||||
Marker = MULTI_CHANNEL_ASSOCIATION_REPORT_MARKER |
|||||||
Multi Channel NodeID 1 |
|||||||
Bit Address 1 |
End Point 1 |
||||||
… |
|||||||
Multi Channel NodeID N |
|||||||
Bit Address N |
End Point N |
||||||
Grouping Identifier (8 bits)
\requirement{CC:008E.02.03.11.001}{0}
This field is used to advertise the actual association group. Grouping Identifiers MUST be assigned in a consecutive range starting from 1.
Max Nodes Supported (8 bits)
\requirement{CC:008E.02.03.13.001}{4}
The maximum number of destinations supported by the advertised association group. Each destination MAY be a NodeID destination or an End Point destination.
Reports to Follow (8 bits)
The entire list destinations of the advertised association group may be too long for one command.
\requirement{CC:008E.02.03.11.002}{0}
This field MUST advertise how many report frames will follow this report.
NodeID (M bytes)
This field advertises a list of NodeID destinations of the advertised association group.
\requirement{CC:008E.02.03.11.003}{0}
The list of NodeIDs MUST be empty if there are no NodeID destinations configured for the advertised association group.
Marker (8 bits)
Refer to description under the Multi Channel Association Set command.
Multi Channel NodeID (N bytes)
The Multi Channel NodeID, Bit Address and End Point fields specify a list of End Points which are currently in the advertised association group.
\requirement{CC:008E.02.03.13.002}{4}
The complete identification of an End Point requires a NodeID as well as an End Point identifier. The Multi Channel Association Report command MAY carry multiple copies of the same Multi Channel NodeID in combination with different End Point identifiers.
\requirement{CC:008E.02.03.11.004}{0}
The list of Multi Channel NodeID and End Point identifiers MUST be empty if there are no End Point destinations configured for the advertised association group.
Bit address + End Point (N bytes)
\requirement{CC:008E.02.03.11.005}{0}
These fields MUST be processed in combination with the Multi Channel NodeID field.
Refer to the Multi Channel Command Class for the actual encoding of bit addressed End Points.
3.2.33.7. Multi Channel Association Remove Command¶
This command is used to remove NodeID and End Point destinations from a given association group.
\requirement{CC:008E.02.04.11.001}{0}
This command MUST manipulate the same list of NodeID destinations as the Association Remove Command.
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|---|---|---|---|---|---|---|---|
Command Class = COMMAND_CLASS_MULTI_CHANNEL_ASSOCIATION (0x8E) |
|||||||
Command = MULTI_CHANNEL_ASSOCIATION_REMOVE (0x04) |
|||||||
Grouping Identifier |
|||||||
NodeID 1 |
|||||||
… |
|||||||
NodeID M |
|||||||
Marker = MULTI_CHANNEL_ASSOCIATION_REMOVE_MARKER |
|||||||
Multi Channel NodeID 1 |
|||||||
Bit Address 1 |
End Point 1 |
||||||
… |
|||||||
Multi Channel NodeID N |
|||||||
Bit Address N |
End Point N |
||||||
Grouping Identifier (8 bits)
This field is used to specify from which association group the specified destinations should be removed.
\requirement{CC:008E.02.04.11.002}{0}
Grouping Identifiers MUST be assigned in a consecutive range starting from 1.
\requirement{CC:008E.02.04.11.003}{0}
A receiving node MUST ignore an unsupported Grouping Identifier; except for the value 0.
\requirement{CC:008E.02.04.11.004}{0}
This field MUST be interpreted in combination with the NodeID and End Point fields.
(NodeID Destination) NodeID (M bytes)
(End Point Destination) Multi Channel NodeID (N bytes)
(End Point Destination) End Point (N bytes)
These fields specify the destinations that are to be removed.
\requirement{CC:008E.02.04.11.005}{0}
The Grouping Identifier and these fields MUST be interpreted as follows.
“NodeID Destinations” denote the NodeID fields.
“End Point destinations” denote the combined Multi Channel NodeID and End Point fields found after the marker.
\requirement{CC:008E.02.04.13.001}{0}
A receiving node MAY interpret the empty command (only Command Class and Command fields) as an instruction to Remove all NodeID destinations and End Point destinations from all association groups.
\requirement{CC:008E.02.04.11.006}{0}
This field MUST be interpreted according to Table 3.133
Table 3.133 Multi Channel Association Remove, V2::Parameter Interpretation¶ Grouping identifier
Number of NodeID Destinations
Number of End Point Destinations
Interpretation
> 0
> 0
(don’t care)
Remove NodeID destinations from association group.
Then assess End Points (next line) – if any specified
> 0
(don’t care)
> 0 *)
Remove End Point destinations from association group *).
> 0
= 0
= 0
Remove all NodeID destinations and End Point destinations from association group.
= 0
> 0
(don’t care)
Remove NodeID destinations from all association groups.
Then assess End Point destinations (next line) – if any specified
= 0
(don’t care)
> 0 *)
Remove End Point destinations from all association groups *).
= 0
= 0
= 0
Remove all NodeID destinations and End Point destinations from all association groups.
\requirement{CC:008E.02.04.11.007}{0} \requirement{CC:008E.02.04.11.008}{4}
*) The receiving node MUST treat the Bit Address flag and the End Point identifier as one scalar value. The receiving node MUST remove End Points if an exact match can be found, while it MAY ignore the removal request if an exact match cannot be found; even though there may exist associations for individual End Point destinations which are covered by the End Point bitmap address.
Marker (8 bits)
Refer to the description in Section 3.2.33.4 in the Multi Channel Association Set Command.
3.2.33.7.1. Examples¶
Figure 3.19 Remove Bit Addressable End Points from Group 3¶
Figure 3.20 Remove Specified NodeID and End Point from Group 3¶
Figure 3.21 Remove all Associations from Group 3¶
Figure 3.22 Remove Specific NodeID from all Groups¶
Figure 3.23 Remove Specific Multi Channel NodeID from all Groups¶
Figure 3.24 Remove all Associations from all Groups¶
3.2.33.8. Multi Channel Association Supported Groupings Get Command¶
This command is used to request the number of association groups that this node supports.
\requirement{CC:008E.02.05.11.001}{0}
The Multi Channel Association Supported Groupings Report Command MUST be returned in response to this command.
\requirement{CC:008E.02.05.11.002}{0}
This command MUST NOT be issued via multicast addressing.
\requirement{CC:008E.02.05.11.003}{0}
A receiving node MUST NOT return a response if this command is received via multicast addressing. The Z-Wave Multicast frame, the broadcast NodeID and the Multi Channel multi-End Point destination are all considered multicast addressing methods.
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|---|---|---|---|---|---|---|---|
Command Class = COMMAND_CLASS_MULTI_CHANNEL_ASSOCIATION (0x8E) |
|||||||
Command = MULTI_CHANNEL_ASSOCIATION_GROUPINGS_GET (0x05) |
|||||||
3.2.33.9. Multi Channel Association Supported Groupings Report Command¶
This command is used to advertise the maximum number of association groups implemented by this node.
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|---|---|---|---|---|---|---|---|
Command Class = COMMAND_CLASS_MULTI_CHANNEL_ASSOCIATION (0x8E) |
|||||||
Command = MULTI_CHANNEL_ASSOCIATION_REMOVE (0x04) |
|||||||
Supported Groupings |
|||||||
Supported Groupings (8 bits)
This field is used to advertise the number of association groups that this node supports.
\requirement{CC:008E.02.06.11.001}{0}
Grouping Identifiers MUST be assigned in a consecutive range starting from 1.
\requirement{CC:008E.02.06.11.002}{0}
The value advertised by this field MUST be the total number of supported association groups; whether associations are managed via the Association Command Class or the Multi Channel Association Command Class.
\requirement{CC:008E.02.06.11.003}{0}
Each of these association groups MUST support NodeID destinations as well as End Point destinations.