Protocol Format#
Introduction#
EZSP Frame Format#
The first byte of all EZSP frames is a sequence number. The host should increment the sequence number each time a command is sent to the NCP. The response sent by the NCP uses the sequence number of the command, except when the response is a callback. Callback responses contain the sequence number of the last command seen at the time the callback occurred on the NCP. Starting with EZSP version 8, both Frame Control and Frame ID consist of two bytes.
A summary of the two-byte Frame Control can be illustrated as:
Sequence (1 byte) | Frame Control (2 bytes) | Frame Control (2 bytes) | Frame ID (2 bytes) | Parameters |
---|---|---|---|---|
Low Byte | High Byte |
All Frame IDs are described in detail in tables, from Configuration Frames through Token Interface Frames.
The EZSP Version command is a special command. It is used by the Host to retrieve the EZSP version of the NCP to verify that the Host and NCP are working with the same EZSP version. An NCP will not accept other EZSP commands from the Host until after a Version command is successfully transacted. Because the EZSP frame format has evolved over software releases, the EZSP Version command must be interoperable between different EZSP versions. To support successful execution of a Version command between a Host and NCP that have different EZSP versions, the Version command additionally is executable using a legacy EZSP frame format. For practical purposes, the Version command should be executed using that legacy frame format.
EZSP Version Command – Legacy Frame Format#
The legacy frame format used for the EZSP Version command can be illustrated as:
Sequence (1 byte) | Frame Control (1 byte) | Frame ID (1 byte) | Parameters |
---|
The single Frame Control byte corresponds to the Low Byte of the two-byte Frame Control of the regular frame format (for definitions of the bits).
The 16-bit Version command code 0x0000 is shortened in the single-byte Frame ID of the Version legacy frame format to be 0x00.
Frame Control Summary#
Type | Description |
---|---|
Frame Control Low Byte | |
Frame Control Low Byte | |
Frame Control Low Byte | |
Frame Control Low Byte | |
Frame Control Low Byte | |
Frame Control Low Byte | |
Frame Control High Byte | |
Frame Control High Byte | |
Frame Control High Byte | |
Frame Control High Byte |
Frame Control Low Byte#
Bit | Command | Response |
---|---|---|
7 (MSB) | 0 | 1 |
6 | networkIndex[1] | networkIndex[1] |
5 | networkIndex[0] | networkIndex[0] |
4 | 0 (reserved) | callbackType[1] |
3 | 0 (reserved) | callbackType[0] |
2 | 0 (reserved) | callbackPending |
1 | sleepMode[1] | truncated |
0 (LSB) | sleepMode[0] | overflow |
Sleep Modes#
sleepMode[1] | sleepMode[0] | Description |
---|---|---|
1 | 1 | Reserved |
1 | 0 | Power down |
0 | 1 | Deep sleep |
0 | 0 | Idle |
Overflow Status Bit#
overflow | Description |
---|---|
1 | The NCP ran out of memory since the previous response. |
0 | No memory shortage since the previous response. |
Truncated Status Bit#
truncated | Description |
---|---|
1 | The NCP truncated the current response to avoid exceeding the maximum EZSP frame length. |
0 | The current response was not truncated. |
Callback Pending Status Bit#
callbackPending | Description |
---|---|
1 | A callback is pending on the NCP. If this response is a callback, at least one more callback is available. |
0 | All callbacks have been delivered to the host. |
Callback Types#
callbackType[1] | callbackType[0] | Description |
---|---|---|
1 | 1 | Reserved. |
1 | 0 | (UART interface only) This response is an asynchronous callback. It was not sent in response to a callback command. |
0 | 1 | This response is a synchronous callback. It was sent in response to a callback command. |
0 | 0 | This response is not a callback. |
Extended Frame Control Byte#
Bit | Command | Response |
---|---|---|
7 (MSB) | securityEnabled | securityEnabled |
6 | paddingEnabled | paddingEnabled |
5 | 0 (reserved) | 0 (reserved) |
4 | 0 (reserved) | 0 (reserved) |
3 | 0 (reserved) | 0 (reserved) |
2 | 0 (reserved) | 0 (reserved) |
1 | frameFormatVersion[1] | frameFormatVersion[1] |
0 (LSB) | frameFormatVersion[0] | frameFormatVersion[0] |
Security Enabled Status Bit#
securityEnabled | Description |
---|---|
1 | Security is enabled. |
0 | Security is not enabled. |
Padding Enabled Status Bit#
securityEnabled | Description |
---|---|
1 | Padding is enabled. |
0 | Padding is not enabled. |
Frame Format Version#
frameFormatVersion[1] | frameFormatVersion[0] | Description |
---|---|---|
1 | 1 | Reserved |
1 | 0 | Reserved |
0 | 1 | Version 1 |
0 | 0 | Version 0 |
Type Definitions#
Type | Alias | Description |
---|---|---|
Bool | uint8_t | Boolean type with values true and false. |
sl_zigbee_ezsp_config_id_t | uint8_t | Identifies a configuration value. |
sl_zigbee_ezsp_value_id_t | uint8_t | Identifies a value. |
sl_zigbee_ezsp_extended_value_id_t | uint8_t | Identifies a value based on specified characteristics. Each set of characteristics is unique to that value and is specified during the call to get the extended value. |
sl_zigbee_ezsp_endpoint_flags_t | uint16_t | Flags associated with the endpoint data configured on the NCP. |
EmberConfigTxPowerMode | uint16_t | Values for SL_ZIGBEE_EZSP_CONFIG_TX_POWER_MODE. |
sl_zigbee_ezsp_policy_id_t | uint8_t | Identifies a policy. |
sl_zigbee_ezsp_decision_bitmask_t | uint16_t | This is the policy decision bitmask that controls the trust center decision strategies. The bitmask is modified and extracted from the sl_zigbee_ezsp_decision_id_t for supporting bitmask operations. |
sl_zigbee_ezsp_decision_id_t | uint8_t | Identifies a policy decision. |
sl_zigbee_ezsp_mfg_token_id_t | uint8_t | Manufacturing token IDs used by sl_zigbee_ezsp_get_mfg_token(). |
sl_zigbee_ezsp_status_t | uint8_t | Status values used by EZSP. |
sl_zigbee_af_status_t | uint8_t | A ZCL status. See relevant header files for enumeration and possible values. |
sl_zigbee_event_units_t | uint8_t | Either marks an event as inactive or specifies the units for the event execution time. |
sl_zigbee_node_type_t | uint8_t | The type of the node. |
sl_zigbee_network_status_t | uint8_t | The possible join states for a node. |
sl_zigbee_incoming_message_type_t | uint8_t | Incoming message types. |
sl_zigbee_outgoing_message_type_t | uint8_t | Outgoing message types. |
sl_zigbee_mac_passthrough_type_t | uint8_t | MAC passthrough message type flags. |
sl_zigbee_binding_type_t | uint8_t | Binding types. |
sl_zigbee_aps_option_t | uint16_t | Options to use when sending a message. |
sl_zigbee_ezsp_network_scan_type_t | uint8_t | Network scan types. |
sl_zigbee_join_decision_t | uint8_t | Decision made by the trust center when a node attempts to join. |
sl_zigbee_leave_network_option_t | uint8_t | Use in case zigbee leave network with options. |
sl_zigbee_initial_security_bitmask_t | uint16_t | This is the Initial Security Bitmask that controls the use of various security features. |
sl_zigbee_current_security_bitmask_t | uint16_t | This is the Current Security Bitmask that details the use of various security features. |
sl_zigbee_key_type_t | uint8_t | Describes the type of ZigBee security key. |
sl_zigbee_key_struct_bitmask_t | uint16_t | Describes the presence of valid data within the EmberKeyStruct structure. |
sl_zigbee_device_update_t | uint8_t | The status of the device update. |
sl_zigbee_key_status_t | uint8_t | The status of the attempt to establish a key. |
sl_zigbee_counter_type_t | uint8_t | Defines the events reported to the application by the |
sl_zigbee_join_method_t | uint8_t | The type of method used for joining. |
sl_zigbee_zdo_configuration_flags_t | uint8_t | Flags for controlling which incoming ZDO requests are passed to the application. To see if the application is required to send a ZDO response to an incoming message, the application must check the APS options bitfield within the incomingMessageHandler callback to see if the EMBER_APS_OPTION_ZDO_RESPONSE_REQUIRED flag is set. |
EmberConcentratorType | uint16_t | Type of concentrator. |
sl_zigbee_zll_state_t | uint16_t | ZLL device state identifier. |
sl_zigbee_zll_key_index_t | uint8_t | ZLL key encryption algorithm enumeration. |
sl_zigbee_ezsp_zll_network_operation_t | uint8_t | Differentiates among ZLL network operations. |
sl_zigbee_network_init_bitmask_t | uint16_t | Bitmask options for sli_zigbee_stack_network_init() |
sl_zigbee_multi_phy_nwk_config_t | uint8_t | Network configuration for the desired radio interface for multi-phy network. |
sl_zigbee_duty_cycle_state_t | uint8_t | Duty cycle states. |
sl_zigbee_radio_power_mode_t | uint8_t | Radio power modes. |
sl_zigbee_entropy_source_t | uint8_t | Entropy sources. |
sl_zigbee_sec_man_key_type_t | uint8_t | Key types recognized by Zigbee Security Manager. |
sl_zigbee_sec_man_derived_key_type_t | uint16_t | Derived key types recognized by Zigbee Security Manager. |
sl_zigbee_sec_man_flags_t | uint8_t | Flags for key operations. |
sl_zigbee_leave_request_flags_t | uint8_t | Flags for NWK leave request command. |
sl_802154_short_addr_t | uint16_t | 16-bit ZigBee network address. |
sl_status_t | uint32_t | See sl_status.h for an enumerated list. |
sl_zigbee_gp_status_t | uint8_t | See enumeration in gp-types.h |
sl_802154_pan_id_t | uint16_t | 802.15.4 PAN ID. |
sl_zigbee_multicast_id_t | uint16_t | 16-bit ZigBee multicast group identifier. |
sl_802154_long_addr_t | uint8_t[8] | EUI 64-bit ID (an IEEE address). |
sl_zigbee_mac_interface_id_t | uint8_t | The 8-bit identifier to uniquely identify the interface. |
sl_zigbee_manufacturing_string_t | uint8_t[16] | A 16-byte array for the manufacturing string. |
sl_zigbee_duty_cycle_hecto_pct_t | uint16_t | The percent of duty cycle for a limit. Duty Cycle, Limits, and Thresholds are reported in units of Percent * 100 (i.e. 10000 = 100.00%, 1 = 0.01%). |
sl_zigbee_library_id_t | uint8_t | A library identifier |
sl_zigbee_library_status_t | uint8_t | The presence and status of the Ember library. |
sl_zigbee_gp_security_level_t | uint8_t | The security level of the GPD. |
sl_zigbee_gp_key_type_t | uint8_t | The type of security key to use for the GPD. |
sl_zigbee_gp_proxy_table_entry_status_t | uint8_t | The proxy table entry status |
sl_zigbee_gp_security_frame_counter_t | uint32_t | The security frame counter |
sl_zigbee_gp_sink_table_entry_status_t | uint8_t | The sink table entry status |
Structure Definitions#
Structure | Field | Description |
---|---|---|
sl_zigbee_network_parameters_t | Network parameters. | |
uint8_t[8] extendedPanId | The network's extended PAN identifier. | |
uint16_t panId | The network's PAN identifier. | |
uint8_t radioTxPower | A power setting, in dBm. | |
uint8_t radioChannel | A radio channel. | |
sl_zigbee_join_method_t joinMethod | The method used to initially join the network. | |
sl_802154_short_addr_t nwkManagerId | NWK Manager ID. The ID of the network manager in the current network. This may only be set at joining when using SL_ZIGBEE_USE_CONFIGURED_NWK_STATE as the join method. | |
uint8_t nwkUpdateId | NWK Update ID. The value of the ZigBee nwkUpdateId known by the stack. This is used to determine the newest instance of the network after a PAN ID or channel change. This may only be set at joining when using SL_ZIGBEE_USE_CONFIGURED_NWK_STATE as the join method. | |
uint32_t channels | NWK channel mask. The list of preferred channels that the NWK manager has told this device to use when searching for the network. This may only be set at joining when using SL_ZIGBEE_USE_CONFIGURED_NWK_STATE as the join method. | |
sl_zigbee_alt_mac_config_t | Defines alternate MAC configuration parameters. | |
uint16_t scanDuration | Scan duration over alternate MAC. | |
MacTransmitCallback macTransmit | To register the transmit callback. Called when there is packet to transmit. | |
sl_zigbee_multi_phy_radio_parameter s_t | Radio parameters. | |
int8_t radioTxPower | A power setting, in dBm. | |
uint8_t radioPage | A radio page. | |
uint8_t radioChannel | A radio channel. | |
sl_zigbee_zigbee_network_t | The parameters of a ZigBee network. | |
uint8_t channel | The 802.15.4 channel associated with the network. | |
uint16_t panId | The network's PAN identifier. | |
uint8_t[8] extendedPanId | The network's extended PAN identifier. | |
bool allowingJoin | Whether the network is allowing MAC associations. | |
uint8_t stackProfile | The Stack Profile associated with the network. | |
uint8_t nwkUpdateId | The instance of the Network. | |
sl_zigbee_aps_frame_t | ZigBee APS frame parameters. | |
uint16_t profileId | The application profile ID that describes the format of the message. | |
uint16_t clusterId | The cluster ID for this message. | |
uint8_t sourceEndpoint | The source endpoint. | |
uint8_t destinationEndpoint | The destination endpoint. | |
sl_zigbee_aps_option_t options | A bitmask of options. | |
uint16_t groupId | The group ID for this message, if it is multicast mode. | |
uint8_t sequence | The sequence number. | |
sl_zigbee_binding_table_entry_t | An entry in the binding table. | |
sl_zigbee_binding_type_t type | The type of binding. | |
uint8_t local | The endpoint on the local node. | |
uint16_t clusterId | A cluster ID that matches one from the local endpoint's simple descriptor. This cluster ID is set by the provisioning application to indicate which part an endpoint's functionality is bound to this particular remote node and is used to distinguish between unicast and multicast bindings. Note that a binding can be used to send messages with any cluster ID, not just the one listed in the binding. | |
uint8_t remote | The endpoint on the remote node (specified by identifier). | |
sl_802154_long_addr_t identifier | A 64-bit identifier. This is either the destination EUI64 (for unicasts) or the 64-bit group address (for multicasts). | |
uint8_t networkIndex | The index of the network the binding belongs to. | |
sl_zigbee_multicast_table_entry_t | A multicast table entry indicates that a particular endpoint is a member of a particular multicast group. Only devices with an endpoint in a multicast group will receive messages sent to that multicast group. | |
sl_zigbee_multicast_id_t multicastId | The multicast group ID. | |
uint8_t endpoint | The endpoint that is a member, or 0 if this entry is not in use (the ZDO is not a member of any multicast groups.) | |
uint8_t networkIndex | The network index of the network the entry is related to. | |
sl_zigbee_key_data_t | A 128-bit key. | |
uint8_t[16] contents | The key data. | |
sl_zigbee_certificate_data_t | The implicit certificate used in CBKE. | |
uint8_t[48] contents | The certificate data. | |
sl_zigbee_public_key_data_t | The public key data used in CBKE. | |
uint8_t[22] contents | The public key data. | |
sl_zigbee_private_key_data_t | The private key data used in CBKE. | |
uint8_t[21] contents | The private key data. | |
sl_zigbee_smac_data_t | The Shared Message Authentication Code data used in CBKE. | |
uint8_t[16] contents | The Shared Message Authentication Code data. | |
sl_zigbee_signature_data_t | An ECDSA signature | |
uint8_t[42] contents | The signature data. | |
sl_zigbee_certificate_283k1_data_t | The implicit certificate used in CBKE. | |
uint8_t[74] contents | The 283k1 certificate data. | |
sl_zigbee_public_key_283k1_data_t | The public key data used in CBKE. | |
uint8_t[37] contents | The 283k1 public key data. | |
sl_zigbee_private_key_283k1_data_t | The private key data used in CBKE. | |
uint8_t[36] contents | The 283k1 private key data. | |
sl_zigbee_signature_283k1_data_t | An ECDSA signature | |
uint8_t[72] contents | The 283k1 signature data. | |
sl_zigbee_message_digest_t | The calculated digest of a message | |
uint8_t[16] contents | The calculated digest of a message. | |
sl_zigbee_aes_mmo_hash_context_t | The hash context for an ongoing hash operation. | |
uint8_t[16] result | The result of ongoing the hash operation. | |
uint32_t length | The total length of the data that has been hashed so far. | |
sl_zigbee_beacon_data_t | Beacon data structure. | |
uint8_t channel | The channel of the received beacon. | |
uint8_t lqi | The LQI of the received beacon. | |
int8_t rssi | The RSSI of the received beacon. | |
uint8_t depth | The depth of the received beacon. | |
uint8_t nwkUpdateId | The network update ID of the received beacon. | |
int8_t power | The power level of the received beacon. This field is valid only if the beacon is an enhanced beacon. | |
int8_t parentPriority | The TC connectivity and long uptime from capacity field. | |
sl_802154_pan_id_t panId | The PAN ID of the received beacon. | |
uint8_t[8] extendedPanId | The extended PAN ID of the received beacon. | |
sl_802154_short_addr_t sender | The sender of the received beacon. | |
bool enhanced | Whether or not the beacon is enhanced. | |
bool permitJoin | Whether the beacon is advertising permit join. | |
bool hasCapacity | Whether the beacon is advertising capacity. | |
sl_zigbee_beacon_classification_para ms_t | The parameters related to beacon prioritization. | |
int8_t minRssiForReceivingPkts | The minimum RSSI value for receiving packets that is used in some beacon prioritization algorithms. | |
uint16_t beaconClassificationMask | The beacon classification mask that identifies which beacon prioritization algorithm to pick and defines the relevant parameters. | |
sl_zigbee_neighbor_table_entry_t | A neighbor table entry stores information about the reliability of RF links to and from neighboring nodes. | |
uint16_t shortId | The neighbor's two-byte network id | |
uint8_t averageLqi | An exponentially weighted moving average of the link quality values of incoming packets from this neighbor as reported by the PHY. | |
uint8_t inCost | The incoming cost for this neighbor, computed from the average LQI. Values range from 1 for a good link to 7 for a bad link. | |
uint8_t outCost | The outgoing cost for this neighbor, obtained from the most recently received neighbor exchange message from the neighbor. A value of zero means that a neighbor exchange message from the neighbor has not been received recently enough, or that our id was not present in the most recently received one. | |
uint8_t age | The number of aging periods elapsed since a link status message was last received from this neighbor. The aging period is 16 seconds. | |
sl_802154_long_addr_t longId | The 8-byte EUI64 of the neighbor. | |
sl_zigbee_route_table_entry_t | A route table entry stores information about the next hop along the route to the destination. | |
uint16_t destination | The short id of the destination. A value of 0xFFFF indicates the entry is unused. | |
uint16_t nextHop | The short id of the next hop to this destination. | |
uint8_t status | Indicates whether this entry is active (0), being discovered (1), unused (3), or validating (4). | |
uint8_t age | The number of seconds since this route entry was last used to send a packet. | |
uint8_t concentratorType | Indicates whether this destination is a High RAM Concentrator (2), a Low RAM Concentrator (1), or not a concentrator (0). | |
uint8_t routeRecordState | For a High RAM Concentrator, indicates whether a route record is needed (2), has been sent (1), or is no long needed (0) because a source routed message from the concentrator has been received. | |
sl_zigbee_initial_security_state_t | The security data used to set the configuration for the stack, or the retrieved configuration currently in use. | |
sl_zigbee_initial_security_bitmask_t bitmask | A bitmask indicating the security state used to indicate what the security configuration will be when the device forms or joins the network. | |
sl_zigbee_key_data_t preconfiguredKey | The pre-configured Key data that should be used when forming or joining the network. The security bitmask must be set with the SL_ZIGBEE_HAVE_PRECONFIGURED_KEY bit to indicate that the key contains valid data. | |
sl_zigbee_key_data_t networkKey | The Network Key that should be used by the Trust Center when it forms the network, or the Network Key currently in use by a joined device. The security bitmask must be set with SL_ZIGBEE_HAVE_NETWORK_KEY to indicate that the key contains valid data. | |
uint8_t networkKeySequenceNumber | The sequence number associated with the network key. This is only valid if the SL_ZIGBEE_HAVE_NETWORK_KEY has been set in the security bitmask. | |
sl_802154_long_addr_t preconfiguredTrustCenterEui64 | This is the long address of the trust center on the network that will be joined. It is usually NOT set prior to joining the network and instead it is learned during the joining message exchange. This field is only examined if ::SL_ZIGBEE_HAVE_TRUST_CENTER_EUI64 is set in the sl_zigbee_initial_security_state_t::bitmask. Most devices should clear that bit and leave this field alone. This field must be set when using commissioning mode. | |
sl_zigbee_current_security_state_t | The security options and information currently used by the stack. | |
sl_zigbee_current_security_bitmask_t bitmask | A bitmask indicating the security options currently in use by a device joined in the network. | |
sl_802154_long_addr_t trustCenterLongAddress | The IEEE Address of the Trust Center device. | |
sl_zigbee_key_struct_t | A structure containing a key and its associated data. | |
sl_zigbee_key_struct_bitmask_t bitmask | A bitmask indicating the presence of data within the various fields in the structure. | |
sl_zigbee_key_type_t type | The type of the key. | |
sl_zigbee_key_data_t key | The actual key data. | |
uint32_t outgoingFrameCounter | The outgoing frame counter associated with the key. | |
uint32_t incomingFrameCounter | The frame counter of the partner device associated with the key. | |
uint8_t sequenceNumber | The sequence number associated with the key. | |
sl_802154_long_addr_t partnerEUI64 | The IEEE address of the partner device also in possession of the key. | |
sl_zigbee_network_init_struct_t | Network Initialization parameters. | |
sl_zigbee_network_init_bitmask_t bitmask | Configuration options for network init. | |
sl_zigbee_zll_security_algorithm_data_t | Data associated with the ZLL security algorithm. | |
uint32_t transactionId | Transaction identifier. | |
uint32_t responseId | Response identifier. | |
uint16_t bitmask | Bitmask. | |
sl_zigbee_zll_network_t | The parameters of a ZLL network. | |
sl_zigbee_zigbee_network_t zigbeeNetwork | The parameters of a ZigBee network. | |
sl_zigbee_zll_security_algorithm_data_t securityAlgorithm | Data associated with the ZLL security algorithm. | |
sl_802154_long_addr_t eui64 | Associated EUI64. | |
sl_802154_short_addr_t nodeId | The node id. | |
sl_zigbee_zll_state_t state | The ZLL state. | |
sl_zigbee_node_type_t nodeType | The node type. | |
uint8_t numberSubDevices | The number of sub devices. | |
uint8_t totalGroupIdentifiers | The total number of group identifiers. | |
uint8_t rssiCorrection | RSSI correction value. | |
sl_zigbee_zll_initial_security_state_t | Describes the initial security features and requirements that will be used when forming or joining ZLL networks. | |
uint32_t bitmask | Unused bitmask; reserved for future use. | |
sl_zigbee_zll_key_index_t keyIndex | The key encryption algorithm advertised by the application. | |
sl_zigbee_key_data_t encryptionKey | The encryption key for use by algorithms that require it. | |
sl_zigbee_key_data_t preconfiguredKey | The pre-configured link key used during classical ZigBee commissioning. | |
sl_zigbee_zll_device_info_record_t | Information about a specific ZLL Device. | |
sl_802154_long_addr_t ieeeAddress | EUI64 associated with the device. | |
uint8_t endpointId | Endpoint id. | |
uint16_t profileId | Profile id. | |
uint16_t deviceId | Device id. | |
uint8_t version | Associated version. | |
uint8_t groupIdCount | Number of relevant group ids. | |
sl_zigbee_zll_address_assignment_t | ZLL address assignment data. | |
sl_802154_short_addr_t nodeId | Relevant node id. | |
sl_802154_short_addr_t freeNodeIdMin | Minimum free node id. | |
sl_802154_short_addr_t freeNodeIdMax | Maximum free node id. | |
sl_zigbee_multicast_id_t groupIdMin | Minimum group id. | |
sl_zigbee_multicast_id_t groupIdMax | Maximum group id. | |
sl_zigbee_multicast_id_t freeGroupIdMin | Minimum free group id. | |
sl_zigbee_multicast_id_t freeGroupIdMax | Maximum free group id. | |
sl_zigbee_tok_type_stack_zll_data_t | Public API for ZLL stack data token. | |
uint32_t bitmask | Token bitmask. | |
uint16_t freeNodeIdMin | Minimum free node id. | |
uint16_t freeNodeIdMax | Maximum free node id. | |
uint16_t myGroupIdMin | Local minimum group id. | |
uint16_t freeGroupIdMin | Minimum free group id. | |
uint16_t freeGroupIdMax | Maximum free group id. | |
uint8_t rssiCorrection | RSSI correction value. | |
sl_zigbee_tok_type_stack_zll_security_t | Public API for ZLL stack security token. | |
uint32_t bitmask | Token bitmask. | |
uint8_t keyIndex | Key index. | |
uint8_t[16] encryptionKey | Encryption key. | |
uint8_t[16] preconfiguredKey | Preconfigured key. | |
sl_zigbee_duty_cycle_limits_t | A structure containing duty cycle limit configurations. All limits are absolute, and are required to be as follows: suspLimit > critThresh > limitThresh For example: suspLimit = 250 (2.5%), critThresh = 180 (1.8%), limitThresh 100 (1.00%). | |
sl_zigbee_duty_cycle_hecto_pct_t limitThresh | The Limited Threshold in % * 100 | |
sl_zigbee_duty_cycle_hecto_pct_t critThresh | The Critical Threshold in % * 100. | |
sl_zigbee_duty_cycle_hecto_pct_t suspLimit | The Suspended Limit (LBT) in % * 100. | |
sl_zigbee_per_device_duty_cycle_t | A structure containing per device overall duty cycle consumed (up to the suspend limit). | |
sl_802154_short_addr_t nodeId | Node Id of device whose duty cycle is reported. | |
sl_zigbee_duty_cycle_hecto_pct_t dutyCycleConsumed | Amount of overall duty cycle consumed (up to suspend limit). | |
sl_zigbee_transient_key_data_t | The transient key data structure. | |
sl_802154_long_addr_t eui64 | The IEEE address paired with the transient link key. | |
sl_zigbee_key_data_t keyData | The key data structure matching the transient key. | |
uint32_t incomingFrameCounter | The incoming frame counter associated with this key. | |
sl_zigbee_key_struct_bitmask_t bitmask | This bitmask indicates whether various fields in the structure contain valid data. | |
uint16_t remainingTimeSeconds | The number of seconds remaining before the key is automatically timed out of the transient key table. | |
uint8_t networkIndex | The network index indicates which NWK uses this key. | |
sl_zigbee_child_data_t | A structure containing a child node's data. | |
sl_802154_long_addr_t eui64 | The EUI64 of the child | |
sl_zigbee_node_type_t type | The node type of the child | |
sl_802154_short_addr_t id | The short address of the child | |
uint8_t phy | The phy of the child | |
uint8_t power | The power of the child | |
uint8_t timeout | The timeout of the child | |
sl_zb_sec_man_key_t | A 128-bit key. | |
uint8_t[16] key | The key data. | |
sl_zb_sec_man_context_t | Context for Zigbee Security Manager operations. | |
sl_zb_sec_man_key_type_t core_key_type | The type of key being referenced. | |
uint8_t key_index | The index of the referenced key. | |
sl_zb_sec_man_derived_key_type_t derived_type | The type of key derivation operation to perform on a key. | |
sl_802154_long_addr_t eui64 | The EUI64 associated with this key. | |
uint8_t multi_network_index | Multi-network index. | |
sl_zigbee_sec_man_flags_t flags | Flag bitmask. | |
uint32_t psa_key_alg_permission | Algorithm to use with this key (for PSA APIs) | |
sl_zb_sec_man_network_key_info_t | Metadata for network keys. | |
bool network_key_set | Whether the current network key is set. | |
bool alternate_network_key_set | Whether the alternate network key is set. | |
uint8_t network_key_sequence_number | Current network key sequence number. | |
uint8_t alt_network_key_sequence_number | Alternate network key sequence number. | |
uint32_t network_key_frame_counter | Frame counter for the network key. | |
sl_zb_sec_man_aps_key_metadata_t | Metadata for APS link keys. | |
sl_zigbee_key_struct_bitmask_t bitmask | Bitmask of key properties | |
uint32_t outgoing_frame_counter | Outgoing frame counter. | |
uint32_t incoming_frame_counter | Incoming frame counter. | |
uint16_t ttl_in_seconds | Remaining lifetime (for transient keys). | |
sl_zigbee_multiprotocol_priorities_t | Scheduler priorities for multiprotocol apps. | |
uint8_t backgroundRx | background RX priority | |
uint8_t tx | TX priority | |
uint8_t activeRx | active RX priority | |
sl_zigbee_endpoint_description_t | Description of a particular endpoint. | |
uint16_t profileId | The endpoint's application profile. | |
uint16_t deviceId | The endpoint's device ID within the application profile. | |
uint8_t deviceVersion | The endpoint's device version. | |
uint8_t inputClusterCount | The number of input clusters. | |
uint8_t outputClusterCount | The number of output clusters. | |
sl_zigbee_rx_packet_info_t | Incoming message Information | |
uint16_t sender_short_id | Short ID of the sender of the message. | |
sl_802154_long_addr_t sender_long_id | EUI64 of the sender of the message if the sender chose to this information in the message. The ::SL_ZIGBEE_APS_OPTION_SOURCE_EUI64 bit in the options field of the APS frame of the incoming message indicates that the EUI64 is present in the message. | |
uint8_t binding_index | The index of the entry in the binding table that matches the sender of the message or 0xFF if there is no matching entry. | |
uint8_t address_index | The index of the entry in the address table that matches the sender of the message or 0xFF if there is no matching entry. | |
uint8_t lasy_hop_lqi | Link quality of the node that last relayed the current message. | |
int8_t lasy_hop_rssi | Received signal strength indicator (RSSI) of the node that last relayed the message. | |
uint32_t lasy_hop_timestamp | Timestamp of the moment when Start Frame Delimiter (SFD) was received. | |
sl_zigbee_gp_address_t | A GP address structure. | |
uint8_t[8] id | Contains either a 4-byte source ID or an 8-byte IEEE address, as indicated by the value of the applicationId field. | |
uint8_t applicationId | The GPD Application ID specifying either source ID (0x00) or IEEE address (0x02). | |
uint8_t endpoint | The GPD endpoint. | |
sl_zigbee_gp_sink_list_entry_t | A sink list entry. | |
uint8_t type | The sink list type. | |
sl_802154_long_addr_t sinkEUI | The EUI64 of the target sink. | |
sl_802154_short_addr_t sinkNodeId | The short address of the target sink. | |
sl_zigbee_gp_proxy_table_entry_t | The internal representation of a proxy table entry | |
sl_zigbee_gp_proxy_table_entry_status_ t status | Internal status of the proxy table entry. | |
uint32_t options | The tunneling options (this contains both options and extendedOptions from the spec). | |
sl_zigbee_gp_address_t gpd | The addressing info of the GPD. | |
sl_802154_short_addr_t assignedAlias | The assigned alias for the GPD. | |
uint8_t securityOptions | The security options field. | |
sl_zigbee_gp_security_frame_counter_t gpdSecurityFrameCounter | The security frame counter of the GPD. | |
sl_zigbee_key_data_t gpdKey | The key to use for GPD. | |
sl_zigbee_gp_sink_list_entry_t sinkList[GP_SINK_LIST_ENTRIES] | The list of sinks (hardcoded to 2 which is the spec minimum). | |
uint8_t groupcastRadius | The groupcast radius. | |
uint8_t searchCounter | The search counter. | |
sl_zigbee_gp_sink_table_entry_t | The internal representation of a sink table entry. | |
sl_zigbee_gp_sink_table_entry_status_t status | Internal status of the sink table entry. | |
uint32_t options | The tunneling options (this contains both options and extendedOptions from the spec). | |
sl_zigbee_gp_address_t gpd | The addressing info of the GPD. | |
uint8_t deviceId | The device id for the GPD. | |
sl_zigbee_gp_sink_list_entry_t sinkList[GP_SINK_LIST_ENTRIES] | The list of sinks (hardcoded to 2 which is the spec minimum). | |
sl_802154_short_addr_t assignedAlias | The assigned alias for the GPD. | |
uint8_t groupcastRadius | The groupcast radius. | |
uint8_t securityOptions | The security options field. | |
sl_zigbee_gp_security_frame_counter_t gpdSecurityFrameCounter | ||
sl_zigbee_key_data_t gpdKey | The key to use for GPD. | |
sl_zigbee_token_info_t | Information of a token in the token table. | |
uint32_t nvm3Key | NVM3 key of the token | |
bool isCnt | Token is a counter type | |
bool isIdx | Token is an indexed token | |
uint8_t size | Size of the token | |
uint8_t arraySize | Array size of the token | |
sl_zigbee_token_data_t | Token Data | |
uint32_t size | Token data size in bytes | |
uint8_t[64] data | Token data pointer |
Named Values#
bool | Value | Description |
---|---|---|
false | 0x00 | An alias for zero, used for clarity. |
true | 0x01 | An alias for one, used for clarity. |
sl_zigbee_ezsp_config_id_t | Value | Description |
---|---|---|
SL_ZIGBEE_EZSP_CONFIG_PACKET_BUFFER_HEAP_SIZE | 0x01 | The NCP no longer supports configuration of packet buffer heap at runtime using this parameter. Packet buffer heap space must be configured using the SL_ZIGBEE_PACKET_BUFFER_HEAP_SIZE macro when building the NCP project. |
SL_ZIGBEE_EZSP_CONFIG_NEIGHBOR_TABLE_SIZE | 0x02 | The maximum number of router neighbors the stack can keep track of. A neighbor is a node within radio range. |
SL_ZIGBEE_EZSP_CONFIG_APS_UNICAST_MESSAGE_COUNT | 0x03 | The maximum number of APS retried messages the stack can be transmitting at any time. |
SL_ZIGBEE_EZSP_CONFIG_BINDING_TABLE_SIZE | 0x04 | The maximum number of non-volatile bindings supported by the stack. |
SL_ZIGBEE_EZSP_CONFIG_ADDRESS_TABLE_SIZE | 0x05 | The maximum number of EUI64 to network address associations that the stack can maintain for the application. (Note, the total number of such address associations maintained by the NCP is the sum of the value of this setting and the value of ::SL_ZIGBEE_EZSP_CONFIG_TRUST_CENT ER_ADDRESS_CACHE_SIZE). |
SL_ZIGBEE_EZSP_CONFIG_MULTICAST_TABLE_SIZE | 0x06 | The maximum number of multicast groups that the device may be a member of. |
SL_ZIGBEE_EZSP_CONFIG_ROUTE_TABLE_SIZE | 0x07 | The maximum number of destinations to which a node can route messages. This includes both messages originating at this node and those relayed for others. |
SL_ZIGBEE_EZSP_CONFIG_DISCOVERY_TABLE_SIZE | 0x08 | The number of simultaneous route discoveries that a node will support. |
SL_ZIGBEE_EZSP_CONFIG_STACK_PROFILE | 0x0C | Specifies the stack profile. |
SL_ZIGBEE_EZSP_CONFIG_SECURITY_LEVEL | 0x0D | The security level used for security at the MAC and network layers. The supported values are 0 (no security) and 5 (payload is encrypted and a four-byte MIC is used for authentication). |
SL_ZIGBEE_EZSP_CONFIG_MAX_HOPS | 0x10 | The maximum number of hops for a message. |
SL_ZIGBEE_EZSP_CONFIG_MAX_END_DEVICE_CHILDREN | 0x11 | The maximum number of end device children that a router will support. |
SL_ZIGBEE_EZSP_CONFIG_INDIRECT_TRANSMISSION_TIMEOUT | 0x12 | The maximum amount of time that the MAC will hold a message for indirect transmission to a child. |
SL_ZIGBEE_EZSP_CONFIG_END_DEVICE_POLL_TIMEOUT | 0x13 | The maximum amount of time that an end device child can wait between polls. If no poll is heard within this timeout, then the parent removes the end device from its tables. Value range 0-14. The timeout corresponding to a value of zero is 10 seconds. The timeout corresponding to a nonzero value N is 2^N minutes, ranging from 2^1 = 2 minutes to 2^14 = 16384 minutes. |
SL_ZIGBEE_EZSP_CONFIG_TX_POWER_MODE | 0x17 | Enables boost power mode and/or the alternate transmitter output. |
SL_ZIGBEE_EZSP_CONFIG_DISABLE_RELAY | 0x18 | 0: Allow this node to relay messages. 1: Prevent this node from relaying messages. |
SL_ZIGBEE_EZSP_CONFIG_TRUST_CENTER_ADDRESS_CACHE_S IZE | 0x19 | The maximum number of EUI64 to network address associations that the Trust Center can maintain. These address cache entries are reserved for and reused by the Trust Center when processing device join/rejoin authentications. This cache size limits the number of overlapping joins the Trust Center can process within a narrow time window (e.g. two seconds), and thus should be set to the maximum number of near simultaneous joins the Trust Center is expected to accommodate. (Note, the total number of such address associations maintained by the NCP is the sum of the value of this setting and the value of ::SL_ZIGBEE_EZSP_CONFIG_ADDRESS_TA BLE_SIZE.) |
SL_ZIGBEE_EZSP_CONFIG_SOURCE_ROUTE_TABLE_SIZE | 0x1A | The size of the source route table. |
SL_ZIGBEE_EZSP_CONFIG_FRAGMENT_WINDOW_SIZE | 0x1C | The number of blocks of a fragmented message that can be sent in a single window. |
SL_ZIGBEE_EZSP_CONFIG_FRAGMENT_DELAY_MS | 0x1D | The time the stack will wait (in milliseconds) between sending blocks of a fragmented message. |
SL_ZIGBEE_EZSP_CONFIG_KEY_TABLE_SIZE | 0x1E | The size of the Key Table used for storing individual link keys (if the device is a Trust Center) or Application Link Keys (if the device is a normal node). |
SL_ZIGBEE_EZSP_CONFIG_APS_ACK_TIMEOUT | 0x1F | The APS ACK timeout value. The stack waits this amount of time between resends of APS retried messages. |
SL_ZIGBEE_EZSP_CONFIG_BEACON_JITTER_DURATION | 0x20 | The duration of a beacon jitter, in the units used by the 15.4 scan parameter (((1 << duration) + 1) * 15ms), when responding to a beacon request. |
SL_ZIGBEE_EZSP_CONFIG_PAN_ID_CONFLICT_REPORT_THRESH OLD | 0x22 | The number of PAN id conflict reports that must be received by the network manager within one minute to trigger a PAN id change. |
SL_ZIGBEE_EZSP_CONFIG_REQUEST_KEY_TIMEOUT | 0x24 | The timeout value in minutes for how long the Trust Center or a normal node waits for the ZigBee Request Key to complete. On the Trust Center this controls whether or not the device buffers the request, waiting for a matching pair |
of ZigBee Request Key. If the value is non-zero, the Trust Center buffers and waits for that amount of time. If the value is zero, the Trust Center does not buffer the request and immediately responds to the request. Zero is the most compliant behavior. | ||
SL_ZIGBEE_EZSP_CONFIG_CERTIFICATE_TABLE_SIZE | 0x29 | This value indicates the size of the runtime modifiable certificate table. Normally certificates are stored in MFG tokens but this table can be used to field upgrade devices with new Smart Energy certificates. This value cannot be set, it can only be queried. |
SL_ZIGBEE_EZSP_CONFIG_APPLICATION_ZDO_FLAGS | 0x2A | This is a bitmask that controls which incoming ZDO request messages are passed to the application. The bits are defined in the sl_zigbee_zdo_configuration_flags_t enumeration. To see if the application is required to send a ZDO response in reply to an incoming message, the application must check the APS options bitfield within the incomingMessageHandler callback to see if the SL_ZIGBEE_APS_OPTION_ZDO_RESPONSE_REQUIRED flag is set. |
SL_ZIGBEE_EZSP_CONFIG_BROADCAST_TABLE_SIZE | 0x2B | The maximum number of broadcasts during a single broadcast timeout period. |
SL_ZIGBEE_EZSP_CONFIG_MAC_FILTER_TABLE_SIZE | 0x2C | The size of the MAC filter list table. |
SL_ZIGBEE_EZSP_CONFIG_SUPPORTED_NETWORKS | 0x2D | The number of supported networks. |
SL_ZIGBEE_EZSP_CONFIG_SEND_MULTICASTS_TO_SLEEPY_ADD RESS | 0x2E | Whether multicasts are sent to the RxOnWhenIdle=true address (0xFFFD) or the sleepy broadcast address (0xFFFF). The RxOnWhenIdle=true address is the ZigBee compliant destination for multicasts. |
SL_ZIGBEE_EZSP_CONFIG_ZLL_GROUP_ADDRESSES | 0x2F | ZLL group address initial configuration. |
SL_ZIGBEE_EZSP_CONFIG_ZLL_RSSI_THRESHOLD | 0x30 | ZLL rssi threshold initial configuration. |
SL_ZIGBEE_EZSP_CONFIG_MTORR_FLOW_CONTROL | 0x33 | Toggles the MTORR flow control in the stack. |
SL_ZIGBEE_EZSP_CONFIG_RETRY_QUEUE_SIZE | 0x34 | Setting the retry queue size. Applies to all queues. Default value in the sample applications is 16. |
SL_ZIGBEE_EZSP_CONFIG_NEW_BROADCAST_ENTRY_THRESHOLD | 0x35 | Setting the new broadcast entry threshold. The number (BROADCAST_TABLE_SIZE - NEW_BROADCAST_ENTRY_THRESHOLD) of broadcast table entries are reserved for relaying the broadcast messages originated on other devices. The local device will fail to originate a broadcast message after this threshold is reached. Setting this value to BROADCAST_TABLE_SIZE and greater will effectively kill this limitation. |
SL_ZIGBEE_EZSP_CONFIG_TRANSIENT_KEY_TIMEOUT_S | 0x36 | The length of time, in seconds, that a trust center will store a transient link key that a device can use to join its network. A transient key is added with a call to emberAddTransientLinkKey. After the transient key is added, it will be removed once this amount of time has passed. A joining device will not be able to use that key to join until it is |
added again on the trust center. The default value is 300 seconds, i.e., 5 minutes. | ||
SL_ZIGBEE_EZSP_CONFIG_BROADCAST_MIN_ACKS_NEEDED | 0x37 | The number of passive acknowledgements to record from neighbors before we stop re-transmitting broadcasts |
SL_ZIGBEE_EZSP_CONFIG_TC_REJOINS_USING_WELL_KNOWN_KEY_TIMEOUT_S | 0x38 | The length of time, in seconds, that a trust center will allow a Trust Center (insecure) rejoin for a device that is using the well-known link key. This timeout takes effect once rejoins using the well-known key has been allowed. This command updates the sli_zigbee_allow_tc_rejoins_using_well_known_key_timeout_sec value. |
SL_ZIGBEE_EZSP_CONFIG_CTUNE_VALUE | 0x39 | Valid range of a CTUNE value is 0x0000-0x01FF. Higher order bits (0xFE00) of the 16-bit value are ignored. |
SL_ZIGBEE_EZSP_CONFIG_ASSUME_TC_CONCENTRATOR_TYPE | 0x40 | To configure non trust center node to assume a concentrator type of the trust center it join to, until it receive many-to-one route request from the trust center. For the trust center node, concentrator type is configured from the concentrator plugin. The stack by default assumes trust center be a low RAM concentrator that make other devices send route record to the trust center even without receiving a many-to-one route request. The default concentrator type can be changed by setting appropriate sl_zigbee_assume_trust_center_concentrator_ type_t config value. |
SL_ZIGBEE_EZSP_CONFIG_GP_PROXY_TABLE_SIZE | 0x41 | This is green power proxy table size. This value is read-only and cannot be set at runtime |
SL_ZIGBEE_EZSP_CONFIG_GP_SINK_TABLE_SIZE | 0x42 | This is green power sink table size. This value is read-only and cannot be set at runtime |
SL_ZIGBEE_EZSP_CONFIG_END_DEVICE_CONFIGURATION | 0x43 | This is The configuration advertised by the end device to the parent when joining/rejoining, either SL_ZIGBEE_END_DEVICE_CONFIG_NONE or SL_ZIGBEE_END_DEVICE_CONFIG_PERSI ST_DATA_ON_PARENT. |
sl_zigbee_ezsp_value_id_t | Value | Description |
---|---|---|
SL_ZIGBEE_EZSP_VALUE_TOKEN_STACK_NODE_DATA | 0x00 | The contents of the node data stack token. |
SL_ZIGBEE_EZSP_VALUE_MAC_PASSTHROUGH_FLAGS | 0x01 | The types of MAC passthrough messages that the host wishes to receive. |
SL_ZIGBEE_EZSP_VALUE_EMBERNET_PASSTHROUGH_SOURCE_ ADDRESS | 0x02 | The source address used to filter legacy EmberNet messages when the SL_802154_PASSTHROUGH_EMBERNET_SOURCE flag is set in SL_ZIGBEE_EZSP_VALUE_MAC_PASSTHR OUGH_FLAGS. |
SL_ZIGBEE_EZSP_VALUE_BUFFER_HEAP_FREE_SIZE | 0x03 | The amount in bytes (max 2^16) of available general purpose heap memory |
SL_ZIGBEE_EZSP_VALUE_UART_SYNCH_CALLBACKS | 0x04 | Selects sending synchronous callbacks in ezsp-uart. |
SL_ZIGBEE_EZSP_VALUE_MAXIMUM_INCOMING_TRANSFER_SIZE | 0x05 | The maximum incoming transfer size for the local node. Default value is set to 82 and does not use fragmentation. Sets the value in Node Descriptor. To set, this takes the input of a uint8 array of length 2 where you pass the lower byte at index 0 and upper byte at index 1. |
SL_ZIGBEE_EZSP_VALUE_MAXIMUM_OUTGOING_TRANSFER_SIZ E | 0x06 | The maximum outgoing transfer size for the local node. Default value is set to 82 and does not use fragmentation. Sets the value in Node Descriptor. To set, this takes the input of a uint8 array of length 2 where you pass the lower byte at index 0 and upper byte at index 1. |
SL_ZIGBEE_EZSP_VALUE_STACK_TOKEN_WRITING | 0x07 | A bool indicating whether stack tokens are written to persistent storage as they change. |
SL_ZIGBEE_EZSP_VALUE_STACK_IS_PERFORMING_REJOIN | 0x08 | A read-only value indicating whether the stack is currently performing a rejoin. |
SL_ZIGBEE_EZSP_VALUE_MAC_FILTER_LIST | 0x09 | A list of sl_zigbee_mac_filter_match_data_t values. |
SL_ZIGBEE_EZSP_VALUE_EXTENDED_SECURITY_BITMASK | 0x0A | The Ember Extended Security Bitmask. |
SL_ZIGBEE_EZSP_VALUE_NODE_SHORT_ID | 0x0B | The node short ID. |
SL_ZIGBEE_EZSP_VALUE_DESCRIPTOR_CAPABILITY | 0x0C | The descriptor capability of the local node. Write only. |
SL_ZIGBEE_EZSP_VALUE_STACK_DEVICE_REQUEST_SEQUENCE_NUMBER | 0x0D | The stack device request sequence number of the local node. |
SL_ZIGBEE_EZSP_VALUE_RADIO_HOLD_OFF | 0x0E | Enable or disable radio hold-off. |
SL_ZIGBEE_EZSP_VALUE_ENDPOINT_FLAGS | 0x0F | The flags field associated with the endpoint data. |
SL_ZIGBEE_EZSP_VALUE_MFG_SECURITY_CONFIG | 0x10 | Enable/disable the Mfg security config key settings. |
SL_ZIGBEE_EZSP_VALUE_VERSION_INFO | 0x11 | Retrieves the version information from the stack on the NCP. |
SL_ZIGBEE_EZSP_VALUE_LAST_REJOIN_REASON | 0x13 | This is the reason that the last rejoin took place. This value may only be retrieved, not set. The rejoin may have been initiated by the stack (NCP) or the application (host). If a host initiated a rejoin the reason will be set by default to SL_ZIGBEE_REJOIN_DUE_TO_APP_EVENT_1. If the application wishes to denote its own rejoin reasons it can do so by calling sl_zigbee_ezsp_set_value(EMBER_VALUE_HOST_REJOIN_REASON, SL_ZIGBEE_REJOIN_DUE_TO_APP_EVENT_X). X is a number corresponding to one of the app events defined. If the NCP initiated a rejoin it will record this value internally for retrieval by sl_zigbee_ezsp_get_value(EZSP_VALUE_RE AL_REJOIN_REASON). |
SL_ZIGBEE_EZSP_VALUE_NEXT_ZIGBEE_SEQUENCE_NUMBER | 0x14 | The next ZigBee sequence number. |
SL_ZIGBEE_EZSP_VALUE_CCA_THRESHOLD | 0x15 | CCA energy detect threshold for radio. |
SL_ZIGBEE_EZSP_VALUE_SET_COUNTER_THRESHOLD | 0x17 | The threshold value for a counter |
SL_ZIGBEE_EZSP_VALUE_RESET_COUNTER_THRESHOLDS | 0x18 | Resets all counters thresholds to 0xFF |
SL_ZIGBEE_EZSP_VALUE_CLEAR_COUNTERS | 0x19 | Clears all the counters |
SL_ZIGBEE_EZSP_VALUE_CERTIFICATE_283K1 | 0x1A | The node's new certificate signed by the CA. |
SL_ZIGBEE_EZSP_VALUE_PUBLIC_KEY_283K1 | 0x1B | The Certificate Authority's public key. |
SL_ZIGBEE_EZSP_VALUE_PRIVATE_KEY_283K1 | 0x1C | The node's new static private key. |
SL_ZIGBEE_EZSP_VALUE_NWK_FRAME_COUNTER | 0x23 | The NWK layer security frame counter value |
SL_ZIGBEE_EZSP_VALUE_APS_FRAME_COUNTER | 0x24 | The APS layer security frame counter value. Managed by the stack. Users should not set these unless doing backup and restore. |
SL_ZIGBEE_EZSP_VALUE_RETRY_DEVICE_TYPE | 0x25 | Sets the device type to use on the next rejoin using device type |
SL_ZIGBEE_EZSP_VALUE_ENABLE_R21_BEHAVIOR | 0x29 | Setting this byte enables R21 behavior on the NCP. |
SL_ZIGBEE_EZSP_VALUE_ANTENNA_MODE | 0x30 | Configure the antenna mode(0-don't switch,1-primary,2-secondary,3-TX antenna diversity). |
SL_ZIGBEE_EZSP_VALUE_ENABLE_PTA | 0x31 | Enable or disable packet traffic arbitration. |
SL_ZIGBEE_EZSP_VALUE_PTA_OPTIONS | 0x32 | Set packet traffic arbitration configuration options. |
SL_ZIGBEE_EZSP_VALUE_MFGLIB_OPTIONS | 0x33 | Configure manufacturing library options (0-non-CSMA transmits,1-CSMA transmits). To be used with Manufacturing Library. |
SL_ZIGBEE_EZSP_VALUE_USE_NEGOTIATED_POWER_BY_LPD | 0x34 | Sets the flag to use either negotiated power by link power delta (LPD) or fixed power value provided by user while forming/joining a network for packet transmissions on sub-ghz interface. This is mainly for testing purposes. |
SL_ZIGBEE_EZSP_VALUE_PTA_PWM_OPTIONS | 0x35 | Set packet traffic arbitration PWM options. |
SL_ZIGBEE_EZSP_VALUE_PTA_DIRECTIONAL_PRIORITY_PULSE_ WIDTH | 0x36 | Set packet traffic arbitration directional priority pulse width in microseconds. |
SL_ZIGBEE_EZSP_VALUE_PTA_PHY_SELECT_TIMEOUT | 0x37 | Set packet traffic arbitration phy select timeout(ms). |
SL_ZIGBEE_EZSP_VALUE_ANTENNA_RX_MODE | 0x38 | Configure the RX antenna mode: (0-do not switch; 1-primary; 2-secondary; 3-RX antenna diversity). |
SL_ZIGBEE_EZSP_VALUE_NWK_KEY_TIMEOUT | 0x39 | Configure the timeout to wait for the network key before failing a join. Acceptable timeout range [3,255]. Value is in seconds. |
SL_ZIGBEE_EZSP_VALUE_FORCE_TX_AFTER_FAILED_CCA_ATTE MPTS | 0x3A | The number of failed CSMA attempts due to failed CCA made by the MAC before continuing transmission with CCA disabled. This is the same as calling the sli_zigbee_stack_force_tx_after_failed_cca(ui nt8_t csmaAttempts) API. A value of 0 disables the feature. |
SL_ZIGBEE_EZSP_VALUE_TRANSIENT_KEY_TIMEOUT_S | 0x3B | The length of time, in seconds, that a trust center will store a transient link key that a device can use to join its network. A transient key is added with a call to sli_zigbee_stack_sec_man_import_transient_ key. After the transient key is added, it will be removed once this amount of time has passed. A joining device will not be able to use that key to join until it is added again on the trust center. The default value is 300 seconds (5 minutes). |
SL_ZIGBEE_EZSP_VALUE_COULOMB_COUNTER_USAGE | 0x3C | Cumulative energy usage metric since the last value reset of the coulomb counter plugin. Setting this value will reset the coulomb counter. |
SL_ZIGBEE_EZSP_VALUE_MAX_BEACONS_TO_STORE | 0x3D | When scanning, configure the maximum number of beacons to store in cache. Each beacon consumes on average 32-bytes (+ buffer overhead) in RAM. |
SL_ZIGBEE_EZSP_VALUE_END_DEVICE_TIMEOUT_OPTIONS_MAS K | 0x3E | Set the mask to filter out unacceptable child timeout options on a router. |
SL_ZIGBEE_EZSP_VALUE_END_DEVICE_KEEP_ALIVE_SUPPORT_ MODE | 0x3F | The end device keep-alive mode supported by the parent. |
SL_ZIGBEE_EZSP_VALUE_ACTIVE_RADIO_CONFIG | 0x41 | Return the active radio config. Read only. Values are 0: Default, 1: Antenna Diversity, 2: Co-Existence, 3: Antenna Diversity and Co-Existence. |
SL_ZIGBEE_EZSP_VALUE_NWK_OPEN_DURATION | 0x42 | Return the number of seconds the network will remain open. A return value of 0 indicates that the network is closed. Read only. |
SL_ZIGBEE_EZSP_VALUE_TRANSIENT_DEVICE_TIMEOUT | 0x43 | Timeout in milliseconds to store entries in the transient device table. If the devices are not authenticated before the timeout, the entry shall be purged |
SL_ZIGBEE_EZSP_VALUE_KEY_STORAGE_VERSION | 0x44 | Return information about the key storage on an NCP. Returns 0 if keys are in classic key storage, and 1 if they are located in PSA key storage. Read only. |
SL_ZIGBEE_EZSP_VALUE_DELAYED_JOIN_ACTIVATION | 0x45 | Return activation state about TC Delayed Join on an NCP. A return value of 0 indicates that the feature is not activated. |
SL_ZIGBEE_EZSP_VALUE_MAX_NWK_RETRIES | 0x46 | The maximum number of NWK retries that will be attempted. |
SL_ZIGBEE_EZSP_VALUE_REJOIN_MODE | 0x47 | Policies for allowing/disallowing rejoins. |
sl_zigbee_ezsp_extended_value_id_t | Value | Description |
---|---|---|
SL_ZIGBEE_EZSP_EXTENDED_VALUE_ENDPOINT_FLAGS | 0x00 | The flags field associated with the specified endpoint. |
SL_ZIGBEE_EZSP_EXTENDED_VALUE_LAST_LEAVE_REASON | 0x01 | This is the reason for the node to leave the network as well as the device that told it to leave. The leave reason is the 1st byte of the value while the node ID is the 2nd and 3rd byte. If the leave was caused due to an API call rather than an over the air message, the node ID will be SL_ZIGBEE_UNKNOWN_NODE_ID (0xFFFD). |
SL_ZIGBEE_EZSP_EXTENDED_VALUE_GET_SOURCE_ROUTE_OV ERHEAD | 0x02 | This number of bytes of overhead required in the network frame for source routing to a particular destination. |
sl_zigbee_ezsp_endpoint_flags_t | Value | Description |
---|---|---|
SL_ZIGBEE_EZSP_ENDPOINT_DISABLED | 0x00 | Indicates that the endpoint is disabled and NOT discoverable via ZDO. |
SL_ZIGBEE_EZSP_ENDPOINT_ENABLED | 0x01 | Indicates that the endpoint is enabled and discoverable via ZDO. |
EmberConfigTxPowerMode | Value | Description |
---|---|---|
SL_ZIGBEE_TX_POWER_MODE_DEFAULT | 0x00 | Normal power mode and bi-directional RF transmitter output. |
SL_ZIGBEE_TX_POWER_MODE_BOOST | 0x01 | Enable boost power mode. This is a high-performance radio mode which offers increased receive sensitivity and transmit power at the cost of an increase in power consumption. |
SL_ZIGBEE_TX_POWER_MODE_ALTERNATE | 0x02 | Enable the alternate transmitter output. This allows for simplified connection to an external power amplifier via the RF_TX_ALT_P and RF_TX_ALT_N pins. |
SL_ZIGBEE_TX_POWER_MODE_BOOST_AND_ALTERNATE | 0x03 | Enable both boost mode and the alternate transmitter output. |
sl_zigbee_ezsp_policy_id_t | Value | Description |
---|---|---|
EZSP_TRUST_CENTER_POLICY | 0x00 | Controls trust center behavior. |
L_ZIGBEE_EZSP_TRUST_CENTER_POLICY | 0x00 | Controls trust center behavior. |
SL_ZIGBEE_EZSP_BINDING_MODIFICATION_POLICY | 0x01 | Controls how external binding modification requests are handled. |
SL_ZIGBEE_EZSP_UNICAST_REPLIES_POLICY | 0x02 | Controls whether the Host supplies unicast replies. |
SL_ZIGBEE_EZSP_POLL_HANDLER_POLICY | 0x03 | Controls whether pollHandler callbacks are generated. |
SL_ZIGBEE_EZSP_MESSAGE_CONTENTS_IN_CALLBACK_POLICY | 0x04 | Controls whether the message contents are included in the messageSentHandler callback. |
SL_ZIGBEE_EZSP_TC_KEY_REQUEST_POLICY | 0x05 | Controls whether the Trust Center will respond to Trust Center link key requests. |
SL_ZIGBEE_EZSP_APP_KEY_REQUEST_POLICY | 0x06 | Controls whether the Trust Center will respond to application link key requests. |
SL_ZIGBEE_EZSP_PACKET_VALIDATE_LIBRARY_POLICY | 0x07 | Controls whether ZigBee packets that appear invalid are automatically dropped by the stack. A counter will be incremented when this occurs. |
SL_ZIGBEE_EZSP_ZLL_POLICY | 0x08 | Controls whether the stack will process ZLL messages. |
sl_zigbee_ezsp_decision_bitmask_t | Value | Description |
---|---|---|
SL_ZIGBEE_EZSP_DECISION_BITMASK_DEFAULT_CONFIGURATION | 0x0000 | Disallow joins and rejoins. |
SL_ZIGBEE_EZSP_DECISION_ALLOW_JOINS | 0x0001 | Send the network key to all joining devices. |
SL_ZIGBEE_EZSP_DECISION_ALLOW_UNSECURED_REJOINS | 0x0002 | Send the network key to all rejoining devices. |
SL_ZIGBEE_EZSP_DECISION_SEND_KEY_IN_CLEAR | 0x0004 | Send the network key in the clear. |
SL_ZIGBEE_EZSP_DECISION_IGNORE_UNSECURED_REJOINS | 0x0008 | Do nothing for unsecured rejoins. |
SL_ZIGBEE_EZSP_DECISION_JOINS_USE_INSTALL_CODE_KEY | 0x0010 | Allow joins if there is an entry in the transient key table. |
SL_ZIGBEE_EZSP_DECISION_DEFER_JOINS | 0x0020 | Delay sending the network key to a new joining device. |
sl_zigbee_ezsp_decision_id_t | Value | Description |
---|---|---|
SL_ZIGBEE_EZSP_DISALLOW_BINDING_MODIFICATION | 0x10 | SL_ZIGBEE_EZSP_BINDING_MODIFICATION_POLICY default decision. Do not allow the local binding table to be changed by remote nodes. |
SL_ZIGBEE_EZSP_ALLOW_BINDING_MODIFICATION | 0x11 | SL_ZIGBEE_EZSP_BINDING_MODIFICATION_POLICY decision. Allow remote nodes to change the local binding table. |
SL_ZIGBEE_EZSP_CHECK_BINDING_MODIFICATIONS_ARE_V ALID_ENDPOINT_CLUSTERS | 0x12 | SL_ZIGBEE_EZSP_BINDING_MODIFICATION_POLICY decision. Allows remote nodes to set local binding entries only if the entries correspond to endpoints defined on the device, and for output clusters bound to those endpoints. |
SL_ZIGBEE_EZSP_HOST_WILL_NOT_SUPPLY_REPLY | 0x20 | SL_ZIGBEE_EZSP_UNICAST_REPLIES_POLICY default decision. The NCP will automatically send an empty reply (containing no payload) for every unicast received. |
SL_ZIGBEE_EZSP_HOST_WILL_SUPPLY_REPLY | 0x21 | SL_ZIGBEE_EZSP_UNICAST_REPLIES_POLICY decision. The NCP will only send a reply if it receives a sendReply command from the Host. |
SL_ZIGBEE_EZSP_POLL_HANDLER_IGNORE | 0x30 | SL_ZIGBEE_EZSP_POLL_HANDLER_POLICY default decision. Do not inform the Host when a child polls. |
SL_ZIGBEE_EZSP_POLL_HANDLER_CALLBACK | 0x31 | SL_ZIGBEE_EZSP_POLL_HANDLER_POLICY decision. Generate a pollHandler callback when a child polls. |
SL_ZIGBEE_EZSP_MESSAGE_TAG_ONLY_IN_CALLBACK | 0x40 | SL_ZIGBEE_EZSP_MESSAGE_CONTENTS_IN_CALLBACK_POLICY default decision. Include only the message tag in the messageSentHandler callback. |
SL_ZIGBEE_EZSP_MESSAGE_TAG_AND_CONTENTS_IN_CALL BACK | 0x41 | SL_ZIGBEE_EZSP_MESSAGE_CONTENTS_IN_CALLBACK_POLICY decision. Include both the |
message tag and the message contents in the messageSentHandler callback. | ||
SL_ZIGBEE_EZSP_DENY_TC_KEY_REQUESTS | 0x50 | SL_ZIGBEE_EZSP_TC_KEY_REQUEST_POLICY decision. When the Trust Center receives a request for a Trust Center link key, it will be ignored. |
SL_ZIGBEE_EZSP_ALLOW_TC_KEY_REQUESTS_AND_SEND_CURRENT_KEY | 0x51 | SL_ZIGBEE_EZSP_TC_KEY_REQUEST_POLICY decision. When the Trust Center receives a request for a Trust Center link key, it will reply to it with the corresponding key. |
SL_ZIGBEE_EZSP_ALLOW_TC_KEY_REQUEST_AND_GENERA TE_NEW_KEY | 0x52 | SL_ZIGBEE_EZSP_TC_KEY_REQUEST_POLICY decision. When the Trust Center receives a request for a Trust Center link key, it will generate a key to send to the joiner. After generation, the key will be added to the transient key tabe and After verification, this key will be added into the link key table |
SL_ZIGBEE_EZSP_DENY_APP_KEY_REQUESTS | 0x60 | SL_ZIGBEE_EZSP_APP_KEY_REQUEST_POLICY decision. When the Trust Center receives a request for an application link key, it will be ignored. |
SL_ZIGBEE_EZSP_ALLOW_APP_KEY_REQUESTS | 0x61 | SL_ZIGBEE_EZSP_APP_KEY_REQUEST_POLICY decision. When the Trust Center receives a request for an application link key, it will randomly generate a key and send it to both partners. |
SL_ZIGBEE_EZSP_PACKET_VALIDATE_LIBRARY_CHECKS_EN ABLED | 0x62 | Indicates that packet validate library checks are enabled on the NCP. |
SL_ZIGBEE_EZSP_PACKET_VALIDATE_LIBRARY_CHECKS_DI SABLED | 0x63 | Indicates that packet validate library checks are NOT enabled on the NCP. |
sl_zigbee_ezsp_mfg_token_id_t | Value | Description |
---|---|---|
SL_ZIGBEE_EZSP_MFG_CUSTOM_VERSION | 0x00 | Custom version (2 bytes). |
SL_ZIGBEE_EZSP_MFG_STRING | 0x01 | Manufacturing string (16 bytes). |
SL_ZIGBEE_EZSP_MFG_BOARD_NAME | 0x02 | Board name (16 bytes). |
SL_ZIGBEE_EZSP_MFG_MANUF_ID | 0x03 | Manufacturing ID (2 bytes). |
SL_ZIGBEE_EZSP_MFG_PHY_CONFIG | 0x04 | Radio configuration (2 bytes). |
SL_ZIGBEE_EZSP_MFG_BOOTLOAD_AES_KEY | 0x05 | Bootload AES key (16 bytes). |
SL_ZIGBEE_EZSP_MFG_ASH_CONFIG | 0x06 | ASH configuration (40 bytes). |
SL_ZIGBEE_EZSP_MFG_SL_ZIGBEE_EZSP_STORAGE | 0x07 | EZSP storage (8 bytes). |
SL_ZIGBEE_EZSP_STACK_CAL_DATA | 0x08 | Radio calibration data (64 bytes). 4 bytes are stored for each of the 16 channels. This token is not stored in the Flash Information Area. It is updated by the stack each time a calibration is performed. |
SL_ZIGBEE_EZSP_MFG_CBKE_DATA | 0x09 | Certificate Based Key Exchange (CBKE) data (92 bytes). |
SL_ZIGBEE_EZSP_MFG_INSTALLATION_CODE | 0x0A | Installation code (20 bytes). |
SL_ZIGBEE_EZSP_STACK_CAL_FILTER | 0x0B | Radio channel filter calibration data (1 byte). This token is not stored in the Flash Information Area. It is updated by the stack each time a calibration is performed. |
SL_ZIGBEE_EZSP_MFG_CUSTOM_EUI_64 | 0x0C | Custom EUI64 MAC address (8 bytes). |
SL_ZIGBEE_EZSP_MFG_CTUNE | 0x0D | CTUNE value (2 byte). |
sl_zigbee_ezsp_status_t | Value | Description |
---|---|---|
SL_ZIGBEE_EZSP_SUCCESS | 0x00 | Success. |
SL_ZIGBEE_EZSP_SPI_ERR_FATAL | 0x10 | Fatal error. |
SL_ZIGBEE_EZSP_SPI_ERR_NCP_RESET | 0x11 | The Response frame of the current transaction indicates the NCP has reset. |
SL_ZIGBEE_EZSP_SPI_ERR_OVERSIZED_SL_ZIGBEE_EZSP_FRAME | 0x12 | The NCP is reporting that the Command frame of the current transaction is oversized (the length byte is too large). |
SL_ZIGBEE_EZSP_SPI_ERR_ABORTED_TRANSACTION | 0x13 | The Response frame of the current transaction indicates the previous transaction was aborted (nSSEL deasserted too soon). |
SL_ZIGBEE_EZSP_SPI_ERR_MISSING_FRAME_TERMINATOR | 0x14 | The Response frame of the current transaction indicates the frame terminator is missing from the Command frame. |
SL_ZIGBEE_EZSP_SPI_ERR_WAIT_SECTION_TIMEOUT | 0x15 | The NCP has not provided a Response within the time limit defined by WAIT_SECTION_TIMEOUT. |
SL_ZIGBEE_EZSP_SPI_ERR_NO_FRAME_TERMINATOR | 0x16 | The Response frame from the NCP is missing the frame terminator. |
SL_ZIGBEE_EZSP_SPI_ERR_SL_ZIGBEE_EZSP_COMMAND_OVERSIZED | 0x17 | The Host attempted to send an oversized Command (the length byte is too large) and the AVR's spi-protocol.c blocked the transmission. |
SL_ZIGBEE_EZSP_SPI_ERR_SL_ZIGBEE_EZSP_RESPONSE_OVERSIZED | 0x18 | The NCP attempted to send an oversized Response (the length byte is too large) and the AVR's spi-protocol.c blocked the reception. |
SL_ZIGBEE_EZSP_SPI_WAITING_FOR_RESPONSE | 0x19 | The Host has sent the Command and is still waiting for the NCP to send a Response. |
SL_ZIGBEE_EZSP_SPI_ERR_HANDSHAKE_TIMEOUT | 0x1A | The NCP has not asserted nHOST_INT within the time limit defined by WAKE_HANDSHAKE_TIMEOUT. |
SL_ZIGBEE_EZSP_SPI_ERR_STARTUP_TIMEOUT | 0x1B | The NCP has not asserted nHOST_INT after an NCP reset within the time limit defined by STARTUP_TIMEOUT. |
SL_ZIGBEE_EZSP_SPI_ERR_STARTUP_FAIL | 0x1C | The Host attempted to verify the SPI Protocol activity and version number, and the verification failed. |
SL_ZIGBEE_EZSP_SPI_ERR_UNSUPPORTED_SPI_COMMAND | 0x1D | The Host has sent a command with a SPI Byte that is unsupported by the current mode the NCP is operating in. |
SL_ZIGBEE_EZSP_ASH_IN_PROGRESS | 0x20 | Operation not yet complete. |
SL_ZIGBEE_EZSP_HOST_FATAL_ERROR | 0x21 | Fatal error detected by host. |
SL_ZIGBEE_EZSP_ASH_NCP_FATAL_ERROR | 0x22 | Fatal error detected by NCP. |
SL_ZIGBEE_EZSP_DATA_FRAME_TOO_LONG | 0x23 | Tried to send DATA frame too long. |
SL_ZIGBEE_EZSP_DATA_FRAME_TOO_SHORT | 0x24 | Tried to send DATA frame too short. |
SL_ZIGBEE_EZSP_NO_TX_SPACE | 0x25 | No space for tx'ed DATA frame. |
SL_ZIGBEE_EZSP_NO_RX_SPACE | 0x26 | No space for rec'd DATA frame. |
SL_ZIGBEE_EZSP_NO_RX_DATA | 0x27 | No receive data available. |
SL_ZIGBEE_EZSP_NOT_CONNECTED | 0x28 | Not in Connected state. |
SL_ZIGBEE_EZSP_ERROR_VERSION_NOT_SET | 0x30 | The NCP received a command before the EZSP version had been set. |
SL_ZIGBEE_EZSP_ERROR_INVALID_FRAME_ID | 0x31 | The NCP received a command containing an unsupported frame ID. |
SL_ZIGBEE_EZSP_ERROR_WRONG_DIRECTION | 0x32 | The direction flag in the frame control field was incorrect. |
SL_ZIGBEE_EZSP_ERROR_TRUNCATED | 0x33 | The truncated flag in the frame control field was set, indicating there was not enough memory available to complete the response or that the response would have exceeded the maximum EZSP frame length. |
SL_ZIGBEE_EZSP_ERROR_OVERFLOW | 0x34 | The overflow flag in the frame control field was set, indicating one or more callbacks occurred since the previous response and there was not enough memory available to report them to the Host. |
SL_ZIGBEE_EZSP_ERROR_OUT_OF_MEMORY | 0x35 | Insufficient memory was available. |
SL_ZIGBEE_EZSP_ERROR_INVALID_VALUE | 0x36 | The value was out of bounds. |
SL_ZIGBEE_EZSP_ERROR_INVALID_ID | 0x37 | The configuration id was not recognized. |
SL_ZIGBEE_EZSP_ERROR_INVALID_CALL | 0x38 | Configuration values can no longer be modified. |
SL_ZIGBEE_EZSP_ERROR_NO_RESPONSE | 0x39 | The NCP failed to respond to a command. |
SL_ZIGBEE_EZSP_ERROR_COMMAND_TOO_LONG | 0x40 | The length of the command exceeded the maximum EZSP frame length. |
SL_ZIGBEE_EZSP_ERROR_QUEUE_FULL | 0x41 | The UART receive queue was full causing a callback response to be dropped. |
SL_ZIGBEE_EZSP_ERROR_COMMAND_FILTERED | 0x42 | The command has been filtered out by NCP. |
SL_ZIGBEE_EZSP_ERROR_SECURITY_KEY_ALREADY_SET | 0x43 | EZSP Security Key is already set |
SL_ZIGBEE_EZSP_ERROR_SECURITY_TYPE_INVALID | 0x44 | EZSP Security Type is invalid |
SL_ZIGBEE_EZSP_ERROR_SECURITY_PARAMETERS_INVALID | 0x45 | EZSP Security Parameters are invalid |
SL_ZIGBEE_EZSP_ERROR_SECURITY_PARAMETERS_ALREADY_SET | 0x46 | EZSP Security Parameters are already set |
SL_ZIGBEE_EZSP_ERROR_SECURITY_KEY_NOT_SET | 0x47 | EZSP Security Key is not set |
SL_ZIGBEE_EZSP_ERROR_SECURITY_PARAMETERS_NOT_SET | 0x48 | EZSP Security Parameters are not set |
SL_ZIGBEE_EZSP_ERROR_UNSUPPORTED_CONTROL | 0x49 | Received frame with unsupported control byte |
SL_ZIGBEE_EZSP_ERROR_UNSECURE_FRAME | 0x4A | Received frame is unsecure, when security is established |
SL_ZIGBEE_EZSP_ASH_ERROR_VERSION | 0x50 | Incompatible ASH version |
SL_ZIGBEE_EZSP_ASH_ERROR_TIMEOUTS | 0x51 | Exceeded max ACK timeouts |
SL_ZIGBEE_EZSP_ASH_ERROR_RESET_FAIL | 0x52 | Timed out waiting for RSTACK |
SL_ZIGBEE_EZSP_ASH_ERROR_NCP_RESET | 0x53 | Unexpected ncp reset |
SL_ZIGBEE_EZSP_ERROR_SERIAL_INIT | 0x54 | Serial port initialization failed |
SL_ZIGBEE_EZSP_ASH_ERROR_NCP_TYPE | 0x55 | Invalid ncp processor type |
SL_ZIGBEE_EZSP_ASH_ERROR_RESET_METHOD | 0x56 | Invalid ncp reset method |
SL_ZIGBEE_EZSP_ASH_ERROR_XON_XOFF | 0x57 | XON/XOFF not supported by host driver |
SL_ZIGBEE_EZSP_ASH_STARTED | 0x70 | ASH protocol started |
SL_ZIGBEE_EZSP_ASH_CONNECTED | 0x71 | ASH protocol connected |
SL_ZIGBEE_EZSP_ASH_DISCONNECTED | 0x72 | ASH protocol disconnected |
SL_ZIGBEE_EZSP_ASH_ACK_TIMEOUT | 0x73 | Timer expired waiting for ack |
SL_ZIGBEE_EZSP_ASH_CANCELLED | 0x74 | Frame in progress cancelled |
SL_ZIGBEE_EZSP_ASH_OUT_OF_SEQUENCE | 0x75 | Received frame out of sequence |
SL_ZIGBEE_EZSP_ASH_BAD_CRC | 0x76 | Received frame with CRC error |
SL_ZIGBEE_EZSP_ASH_COMM_ERROR | 0x77 | Received frame with comm error |
SL_ZIGBEE_EZSP_ASH_BAD_ACKNUM | 0x78 | Received frame with bad ackNum |
SL_ZIGBEE_EZSP_ASH_TOO_SHORT | 0x79 | Received frame shorter than minimum |
SL_ZIGBEE_EZSP_ASH_TOO_LONG | 0x7A | Received frame longer than maximum |
SL_ZIGBEE_EZSP_ASH_BAD_CONTROL | 0x7B | Received frame with illegal control byte |
SL_ZIGBEE_EZSP_ASH_BAD_LENGTH | 0x7C | Received frame with illegal length for its type |
SL_ZIGBEE_EZSP_ASH_ACK_RECEIVED | 0x7D | Received ASH Ack |
SL_ZIGBEE_EZSP_ASH_ACK_SENT | 0x7E | Sent ASH Ack |
SL_ZIGBEE_EZSP_ASH_NAK_RECEIVED | 0x7F | Received ASH Nak |
SL_ZIGBEE_EZSP_ASH_NAK_SENT | 0x80 | Sent ASH Nak |
SL_ZIGBEE_EZSP_ASH_RST_RECEIVED | 0x81 | Received ASH RST |
SL_ZIGBEE_EZSP_ASH_RST_SENT | 0x82 | Sent ASH RST |
SL_ZIGBEE_EZSP_ASH_STATUS | 0x83 | ASH Status |
SL_ZIGBEE_EZSP_ASH_TX | 0x84 | ASH TX |
SL_ZIGBEE_EZSP_ASH_RX | 0x85 | ASH RX |
SL_ZIGBEE_EZSP_CPC_ERROR_INIT | 0x86 | Failed to connect to CPC daemon or failed to open CPC endpoint |
SL_ZIGBEE_EZSP_NO_ERROR | 0xFF | No reset or error |
sl_zigbee_event_units_t | Value | Description |
---|---|---|
SL_ZIGBEE_EVENT_INACTIVE | 0x00 | The event is not scheduled to run. |
SL_ZIGBEE_EVENT_MS_TIME | 0x01 | The execution time is in approximate milliseconds. |
SL_ZIGBEE_EVENT_QS_TIME | 0x02 | The execution time is in 'binary' quarter seconds (256 approximate milliseconds each). |
SL_ZIGBEE_EVENT_MINUTE_TIME | 0x03 | The execution time is in 'binary' minutes (65536 approximate milliseconds each). |
sl_zigbee_node_type_t | Value | Description |
---|---|---|
SL_ZIGBEE_UNKNOWN_DEVICE | 0x00 | Device is not joined. |
SL_ZIGBEE_DEVICE_TYPE_UNCHANGED | 0x00 | Device type has not changed since last join. |
SL_ZIGBEE_COORDINATOR | 0x01 | Will relay messages and can act as a parent to other nodes. |
SL_ZIGBEE_ROUTER | 0x02 | Will relay messages and can act as a parent to other nodes. |
SL_ZIGBEE_END_DEVICE | 0x03 | Communicates only with its parent and will not relay messages. |
sl_zigbee_network_status_t | Value | Description |
---|---|---|
SL_ZIGBEE_NO_NETWORK | 0x00 | The node is not associated with a network in any way. |
SL_ZIGBEE_JOINING_NETWORK | 0x01 | The node is currently attempting to join a network. |
SL_ZIGBEE_JOINED_NETWORK | 0x02 | The node is joined to a network. |
SL_ZIGBEE_JOINED_NETWORK_NO_PARENT | 0x03 | The node is an end device joined to a network but its parent is not responding. |
SL_ZIGBEE_LEAVING_NETWORK | 0x04 | The node is in the process of leaving its current network. |
sl_zigbee_incoming_message_type_t | Value | Description |
---|---|---|
SL_ZIGBEE_INCOMING_UNICAST | 0x00 | Unicast. |
SL_ZIGBEE_INCOMING_UNICAST_REPLY | 0x01 | Unicast reply. |
SL_ZIGBEE_INCOMING_MULTICAST | 0x02 | Multicast. |
SL_ZIGBEE_INCOMING_MULTICAST_LOOPBACK | 0x03 | Multicast sent by the local device. |
SL_ZIGBEE_INCOMING_BROADCAST | 0x04 | Broadcast. |
SL_ZIGBEE_INCOMING_BROADCAST_LOOPBACK | 0x05 | Broadcast sent by the local device. |
EMBER_INCOMING_MANY_TO_ONE_ROUTE_REQUEST | 0x06 | Many to one route request. |
sl_zigbee_outgoing_message_type_t | Value | Description |
---|---|---|
SL_ZIGBEE_OUTGOING_DIRECT | 0x00 | Unicast sent directly to an sl_802154_short_addr_t. |
SL_ZIGBEE_OUTGOING_VIA_ADDRESS_TABLE | 0x01 | Unicast sent using an entry in the address table. |
SL_ZIGBEE_OUTGOING_VIA_BINDING | 0x02 | Unicast sent using an entry in the binding table. |
SL_ZIGBEE_OUTGOING_MULTICAST | 0x03 | Multicast message. This value is passed to sli_zigbee_stack_message_sent_handler() only. It may not be passed to sli_zigbee_stack_send_unicast(). |
SL_ZIGBEE_OUTGOING_BROADCAST | 0x04 | Broadcast message. This value is passed to sli_zigbee_stack_message_sent_handler() only. It may not be passed to sli_zigbee_stack_send_unicast(). |
sl_zigbee_mac_passthrough_type_t | Value | Description |
---|---|---|
SL_802154_PASSTHROUGH_NONE | 0x00 | No MAC passthrough messages. |
SL_802154_PASSTHROUGH_SE_INTERPAN | 0x01 | SE InterPAN messages. |
SL_802154_PASSTHROUGH_EMBERNET | 0x02 | Legacy EmberNet messages. |
SL_802154_PASSTHROUGH_EMBERNET_SOURCE | 0x04 | Legacy EmberNet messages filtered by their source address. |
sl_zigbee_binding_type_t | Value | Description |
---|---|---|
SL_ZIGBEE_UNUSED_BINDING | 0x00 | A binding that is currently not in use. |
SL_ZIGBEE_UNICAST_BINDING | 0x01 | A unicast binding whose 64-bit identifier is the destination EUI64. |
SL_ZIGBEE_MANY_TO_ONE_BINDING | 0x02 | A unicast binding whose 64-bit identifier is the aggregator EUI64. |
SL_ZIGBEE_MULTICAST_BINDING | 0x03 | A multicast binding whose 64-bit identifier is the group address. A multicast binding can be used to send messages to the group and to receive messages sent to the group. |
sl_zigbee_aps_option_t | Value | Description |
---|---|---|
EMBER_APS_OPTION_NONE | 0x0000 | No options. |
EMBER_APS_OPTION_ENCRYPTION | 0x0020 | Send the message using APS Encryption, using the Link Key shared with the destination node to encrypt the data at the APS Level. |
EMBER_APS_OPTION_RETRY | 0x0040 | Resend the message using the APS retry mechanism. |
SL_ZIGBEE_APS_OPTION_NONE | 0x0000 | No options. |
SL_ZIGBEE_APS_OPTION_ENCRYPTION | 0x0020 | Send the message using APS Encryption, using the Link Key shared with the destination node to encrypt the data at the APS Level. |
SL_ZIGBEE_APS_OPTION_RETRY | 0x0040 | Resend the message using the APS retry mechanism. |
SL_ZIGBEE_APS_OPTION_ENABLE_ROUTE_DISCOVERY | 0x0100 | Causes a route discovery to be initiated if no route to the destination is known. |
SL_ZIGBEE_APS_OPTION_FORCE_ROUTE_DISCOVERY | 0x0200 | Causes a route discovery to be initiated even if one is known. |
SL_ZIGBEE_APS_OPTION_SOURCE_EUI64 | 0x0400 | Include the source EUI64 in the network frame. |
SL_ZIGBEE_APS_OPTION_DESTINATION_EUI64 | 0x0800 | Include the destination EUI64 in the network frame. |
SL_ZIGBEE_APS_OPTION_ENABLE_ADDRESS_DISCOVERY | 0x1000 | Send a ZDO request to discover the node ID of the destination, if it is not already know. |
sl_zigbee_ezsp_network_scan_type_t | Value | Description |
---|---|---|
SL_ZIGBEE_EZSP_ENERGY_SCAN | 0x00 | An energy scan scans each channel for its RSSI value. |
SL_ZIGBEE_EZSP_ACTIVE_SCAN | 0x01 | An active scan scans each channel for available networks. |
sl_zigbee_join_decision_t | Value | Description |
---|---|---|
SL_ZIGBEE_USE_PRECONFIGURED_KEY | 0x00 | Allow the node to join. The joining node should have a pre-configured key. The security data sent to it will be encrypted with that key. |
SL_ZIGBEE_SEND_KEY_IN_THE_CLEAR | 0x01 | Allow the node to join. Send the network key in-the-clear to the joining device. |
SL_ZIGBEE_DENY_JOIN | 0x02 | Deny join. |
SL_ZIGBEE_NO_ACTION | 0x03 | Take no action. |
sl_zigbee_leave_network_option_t | Value | Description |
---|---|---|
SL_ZIGBEE_LEAVE_NWK_WITH_NO_OPTION | 0x00 | Leave with no option. |
SL_ZIGBEE_LEAVE_NWK_WITH_OPTION_REJOIN | 0x20 | Leave with option rejoin. |
SL_ZIGBEE_LEAVE_NWK_IS_REQUESTED | 0x40 | Leave is requested. |
sl_zigbee_initial_security_bitmask_t | Value | Description |
---|---|---|
SL_ZIGBEE_STANDARD_SECURITY_MODE | 0x0000 | This enables ZigBee Standard Security on the node. |
SL_ZIGBEE_DISTRIBUTED_TRUST_CENTER_MODE | 0x0002 | This enables Distributed Trust Center Mode for the device forming the network. (Previously known as SL_ZIGBEE_NO_TRUST_CENTER_MODE) |
SL_ZIGBEE_TRUST_CENTER_GLOBAL_LINK_KEY | 0x0004 | This enables a Global Link Key for the Trust Center. All nodes will share the same Trust Center Link Key. |
SL_ZIGBEE_PRECONFIGURED_NETWORK_KEY_MODE | 0x0008 | This enables devices that perform MAC Association with a pre-configured Network Key to join the network. It is only set on the Trust Center. |
SL_ZIGBEE_TRUST_CENTER_USES_HASHED_LINK_KEY | 0x0084 | This denotes that the preconfiguredKey is not the actual Link Key but a Secret Key known only to the Trust Center. It is hashed with the IEEE Address of the destination device in order to create the actual Link Key used in encryption. This is bit is only used by the Trust Center. The joining device need not set this. |
SL_ZIGBEE_HAVE_PRECONFIGURED_KEY | 0x0100 | This denotes that the preconfiguredKey element has valid data that should be used to configure the initial security state. |
SL_ZIGBEE_HAVE_NETWORK_KEY | 0x0200 | This denotes that the networkKey element has valid data that should be used to configure the initial security state. |
SL_ZIGBEE_GET_LINK_KEY_WHEN_JOINING | 0x0400 | This denotes to a joining node that it should attempt to acquire a Trust Center Link Key during joining. This is only necessary if the device does not have a pre-configured key. |
SL_ZIGBEE_REQUIRE_ENCRYPTED_KEY | 0x0800 | This denotes that a joining device should only accept an encrypted network key from the Trust Center (using its pre-configured key). A key sent in-the-clear by the Trust Center will be rejected and the join will fail. This option is only valid when utilizing a pre-configured key. |
SL_ZIGBEE_NO_FRAME_COUNTER_RESET | 0x1000 | This denotes whether the device should NOT reset its outgoing frame counters (both NWK and APS) when ::sli_zigbee_stack_set_initial_security_state() is called. Normally it is advised to reset the frame counter before joining a new network. However in cases where a device is joining to the same network a again (but not using ::emberRejoinNetwork()) it should keep the NWK and APS frame counters stored in its tokens. |
SL_ZIGBEE_GET_PRECONFIGURED_KEY_FROM_INSTALL_C ODE | 0x2000 | This denotes that the device should obtain its preconfigured key from an installation code stored in the manufacturing token. The token contains a value that will be hashed to obtain the actual preconfigured key. If that token is not valid, then the call to sli_zigbee_stack_set_initial_security_state() will fail. |
SL_ZIGBEE_HAVE_TRUST_CENTER_EUI64 | 0x0040 | This denotes that the ::sl_zigbee_initial_security_state_t::preconfiguredTrustCe nterEui64 has a value in it containing the trust center EUI64. The device will only join a network and accept commands from a trust center with that EUI64. Normally this bit is NOT set, and the EUI64 of the trust center is learned during the join process. When commissioning a device to join onto an existing network, which is using a trust center, and without sending any messages, this bit must be set and the field ::sl_zigbee_initial_security_state_t::preconfiguredTrustCe nterEui64 must be populated with the appropriate EUI64. |
sl_zigbee_current_security_bitmask_t | Value | Description |
---|---|---|
SL_ZIGBEE_STANDARD_SECURITY_MODE | 0x0000 | This denotes that the device is running in a network with ZigBee Standard Security. |
SL_ZIGBEE_DISTRIBUTED_TRUST_CENTER_MODE | 0x0002 | This denotes that the device is running in a network without a centralized Trust Center. |
SL_ZIGBEE_TRUST_CENTER_GLOBAL_LINK_KEY | 0x0004 | This denotes that the device has a Global Link Key. The Trust Center Link Key is the same across multiple nodes. |
SL_ZIGBEE_HAVE_TRUST_CENTER_LINK_KEY | 0x0010 | This denotes that the node has a Trust Center Link Key. |
SL_ZIGBEE_TRUST_CENTER_USES_HASHED_LINK_KEY | 0x0084 | This denotes that the Trust Center is using a Hashed Link Key. |
sl_zigbee_key_type_t | Value | Description |
---|---|---|
SL_ZIGBEE_TRUST_CENTER_LINK_KEY | 0x01 | A shared key between the Trust Center and a device. |
SL_ZIGBEE_CURRENT_NETWORK_KEY | 0x03 | The current active Network Key used by all devices in the network. |
SL_ZIGBEE_NEXT_NETWORK_KEY | 0x04 | The alternate Network Key that was previously in use, or the newer key that will be switched to. |
SL_ZIGBEE_APPLICATION_LINK_KEY | 0x05 | An Application Link Key shared with another (non-Trust Center) device. |
sl_zigbee_key_struct_bitmask_t | Value | Description |
---|---|---|
SL_ZIGBEE_KEY_HAS_SEQUENCE_NUMBER | 0x0001 | The key has a sequence number associated with it. |
SL_ZIGBEE_KEY_HAS_OUTGOING_FRAME_COUNTER | 0x0002 | The key has an outgoing frame counter associated with it. |
SL_ZIGBEE_KEY_HAS_INCOMING_FRAME_COUNTER | 0x0004 | The key has an incoming frame counter associated with it. |
SL_ZIGBEE_KEY_HAS_PARTNER_EUI64 | 0x0008 | The key has a Partner IEEE address associated with it. |
sl_zigbee_device_update_t | Value |
---|---|
SL_ZIGBEE_STANDARD_SECURITY_SECURED_REJOIN | 0x0 |
SL_ZIGBEE_STANDARD_SECURITY_UNSECURED_JOIN | 0x1 |
SL_ZIGBEE_DEVICE_LEFT | 0x2 |
SL_ZIGBEE_STANDARD_SECURITY_UNSECURED_REJOIN | 0x3 |
sl_zigbee_key_status_t | Value |
---|---|
SL_ZIGBEE_APP_LINK_KEY_ESTABLISHED | 0x01 |
SL_ZIGBEE_TRUST_CENTER_LINK_KEY_ESTABLISHED | 0x03 |
SL_ZIGBEE_KEY_ESTABLISHMENT_TIMEOUT | 0x04 |
SL_ZIGBEE_KEY_TABLE_FULL | 0x05 |
SL_ZIGBEE_TC_RESPONDED_TO_KEY_REQUEST | 0x06 |
SL_ZIGBEE_TC_APP_KEY_SENT_TO_REQUESTER | 0x07 |
SL_ZIGBEE_TC_RESPONSE_TO_KEY_REQUEST_FAILED | 0x08 |
SL_ZIGBEE_TC_REQUEST_KEY_TYPE_NOT_SUPPORTED | 0x09 |
SL_ZIGBEE_TC_NO_LINK_KEY_FOR_REQUESTER | 0x0A |
SL_ZIGBEE_TC_REQUESTER_EUI64_UNKNOWN | 0x0B |
SL_ZIGBEE_TC_RECEIVED_FIRST_APP_KEY_REQUEST | 0x0C |
SL_ZIGBEE_TC_TIMEOUT_WAITING_FOR_SECOND_APP_KEY_REQUEST | 0x0D |
SL_ZIGBEE_TC_NON_MATCHING_APP_KEY_REQUEST_RECEIVED | 0x0E |
SL_ZIGBEE_TC_FAILED_TO_SEND_APP_KEYS | 0x0F |
SL_ZIGBEE_TC_FAILED_TO_STORE_APP_KEY_REQUEST | 0x10 |
SL_ZIGBEE_TC_REJECTED_APP_KEY_REQUEST | 0x11 |
sl_zigbee_counter_type_t | Value | Description |
---|---|---|
SL_ZIGBEE_COUNTER_MAC_RX_BROADCAST | 0 | The MAC received a broadcast. |
SL_ZIGBEE_COUNTER_MAC_TX_BROADCAST | 1 | The MAC transmitted a broadcast. |
SL_ZIGBEE_COUNTER_MAC_RX_UNICAST | 2 | The MAC received a unicast. |
SL_ZIGBEE_COUNTER_MAC_TX_UNICAST_SUCCESS | 3 | The MAC successfully transmitted a unicast. |
SL_ZIGBEE_COUNTER_MAC_TX_UNICAST_RETRY | 4 | The MAC retried a unicast. |
SL_ZIGBEE_COUNTER_MAC_TX_UNICAST_FAILED | 5 | The MAC unsuccessfully transmitted a unicast. |
SL_ZIGBEE_COUNTER_APS_DATA_RX_BROADCAST | 6 | The APS layer received a data broadcast. |
SL_ZIGBEE_COUNTER_APS_DATA_TX_BROADCAST | 7 | The APS layer transmitted a data broadcast. |
SL_ZIGBEE_COUNTER_APS_DATA_RX_UNICAST | 8 | The APS layer received a data unicast. |
SL_ZIGBEE_COUNTER_APS_DATA_TX_UNICAST_SUCCESS | 9 | The APS layer successfully transmitted a data unicast. |
SL_ZIGBEE_COUNTER_APS_DATA_TX_UNICAST_RETRY | 10 | The APS layer retried a data unicast. |
SL_ZIGBEE_COUNTER_APS_DATA_TX_UNICAST_FAILED | 11 | The APS layer unsuccessfully transmitted a data unicast. |
SL_ZIGBEE_COUNTER_ROUTE_DISCOVERY_INITIATED | 12 | The network layer successfully submitted a new route discovery to the MAC. |
SL_ZIGBEE_COUNTER_NEIGHBOR_ADDED | 13 | An entry was added to the neighbor table. |
SL_ZIGBEE_COUNTER_NEIGHBOR_REMOVED | 14 | An entry was removed from the neighbor table. |
SL_ZIGBEE_COUNTER_NEIGHBOR_STALE | 15 | A neighbor table entry became stale because it had not been heard from. |
SL_ZIGBEE_COUNTER_JOIN_INDICATION | 16 | A node joined or rejoined to the network via this node. |
SL_ZIGBEE_COUNTER_CHILD_REMOVED | 17 | An entry was removed from the child table. |
SL_ZIGBEE_COUNTER_ASH_OVERFLOW_ERROR | 18 | EZSP-UART only. An overflow error occurred in the UART. |
SL_ZIGBEE_COUNTER_ASH_FRAMING_ERROR | 19 | EZSP-UART only. A framing error occurred in the UART. |
SL_ZIGBEE_COUNTER_ASH_OVERRUN_ERROR | 20 | EZSP-UART only. An overrun error occurred in the UART. |
SL_ZIGBEE_COUNTER_NWK_FRAME_COUNTER_FAILURE | 21 | A message was dropped at the network layer because the NWK frame counter was not higher than the last message seen from that source. |
SL_ZIGBEE_COUNTER_APS_FRAME_COUNTER_FAILURE | 22 | A message was dropped at the APS layer because the APS frame counter was not higher than the last message seen from that source. |
EMBER_COUNTER_UTILITY | 23 | Utility counter for general debugging use. |
SL_ZIGBEE_COUNTER_APS_LINK_KEY_NOT_AUTHORIZED | 24 | A message was dropped at the APS layer because it had APS encryption but the key associated with the sender has not been authenticated, and thus the key is not authorized for use in APS data messages. |
SL_ZIGBEE_COUNTER_NWK_DECRYPTION_FAILURE | 25 | An NWK encrypted message was received but dropped because decryption failed. |
SL_ZIGBEE_COUNTER_APS_DECRYPTION_FAILURE | 26 | An APS encrypted message was received but dropped because decryption failed. |
SL_ZIGBEE_COUNTER_ALLOCATE_PACKET_BUFFER_FAILU RE | 27 | The number of times we failed to allocate a set of linked packet buffers. This doesn't necessarily mean that the packet buffer count was 0 at the time, but that the number requested was greater than the number free. |
SL_ZIGBEE_COUNTER_RELAYED_UNICAST | 28 | The number of relayed unicast packets. |
SL_ZIGBEE_COUNTER_PHY_TO_MAC_QUEUE_LIMIT_REAC HED | 29 | The number of times we dropped a packet due to reaching the preset PHY to MAC queue limit (sli_802154mac_max_phy_to_mac_queue_length). |
SL_ZIGBEE_COUNTER_PACKET_VALIDATE_LIBRARY_DROP PED_COUNT | 30 | The number of times we dropped a packet due to the packet-validate library checking a packet and rejecting it due to length or other formatting problems. |
SL_ZIGBEE_COUNTER_TYPE_NWK_RETRY_OVERFLOW | 31 | The number of times the NWK retry queue is full and a new message failed to be added. |
SL_ZIGBEE_COUNTER_PHY_CCA_FAIL_COUNT | 32 | The number of times the PHY layer was unable to transmit due to a failed CCA. |
SL_ZIGBEE_COUNTER_BROADCAST_TABLE_FULL | 33 | The number of times an NWK broadcast was dropped because the broadcast table was full. |
SL_ZIGBEE_COUNTER_PTA_LO_PRI_REQUESTED | 34 | The number of low priority packet traffic arbitration requests. |
SL_ZIGBEE_COUNTER_PTA_HI_PRI_REQUESTED | 35 | The number of high priority packet traffic arbitration requests. |
SL_ZIGBEE_COUNTER_PTA_LO_PRI_DENIED | 36 | The number of low priority packet traffic arbitration requests denied. |
SL_ZIGBEE_COUNTER_PTA_HI_PRI_DENIED | 37 | The number of high priority packet traffic arbitration requests denied. |
SL_ZIGBEE_COUNTER_PTA_LO_PRI_TX_ABORTED | 38 | The number of aborted low-priority packet traffic arbitration transmissions. |
SL_ZIGBEE_COUNTER_PTA_HI_PRI_TX_ABORTED | 39 | The number of aborted high-priority packet traffic arbitration transmissions. |
SL_ZIGBEE_COUNTER_TYPE_COUNT | 40 | A placeholder giving the number of Ember counter types. |
sl_zigbee_join_method_t | Value | Description |
---|---|---|
SL_ZIGBEE_USE_MAC_ASSOCIATION | 0x0 | Normally devices use MAC Association to join a network, which respects the "permit joining" flag in the MAC Beacon. This value should be used by default. |
SL_ZIGBEE_USE_NWK_REJOIN | 0x1 | For those networks where the "permit joining" flag is never turned on, they will need to use a ZigBee NWK Rejoin. This value causes the rejoin to be sent without NWK security and the Trust Center will be asked to send the NWK key to the device. The NWK key sent to the device can be encrypted with the device's corresponding Trust Center link key. That is determined by the ::sl_zigbee_join_decision_t on the Trust Center returned by the ::sl_zigbee_internal_trust_center_join_handler(). |
SL_ZIGBEE_USE_NWK_REJOIN_HAVE_NWK_KEY | 0x2 | For those networks where the "permit joining" flag is never turned on, they will need to use an NWK Rejoin. If those devices have been preconfigured with the NWK key (including sequence number) they can use a secured rejoin. This is only necessary for end devices since they need a parent. Routers can simply use the ::SL_ZIGBEE_USE_CONFIGURED_NWK_STATE join method below. |
SL_ZIGBEE_USE_CONFIGURED_NWK_STATE | 0x3 | For those networks where all network and security information is known ahead of time, a router device may be commissioned such that it does not need to send any messages to begin communicating on the network. |
sl_zigbee_zdo_configuration_flags_t | Value | Description |
---|---|---|
SL_ZIGBEE_APP_RECEIVES_SUPPORTED_ZDO_REQUESTS | 0x01 | Set this flag in order to receive supported ZDO request messages via the incomingMessageHandler callback. A supported ZDO request is one that is handled by the EmberZNet stack. The stack will continue to handle the request and send the appropriate ZDO response even if this configuration option is enabled. |
SL_ZIGBEE_APP_HANDLES_UNSUPPORTED_ZDO_REQUESTS | 0x02 | Set this flag in order to receive unsupported ZDO request messages via the incomingMessageHandler callback. An unsupported ZDO request is one that is not handled by the EmberZNet stack, other than to send a 'not supported' ZDO response. If this configuration option is enabled, the stack will no longer send any ZDO response, and it is the application's responsibility to do so. |
SL_ZIGBEE_APP_HANDLES_ZDO_ENDPOINT_REQUESTS | 0x04 | Set this flag in order to receive the following ZDO request messages via the incomingMessageHandler callback: SIMPLE_DESCRIPTOR_REQUEST, MATCH_DESCRIPTORS_REQUEST, and ACTIVE_ENDPOINTS_REQUEST. If this configuration option is enabled, the stack will no longer send any ZDO response for these requests, and it is the application's responsibility to do so. |
SL_ZIGBEE_APP_HANDLES_ZDO_BINDING_REQUESTS | 0x08 | Set this flag in order to receive the following ZDO request messages via the incomingMessageHandler callback: BINDING_TABLE_REQUEST, BIND_REQUEST, and UNBIND_REQUEST. If this configuration option is enabled, the stack will no longer send any ZDO response for these requests, and it is the application's responsibility to do so. |
EmberConcentratorType | Value | Description |
---|---|---|
SL_ZIGBEE_LOW_RAM_CONCENTRATOR | 0xFFF8 | A concentrator with insufficient memory to store source routes for the entire network. Route records are sent to the concentrator prior to every inbound APS unicast. |
SL_ZIGBEE_HIGH_RAM_CONCENTRATOR | 0xFFF9 | A concentrator with sufficient memory to store source routes for the entire network. Remote nodes stop sending route records once the concentrator has successfully received one. |
sl_zigbee_zll_state_t | Value | Description |
---|---|---|
SL_ZIGBEE_ZLL_STATE_NONE | 0x0000 | No state. |
SL_ZIGBEE_ZLL_STATE_FACTORY_NEW | 0x0001 | The device is factory new. |
SL_ZIGBEE_ZLL_STATE_ADDRESS_ASSIGNMENT_CAPABLE | 0x0002 | The device is capable of assigning addresses to other devices. |
SL_ZIGBEE_ZLL_STATE_LINK_INITIATOR | 0x0010 | The device is initiating a link operation. |
SL_ZIGBEE_ZLL_STATE_LINK_PRIORITY_REQUEST | 0x0020 | The device is requesting link priority. |
SL_ZIGBEE_ZLL_STATE_NON_ZLL_NETWORK | 0x0100 | The device is on a non-ZLL network. |
sl_zigbee_zll_key_index_t | Value | Description |
---|---|---|
SL_ZIGBEE_ZLL_KEY_INDEX_DEVELOPMENT | 0x00 | Key encryption algorithm for use during development. |
SL_ZIGBEE_ZLL_KEY_INDEX_MASTER | 0x04 | Key encryption algorithm shared by all certified devices. |
SL_ZIGBEE_ZLL_KEY_INDEX_CERTIFICATION | 0x0F | Key encryption algorithm for use during development and certification. |
sl_zigbee_ezsp_zll_network_operation_t | Value | Description |
---|---|---|
SL_ZIGBEE_EZSP_ZLL_FORM_NETWORK | 0x00 | ZLL form network command. |
SL_ZIGBEE_EZSP_ZLL_JOIN_TARGET | 0x01 | ZLL join target command. |
sl_zigbee_network_init_bitmask_t | Value | Description |
---|---|---|
SL_ZIGBEE_NETWORK_INIT_NO_OPTIONS | 0x0000 | No options for Network Init |
SL_ZIGBEE_NETWORK_INIT_PARENT_INFO_IN_TOKEN | 0x0001 | Save parent info (node ID and EUI64) in a token during joining/rejoin, and restore on reboot. |
SL_ZIGBEE_NETWORK_INIT_END_DEVICE_REJOIN_ON_REBOOT | 0x0002 | Send a rejoin request as an end device on reboot if parent information is persisted. |
sl_zigbee_multi_phy_nwk_config_t | Value | Description |
---|---|---|
SL_ZIGBEE_BROADCAST_SUPPORT | 0x01 | Enable broadcast support on Routers |
sl_zigbee_duty_cycle_state_t | Value | Description |
---|---|---|
SL_ZIGBEE_DUTY_CYCLE_TRACKING_OFF | 0 | No Duty cycle tracking or metrics are taking place. |
SL_ZIGBEE_DUTY_CYCLE_LBT_NORMAL | 1 | Duty Cycle is tracked and has not exceeded any thresholds. |
SL_ZIGBEE_DUTY_CYCLE_LBT_LIMITED_THRESHOLD_REACHED | 2 | We have exceeded the limited threshold of our total duty cycle allotment. |
SL_ZIGBEE_DUTY_CYCLE_LBT_CRITICAL_THRESHOLD_REACHED | 3 | We have exceeded the critical threshold of our total duty cycle allotment |
SL_ZIGBEE_DUTY_CYCLE_LBT_SUSPEND_LIMIT_REACHED | 4 | We have reached the suspend limit and are blocking all outbound transmissions. |
sl_zigbee_radio_power_mode_t | Value | Description |
---|---|---|
SL_ZIGBEE_RADIO_POWER_MODE_RX_ON | 0 | The radio receiver is switched on. |
SL_ZIGBEE_RADIO_POWER_MODE_OFF | 1 | The radio receiver is switched off. |
sl_zigbee_entropy_source_t | Value | Description |
---|---|---|
SL_ZIGBEE_ENTROPY_SOURCE_ERROR | 0 | Entropy source error. |
SL_ZIGBEE_ENTROPY_SOURCE_RADIO | 1 | Entropy source is the radio. |
SL_ZIGBEE_ENTROPY_SOURCE_MBEDTLS_TRNG | 2 | Entropy source is the TRNG powered by mbed TLS. |
SL_ZIGBEE_ENTROPY_SOURCE_MBEDTLS | 3 | Entropy source is powered by mbed TLS, the source is not TRNG. |
sl_zigbee_sec_man_key_type_t | Value | Description |
---|---|---|
SL_ZB_SEC_MAN_KEY_TYPE_NONE | 0 | No key type. |
SL_ZB_SEC_MAN_KEY_TYPE_NETWORK | 1 | Network Key (either current or alternate). |
SL_ZB_SEC_MAN_KEY_TYPE_TC_LINK | 2 | Preconfigured Trust Center Link Key. |
SL_ZB_SEC_MAN_KEY_TYPE_TC_LINK_WITH_TIMEOUT | 3 | Transient key. |
SL_ZB_SEC_MAN_KEY_TYPE_APP_LINK | 4 | Link key in table. |
SL_ZB_SEC_MAN_KEY_TYPE_ZLL_ENCRYPTION_KEY | 6 | Encryption key in ZLL. |
SL_ZB_SEC_MAN_KEY_TYPE_ZLL_PRECONFIGURED_KEY | 7 | Preconfigured key in ZLL. |
SL_ZB_SEC_MAN_KEY_TYPE_GREEN_POWER_PROXY_TABLE_KEY | 8 | GP Proxy table key. |
SL_ZB_SEC_MAN_KEY_TYPE_GREEN_POWER_SINK_TABLE_KEY | 9 | GP Sink table key. |
SL_ZB_SEC_MAN_KEY_TYPE_INTERNAL | 10 | Generic key type available to use for crypto operations. |
sl_zigbee_sec_man_derived_key_type_t | Value | Description |
---|---|---|
SL_ZB_SEC_MAN_DERIVED_KEY_TYPE_NONE | 0 | No derivation (use core key type directly). |
SL_ZB_SEC_MAN_DERIVED_KEY_TYPE_KEY_TRANSPORT_KEY | 1 | Hash core key with Key Transport Key hash. |
SL_ZB_SEC_MAN_DERIVED_KEY_TYPE_KEY_LOAD_KEY | 2 | Hash core key with Key Load Key hash. |
SL_ZB_SEC_MAN_DERIVED_KEY_TYPE_VERIFY_KEY | 3 | Perform Verify Key hash. |
SL_ZB_SEC_MAN_DERIVED_KEY_TYPE_TC_SWAP_OUT_KEY | 4 | Perform a simple AES hash of the key for TC backup. |
SL_ZB_SEC_MAN_DERIVED_KEY_TYPE_TC_HASHED_LINK_KEY | 5 | For a TC using hashed link keys, hashed the root key against the supplied EUI in context. |
sl_zigbee_sec_man_flags_t | Value | Description |
---|---|---|
ZB_SEC_MAN_FLAG_NONE | 0 | No flags on operation. |
ZB_SEC_MAN_FLAG_KEY_INDEX_IS_VALID | 1 | Context has a valid key index. |
ZB_SEC_MAN_FLAG_EUI_IS_VALID | 2 | Context has a valid EUI64. |
ZB_SEC_MAN_FLAG_UNCONFIRMED_TRANSIENT_KEY | 4 | Transient key being added hasn't yet been verified. |
sl_zigbee_leave_request_flags_t | Value | Description |
---|---|---|
SL_ZIGBEE_ZIGBEE_LEAVE_AND_REJOIN | 0x80 | Leave and rejoin the network. |
SL_ZIGBEE_ZIGBEE_LEAVE_WITHOUT_REJOIN | 0x00 | Leave the network and do not rejoin. |