ZBOSS library configuration
The ZBOSS stack is distributed as a set of precompiled linkable libraries.
The libraries supports different Zigbee device roles, with each variant having its own configuration. This allows you to scale the application and select the most suitable set of features.
These libraries are used in the Zigbee protocol configuration in the Zigbee R23 add-on for the nRF Connect SDK when defining the Zigbee device role, as described in Mandatory configuration. They are included by the OSIF subsystem, which acts as the linking layer between the ZBOSS stack and the Zigbee R23 add-on. OSIF implements a series of functions used by ZBOSS and is included in the Zigbee subsystem in the Zigbee R23 add-on for the nRF Connect SDK.
For a complete list of the ZBOSS configuration options, see the following files:
zboss/include/osif/libzboss_config.h- Library for Coordinators and Routerszboss/include/osif/libzboss_config.ed.h- Library for End Devices
Link-time optimization (LTO)
The add-on ships two sets of precompiled ZBOSS libraries.
CONFIG_ZIGBEE_ENABLE_TRACES selects which set is linked: when disabled, the release libraries under lib/zboss/lib/ are used; when enabled, the debug libraries under lib/zboss/trace/ are used (see Configuring ZBOSS traces).
The release libraries are built with stack LTO enabled by default.
This is recorded in lib/zboss/include/osif/libzboss_config*.h as CONFIG_ZBOSS_STACK_LTO.
The debug libraries are built without stack LTO; their libzboss_config*.h files do not define CONFIG_ZBOSS_STACK_LTO.
When you link release prebuilts, the add-on enables CONFIG_LTO for the application image based on the selected libzboss_config header.
The application LTO configuration must match the libraries LTO configuration.
Configuration options
In the nRF Connect SDK, you can enable the ZBOSS library using the CONFIG_ZIGBEE_ADD_ON Kconfig option.
Enabling this library is required when configuring the Zigbee protocol in the nRF Connect SDK, for example when testing the available Samples.
To enable additional features in the ZBOSS libraries, you can use the following Kconfig options:
CONFIG_ZIGBEE_GP_CB- With this option enabled, the application can support the Green Power Combo feature, which implements the basic set of Green Power Proxy and Green Power Sink functionalities within a single device. This option can only be enabled for an application that is built from ZBOSS stack sources. It has been added only for evaluation purposes and does not have a dedicated sample.