AN1117: Migrating the Zigbee HA Profile to Zigbee 3.0

Similar documents
Software Release Note

EFM8 Laser Bee Family QSG110: EFM8LB1-SLSTK2030A Quick Start Guide

AN1143: Using Micrium OS with Silicon Labs Thread

Date CET Initials Name Justification

QSG114: CPT007B SLEX8007A Kit Quick- Start Guide

QSG119: Wizard Gecko WSTK Quick-Start Guide

EFM8 Universal Bee Family EFM8UB2 Errata

UG345: Si72xx Eval Kit User's Guide

QSG144: CP2615-EK2 Quick-Start Guide

AN999: WT32i Current Consumption

EFM32 Happy Gecko Family EFM32HG-SLSTK3400A Quick-Start Guide

QSG123: CP2102N Evaluation Kit Quick- Start Guide

Translate HCSL to LVPECL, LVDS or CML levels Reduce Power Consumption Simplify BOM AVL. silabs.com Building a more connected world. Rev. 0.

EFM32 Pearl Gecko Family QSG118: EFM32PG1 SLSTK3401A Quick- Start Guide

EFM8 Busy Bee Family EFM8BB2-SLSTK2021A Quick Start Guide

Date CET Initials Name Justification

AN125 INTEGRATING RAISONANCE 8051 TOOLS INTO THE S ILICON LABS IDE. 4. Configure the Tool Chain Integration Dialog. 1. Introduction. 2.

AN1160: Project Collaboration with Simplicity Studio

Humidity/Temp/Optical EVB UG

AN1083: Creating and Using a Secure CoAP Connection with ARM s mbed TLS

EFR32MG13, EFR32BG13 & EFR32FG13 Revision C and Data Sheet Revision 1.0

QSG155: Using the Silicon Labs Dynamic Multiprotocol Demonstration Applications

Bluegiga WF111 Software Driver Release Notes

Router-E and Router-E-PA Wireless Router PRODUCT MANUAL

AN1154: Using Tokens for Non-Volatile Data Storage

AN976: CP2101/2/3/4/9 to CP2102N Porting Guide

UG103.7: Tokens Fundamentals

SMBus. Target Bootloader Firmware. Master Programmer Firmware. Figure 1. Firmware Update Setup

The process also requires the use of the following files found in the Micriµm Quick Start Package for the FRDM-KL46Z:

UG365: GATT Configurator User s Guide

Software Design Specification

µc/probe on the Freescale FRDM-KL05Z without an RTOS

QSG107: SLWSTK6101A Quick-Start Guide

AN0059.1: UART Flow Control

UG322: Isolated CAN Expansion Board User Guide

AN1106: Optimizing Jitter in 10G/40G Data Center Applications

Date CET Initials Name Justification

AN1083: Creating and Using a Secure CoAP Connection with ARM s mbed TLS

ETRX3DVK Development Kit Quick-Start Guide

AN1095: What to Do When the I2C Master Does Not Support Clock Stretching

UG274: Isolated USB Expansion Board User Guide

Software Design Specification

QSG159: EFM32TG11-SLSTK3301A Quick- Start Guide

Figure 1. Precision32 AppBuilder

UG254: CP2102N-MINIEK Kit User's Guide

Software Design Specification

AN0059.0: UART Flow Control

UG366: Bluetooth Mesh Node Configuration User s Guide

CP2110-EK CP2110 EVALUATION KIT USER S GUIDE. 1. Kit Contents. 2. Relevant Documentation. 3. Software Setup

8-Bit MCU C8051F85x/86x Errata

UG313: Thunderboard Sense 2 Bluetooth Low Energy Demo User's Guide

QSG153: Micrium s μc/probe Tool Quick- Start Guide

CP2103-EK CP2103 EVALUATION KIT USER S GUIDE. 1. Kit Contents. 2. Relevant Documentation. 3. Software Setup USBXpress Driver Development Kit

CP2104-EK CP2104 EVALUATION KIT USER S GUIDE. 1. Kit Contents. 2. Relevant Documentation. 3. Software Setup USBXpress Driver Development Kit

