Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
<!--
generated-by: tools/pdf2md/convert.py
pymupdf: 1.27.1
source: SDS13781 Z-Wave Application Command Class Specification.pdf
section: "1 Abbreviations"
pages: 21-22
-->
# 1 Abbreviations

| Abbreviation | Explanation |
| --- | --- |
| AMR | Automatic Meter Reading |
| API | Application Programming Interface |
| ASCII | American Standard Code for Information Interchange. An ASCII code is the numerical representation of a character. |
| AV | Audio/Video |
| DHCP | Dynamic Host Configuration Protocol. |
| DNS | Domain Name System |
| DST | Daylight Savings Time |
| HRV | Heat Recovery Ventilation |
| ID | Identifier |
| IP | Internet Protocol |
| IPV4 | Internet Protocol version 4 |
| IPV6 | Internet Protocol version 6 |
| LF | Linefeed character. |
| LSB | Less Significant Bit |
| MSB | Most Significant Bit |
| NIF | Node Information Frame |
| PIR | Pyroelectric Infrared |
| SUC | Static Update Controller |
| TZO | Time Zone Offset |
| Unicode | Unicode is a standard for encoding of characters. (http://www.unicode.org/) |
| UTC | Coordinated Universal Time (called Greenwich Mean Time (GMT) before 1972) |
| WMC | Windows Vista Media Center and Media Center 2005 remote controls |
| Z/IP | Z-Wave for IP |
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<!--
generated-by: tools/pdf2md/convert.py
pymupdf: 1.27.1
source: SDS13781-4 Z-Wave Application Command Class Specification.pdf
source: SDS13781 Z-Wave Application Command Class Specification.pdf
section: "2.1 Precedence of definitions"
pages: 22-22
-->
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
<!--
generated-by: tools/pdf2md/convert.py
pymupdf: 1.27.1
source: SDS13781-4 Z-Wave Application Command Class Specification.pdf
source: SDS13781 Z-Wave Application Command Class Specification.pdf
section: "2.2 Terms used in this document"
pages: 22-23
pages: 22-22
-->
# 2.2 Terms used in this document

The key words "MUST", "MUST NOT", "REQUIRED", "SHOULD", "SHOULD NOT", "RECOMMENDED", ["MAY", and "OPTIONAL" in this document MUST be interpreted as described in IETF RFC 2119 [6].](../04-command-class-definitions/04.107-window-covering-command-class-version-1.md#410710-window-covering-stop-level-change-command)
The key words "MUST", "MUST NOT", "REQUIRED", "SHOULD", "SHOULD NOT", "RECOMMENDED", ["MAY", and "OPTIONAL" in this document MUST be interpreted as described in IETF RFC 2119 [6].](../04-command-class-definitions/04.117-window-covering-command-class-version-1.md#411710-window-covering-stop-level-change-command)

[Statements containing the IETF RFC 2119 [6] key words are at times marked with unique requirement](../04-command-class-definitions/04.107-window-covering-command-class-version-1.md#410710-window-covering-stop-level-change-command) numbers in the margin. The requirements numbers have the following syntax: CC:xxxx.xx.xx.xx.xxx with each x being an hexadecimal digit.
[Statements containing the IETF RFC 2119 [6] key words are at times marked with unique requirement](../04-command-class-definitions/04.117-window-covering-command-class-version-1.md#411710-window-covering-stop-level-change-command) numbers in the margin. The requirements numbers have the following syntax: CC:xxxx.xx.xx.xx.xxx with each x being an hexadecimal digit.

This document defines functionality as deprecated or obsoleted.

Expand Down
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
<!--
generated-by: tools/pdf2md/convert.py
pymupdf: 1.27.1
source: SDS13781-4 Z-Wave Application Command Class Specification.pdf
source: SDS13781 Z-Wave Application Command Class Specification.pdf
section: "2 Introduction"
pages: 22-23
pages: 22-22
-->
# 2 Introduction

Commands classes are divided in four categories:

 Application Command Classes  [Management Command Classes [15]](../04-command-class-definitions/04.107-window-covering-command-class-version-1.md#410710-window-covering-stop-level-change-command)  [Transport-Encapsulation Command Classes [14]](../04-command-class-definitions/04.107-window-covering-command-class-version-1.md#410710-window-covering-stop-level-change-command)  [Network-Protocol Command Classes [16]](../04-command-class-definitions/04.107-window-covering-command-class-version-1.md#410710-window-covering-stop-level-change-command)
 Application Command Classes  [Management Command Classes [15]](../04-command-class-definitions/04.117-window-covering-command-class-version-1.md#411710-window-covering-stop-level-change-command)  [Transport-Encapsulation Command Classes [14]](../04-command-class-definitions/04.117-window-covering-command-class-version-1.md#411710-window-covering-stop-level-change-command)  [Network-Protocol Command Classes [16]](../04-command-class-definitions/04.117-window-covering-command-class-version-1.md#411710-window-covering-stop-level-change-command)

[The list of defined Command Classes with their associated category is available in [13].](../04-command-class-definitions/04.107-window-covering-command-class-version-1.md#410710-window-covering-stop-level-change-command)
[The list of defined Command Classes with their associated category is available in [13].](../04-command-class-definitions/04.117-window-covering-command-class-version-1.md#411710-window-covering-stop-level-change-command)

This document describes the Command Classes designed for Application specific purposes.

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
<!--
generated-by: tools/pdf2md/convert.py
pymupdf: 1.27.1
source: SDS13781 Z-Wave Application Command Class Specification.pdf
section: "3.1 Overview"
pages: 23-23
-->
# 3.1 Overview

[The Device Class specification [1] and Z-Wave Plus Device Type [10], [22] specification indicate](../04-command-class-definitions/04.117-window-covering-command-class-version-1.md#411710-window-covering-stop-level-change-command) combinations of command classes which MUST be supported for a particular product class or type.
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
<!--
generated-by: tools/pdf2md/convert.py
pymupdf: 1.27.1
source: SDS13781 Z-Wave Application Command Class Specification.pdf
section: "3.2 Command class format"
pages: 23-25
-->
# 3.2 Command class format

## 3.2.1 Frame format

All commands classes have a common header consisting of a Command Class identifier and a Command identifier. Each command can have from zero to N bytes of command data. The bit numbering starts at zero for the least significant bit. LSB is denoted as ‘Bit 0’ and MSB is denoted as ‘Bit 7 throughout the document.

LSB and MSB notations are also used for multi bytes fields, indicating which byte is the most significant.

[Figure 1, Generic command format and Figure 2, Generic extended command format below show the](03.02-command-class-format.md#321-frame-format) generic command frame for the two possible formats:

| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| --- | --- | --- | --- | --- | --- | --- | --- |
| Command Class (0x20..0xEE) | | | | | | | |
| Command | | | | | | | |
| Command Data 1 | | | | | | | |
| … | | | | | | | |
| Command Data N | | | | | | | |

Figure 1, Generic command format

| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| --- | --- | --- | --- | --- | --- | --- | --- |
| Command Class MSB (0xF1..0xFF) | | | | | | | |
| Command Class LSB (0x00..0xFF) | | | | | | | |
| Command | | | | | | | |
| Command Data 1 | | | | | | | |
| … | | | | | | | |
| Command Data N | | | | | | | |

Figure 2, Generic extended command format

### 3.2.1.1 Command class

[The Command Class identifier range is shown in Table 1, Command Class identifier range.](03.02-command-class-format.md#3211-command-class)

Table 1, Command Class identifier range

| Command Class | Description |
| --- | --- |
| 0x00 | No Operation. Used by Z-Wave Protocol. MAY be used by the application. |
| 0x01..0x1F | Reserved for the Z-Wave protocol |
| 0x20..0xEE | Application Command Classes |
| 0xEF | Support/Control Mark |
| 0xF0 | Non interoperable |
| 0xF100 | Security Mark |
| 0xF101..0xFFFF | Extended Application Command Classes (2 byte-long Command Class identifier) |

0x00 No Operation. Used by Z-Wave Protocol. MAY be used by the application. CC:0000.00.00.13.001

A Command Class can contain up to 255 different Commands. If the Command Class field is in the range 0xF1..0xFF, the Command Class identifier is therefore 2 bytes long. This allows for future extensions of the Command Classes and provides the possibility of having more than 4000 Command Classes.

### 3.2.1.2 Command

The command field contains the specific command indicating a node how to parse and interpret the command data. The command field length is always 1 byte.

### 3.2.1.3 Command data (N bytes)

The command data field contains data related to the command. The description for the command data is defined in each individual command.

Simple commands, such as Get commands, usually contain no command data. Other commands, such as Set or Report commands can contain several bytes of command data.

## 3.2.2 Command class versioning

All command classes have a version number. The following rules apply to avoid interoperability issues when introducing the same Command Class with different versions:

 A node MUST NOT discard a frame based on the length field. A receiving node MUST use the Command Class identifier and the Command identifier to interpret the application frame. This enables a device, which supports version 1 of a Command Class to interpret the version 1 part of a received version 2 of the command.

 All implementations of a Command Class version higher than 1 MUST initialize all parameters associated with the version higher than 1. Thereby a node implementing the version 2 of a Command Class can interpret a version 1 received Command.

 CC:0000.00.00.11.004 A device supporting a Command Class having a version higher than 1 MUST support the Version [Command Class [15] to be able to identify the supported version. If a node does not support](../04-command-class-definitions/04.117-window-covering-command-class-version-1.md#411710-window-covering-stop-level-change-command) the Version Command Class at its highest security level, it can be assumed that all Command Classes version are equal to 1.

 It is allowed to certify nodes supporting an older version of a Command Class despite a newer version exists as long as the generic/specific device specification does not require a specific version implemented.
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<!--
generated-by: tools/pdf2md/convert.py
pymupdf: 1.27.1
source: SDS13781-4 Z-Wave Application Command Class Specification.pdf
source: SDS13781 Z-Wave Application Command Class Specification.pdf
section: "3.3 Controlled and Supported Command Classes"
pages: 25-25
-->
Expand All @@ -11,6 +11,6 @@ A node can support and/or control a given Command Class.

If a Command Class is supported: The node implements all the Command Class functionalities and can be set and read back by other nodes. When a Command Class is supported, it is REQUIRED to implement the whole Command Class.

If a Command Class is controlled: The node implements the ability to interview, read and/or set other nodes supporting the Command Class. Nodes controlling Command Classes MAY use only a subset of the Commands within a Command Class (for example only Set commands). Even if using a Command Class partially for control, the use MUST comply with the Command Class requirements.
If a Command Class is controlled: The node implements the ability to interview, read and/or set other nodes supporting the Command Class. Nodes controlling Command Classes may use only a subset of the Commands within a Command Class (for example only Set commands). Even if using a Command Class partially for control, the use must comply with the Command Class requirements.

For example, a Set Command sent to Association Group destinations is a form of Command Class control.
Loading