Global Sources
EE Times-India
Stay in touch with EE Times India
EE Times-India > RF/Microwave

Developing Z-Wave devices

Posted: 16 Oct 2012     Print Version  Bookmark and Share

Keywords:communication protocol  antenna filter  frequency bands 

Role in the network: controller can built own networks, additionally differentiating between mobile controllers (e.g. remote controls) or static controllers (e.g. gateways)

Power supply model: battery powered with regular wakeup, mains powered, battery powered that can be waken u using a wakeup beam.

Function of the device: switch, dimmer, motor control device, thermostats etc.

The role models of Z-Wave are described in so called Device Classes. The manufacturer needs to choose one device class the products shall fit in. This already defines certain functions and services this device must support. The wireless functions and services of a device are described in so called Command Classes. Command classes are groups of wireless commands that are used to control certain aspects of a device or to deliver data in relation to this aspect.

Command classes are e.g. called Binary switch, Battery, or Motor Control and combine all functions to deal with a binary on/off switch, the batteries status reporting or the control of a motor device. The command classes that are required by choosing a device class are called mandatory command classes. More than 20 Device classes and 100 Command Classes are described in the Z-Wave Standard.

The manufacturer can—and typically does—add additional voluntary command classes. There are no restrictions on what other voluntary command classes are implemented but in case a certain command shall be supported by the device this command class needs to be:

 • Announced in a so called Node Information Frame during the inclusion process
 • Implemented completely and according to the Z-Wave Command Class specification.
The API description of the libraries, the definition of the device classes and the definition of the command classes are therefore the core documents Z-Wave developers need to work with.

Serial interface to hosts
The very same module that is used to build products such as dimmers or switches is also used to interface with other host computers, e.g. PCs. The main interface used for this is the serial interface of the chip.

Series 400 and the soon to be released Series 500 modules have direct USB support. The Series 300 use can convert the provided Serial port to USB by using any number of common Serial-2-USB chips (ftdi, prolific, etc.). They are well supported in all major operating systems and do not cause extra effort for installing device drivers. Adding the USB device will create a new virtual serial device the operating systems Z-Wave application is using (e.g. COM x in Windows or /dev/tty.usbserial for USB sticks utilising the prolific USB-2-Serial chip).

Manufacturers of USB or serial interface devices are free to define their own communication protocol used on this interface. However since the interfacing to a host computer is a common task the SDK already provides a specification that maps certain functions of the Z-Wave library to a serial interface protocol and defines how to exchange data via the serial interface as well.

The SDK also contains some precompiled firmware's that implement this serial interface protocol also referred to as Sigma Designs Serial API. The result is that most of the Z-Wave interface devices such as USB stick etc. just use these pretested and predefined firmware's implementing the Sigma Designs Serial API. Certain vendors however have enhanced and optimised the firmware for the host interface over the serial interface.

On the host side of the serial communication link a software needs to manage the serial interface provided by the virtual serial device. Because the serial interface as recommended by Sigma Designs is simply mapping library functions to the serial interface this interface protocol is quite complex and not straightforward to deal with. Controller code on the host needs to handle various part of the network control and maintain timings and the message queue from and to the Z-Wave transceiver SOC.

Figure 2: The Z-Wave Logo guarantees interoperability.

Sigma again offers sample code how to do this but developers have more options to choose from. In the Internet there are several open source projects implementing the Sigma Designs Serial API, e.g. They have partly reverse engineered the Serial API that is provided as part of the SDK under NDA. However there is no official support of these projects from Sigma Designs. These open source implementations may therefore not completely implement the specification and/or use the latest features of Z-Wave the correct way.

 First Page Previous Page 1 • 2 • 3 • 4 Next Page Last Page

Comment on "Developing Z-Wave devices"
*  You can enter [0] more charecters.
*Verify code:


Visit Asia Webinars to learn about the latest in technology and get practical design tips.


Go to top             Connect on Facebook      Follow us on Twitter      Follow us on Orkut

Back to Top