User Guide for SILICON LABS models including: 7.1.5.0 Zigbee EmberZNet SDK, 7.1.5.0, Zigbee EmberZNet SDK, EmberZNet SDK
Gecko Software Development Kit (GSDK) - Silicon Labs - Silicon Labs
28 giu 2023 — For information about security updates and notices, see the Security chapter of the Gecko Platform Release notes installed with this.
File Info : application/pdf, 20 Pages, 940.50KB
DocumentDocumentZigbee EmberZNet SDK 7.1.5.0 GA Gecko SDK Suite 4.1 June 28, 2023 Silicon Labs is the vendor of choice for OEMs developing Zigbee networking into their products. The Silicon Labs Zigbee platform is the most integrated, complete, and featurerich Zigbee solution available. Silicon Labs EmberZNet SDK contains Silicon Labs' implementation of the Zigbee stack specification. These release notes cover SDK version(s): 7.1.5.0 released June 28, 2023 (support for EFR32xG21, Revision C and later, plus bug fixes) 7.1.4.0 released January 18, 2023 7.1.3.0 released October 19, 2022 (early access part support only) 7.1.2.0 released September 28, 2022 7.1.1.0 released August 17, 2022 7.1.0.0 released June 8, 2022 KEY FEATURES · 2.4GHz Zigbee Smart Energy support for xG24 · 802.15.4 Signal Identifier and MAC CCA Mode 2 and 3 support for xG24 · Zigbee Green Power Gateway Backup · Updated GCC and IAR Compiler Version · Alpha Concurrent Multiprotocol Zigbee in NCP mode and Open-Thread in RCP mode · Alpha Dynamic Multiprotocol Bluetooth and multi-PAN 802.15.4 in RCP mode Compatibility and Use Notices For information about security updates and notices, see the Security chapter of the Gecko Platform Release notes installed with this SDK or on the TECH DOCS tab on https://www.silabs.com/developers/zigbee-emberznet. Silicon Labs also strongly recommends that you subscribe to Security Advisories for up-to-date information. For instructions, or if you are new to the Zigbee EmberZNet SDK, see Using This Release. Compatible Compilers: IAR Embedded Workbench for ARM (IAR-EWARM) version 9.20.4. · Using wine to build with the IarBuild.exe command line utility or IAR Embedded Workbench GUI on macOS or Linux could result in incorrect files being used due to collisions in wine's hashing algorithm for generating short file names. · Customers on macOS or Linux are advised not to build with IAR outside of Simplicity Studio. Customers who do should carefully verify that the correct files are being used. GCC (The GNU Compiler Collection) version 10.3-2021.10, provided with Simplicity Studio. silabs.com | Building a more connected world. Copyright © 2023 by Silicon Laboratories Zigbee EmberZNet 7.1.5.0 Contents Contents 1 New Items ..................................................................................................................................................................................3 1.1 New Applications.................................................................................................................................................................3 1.2 New Components................................................................................................................................................................3 1.3 New APIs............................................................................................................................................................................3 1.4 New CLI Commands ...........................................................................................................................................................4 1.5 New Tokens........................................................................................................................................................................4 1.6 New Platform Support .........................................................................................................................................................4 1.7 New Documentation ............................................................................................................................................................4 2 Improvements.............................................................................................................................................................................5 2.1 Changed APIs.....................................................................................................................................................................5 2.2 Other Improvements............................................................................................................................................................5 3 Fixed Issues ...............................................................................................................................................................................7 4 Known Issues in the Current Release ........................................................................................................................................10 5 Deprecated Items .....................................................................................................................................................................13 6 Removed Items ........................................................................................................................................................................14 7 Multiprotocol Gateway and RCP................................................................................................................................................15 7.1 New Items.........................................................................................................................................................................15 7.2 Improvements ...................................................................................................................................................................15 7.3 Fixed Issues......................................................................................................................................................................15 7.4 Known Issues in the Current Release ................................................................................................................................17 7.5 Deprecated Items..............................................................................................................................................................17 7.6 Removed Items.................................................................................................................................................................17 8 Using This Release...................................................................................................................................................................18 8.1 Installation and Use...........................................................................................................................................................18 8.2 Security Information ..........................................................................................................................................................18 8.3 Support.............................................................................................................................................................................19 silabs.com | Building a more connected world. Zigbee EmberZNet 7.1.5.0 | 2 1 New Items New Items 1.1 New Applications New in release 7.1.0.0 The Z3GatewayCpc application has been added a host-side application that can send and receive EZSP frames using CPC. This application is meant to work with an NCP application that also uses the CPC feature. This application requires the CPC daemon to be running on the host. CPC setup is described in https://github.com/SiliconLabs/cpc-daemon/blob/main/readme.md. Two Zigbee - NCP + OpenThread RCP applications have been added, one for UART and one for SPI. These applications demonstrate the Zigbee NCP and OpenThread RCP running concurrently using an RTOS. For more information on these applications, see AN1333: Running Zigbee, OpenThread, and Bluetooth Concurrently on a Linux Host with a Multiprotocol RCP. 1.2 New Components New in release 7.1.0.0 Token Interface A token interface component added to allow access to the nvm3 tokens from host. Refer to the New API section for more information. Zigbee EZSP CPC The Zigbee EZSP CPC component has been added. This component satisfies the requirements of the EZSP Common component and is only applicable when creating a host application. The EZSP CPC component provides a means to send EZSP traffic over a Coprocessor Communication (CPC) link. This component is mutually exclusive with the EZSP UART and EZSP SPI components, which handle sending EZSP traffic over a UART or SPI link, respectively. Refer to AN1333: Running Zigbee, OpenThread, and Bluetooth Concurrently on a Linux Host with a Multiprotocol RCP for details of how to configure a system that uses the CPC feature. Any Zigbee host application that uses the Co-processor Communication (CPC) feature to communicate to and from the NCP must not use the NCP bootloading feature as it is present in the Zigbee components. The CPC daemon is responsible for bootloading a new image to the NCP. For more information, see https://github.com/SiliconLabs/cpc-daemon/blob/main/readme.md. . 1.3 New APIs New in release 7.1.0.0 Trust Center Backup Component The new token interface component provides the following four new APIs: · uint8_t emberGetTokenCount(void); · EmberStatus emberGetTokenInfo(uint8_t index, EmberTokenInfo *tokenInfo); · EmberStatus emberGetTokenData(uint32_t token, uint32_t index, EmberTokenData *tokenData); · EmberStatus emberSetTokenData(uint32_t token, uint32_t index, EmberTokenData *tokenData); A new function ( void emberGetRestoredEui64(EmberEUI64 eui64) ) is added to override the EUI64 with the new eui64 token (see below) during power up of the NCP node as part of restore operation. The Trust Center Back up component is updated with a new function emberAfTrustCenterBackupWriteNcpTokenToZigbeedTokens. This reads an NCP token back-up file that was saved during trust center back up operation and updates the Zigbeed tokens. Miscellaneous emberSetRadioIeee802154CcaMode() - A new API has been added to configure the 802.15.4 CCA mode in the radio. See documentation regarding emberSetRadioIeee802154CcaMode. Added a new configuration option to be used in the sl_set_passive_ack_config() API. The new enum for sl_passive_ack_config_enum_t is SL_PASSIVE_ACK_THRESHOLD_WITH_REBROADCAST_ALL_NODES. This configuration is for both originating and relaying (nonoriginating) nodes. All configured nodes check for passive ACKs from minAcksNeeded neighbors. They will not rebroadcast received message if all passive ACKs have been received. silabs.com | Building a more connected world. Zigbee EmberZNet 7.1.5.0 | 3 New Items 1.4 New CLI Commands New in release 7.1.0.0 A new CLI command has been added to configure 802.15.4 CCA mode in the radio. See documentation regarding config-cca-mode. A new CLI command has been added corresponding to the new emberAfTrustCenterBackupWriteNcpTokenToZigbeedTokens() API (see above). 1.5 New Tokens New in release 7.1.0.0 Trust Center Backup A new eui64 token is added to the stack token group to save the EUI64 of the operational network that is being backed up. 1.6 New Platform Support New in release 7.1.5.0 Added support for BRD4195B and BRD4196B. New in release 7.1.1.0 Added support for BRD2703A. New in release 7.1.0.0 Added support for BRD4186, BRD4187, BRD4188, BRD2601 SOC and BRD4319, BRD4316, BRD4317 module radio boards. 1.7 New Documentation All components have documentation available. If you have an issue seeing the documentation when you select the component in Project Configurator, you can find it here: http://docs.silabs.com/zigbee/7.1 New in release 7.1.1.0 AN1389: Running Zigbee Host Applications in a Docker Container (Replacement for removal of Cygwin as a supported windows host platform) AN1384: Over-the-Air Bootload Server and Client Setup for Zigbee SDK 7.0 and Higher (Replacement for AN728) New in release 7.1.0.0 AN1321: Configuring Peripherals for 32 Bit devices with Zigbee 7.0 and Higher AN1385: Supplemental Performance Results for Multi-PAN RCP for OpenThread and Zigbee AN1387: Backing Up and Restoring a Z3 Green Power Combo Gateway silabs.com | Building a more connected world. Zigbee EmberZNet 7.1.5.0 | 4 2 Improvements Improvements 2.1 Changed APIs Changed in release 7.1.0.0 Return type of emberStartScan and ezspStartScan functions has been changed from EmberStatus to sl_status_t. As a result, the EZSP_PROTOCOL_VERSION is now 9. 2.2 Other Improvements Changed in release 7.1.2.0 DynamicMultiprotocolLightMinimal and DynamicMultiprotocolLightSedMinimal are now shown as supported regardless of whether a board has an LCD or has shared button/LED, allowing boards like BRD2703A (which doesn't have a shared button/LED) to see these applications in Simplicity Studio. Changed in release 7.1.1.0 EZSP Protocol Version changed from 8 to 9 in EmberZNet release 7.1.0.0, but was not previously recorded in the 7.1.0.0 release notes. The corresponding note under 7.1.0.0 in Section 2.1 is revised accordingly. Changed in release 7.1.0.0 GreenPower Combo Host Applications The GP Sink Table initialization sequence is changed in host applications that use the Green Power Server cluster and is now called after the NCP is configured. EZSP CPC The Zigbee EZSP protocol is now integrated with the Co-processor Communication (CPC) feature. EZSP frames between the host and NCP can now be transported using CPC as the medium. To this effect, the host-side EZSP CPC component has been added. For more information please refer to the New Components section. Trust Center Backup Component Extended the Trust Center Back up component with additional functions to support backing-up and restoring tokens using the new token interface APIs. Refer to the New API section for more information. OTA Update OTA file search directory is now configurable at runtime using '-d' option in the host application. Power Source in Device Announce Message The EmberZNet stack now allows the MAC Capability field of Device Announce messages to dynamically update power source-related subfields in device announce. Whereas previously Capability field values were derived with respect to the Zigbee Device type (Coordinator, Router, End Device, Sleepy End Device), now the bit indicating whether the device is connected to a main power supply will be updated in response to changes of the ZDO Power Descriptor. When the Power Descriptor is changed (via the emberSetPowerDescriptor API in stack-info.h) the device will check to see if the state of the "On Main Power" subfield of the descriptor has changed with respect to the corresponding field in the Capability field. In the case where the update to the Power Descriptor changes the state of the On Main Power indication, the updated Device Capabilities will be cached in RAM and returned on subsequent field accesses. These values are not persisted across reboot, and it is the responsibility of the application to ensure that the Power Descriptor is kept up to date to reflect the current device state. The long-term guidance for users developing applications with non-standard power configurations (i.e. non-sleepy devices with battery power) is to make use of the ZCL Power Cluster and its associated attributes and commands rather than the stack-level messages and ZDO interfaces. Use of the Cluster interfaces to set and a query Power configuration of devices will likely result in a more consistent experience, and a more straightforward path through device testing and certification. Multi Network and Multi PAN Components silabs.com | Building a more connected world. Zigbee EmberZNet 7.1.5.0 | 5 Improvements The Multi Network Stub and Multi PAN Stub components have been removed. These components are no longer needed by a project. Simplicity Studio will prompt the user to upgrade older project files, which will have the reference to these components removed. Users not utilizing the Multi Network or Multi PAN components will see a drop in flash consumption by the resulting image compared to previous software releases. Miscellaneous Incoming packet handler data now includes the NWK header as well. Type of boolean now changed to bool in the EmberZNet SDK. silabs.com | Building a more connected world. Zigbee EmberZNet 7.1.5.0 | 6 Fixed Issues 3 Fixed Issues Fixed in release 7.1.5.0 ID # 1091792 1159689 Description Fixed emberGetCurrentSecurityState() to return EMBER_NOT_JOINED if the local node is not joined to any network. The returned EmberCurrentSecurityState will contain valid data regardless of the joining status of the node. Fixed spurious frame pending bit set when there is no data pending. Fixed in release 7.1.4.0 ID # 1061830 Description emGpWriteSinkTableEntryToToken() doesn't save the the group id for sinkList.type equal to EMBER_GP_SINK_TYPE_GROUPCAST The gp sink table now stores the group id for the group cast sink type (EMBER_GP_SINK_TYPE_GROUPCAST) in the token. The sink type enumeration is updated to remove the EMBER_GP_SINK_TYPE_SINK_GROUPLIST. Fixed in release 7.1.2.0 ID # 1026790 1036743 1026938 Description Clear Channel Assessment (CCA) has been enabled by default on the Host-RCP architecture. Implemented CLI to support mac retries on the Host-RCP architecture. DMP applications do not fail the trust center link key update process when the key used in the verification is different from the updated key. Fixed in release 7.1.1.0 ID # 494636 693536 709981 748977 756023 821967 822369 833513 833778 841910 843370 843811 845573 848717 Description Fixed an issue where the length of EZSP command responses was not checked before processing. An unexpectedly long response could cause a stack overflow. Fixed an issue where receiving ZDO leave request from a non-parent caused an end device to leave the network. Fixed an issue that prevented FreeRTOS from being used as a kernel on Zigbee-BLE DMP applications. Fixed an issue where SPI-EZSP bootloader was unable to launch rcp-spi-802154 on BRD4158a. Fixed an issue where NCP failed to start after increasing the APS unicast message queue size. Fixed an issue where an end device would be stuck in "EMBER_JOINING_NETWORK" state when one of the candidate networks closed in the middle of the joining process. Fixed an issue on EMBER_AF_PLUGIN_OTA_CLIENT_AUTO_START where the OTA client configuration did not take effect in Zigbee on the component-based framework. Fixed an issue that allowed a router device (Z3Light) to form a centralized network. Fixed an issue that caused the reportAttributes packet to not be sent in some cases. Fixed an issue where SE registration plugin unnecessarily required test harness plugin. Fixed an issue where psa-crypto was enabled by default for gpd-sensor and gpd-switch. We now use RAIL to generate random number for a lower code footprint, but customers can use a stronger random generator by enabling the psa_crypto component, if desired. Fixed an issue where the message sent callback does not fire when the message is fragmented A docker container solution is provided by AN1389: Running Zigbee Host Applications in a Docker Container to demonstrate how to run Zigbee host apps on Windows. Note that this is a replacement for building host apps using Cygwin on Windows. Fixed an issue that made it impossible to set the extension field using ZCL scene CLI. silabs.com | Building a more connected world. Zigbee EmberZNet 7.1.5.0 | 7 Fixed Issues ID # 855059 855066 855111 855153 855168 855177 855185 855829 856047 856155 857679 858626 858628 858769 1019484 1019601 Description Fixed an issue where Simple Metering and Prepayment cluster command's parser functions to service the respective ZCL commands in the Gas Proxy Function component were missing. Fixed an issue where the Simple Metering cluster command's parser functions to service the respective ZCL Commands in Meter Mirror and GBCS Gas Meter components were missing. Fixed the 'print time' CLI command to print UTC time on the console as designed. Fixed missing CLI arguments from 'plugin meter-snapshot-server publish' command. Fixed an issue where the Sleepy Message queue component was not de-queuing the packets due to missing the correct event initialization. Fixed tunnel check/monitoring event in the comms-hub-function component so it activates upon receiving stack status EMBER_NETWORK_UP and becomes inactive upon receiving stack status EMBER_NETWORK_DOWN. Enabled time util CLI commands to print date/time when zigbee_debug_print component is present in the project. All data types of size 3, 5, 6, 7 bytes defined by the ZCL specification in the form of Enum/Bitmap/Int/Uint used to be passed as a string or a hex value inside curly braces by the ZCL CLI. The ZCL CLI has now been updated to pass integers instead. For example: "zcl price pub-billing-period 11223344 100 0 \"40\" 2 1" should now change to "zcl price pub-billing-period 11223344 100 0 3159042 2 1". Here \"40\" was essentially a BITMAP24 which can now just be passed as an integer(3159042) instead. Fixed an issue where Maximum Time to Wait for Events on the gateway support plugin didn't take effect after changing default value. DynamicMultiprotocol minimal application binaries will no longer show up as demo applications. Fixed an issue where EZSP frames were rendered incorrectly on the debug channel. Fixed an issue where the rejoin command used the same argument for both of its parameters. Zigbee RTOS stack task size is now specified directly in bytes instead of converting a value in words into bytes. As a result, the default value of SL_ZIGBEE_OS_STACK_TASK_SIZE has been changed from 1400 to 5600. Fixed an issue where a Z3Gateway process resulted in 90%-100% CPU usage when adding event. Fixed an issue where Legacy HAL watchdog functions caused compilation errors due to undefined symbols when supporting headers were not present. Fixed in release 7.1.0.0 ID # 398694 519731 823888 462074 679417 739044 756571 758183 759023 760176 760785 773136 773651 Description ZCL reporting plugin is modified so that a rarely-occurring exception condition (failure to read a reportable attribute's value; possibly because the attribute's endpoint is disabled) does not result in excess execution cycles, repetitive printing of a debug message, and (for an RTOS configuration) blocking of a lower priority task. Fixed an issue where the throughput plugin occasionally returned an invalid standard deviation by checking for underflow before the subtraction operation. Fixed an issue where a failed scan would not allow network-steering (with optimized scans) state machine to advance states. The Green Power Proxy now forwards the GPDF during commissioning with security failure bit set for a recommissioning GPD with different key type. Fixed the issue that caused emberPacketHandoffIncoming to receive bad index for EMBER_ZIGBEE_PACKET_TYPE_NWK_DATA/EMBER_ZIGBEE_PACKET_TYPE_NWK_COMMAND packets. Fixed an issue where OTA updates have been slow for NCP UART HW applications. The GPD sample has been fixed where it would not work on EFR32MG22 due to a buffer alignment issue. An issue was resolved where the Z3Gateway host application experienced high CPU load. The ZCL Default Response Policy setting has been changed from "always" to "conditional" for the following Zigbee sample applications, consistent with their configurations prior to SDK 4.0.0 / EmberZNet 7.0.0: Z3ColorControlLight, Z3DoorLockWithWwah, Z3LightWithWwah, Z3SleepyDoorLockWithWwah. A buffer assertion issue for incoming malformed packet has been fixed. Fixed issue that caused the raw_packet_send to send incorrect packet. silabs.com | Building a more connected world. Zigbee EmberZNet 7.1.5.0 | 8 Fixed Issues ID # 819344 823604 824310 824289 824895 825777 825960 829115 843369 843370 829602 831183 831270 833726 835380 841300 842020 842155 Description Fixed an issue where a SPI host application appears hung. If the user hits ENTER or inputs characters on the command line, the application proceeds to run. Such a hang prevents the device from going EMBER_NETWORK_UP on its own, with no user stimulus. Fixed an issue where component config did not display or allow configuring support for 'read-modify-write'. An issue was fixed where an AF-based host application that uses the Green Power Server cluster was reset twice due improper NCP and GP Sink Table initialization sequence. The Green Power server and client now set the disable default response flag in ZCL frame header while sending out Green Power commands or responses. Fixed an issue in GPD decommissioning, where the GpPairingConfiguration command will now be issued for sink type group cast. Fixed an issue on the coordinator/router parent, where the parent did not correctly populate the child table with the details of the new joiner if a secure network layer command frame was not received from the joining end device. Fixed an issue where malformed Zigbee packet with invalid destination address causes an assert. Compiler warnings have been fixed in various sample applications. Fixed an issue where `plugin mfglib stream start' CLI command does not select the desired antenna TX mode. Fixed an issue that caused the coordinator to crash upon receiving a trust-center rejoin request after the network is closed for joining. Fixed an issue where the "Radio output power" CMSIS option in the configuration of the network-steering component had an incorrect data type. Fixed an issue where the high-byte of the manufacturer ID was mistakenly parsed as the command ID of the cluster, if manufacturer code was present in the message. Fixed missing Fragmentation component macros to propagate through configuration header. Restored ability to bypass emAfNetworkInit during initialization when EMBER_AF_TC_SWAP_OUT_TEST is defined. Fixed issue where calling `emberStackPowerDown` without the Debug Basic component causes linker errors. Fixed the `network find unused` CLI command for a host application that scans and forms the network. silabs.com | Building a more connected world. Zigbee EmberZNet 7.1.5.0 | 9 Known Issues in the Current Release 4 Known Issues in the Current Release Issues in bold were added since the previous release. If you have missed a release, recent release notes are available on https://www.silabs.com/developers/zigbee-emberznet in the Tech Docs tab. ID # N/A 135649 193492 266341 271644 278063 281832 289569 295498 312291 331438 338151 356937 363162 387750 400418 Description The following apps/components are not supported in this release · Smart Energy multi-MAC switch coordinator · Smart Energy multi-MAC selection · NCP Sleepy · EM4 support Multi-networking can cause APS frame counter confusion between networks. Workaround Features will be enabled in subsequent releases. Use emberAfSecurityInitCallback to add EMBER_NO_FRAME_COUNTER_RESET to EmberInitialSecurityBitmask. emberAfFillCommandGlobalServerToClientConfigureRe porting macro is broken. The filling of buffer creates incorrect command packet. Use the "zcl global send-me-a-report" CLI command instead of the API. Z3 Light sample app has two endpoints that support similar cluster commands, so duplicate responses may be generated for certain commands. No known workaround A device that performs a classic join to a legacy ZLL gateway may eventually leave the network on its own initiative. No known workaround Smart Energy Tunneling plugins have conflicting treatment/usage of address table index. No known workaround Green Power Common plugin incorrectly formats groupList and groupListCount parameters of GP Pairing Configuration frame. No known workaround Network-creator component power level picklist doesn't offer full range of supported values for EFR32 Edit the range <-8..20> specified in the CMSIS comment for EMBER_AF_PLUGIN_NETWORK_CREATOR_RADIO_P OWER in the <sdk>/protocol/zigbee/app/framework/plugin/networkcreator/config/network-creator-config.h file. For example, change to <-26..20>. UART reception sometimes drops bytes under heavy load in Zigbee+BLE dynamic multiprotocol use case. Use hardware flow control or lower the baud rate. EMHAL: The halCommonGetIntxxMillisecondTick functions on Linux hosts currently use the gettimeofday function, which is not guaranteed to be monotonic. If the system time changes, it can cause issues with stack timing. Modify these functions to use clock_gettime with the CLOCK_MONOTONIC source instead. Service discovery may time out too quickly in busy networks. Define EMBER_AF_DISCOVERY_TIMEOUT_QS to customize the timeout period. Initializing NCP with a low packet buffer count value may Use the 0xFF reserved value for packet buffer count to cause corrupt packets. avoid the too-low default value Read/write attribute CLI commands do not support manufacturer-specific ZCL attributes. Some implementations may allow local CLI debug access to display or modify these attributes. Access the attributes from a remote device in the network via ZCL global Read/WriteAttributes commands. There is a bug in emberAfAddAddressTableEntry which could allow for duplicate entries in the address table Under Investigation Issue with Route Table Request formats on end device. Under Investigation A touchlink initiator cannot link to a non-factory-new enddevice target. No known workaround. silabs.com | Building a more connected world. Zigbee EmberZNet 7.1.5.0 | 10 Known Issues in the Current Release ID # 424355 465180 480550 481128 481618 486369 495563 497832 498094 519905 521782 521706 620596 Description A non-factory-new sleepy end device touchlink targetcapable initiator is not able to receive a device information response in certain circumstances. The Coexistence Radio Blocker Optimization item "Enable Runtime Control" may block proper Zigbee operation. The OTA cluster has its own built-in fragmentation method, hence it should not use APS fragmentation. Although, in case APS encryption is enabled it grows the payload of the ImageBlockResponses to a size where the APS fragmentation is activated. This could lead to the OTA process failing. Detailed Reset Cause and crash details should be available by default via the Virtual UART (Serial 0) on NCP platforms when Diagnostics plugin and Virtual UART peripheral are enabled. The "Network Open Time" option of the Network Creator Security plugin may not work as expected when you open network if the time does not match the transient key timeout. If a DynamicMultiProtocolLightSoc forming a new network has child nodes remaining from a network it has left, emberAfGetChildTableSize returns a non-zero value in startIdentifyOnAllChildNodes, causing Tx 66 error messages when addressing the "ghost" children. Joining SPI NCP Sleepy End Device Sample App doesn't short poll, therefore the joining attempt fails at the state of Update TC Link Key. In Network Analyzer the Zigbee Application Support Command Breakdown for the Verify Key Request Frame mistakenly references the part of the payload that indicates the frame Source Address as the Destination Address. In function checkForReportingConfig() in meteringserver.c, the second input parameter of the invoked function emberAfContainsServer() incorrectly references the attribute ID instead of the cluster ID. Spi-NCP may very rarely fail to start up bootloader communication using the 'bootload' CLI command of the ota-client plugin. A duplicated attribute ID is assigned in the altConsumptionMonthAttrIds[] array of the gas-proxyfunxtion plugins in gpf-structured-data.c. Workaround Under Investigation Optional 'Wi-Fi Select' Control of Blocker Optimization should be left "Disabled". No known workaround Since Serial 0 is already initialized in the NCP, customers can enable the emberAfNcpInitCallback in the Zigbee NCP Framework and call the appropriate diagnostic functions (halGetExtendedResetInfo, halGetExtendedResetString, halPrintCrashSummary, halPrintCrashDetails, and halPrintCrashData) in this callback to print this data to Serial 0 for viewing in the Network Analyzer capture log. For an example of how to use these functions, refer to the code included in af-main-soc.c's emberAfMainInit() when EXTENDED_RESET_INFO is defined. Set the Network Open time to the same value as the Transient Key Timeout. Mass-erase the part if possible before creating a new network or programmatically check the child table after leaving the network and delete all children using emberRemoveChild prior to forming a new network. The device that wishes to join should be in Short Poll mode before attempting to join. This mode can be forced by the End Device Support plugin. No known workaround Change the 2nd input parameter from the attribute ID (ZCL_CURRENT_SUMMATION_DELIVERED_ATTRIBUT E_ID) to the cluster ID (ZCL_SIMPLE_METERING_CLUSTER_ID). Restart the bootload process Change the second ZCL_PREVIOUS_MONTH6_ALTERNATIVE_CONSUMPT ION_DELIVERED_ATTRIBUTE_ID to ZCL_PREVIOUS_MONTH7_ALTERNATIVE_CONSUMPT ION_DELIVERED_ATTRIBUTE_ID. NCP SPI Example for BRD4181A (EFR32xGMG21) nWake default pin defined cannot be used as a wake-up pin. Change the default pin for nWake from PD03 to a EM2/3 wake-up-enabled pin in the NCP-SPI Plugin. 621144 GP on/off switch example cannot be compiled for the BRD4183A board. The sample has to be manually modified to use only one button. silabs.com | Building a more connected world. Zigbee EmberZNet 7.1.5.0 | 11 Known Issues in the Current Release ID # 631713 648906 659010 670702 708258 757775 758965 758966 760759 760811 765735 823617 825902 829647 857200 1019961 Description A Zigbee End Device will report address conflicts repeatedly if the plugin "Zigbee PRO Stack Library" is used instead of "Zigbee PRO Leaf Library". emberChildId and emberChildIndex APIs were accidentally removed in EmberZNet 6.8.0.2. Inefficiencies within the Reporting plugin can lead to significant latency based on data write frequency and table size, which may interfere with customer application code, including event timing. Uninitialized value in groups-server.c via addEntryToGroupTable() can create a spurious binding and cause groupcast reporting messages to be sent. All EFR32 parts have a unique RSSI offset. In addition, board design, antennas and enclosure can impact RSSI. ZCL cluster components and ZCL command discovery table are not synchronized. Therefore, when enabling or disabling a ZCL cluster component, implemented commands will not be enabled/disabled in the corresponding ZCL Advanced Configurator command tab. Add "Enable command discovery" CMSIS option in zcl_framework_core Button validation script does not trigger, allowing DMPLight to generate for 4308D In the CPCd configuration, if STDOUT_TRACE and TRACE_TO_FILE are both disabled, a timing issue with CPC causes the Zigbee endpoint to close on some setups. The OTA update fails on Sleepy End Device with enabled Page Request. The watchdog cannot be enabled on MG24 device for Zigbee applications in this release. The router assigned an invalid NodeId(0xFFFE) to joiner device in joining process, which caused the coordinator assert in later communication. emberAfSendUnicastWithCallback() never fires the callback for fragmented messages: When sending a message large enough to require fragmentation with emberAfSendUnicastWithCallback(), the callback is never called. ias-zone-server.c allows for a binding to be created with a "0000000000000000" CIE address and posteriorly does not allow further bindings. Generated Z3Gateway makefile (possibly others) hardcodes "gcc" as CC Workaround Use the"Zigbee PRO Leaf Library" instead of the "Zigbee PRO Stack Library" plugin. Call sl_mac_child_short_id and sl_mac_child_index instead If doing frequent writes, consider checking reporting conditions and sending reports manually rather than using the plugin. Add "binding.clusterId = EMBER_AF_INVALID_CLUSTER_ID;" after "binding.type = EMBER_MULTICAST_BINDING;" When creating a new project, install the RAIL Utility, RSSI component. This feature includes the default RSSI Offset Silabs has measured for each part. This offset can be modified if necessary after RF testing of your complete product. Manually enable/disable discovery for the desired ZCL commands in the ZCL Advanced Configurator. No known workaround Use DMPLight minimal for BRD4308D instead of DMPLight For a short-term workaround, enable traces using either STDOUT_TRACE or TRACE_TO_FILE. Use Block Request instead of Page Request. No known workaround Resolved issue where association, rejoin, and node ID updates may end up with a node being assigned an invalid address. No known workaround No known workaround No known workaround silabs.com | Building a more connected world. Zigbee EmberZNet 7.1.5.0 | 12 5 Deprecated Items None Deprecated Items silabs.com | Building a more connected world. Zigbee EmberZNet 7.1.5.0 | 13 Removed Items 6 Removed Items Removed in release 7.1.0.0 The Multi Network Stub and Multi PAN Stub components have been removed. For further information please refer to the Improvements section. The APIs halStackGetIdxTokenPtrOrData(), halInternalGetIdxTokenPtrOrData(), and sl_token_get_pointer_or_data() are not used and not supported. If there is a situation using them, the more common APIs halCommonGetIndexedToken() or sl_token_get_data() should be used instead. silabs.com | Building a more connected world. Zigbee EmberZNet 7.1.5.0 | 14 7 Multiprotocol Gateway and RCP Multiprotocol Gateway and RCP 7.1 New Items Added in release 7.1.4.0 The Stack API Trace now can be enabled for Zigbeed by setting the debug-level to 4 or 5 in the zigbeed.conf file. Zigbeed stack version as well as build date and time are now printed in the logs. Added in release 7.1.1.0 851653 Added option to start cpcd conditional to a firmware version. Also allows firmware update process to be conditional to a firmware version. (-a/--app-version <version>). Added option to restart cpcd after firmware update. (-r/--restart-cpcd) Added manufacturing library support on a Host-CMP RCP setup. This change allows RF testing on the manufacturing line on a HostCMP RCP setup by sending mfglib EZSP frames from the Z3Gateway host to the RCP. Added 802.15.4 CSL support to the multiprotocol RCP. Added in release 7.1.0.0 A new concurrent multiprotocol configuration is available: Zigbee NCP and OpenThread RCP running concurrently on the EFR32, using the Co-Processor Communication (CPC) architecture. It is released as alpha quality. See AN1333: Running Zigbee, OpenThread, and Bluetooth Concurrently on a Linux Host with a Multiprotocol RCP for details. 7.2 Improvements Changed in release 7.1.0.0 CPC security is now enabled by default in the cpcd.conf file and in the SLCP project files. This means data sent over the serial line between the host and the EFR32 is encrypted. A security commissioning step is required to bind the host to the EFR32. See https://github.com/SiliconLabs/cpc-daemon/blob/main/readme.md for details. For convenience, the run.sh script in app/host/multiprotocol/zigbeed/multiprotocol-container/ includes a -K argument for commissioning cpcd security when using the multiprotocol docker container. The multiprotocol container has been upgraded to use ubuntu 22.04 and BlueZ 5.64. The zigbee_trust_center_backup component now supports migrating from a Zigbee Host + NCP setup to a Zigbee Host + Zigbeed + RCP setup. See AN1333: Running Zigbee, OpenThread, and Bluetooth Concurrently on a Linux Host with a Multiprotocol RCP for details. Zigbeed built from GSDK sources no longer requires the /accept_silabs_msla_file at runtime. Only the Zigbeed binary from the multiprotocol docker container requires it. 7.3 Fixed Issues Fixed in release 7.1.4.0 ID # 829675 1066422 1068429 1068435 1068942 1074172 1074290 Description Fixed bidirectional Green Power commissioning with Z3GatewayGPCombo + Zigbeed + RCP. Fixed an intermittent buffer leak in Zigbeed. Fixed a race condition that could cause the CMP RCP to assert. The CMP RCP now passes compliance test GPP 5.4.1.23. Fixed a leak in the RCP source match table that could prevent zigbee devices from joining. Fixed sending leave request from Zigbeed when receiving a poll from a non-child. Stopped Zigbeed from processing un-acked polls. silabs.com | Building a more connected world. Zigbee EmberZNet 7.1.5.0 | 15 Multiprotocol Gateway and RCP ID # 1074593 1079903 1080482 1081455 Description Fixed issue in which Just-in-time (JIT) messages to sleepy end devices were not sent correctly by the CMP RCP. Fixed a bug in the CMP RCP that could cause SPINEL messages to be dispatched incorrectly, resulting in Zigbeed and OTBR crashing or exiting. Made SPINEL timeout recovery more robust to heavy transmit traffic by the other protocol stack in CMP RCP. Added workaround for non-compliant Zigbee devices that timeout 802.15.4 acks too quickly. To enable the workaround, define NONCOMPLIANT_ACK_TIMING_WORKAROUND. Fixed in release 7.1.2.0 ID # 1025713 1030557 1030557 Description Increased the maximum length of the zigbeed device path from 40 to 4096. Fixed build errors when adding the legacy bootloader interface component to the multiprotocol RCP projects. Fixed a build issue to allow the legacy ember_bootloader_interface component to be added to MG1-based multiprotocol RCP projects, for customers using the legacy Ember bootloader. Also added support for CPCd to bootload devices with the legacy ezsp-spi Ember bootloader. Fixed in release 7.1.1.0 ID # 834191 859224 859301 988216 824100 851331 858153 858503 1019947 Description Fixed cpc-hci-bridge so that it does not consume excessive CPU. Fixed an issue where CPC security was failing during initialization on MG1. Fixed an issue where Thread and Zigbee sleepy end devices failed to join to the RCP on MG1. Fixed issue where Zigbeed failed to run on a 64 bit Raspberry Pi. Fixed an issue where Z3GatewayCPC could not be started more than once without an error. Z3GatewayCpc can reconnect to cpcd service without needing a restart. Fixed a coex component configuration for MG1. Enabled the coex component by default in the multiprotocol RCP images, and fixed a RAM usage issue that prevented building on MG1. Added support for building RCP projects for efr32mg1b and efr32mg1v parts. Fixed in release 7.1.0.0 ID # 760596 811566 817698 822233 829614 830596 831689 Description Reduced the CPU consumption of Zigbeed when it is idle. Fixed an issue where Zigbee sleepy end devices failed to join to an RCP parent. Fixed a Zigbeed crash due to a null buffer in the lower mac layer. Fixed an issue that caused dropped CPC packets over VCOM, especially at higher baud rates. The multi-PAN/multiprotocol 802.15.4 RCP now sets the radio tx power to the maximum of the power levels requested by all 15.4 host applications. This avoids the problem of one application reducing the power and inadvertently causing network connectivity problems for the other application. Fixed an issue where joining a sleepy end device to the multiprotocol RCP caused Z3Gateway to crash in some circumstances. Fixed an issue in Zigbeed that resulted in a fixed pan id and other parameters being chosen when forming a network. silabs.com | Building a more connected world. Zigbee EmberZNet 7.1.5.0 | 16 Multiprotocol Gateway and RCP 7.4 Known Issues in the Current Release ID # 811732 828785 937562 1031607 1032183 1036622 1040127 Description Custom token support is not available when using Zigbeed. There is a known issue with the cpc-hci-bridge that causes the second HCI packet to be dropped if BlueZ sends two HCI packets to the RCP in rapid succession. Bluetoothctl advertise on command fails with rcp-uart802154-blehci app on Raspberry Pi OS 11 with Linux kernel 5.15. The rcp-uart-802154.slcp project is running low on RAM on an MG1 part. Adding components may reduce the heap size below what is needed to support ECDH binding in CPC. Zigbeed does not support EZSP coex commands. There is a problem using cmake to build ot-cli using the multi-PAN RCP. It will be fixed in a future release. CPC security fails to initialize for the rcp-uart-802154 and rcp-spi-802154 projects on mg13 and mg14 series parts. Workaround Support is planned in a future release. A fix is targeted for the next patch release. Use Linux kernel 5.10 or use btmgmt command. A workaround is to disable CPC security via the SL_CPC_SECURITY_ENABLED configuration. Support is planned in a future release. Use the make build target as described in AN1333 section 2.3.2.2. Either disable CPC security, or add the mbedtls_entropy_adc component to the RCP image. 7.5 Deprecated Items None 7.6 Removed Items Removed in release 7.1.0.0 Pre-built ARM binaries for multiprotocol host applications are no longer distributed within the GSDK (cpcd, otbr-agent, zigbeed, Z3Gateway, etc). These should be built from sources on the target platform using the instructions in AN1333: Running Zigbee, OpenThread, and Bluetooth Concurrently on a Linux Host with a Multiprotocol RCP. A copy of sl_cpc.h that was being included in the OpenThread sources as a convenience has been removed. This header file is placed in the standard system location when cpcd is installed. silabs.com | Building a more connected world. Zigbee EmberZNet 7.1.5.0 | 17 Using This Release 8 Using This Release This release contains the following: · Zigbee stack · Zigbee Application Framework · Zigbee Sample Applications For more information about Zigbee and the EmberZNet SDK see UG103.02: Zigbee Fundamentals. If you are a first-time user, see QSG180: Z Zigbee EmberZNet Quick-Start Guide for SDK 7.0 and Higher, for instructions on configuring your development environment, building and flashing a sample application, and documentation references pointing to next steps. 8.1 Installation and Use The Zigbee EmberZNet SDK is provided as part of the Gecko SDK (GSDK), the suite of Silicon Labs SDKs. To quickly get started with the GSDK, install Simplicity Studio 5, which will set up your development environment and walk you through GSDK installation. Simplicity Studio 5 includes everything needed for IoT product development with Silicon Labs devices, including a resource and project launcher, software configuration tools, full IDE with GNU toolchain, and analysis tools. Installation instructions are provided in the online Simplicity Studio 5 User's Guide. Alternatively, Gecko SDK may be installed manually by downloading or cloning the latest from GitHub. See https://github.com/SiliconLabs/gecko_sdk for more information. Simplicity Studio installs the GSDK by default in: · (Windows): C:\Users\<NAME>\SimplicityStudio\SDKs\gecko_sdk · (MacOS): /Users/<NAME>/SimplicityStudio/SDKs/gecko_sdk Documentation specific to the SDK version is installed with the SDK. Additional information can often be found in the knowledge base articles (KBAs). API references and other information about this and earlier releases is available on https://docs.silabs.com/. 8.2 Security Information Secure Vault Integration This version of the stack does not integrate Secure Vault Key Management. Security Advisories To subscribe to Security Advisories, log in to the Silicon Labs customer portal, then select Account Home. Click HOME to go to the portal home page and then click the Manage Notifications tile. Make sure that `Software/Security Advisory Notices & Product Change Notices (PCNs)' is checked, and that you are subscribed at minimum for your platform and protocol. Click Save to save any changes. silabs.com | Building a more connected world. Zigbee EmberZNet 7.1.5.0 | 18 Using This Release 8.3 Support Development Kit customers are eligible for training and technical support. Use the Silicon Laboratories Zigbee web page to obtain information about all Silicon Labs Zigbee products and services, and to sign up for product support. You can contact Silicon Laboratories support at http://www.silabs.com/support. silabs.com | Building a more connected world. Zigbee EmberZNet 7.1.5.0 | 19 Simplicity Studio One-click access to MCU and wireless tools, documentation, software, source code libraries & more. Available for Windows, Mac and Linux! IoT Portfolio www.silabs.com/IoT SW/HW www.silabs.com/simplicity Quality www.silabs.com/quality Support & Community www.silabs.com/community 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 to the product information, specifications, and descriptions herein, and does not give warranties as to the accuracy or completeness of the included information. Without prior notification, Silicon Labs may update product firmware during the manufacturing process for security or reliability reasons. Such changes will not alter the specifications or the performance of the product. Silicon Labs shall have no liability for the consequences of use of the information supplied in this document. This document does not imply or expressly grant any license to design or fabricate any integrated circuits. The products are not designed or authorized to be used within any FDA Class III devices, applications for which FDA premarket approval is required or Life Support Systems 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. Silicon Labs disclaims all express and implied warranties and shall not be responsible or liable for any injuries or damages related to use of a Silicon Labs product in such unauthorized applications. Note: This content may contain offensive terminology that is now obsolete. Silicon Labs is replacing these terms with inclusive language wherever possible. For more information, visit www.silabs.com/about-us/inclusive-lexicon-project Trademark Information Silicon Laboratories Inc.®, Silicon Laboratories®, Silicon Labs®, SiLabs® and the Silicon Labs logo®, Bluegiga®, Bluegiga Logo®, EFM®, EFM32®, EFR, Ember®, Energy Micro, Energy Micro logo and combinations thereof, "the world's most energy friendly microcontrollers", Redpine Signals®, WiSeConnect , n-Link, ThreadArch®, EZLink®, EZRadio®, EZRadioPRO®, Gecko®, Gecko OS, Gecko OS Studio, Precision32®, Simplicity Studio®, Telegesis, the Telegesis Logo®, USBXpress® , Zentri, the Zentri logo and Zentri DMS, Z-Wave®, 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. Wi-Fi is a registered trademark of the Wi-Fi Alliance. 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 www.silabs.com