QSG126: Bluetooth Developer Studio Quick-Start Guide

UG103.13: Application Development Fundamentals: RAIL

AN724: Designing for Multiple Networks on a Single Zigbee Chip

Figure 1. CP2108 USB-to-Quad UART Bridge Controller Evaluation Board

CP2114 Family CP2114 Errata

FM-DAB-DAB Seamless Linking I2S SRAM. I2C / SPI Host Interface. FLASH Interface MOSI/SDA INTB MISO/A0 RSTB SCLK/SCL SSB/A1 SMODE

Si1146 UVIRSlider2EK Demo Kit

Figure 1. Traditional Biasing and Termination for LVPECL Output Buffers

CP2105-EK CP2105 EVALUATION KIT USER S GUIDE. 1. Kit Contents. 2. Relevant Documentation. 3. Software Setup USBXpress Driver Development Kit

AN706: EZSP-UART Host Interfacing Guide

QSG107: SLWSTK6101A/B Quick-Start Guide

AN1006: Differences Between Si534x/8x Revision B and Revision D Silicon

UG294: CPT213B SLEXP8019A Kit User's Guide

The Si50122-Ax-EVB is used to evaluate the Si50122-Ax. Table 1 shows the device part number and corresponding evaluation board part number.

UG369: Wireless Xpress BGX13P SLEXP8027A Kit User's Guide

EFM8 Busy Bee EFM8BB1 Errata

AN1010: Building a Customized NCP Application

EFM32 EFM32GG11 Giant Gecko Family QSG149: EFM32GG11-SLSTK3701A Quick-Start Guide

Not Recommended for New Designs. Si Data Sheet Errata for Product Revision B

QSG107: SLWSTK6101A/B Quick-Start Guide

AN1139: CP2615 I/O Protocol

AGC. Radio DSP 1 ADC. Synth 0 AGC. Radio DSP 2 ADC. Synth 1. ARM Cortex M3 MCU. SPI/I2C Control Interface NVSSB SMODE SSB SCLK NVSCLK INTB

EFR32 Mighty Gecko Family EFR32MG1 with Integrated Serial Flash Errata History

EFM8 Universal Bee Family EFM8UB1 Errata

Si1140-DK. Si1140 DEVELOPMENT KIT USER S GUIDE. 1. Kit Contents. Figure 1. Si1143 Evaluation Board

UG232: Si88xxxISO-EVB User's Guide

UG271: CP2615-EK2 User's Guide

WT12 EVALUATION KIT DATA SHEET. Monday, 09 September Version 1.7

USBXpress Family CP2102N Errata

BRD4300B Reference Manual MGM111 Mighty Gecko Module

AN324 ADVANCED ENCRYPTION STANDARD RELEVANT DEVICES. 1. Introduction. 2. Implementation Potential Applications Firmware Organization

UG352: Si5391A-A Evaluation Board User's Guide

Programming Options for Si5332

TS9004 Demo Board FEATURES ORDERING INFORMATION

AN1137: Bluetooth Mesh Network Performance

UG235.01: Developing Code with Silicon Labs Connect

AN888: EZR32 Simple TRX Application Quick Start Guide

Si7005USB-DONGLE. EVALUATION DONGLE KIT FOR THE Si7005 TEMPERATURE AND HUMIDITY SENSOR. 1. Introduction. 2. Evaluation Kit Description

EFM32 Zero Gecko EFM32ZG Errata

Wireless Development Suite (WDS) is a software utility used to configure and test the Silicon Labs line of ISM band RFICs.

AN1144: Using Device Management Service with Zigbee Gateways

AN1138: Zigbee Mesh Network Performance

QSG166: WF200 Wi-Fi Development Kit Quick Start Guide

AN888: EZR32 Quick Start Guide

μc/probe on the element14 BeagleBone Black

AN1053: Bluetooth Device Firmware Update over UART for EFR32xG1 and BGM11x Series Products

Transcription:

