Send Z-Wave Commands

Functions

When a device is included it is interviewed and “functions” are created which creates an easy interface for sending Z-Wave commands to a device. Not all Z-Wave commands are supported through functions.

Basic command class

A function for basic command class is always created, which allows get/set of a value from 0-255 (the exact functionality depends on the included Z-Wave device). This function is normally found in the settings part of the device, but in case no other functions are created the function for basic command class will instead show up in the control part of the device (the view that is opened when clicking on the device). Reasons for this is either that the interview failed, or that the included Z-Wave device currently is not supported.

It is also always possible to send basic command class messages using the 'basic' command, in command group 'zwave' in Web Terminal.

Send any command

Any Z-Wave command can be sent by using the terminal.

  1. Enter the Web Terminal in the Animus Heart GUI.
  2. Enter Z-Wave command group (see Web Terminal)
  3. Send Z-Wave commands using 'cmd' command. The commands are sent using Z-Wave command class + command + data. Documentation of Z-Wave command classes and commands can be found at official Z-Wave site (section "Command Class Specifications" at http://zwavepublic.com/specifications).

Sending

Syntax of the 'cmd' command is "cmd [-help] <nodeID.endpoint> <commandClass> <command.response> [<value>] ..."

CommandClass, command, and response are either given in decimal/hexadecimal value or the name used in Z-Wave command classes documentation. If no exact match is found the console tries to guess.

// Send command class COMMAND_CLASS_BASIC, command BASIC_SET, value 255 (0xff in hexadecimal), to node 34. (The two commands are equivalent.)
cmd 34 0x20 0x01 0xff
cmd 34 COMMAND_CLASS_BASIC BASIC_SET 255

// Send command class COMMAND_CLASS_BASIC, command BASIC_GET, expecting a BASIC_REPORT in response, to endpoint 2 of node 35. (The two commands are equivalent.)
cmd 35.2 COMMAND_CLASS_BASIC BASIC_GET.BASIC_REPORT
cmd 35.2 basic get.report

Receiving

When sending a command it is possible to tell the the Heart to expect a command (of the same command class) in response. If a response is received before the console times out the response is printed to the console, otherwise it it printed to the log when (if) it arrives. (Note that the received message might be a network timeout message).

The responses are pretty-printed to the console. If this does not show all message values it is possible to change how they are printed by using

// Output in raw hexadecimal values
settings output raw
// Pretty-printed output
settings output parsed
// Output both pretty-printed and raw hexadecimal values
settings output both

It is also possible to change the console timeout

// Set console timeout for receiving responses to 15000 milliseconds
settings timeout 15000

Copyright © Animus Home