LED Bulb#
The Z-Wave LED Bulb application shows an implementation of a remotely controlled color switch. An example is a LED bulb or any other color capable device.
The LED Bulb application is based on:
Role Type | Always On End device (AOS) |
Supporting Device Type | Actuator |
Device Type | Color Switch |
Generic Type | Switch Multilevel |
Specific Type | Color Tunable Multilevel |
Requested security keys | S0, S2_UNAUTHENTICATED, and S2_AUTHENTICATED |
Supported Command Classes#
The LED Bulb application implements mandatory and some optional command classes. The table below lists the supported Command Classes, their version, and their required Security class
Command Class | Version | Required Security Class |
---|---|---|
Association | 2 | Highest granted Security Class |
Association Group Info | 3 | Highest granted Security Class |
Basic | 2 | Highest granted Security Class |
Color Switch | 3 | Highest granted Security Class |
Device Reset Locally | 1 | Highest granted Security Class |
Firmware Update Meta Data | 5 | Highest granted Security Class |
Indicator | 3 | Highest granted Security Class |
Manufacturer Specific | 2 | Highest Granted Security Class |
Multi-Channel Association | 3 | Highest granted Security Class |
Multilevel Switch | 4 | Highest granted Security Class |
Powerlevel | 1 | Highest granted Security Class |
Security 0 | 1 | None |
Security 2 | 1 | None |
Supervision | 1 | None |
Transport Service | 2 | None |
Version | 3 | Highest granted Security Class |
Z-Wave Plus Info | 2 | None |
Basic Command Class Mapping#
The Basic Command Class is mapped according to the table below.
Basic Command | Mapped Command |
---|---|
Basic Set (Value) | Multilevel Switch Set (Value) |
Basic Report (Current Value, Duration) | Multilevel Switch Report (Value, Duration) |
Association Groups#
The following association groups shown in the table below are available for Z-Wave and Z-Wave Long Range respectively.
ID | Name | Node Count | Description |
---|---|---|---|
1 | Lifeline | X | Supports the following command classes:
|
X: For Z-Wave node count is equal to 5 and for Z-Wave Long Range it is 1.
Usage of Buttons and LED Status
To use the sample app, the BRD8029A Button and LEDs Expansion Board must be used. BTN0-BTN3 and LED0-LED3 refer to the buttons and LEDs on the Expansion Board.
The following LEDs and buttons shown in the next table below are used.
Button | Action | Description |
---|---|---|
RST | Press | Resets the firmware of an application (like losing power). All volatile memory will be cleared. |
BTN1 | Press | Enter "learn mode" (sending node info frame) to add/remove the device. Removing the device from a network will reset it. |
Hold for at least 5 seconds and release | Perform a reset to factory default operation of the device, and a Device Reset Locally Notification Command is sent via Lifeline. |
LED | Description | |
---|---|---|
Boards with an RGB LED | BRD2705A | |
LED1 | Blinks with 1 Hz when learn mode is active. Used for Indicator Command Class. | Controlled by CC Color Switch and CC Multilevel Switch (monochrome, brightness only) |
RGB | Controlled by CC Color Switch (colors) and CC Multilevel Switch (brightness) |
Firmware Update#
SDK 7.14.0 is the first SDK, including LED Bulb. When there are new versions of LED Bulb application, backward compatibility notes will be added in this section.
CLI Support#
Please note the zw_cli_common component will modify the power consumption in case of sleeping applications. Like door lock keypad, sensor pir or multilevel sensor. CLI cannot work with sleep mode, after a reset the application stays awake until the user issues the enable_sleeping command. From that point CLI won't work and sleep mode will be reached until the next reset.
Command | Arguments | Description |
---|---|---|
set_learn_mode | Toggling the learn mode functionality. In case the learn mode started, but inclusion does not happen,learn mode will automatically stop after about 30 seconds | |
factory_reset | - | Executing factory reset |
get_dsk | - | Printing out the generated DSK of the device |
get_region | - | Printing out the set region of the application |