AN1117: Migrating the Zigbee HA Profile to Zigbee 3.0 This document is provided to assist developers who are migrating their Zigbee HA projects to Zigbee 3.0. It discusses the specifics of changing configurations to Zigbee 3.0. It then discusses the configuration required for interoperability with legacy devices and networks. KEY POINTS Migrating the EmberZNet Stack Updating ZCL Clusters New and removed plugins Generation and rebuilding Interoperability silabs.com Building a more connected world. Rev. 0.2

Introduction 1. Introduction Zigbee 3.0 unites most of the different application profiles, such as HA (Home Automation) and ZLL (Zigbee Light Link), into one common application layer. Furthermore, it introduces greater test coverage for product certification, ensuring better interoperability for Zigbee devices in the field. The Zigbee 3.0 document suite contains both revised and completely new material for the Zigbee application specification. For more information, see UG103.02: Zigbee Fundamentals. As of this writing, the Zigbee Smart Energy profile is not included in Zigbee 3.0. This document first describes the changes to the AppBuilder configurations to make an HA profile project into a Zigbee 3.0 project. It then specifically discusses the configuration required for interoperability with legacy devices. silabs.com Building a more connected world. Rev. 0.2 2

Migrating the Zigbee HA Profile to Zigbee 3.0 2. Migrating the Zigbee HA Profile to Zigbee 3.0 This section reviews the differences between legacy and Zigbee 3.0 profiles. The differences are presented by AppBuilder tab. In order to migrate a project you will need to edit configurations as described below. 2.1 EmberZNet Stack The approach to security changed significantly from HA to Zigbee 3.0. Set Security Type to "Zigbee 3.0 Security" as shown in the following figure. Figure 2.1. Security Type Setting 2.2 ZCL Clusters Although the cluster names and application profile ID remain the same when migrating from HA devices and Zigbee 3.0 devices, a new set of ZCL device types from the Lighting & Occupancy ( LO ) working group of Zigbee is now provided to achieve selections of client and server clusters that conform to the Zigbee 3.0 Base Device Behavior Specification. These are selectable in the ZCL Device Type picklist of AppBuilder from the LO devices section and supersede the legacy selections available in the HA devices section. An HA router application normally has at least one endpoint called Primary, as shown in the following figure. Figure 2.2. The ZCL Configuration of an HA Profile silabs.com Building a more connected world. Rev. 0.2 3

Migrating the Zigbee HA Profile to Zigbee 3.0 In contrast, a Zigbee 3.0 router application always has more than one endpoint. The Green Power Combo Basic device is required by the Zigbee 3.0 specification for any application configured as a router or coordinator node type. The easiest way to implement this is to create a separate endpoint as a ZCL device type GP Combo Basic, as shown in the following figure from the Z3 Light example application. Figure 2.3. The ZCL Configuration of a Zigbee 3.0 Profile Having a dedicated endpoint with Zigbee Light Link (ZLL) Commissioning cluster support (such as the Touchlink endpoint in the figure above) allows for the touchlink style of commissioning between a touchlink initiator and a touchlink target, either of which could be present in a legacy ZLL or Zigbee 3.0 network. Touchlink commissioning support is an optional feature for Zigbee 3.0 and is therefore not required or necessarily supported by all networks or devices, but including it in your ZCL configuration gives the most flexibility for commissioning within the Zigbee 3.0 network. Additionally, some lighting devices may wish to take advantage of ZLL-specific extensions to clusters like On/Off, Scenes, Identify, and Color Control. Providing separate endpoints for ZCL controller or switch device types with and without these extensions offers better compatibility among a mix of devices with different capabilities in the field. For example, the Z3 Light SoC example application provides the LO Dimmable Light on endpoint #1 (shown in the figure above) and the LO Extended Color Light device type on endpoint #2. silabs.com Building a more connected world. Rev. 0.2 4

Migrating the Zigbee HA Profile to Zigbee 3.0 2.3 Plugins This section first lists the plugins that you would typically de-select in the HA device profile, and then lists and explains the new Zigbee 3.0 plugins. Plugins to be de-selected in the transition from the HA profile: Identify Feedback EZ-Mode Commissioning Network Find The following plugins are superseded by new plugins that are Zigbee 3.0-compatible. Green Power Library - Provides functionality for Green Power infrastructure devices (mandatory only for router devices). Install Code Library - Provides an initial link key based on an installation code manufacturing token in the device. The key is hashed according to the Zigbee specification and can be used by applications running Smart Energy 1.x profile or Home Automation 1.2 profile. However, note that for Zigbee 3.0 the install code length must be 16 bytes (plus LSB CRC16), as opposed to the variable lengths used by Smart Energy 1.x. See AN1089: Using Installation Codes with Zigbee Devices for instructions on programming these codes. Green Power Client - Implements the client-side functionality of the Green Power cluster. Green Power Common - Provides common functionalities between client and server sides of the Green Power plugins. Green Power Server - Implements the server-side functionality of the Green Power cluster. Scan Dispatch - Supports multiple consumers of the stack 802.15.4 scan results. Find and Bind Target - Provides the functionality for a target device to start identifying on user-defined endpoints. The target device can then act as a target for a finding and binding initiator. See Zigbee 3.0 Base Device Behavior (BDB) specification for more details about Find and Bind. Find and Bind Initiator - Provides the functionality for an initiator device to find devices that are performing the find and bind process for a target, and then optionally attempting to bind with those devices. Zigbee Light Link Library (optional) - The ZLL library provides support for an application running the ZLL profile by generating and processing ZLL touchlink messages. Network Creator (required for a coordinator, optional for a router) - Performs the necessary steps to create a network according to the Base Device Behavior specification. The plugin performs an active scan followed by an energy scan across a primary channel set in order to decide which channel(s) are valid candidates for network formation. If the plugin fails to form a network on any primary channels, it moves to a secondary channel mask. Note that this plugin requires the Network Creator Security plugin, as this plugin will set up the stack to use Zigbee 3.0 security before every attempt at network formation. Routers that want to have the capability to form a network in distributed trust center mode may also include this plugin. Network Creator Security (required when using the Network Creator plugin) - Performs the necessary security initialization to form a Zigbee 3.0-compliant network. Network Steering - Performs the necessary steps to join the network of any Zigbee Profile. It tries first to perform a join using an install code using the Primary Channel Mask, and then the secondary channel mask. If that does not work, it then tries to use the default well-known link key (ZigBeeAlliance09) to join on the primary channel mask, and then the secondary channel mask. Update TC Link Key (required for any joining device) - Provides the functionality to update the trust center link key of a device on a Zigbee R21 network. ZLL Commissioning (required only if supporting touchlinking) - Silicon Labs implementation of the commissioning mechanism used by the Zigbee Light Link profile. If initiating the touchlink process, select the Initiator option in this plugin. ZLL Utility Server Cluster (required only if supporting touchlinking) - Silicon Labs implementation of ZLL Utility functionality, necessary for handling ZLL scan requests on a ZLL Commissioning server endpoint. 2.4 Generation and Rebuilding Once you have completed configuring your project with Zigbee 3.0-compliant settings, you should be able to generate and compile your project. Other steps may be required for full project migration, for example manually rebuilding your project callbacks file or modifying any custom code. silabs.com Building a more connected world. Rev. 0.2 5

Interoperability 3. Interoperability Zigbee 3.0 has been designed to allow for interoperability between Zigbee 3.0 devices and legacy HA and ZLL devices. With proper configuration, ZLL and HA devices can join Zigbee 3.0 networks and, similarly, Zigbee 3.0 devices have the functionality to join legacy networks operating with either ZLL or HA networking. 3.1 Zigbee 3.0 Devices on ZLL or HA Networks Zigbee 3.0 devices contain the profiles necessary to join with HA and ZLL networks. Zigbee 3.0 network principles are the same as with HA networks. To join an HA network, program the Zigbee 3.0 device with the Zigbee default link key, and it will join in the same manner as any HA device. To join a ZLL network, configure the Zigbee 3.0 device to support touchlinking, which requires enabling the ZLL Commissioning client and server clusters for at least one endpoint, as described in section 2.2 ZCL Clusters, and then enabling both the ZLL Commissioning plugin with the Link Initiator option enabled, and the Zigbee Light Link Library plugin. For devices that will be the targets of touchlink commissioning rather than the initiators, the Link Initiator option in the ZLL Commissioning plugin should remain unchecked, and the ZLL Utility Server plugin should be enabled. Note that we only include the certification test keys (not to be used in production) in our software release. To obtain ZLL production keys, please contact the Zigbee Alliance. 3.2 Legacy Devices on Zigbee 3.0 Networks ZLL touchlinking is provided as an optional mode of network security within Zigbee 3.0. As long ZLL touchlinking is allowed as a policy within the Zigbee 3.0 network, ZLL devices can join it. To allow HA devices to join a Zigbee 3.0 network, implement both the HA profile for networking and the Zigbee default link key on the network. The HA device can then join with a standard HA-style join. Using a default link key makes the Zigbee 3.0 network vulnerable to a number of security threats. These security issues must be explored and carefully considered before deciding on the path to take within a Zigbee 3.0 application. Some options include the following: Using the default link key as the primary link key within the network. This solves any HA interoperability issues, but introduces the vulnerabilities that Zigbee 3.0 security was designed to prevent. Using the default link key as a transient link key (a link key with a timeout, after which it will no longer work). This allows HA devices to join a network in a small window, minimizing security vulnerabilities but can create problems. If a legacy device associates using the default link key and then detaches from the network, it will not be able to rejoin using an unsecured rejoin. Also, legacy devices may not be programmed to update their link key. silabs.com Building a more connected world. Rev. 0.2 6

Smart. Connected. Energy-Friendly. Products www.silabs.com/products Quality www.silabs.com/quality Support and Community community.silabs.com Disclaimer Silicon Labs intends to provide customers with the latest, accurate, and in-depth documentation of all peripherals and modules available for system and software implementers using or intending to use the Silicon Labs products. Characterization data, available modules and peripherals, memory sizes and memory addresses refer to each specific device, and "Typical" parameters provided can and do vary in different applications. Application examples described herein are for illustrative purposes only. Silicon Labs reserves the right to make changes without further notice and limitation to product information, specifications, and descriptions herein, and does not give warranties as to the accuracy or completeness of the included information. Silicon Labs shall have no liability for the consequences of use of the information supplied herein. This document does not imply or express copyright licenses granted hereunder to design or fabricate any integrated circuits. The products are not designed or authorized to be used within any Life Support System without the specific written consent of Silicon Labs. A "Life Support System" is any product or system intended to support or sustain life and/or health, which, if it fails, can be reasonably expected to result in significant personal injury or death. Silicon Labs products are not designed or authorized for military applications. Silicon Labs products shall under no circumstances be used in weapons of mass destruction including (but not limited to) nuclear, biological or chemical weapons, or missiles capable of delivering such weapons. Trademark Information Silicon Laboratories Inc., Silicon Laboratories, Silicon Labs, SiLabs and the Silicon Labs logo, Bluegiga, Bluegiga Logo, Clockbuilder, CMEMS, DSPLL, EFM, EFM32, EFR, Ember, Energy Micro, Energy Micro logo and combinations thereof, "the world s most energy friendly microcontrollers", Ember, EZLink, EZRadio, EZRadioPRO, Gecko, ISOmodem, Micrium, Precision32, ProSLIC, Simplicity Studio, SiPHY, Telegesis, the Telegesis Logo, USBXpress, Zentri and others are trademarks or registered trademarks of Silicon Labs. ARM, CORTEX, Cortex-M3 and THUMB are trademarks or registered trademarks of ARM Holdings. Keil is a registered trademark of ARM Limited. All other products or brand names mentioned herein are trademarks of their respective holders. Silicon Laboratories Inc. 400 West Cesar Chavez Austin, TX 78701 USA http://www.silabs.com