Application Framework Types#

This documentation describes the types used by the Zigbee Application Framework.

Modules#

sli_cluster_function_structure_t

sl_zigbee_af_default_attribute_value_t

sl_zigbee_af_attribute_min_max_value_t

sl_zigbee_af_default_or_min_max_attribute_value_t

sl_zigbee_af_attribute_metadata_t

sl_zigbee_af_cluster_t

sl_zigbee_af_attribute_search_record_t

sl_zigbee_af_manufacturer_code_entry_t

sl_zigbee_af_incoming_message_t

sl_zigbee_af_interpan_header_t

sl_zigbee_af_allowed_inter_pan_message_t

sl_zigbee_af_cluster_command_t

sl_zigbee_af_endpoint_type_t

sl_zigbee_af_security_profile_data_t

sl_zigbee_af_defined_endpoint_t

sl_zigbee_af_load_control_event_t

sl_zigbee_af_service_discovery_result_t

sl_zigbee_af_endpoint_list_t

sl_zigbee_af_cluster_list_t

sl_zigbee_af_event_context

sl_zigbee_event_context_t

sl_zigbee_af_group_table_entry_t

sl_zigbee_af_scene_table_entry_t

sl_zigbee_af_plugin_messaging_client_message_t

sl_zigbee_af_plugin_price_client_price_t

sl_zigbee_af_plugin_reporting_entry_t

sl_zigbee_af_plugin_zll_commissioning_group_information_record_t

sl_zigbee_af_plugin_zll_commissioning_endpoint_information_record_t

sl_zigbee_af_ota_image_id_t

sl_zigbee_af_image_block_request_callback_struct_t

sl_zigbee_af_ota_header_t

sl_zigbee_af_tag_data_t

sl_zigbee_af_message_struct_t

sl_zigbee_af_link_key_backup_data_t

sl_zigbee_af_trust_center_backup_data_t

sl_zigbee_af_standalone_bootloader_query_response_data_t

sl_zigbee_af_command_metadata_t

sl_zigbee_af_time_struct_t

sl_zigbee_af_date_t

sl_zigbee_af_device_management_tenancy_t

sl_zigbee_af_device_management_supplier_t

sl_zigbee_af_device_management_supply_t

sl_zigbee_af_device_management_site_id_t

sl_zigbee_af_device_management_c_i_n_t

sl_zigbee_af_device_management_supply_status_flags_t

sl_zigbee_af_device_management_uncontrolled_flow_threshold_t

sl_zigbee_af_device_management_supply_status_t

sl_zigbee_af_device_management_password_t

sl_zigbee_af_device_management_info_t

sl_zigbee_af_device_management_attribute_range_t

sl_zigbee_af_device_management_attribute_table_t

sl_zigbee_af_gbz_message_data_t

sl_zigbee_af_gpf_message_t

sl_zigbee_af_remote_cluster_struct_t

sl_zigbee_af_remote_binding_struct_t

sl_zigbee_af_cluster_info_t

sl_zigbee_af_endpoint_info_struct_t

sl_zigbee_af_device_info_t

sl_zigbee_af_device_database_iterator_t

sl_zigbee_af_joining_device_t

Enumerations#

enum
SL_ZIGBEE_AF_SECURITY_PROFILE_NONE = 0x00
SL_ZIGBEE_AF_SECURITY_PROFILE_HA = 0x01
SL_ZIGBEE_AF_SECURITY_PROFILE_HA12 = 0x02
SL_ZIGBEE_AF_SECURITY_PROFILE_SE_TEST = 0x03
SL_ZIGBEE_AF_SECURITY_PROFILE_SE_FULL = 0x04
SL_ZIGBEE_AF_SECURITY_PROFILE_Z3 = 0x05
SL_ZIGBEE_AF_SECURITY_PROFILE_CUSTOM = 0xFF
}
enum
SL_ZIGBEE_AF_BROADCAST_SERVICE_DISCOVERY_COMPLETE = 0x00
SL_ZIGBEE_AF_BROADCAST_SERVICE_DISCOVERY_RESPONSE_RECEIVED = 0x01
SL_ZIGBEE_AF_UNICAST_SERVICE_DISCOVERY_TIMEOUT = 0x02
SL_ZIGBEE_AF_UNICAST_SERVICE_DISCOVERY_COMPLETE_WITH_RESPONSE = 0x03
SL_ZIGBEE_AF_BROADCAST_SERVICE_DISCOVERY_COMPLETE_WITH_RESPONSE = 0x04
SL_ZIGBEE_AF_UNICAST_SERVICE_DISCOVERY_COMPLETE_WITH_EMPTY_RESPONSE = 0x05
SL_ZIGBEE_AF_BROADCAST_SERVICE_DISCOVERY_COMPLETE_WITH_EMPTY_RESPONSE = 0x06
}

Indicate the result of the service discovery. Unicast discoveries are completed as soon as a response is received. Broadcast discoveries wait a period of time for multiple responses to be received.

enum
SL_ZIGBEE_AF_LONG_POLL
SL_ZIGBEE_AF_SHORT_POLL
}

Control how the device will poll for a given active cluster-related event. When the event is scheduled, the application can pass a poll control value which will be stored along with the event. The processor is only allowed to poll according to the most restrictive value for all active event. For example, if two events are active, one with SL_ZIGBEE_AF_LONG_POLL and the other with SL_ZIGBEE_AF_SHORT_POLL, the processor will short poll until the second event is deactivated.

enum
SL_ZIGBEE_AF_OK_TO_SLEEP
SL_ZIGBEE_AF_OK_TO_HIBERNATE = SL_ZIGBEE_AF_OK_TO_SLEEP
SL_ZIGBEE_AF_OK_TO_NAP
SL_ZIGBEE_AF_STAY_AWAKE
}

Control how the device will sleep for a given active cluster related event. When the event is scheduled, the scheduling code can pass a sleep control value which will be stored along with the event. The processor is only allowed to sleep according to the most restrictive sleep control value for any active event. For example, if two events are active, one with SL_ZIGBEE_AF_OK_TO_HIBERNATE and the other with SL_ZIGBEE_AF_OK_TO_NAP, the processor will only be allowed to sleep until the second event is deactivated.

enum
SL_ZIGBEE_AF_WAITING_FOR_DATA_ACK = 0x00000001
SL_ZIGBEE_AF_LAST_POLL_GOT_DATA = 0x00000002
SL_ZIGBEE_AF_WAITING_FOR_SERVICE_DISCOVERY = 0x00000004
SL_ZIGBEE_AF_WAITING_FOR_ZDO_RESPONSE = 0x00000008
SL_ZIGBEE_AF_WAITING_FOR_ZCL_RESPONSE = 0x00000010
SL_ZIGBEE_AF_WAITING_FOR_REGISTRATION = 0x00000020
SL_ZIGBEE_AF_WAITING_FOR_PARTNER_LINK_KEY_EXCHANGE = 0x00000040
SL_ZIGBEE_AF_FORCE_SHORT_POLL = 0x00000080
SL_ZIGBEE_AF_FRAGMENTATION_IN_PROGRESS = 0x00000100
SL_ZIGBEE_AF_FORCE_SHORT_POLL_FOR_PARENT_CONNECTIVITY = 0x00000200
SL_ZIGBEE_AF_WAITING_FOR_TC_KEY_UPDATE = 0x00000400
}

Track tasks that the Application framework cares about. These are intended to be tasks that should keep the device out of hibernation like an application level request / response. If the response does not come in as a data ACK, the application needs to stay out of hibernation to wait and poll for it.

enum
SL_ZIGBEE_AF_PLUGIN_PRICE_CPP_AUTH_PENDING = 0
SL_ZIGBEE_AF_PLUGIN_PRICE_CPP_AUTH_ACCEPTED = 1
SL_ZIGBEE_AF_PLUGIN_PRICE_CPP_AUTH_REJECTED = 2
SL_ZIGBEE_AF_PLUGIN_PRICE_CPP_AUTH_FORCED = 3
SL_ZIGBEE_AF_PLUGIN_PRICE_CPP_AUTH_RESERVED = 4
}

Specifies CPP Authorization values.

enum
SL_ZIGBEE_AF_PLUGIN_TUNNELING_CLIENT_SUCCESS = 0x00
SL_ZIGBEE_AF_PLUGIN_TUNNELING_CLIENT_BUSY = 0x01
SL_ZIGBEE_AF_PLUGIN_TUNNELING_CLIENT_NO_MORE_TUNNEL_IDS = 0x02
SL_ZIGBEE_AF_PLUGIN_TUNNELING_CLIENT_PROTOCOL_NOT_SUPPORTED = 0x03
SL_ZIGBEE_AF_PLUGIN_TUNNELING_CLIENT_FLOW_CONTROL_NOT_SUPPORTED = 0x04
SL_ZIGBEE_AF_PLUGIN_TUNNELING_CLIENT_IEEE_ADDRESS_REQUEST_FAILED = 0xF9
SL_ZIGBEE_AF_PLUGIN_TUNNELING_CLIENT_IEEE_ADDRESS_NOT_FOUND = 0xFA
SL_ZIGBEE_AF_PLUGIN_TUNNELING_CLIENT_ADDRESS_TABLE_FULL = 0xFB
SL_ZIGBEE_AF_PLUGIN_TUNNELING_CLIENT_LINK_KEY_EXCHANGE_REQUEST_FAILED = 0xFC
SL_ZIGBEE_AF_PLUGIN_TUNNELING_CLIENT_LINK_KEY_EXCHANGE_FAILED = 0xFD
SL_ZIGBEE_AF_PLUGIN_TUNNELING_CLIENT_REQUEST_TUNNEL_FAILED = 0xFE
SL_ZIGBEE_AF_PLUGIN_TUNNELING_CLIENT_REQUEST_TUNNEL_TIMEOUT = 0xFF
}
enum
SL_ZIGBEE_AF_ZLL_ABORTED_BY_APPLICATION = 0x00
SL_ZIGBEE_AF_ZLL_CHANNEL_CHANGE_FAILED = 0x01
SL_ZIGBEE_AF_ZLL_JOINING_FAILED = 0x02
SL_ZIGBEE_AF_ZLL_NO_NETWORKS_FOUND = 0x03
SL_ZIGBEE_AF_ZLL_PREEMPTED_BY_STACK = 0x04
SL_ZIGBEE_AF_ZLL_SENDING_START_JOIN_FAILED = 0x05
SL_ZIGBEE_AF_ZLL_SENDING_DEVICE_INFORMATION_REQUEST_FAILED = 0x06
SL_ZIGBEE_AF_ZLL_SENDING_IDENTIFY_REQUEST_FAILED = 0x07
SL_ZIGBEE_AF_ZLL_SENDING_RESET_TO_FACTORY_NEW_REQUEST_FAILED = 0x08
SL_ZIGBEE_AF_ZLL_NETWORK_FORMATION_FAILED = 0x09
SL_ZIGBEE_AF_ZLL_NETWORK_UPDATE_OPERATION = 0x0A
}

Status codes used by the ZLL Commissioning plugin.

enum
SL_ZIGBEE_AF_IMAGE_BLOCK_REQUEST_OPTIONS_NONE = 0x00
SL_ZIGBEE_AF_IMAGE_BLOCK_REQUEST_MIN_BLOCK_REQUEST_SUPPORTED_BY_CLIENT = 0x01
SL_ZIGBEE_AF_IMAGE_BLOCK_REQUEST_MIN_BLOCK_REQUEST_SUPPORTED_BY_SERVER = 0x02
SL_ZIGBEE_AF_IMAGE_BLOCK_REQUEST_SIMULATED_FROM_PAGE_REQUEST = 0x04
}

The list of options possible for the image block request/response.

enum
SL_ZIGBEE_AF_OTA_STORAGE_SUCCESS = 0
SL_ZIGBEE_AF_OTA_STORAGE_ERROR = 1
SL_ZIGBEE_AF_OTA_STORAGE_RETURN_DATA_TOO_LONG = 2
SL_ZIGBEE_AF_OTA_STORAGE_PARTIAL_FILE_FOUND = 3
SL_ZIGBEE_AF_OTA_STORAGE_OPERATION_IN_PROGRESS = 4
}

Contain the success or error code of an OTA storage device operation.

enum
SL_ZIGBEE_AF_OTA_DOWNLOAD_AND_VERIFY_SUCCESS = 0
SL_ZIGBEE_AF_OTA_DOWNLOAD_TIME_OUT = 1
SL_ZIGBEE_AF_OTA_VERIFY_FAILED = 2
SL_ZIGBEE_AF_OTA_SERVER_ABORTED = 3
SL_ZIGBEE_AF_OTA_CLIENT_ABORTED = 4
SL_ZIGBEE_AF_OTA_ERASE_FAILED = 5
}

Contain the success or error code of an OTA download operation.

enum
NO_APP_MESSAGE = 0
RECEIVED_PARTNER_CERTIFICATE = 1
GENERATING_EPHEMERAL_KEYS = 2
GENERATING_SHARED_SECRET = 3
KEY_GENERATION_DONE = 4
GENERATE_SHARED_SECRET_DONE = 5
LINK_KEY_ESTABLISHED = 6
NO_LOCAL_RESOURCES = 7
PARTNER_NO_RESOURCES = 8
TIMEOUT_OCCURRED = 9
INVALID_APP_COMMAND = 10
MESSAGE_SEND_FAILURE = 11
PARTNER_SENT_TERMINATE = 12
INVALID_PARTNER_MESSAGE = 13
PARTNER_SENT_DEFAULT_RESPONSE_ERROR = 14
BAD_CERTIFICATE_ISSUER = 15
KEY_CONFIRM_FAILURE = 16
BAD_KEY_ESTABLISHMENT_SUITE = 17
KEY_TABLE_FULL = 18
NO_ESTABLISHMENT_ALLOWED = 19
INVALID_CERTIFICATE_KEY_USAGE = 20
}
enum
SL_ZIGBEE_AF_IMAGE_GOOD = 0
SL_ZIGBEE_AF_IMAGE_BAD = 1
SL_ZIGBEE_AF_IMAGE_VERIFY_IN_PROGRESS = 2
}

Indicate the state of an OTA bootload image undergoing verification. This is used both for cryptographic verification and manufacturer-specific verification.

enum
SL_ZIGBEE_AF_INVALID_KEY_ESTABLISHMENT_SUITE = 0x0000
SL_ZIGBEE_AF_CBKE_KEY_ESTABLISHMENT_SUITE_163K1 = 0x0001
SL_ZIGBEE_AF_CBKE_KEY_ESTABLISHMENT_SUITE_283K1 = 0x0002
}

CBKE Library types.

enum
UNUSED_PASSWORD = 0x00
SERVICE_PASSWORD = 0x01
CONSUMER_PASSWORD = 0x02
}
enum
SL_ZIGBEE_AF_DEVICE_MANAGEMENT_CHANGE_OF_TENANCY_PENDING_MASK = 0x01
SL_ZIGBEE_AF_DEVICE_MANAGEMENT_CHANGE_OF_SUPPLIER_PENDING_MASK = 0x02
SL_ZIGBEE_AF_DEVICE_MANAGEMENT_UPDATE_SITE_ID_PENDING_MASK = 0x04
SL_ZIGBEE_AF_DEVICE_MANAGEMENT_UPDATE_CIN_PENDING_MASK = 0x08
SL_ZIGBEE_AF_DEVICE_MANAGEMENT_UPDATE_SERVICE_PASSWORD_PENDING_MASK = 0x10
SL_ZIGBEE_AF_DEVICE_MANAGEMENT_UPDATE_CONSUMER_PASSWORD_PENDING_MASK = 0x20
}
enum
SL_ZIGBEE_AF_DEVICE_DISCOVERY_STATUS_NONE = 0x00
SL_ZIGBEE_AF_DEVICE_DISCOVERY_STATUS_NEW = 0x01
SL_ZIGBEE_AF_DEVICE_DISCOVERY_STATUS_FIND_ENDPOINTS = 0x02
SL_ZIGBEE_AF_DEVICE_DISCOVERY_STATUS_FIND_CLUSTERS = 0x04
SL_ZIGBEE_AF_DEVICE_DISCOVERY_STATUS_FIND_STACK_REVISION = 0x08
SL_ZIGBEE_AF_DEVICE_DISCOVERY_STATUS_DONE = 0x40
SL_ZIGBEE_AF_DEVICE_DISCOVERY_STATUS_FAILED = 0x80
}

Typedefs#

typedef uint16_t

Refer to the Zigbee application profile ID.

typedef uint16_t

Refer to the ZCL attribute ID.

typedef uint16_t

Refer to the ZCL cluster ID.

typedef uint8_t

Refer to the ZCL attribute type.

typedef uint8_t

User for the cluster mask.

typedef uint8_t

User for the attribute mask.

typedef void(*

Use for either of the cluster functions.

typedef uint8_t

Interpan Message type: unicast, broadcast, or multicast.

typedef uint16_t

The options for sending/receiving interpan messages.

typedef uint8_t

The options for what interpan messages are allowed.

typedef sl_zigbee_tc_link_key_request_policy_t
typedef sl_zigbee_app_link_key_request_policy_t
typedef uint8_t

Bitmask data type for storing one bit of information for each ESI in the ESI table.

typedef void()
sl_zigbee_af_service_discovery_callback_t(const sl_zigbee_af_service_discovery_result_t *result)

Define a callback where a code element or cluster can be informed as to the result of a service discovery they have requested. For each match, the callback is fired with all the resulting matches from that source. If the discovery was unicast to a specific device, the callback is only fired once with either MATCH_FOUND or COMPLETE (no matches found). If the discovery is broadcast, multiple callbacks may be fired with SL_ZIGBEE_AF_BROADCAST_SERVICE_DISCOVERY_RESPONSE_RECEIVED. After a few seconds, the callback is fired with SL_ZIGBEE_AF_BROADCAST_SERVICE_DISCOVERY_COMPLETE_WITH_RESPONSE or SL_ZIGBEE_AF_BROADCAST_SERVICE_DISCOVERY_COMPLETE_WITH_EMPTY_RESPONSE as the result.

typedef void()

Define a callback where a code element or cluster can be informed as to the result of a request to initiate a partner link key exchange. The callback will be triggered with success equal to true if the exchange completed successfully.

typedef void(*

Refer to the handler for network events.

typedef void(*

Refer to the handler for endpoint events.

typedef void(*
sl_zigbee_af_tick_function_t)(uint8_t endpoint)

Refer to the tick callback for cluster.

typedef void(*
sl_zigbee_af_init_function_t)(uint8_t endpoint)

Refer to the init callback for cluster.

typedef void(*
sl_zigbee_af_cluster_attribute_changed_callback_t)(uint8_t endpoint, sl_zigbee_af_attribute_id_t attributeId)

Refer to the attribute changed callback function.

typedef void(*
sl_zigbee_af_manufacturer_specific_cluster_attribute_changed_callback_t)(uint8_t endpoint, sl_zigbee_af_attribute_id_t attributeId, uint16_t manufacturerCode)

Refer to the manufacturer-specific attribute changed callback function.

sl_zigbee_af_cluster_pre_attribute_changed_callback_t)(uint8_t endpoint, sl_zigbee_af_attribute_id_t attributeId, sl_zigbee_af_attribute_type_t attributeType, uint8_t size, uint8_t *value)

Refer to the pre-attribute changed callback function.

typedef void(*
sl_zigbee_af_default_response_function_t)(uint8_t endpoint, uint8_t commandId, sl_zigbee_af_status_t status)

Refer to the default response callback function.

typedef void(*
sl_zigbee_af_message_sent_function_t)(sl_zigbee_outgoing_message_type_t type, uint16_t indexOrDestination, sl_zigbee_aps_frame_t *apsFrame, uint16_t msgLen, uint8_t *message, sl_status_t status)

Refer to the message sent callback function.

typedef uint16_t

Zigbee Internet Client/Server Remote Cluster Types.

Macros#

#define
SL_ZIGBEE_AF_NULL_MANUFACTURER_CODE 0x0000u

A distinguished manufacturer code that is used to indicate the absence of a manufacturer-specific profile, cluster, command, or attribute.

#define
SL_ZIGBEE_AF_INVALID_PROFILE_ID 0xFFFFu

An invalid profile ID This is a reserved profileId.

#define
SL_ZIGBEE_AF_INTER_PAN_UNICAST 0x00u
#define
SL_ZIGBEE_AF_INTER_PAN_BROADCAST 0x08u
#define
SL_ZIGBEE_AF_INTER_PAN_MULTICAST 0x0Cu
#define
INTER_PAN_UNICAST SL_ZIGBEE_AF_INTER_PAN_UNICAST
#define
INTER_PAN_BROADCAST SL_ZIGBEE_AF_INTER_PAN_BROADCAST
#define
INTER_PAN_MULTICAST SL_ZIGBEE_AF_INTER_PAN_MULTICAST
#define
SL_ZIGBEE_AF_INTERPAN_OPTION_NONE 0x0000u
#define
SL_ZIGBEE_AF_INTERPAN_OPTION_APS_ENCRYPT 0x0001u
#define
SL_ZIGBEE_AF_INTERPAN_OPTION_MAC_HAS_LONG_ADDRESS 0x0002u
#define
sli_zigbee_interpan_header_t sl_zigbee_af_interpan_header_t
#define
SL_ZIGBEE_AF_INTERPAN_DIRECTION_CLIENT_TO_SERVER 0x01u
#define
SL_ZIGBEE_AF_INTERPAN_DIRECTION_SERVER_TO_CLIENT 0x02u
#define
SL_ZIGBEE_AF_INTERPAN_DIRECTION_BOTH 0x03u
#define
SL_ZIGBEE_AF_INTERPAN_GLOBAL_COMMAND 0x04u
#define
SL_ZIGBEE_AF_INTERPAN_MANUFACTURER_SPECIFIC 0x08u
#define
SL_ZIGBEE_AF_ALLOW_TC_KEY_REQUESTS SL_ZIGBEE_ALLOW_TC_LINK_KEY_REQUEST_AND_SEND_CURRENT_KEY
#define
SL_ZIGBEE_AF_DENY_TC_KEY_REQUESTS SL_ZIGBEE_DENY_TC_LINK_KEY_REQUESTS
#define
SL_ZIGBEE_AF_ALLOW_APP_KEY_REQUESTS SL_ZIGBEE_ALLOW_APP_LINK_KEY_REQUEST
#define
SL_ZIGBEE_AF_DENY_APP_KEY_REQUESTS SL_ZIGBEE_DENY_APP_LINK_KEY_REQUESTS
#define
EM_AF_DISCOVERY_RESPONSE_MASK (0x05u)
#define
sl_zigbee_af_have_discovery_response_status (status)

A simple way to determine if the service discovery callback has a response.

#define
SL_ZIGBEE_AF_GROUP_TABLE_NULL_INDEX 0xFFu

Indicate the absence of a Group table entry.

#define
SL_ZIGBEE_AF_GROUP_TABLE_UNUSED_ENDPOINT_ID 0x00u

Value used when setting or getting the endpoint in a Group table entry. It indicates that the entry is not in use.

#define
ZCL_GROUPS_CLUSTER_MAXIMUM_NAME_LENGTH 16u

Maximum length of Group names, not including the length byte.

#define
SL_ZIGBEE_AF_SCENE_TABLE_NULL_INDEX 0xFFu

Indicates the absence of a Scene table entry.

#define
SL_ZIGBEE_AF_SCENE_TABLE_UNUSED_ENDPOINT_ID 0x00u

Value used when setting or getting the endpoint in a Scene table entry. It indicates that the entry is not in use.

#define
ZCL_SCENES_CLUSTER_MAXIMUM_NAME_LENGTH 16u

Maximum length of Scene names, not including the length byte.

#define
ZCL_SCENES_GLOBAL_SCENE_GROUP_ID 0x0000u

The group identifier for the global scene.

#define
ZCL_SCENES_GLOBAL_SCENE_SCENE_ID 0x00u

The scene identifier for the global scene.

#define
SL_ZIGBEE_AF_PLUGIN_MESSAGING_CLIENT_MESSAGE_SIZE 0
#define
ZCL_PRICE_CLUSTER_MAXIMUM_RATE_LABEL_LENGTH 11u
#define
SL_ZIGBEE_AF_PLUGIN_REPORTING_UNUSED_ENDPOINT_ID 0x00u

Use when setting or getting the endpoint in a report table entry. It indicates that the entry is not in use.

#define
SL_ZIGBEE_AF_OTA_MAX_HEADER_STRING_LENGTH 32u

The maximum size of the string that is present in the header of the Zigbee Over-the-air file format.

#define
UID_SIZE 32u
#define
APP_NOTIFY_ERROR_CODE_START NO_LOCAL_RESOURCES
#define
APP_NOTIFY_MESSAGE_TEXT undefined
#define
SL_ZIGBEE_AF_STANDALONE_BOOTLOADER_HARDWARE_TAG_LENGTH 16u

The length of the hardware tag in the Ember Bootloader Query Response.

#define
SL_ZIGBEE_AF_PLUGIN_SIMPLE_METERING_SERVER_ELECTRIC_METER 0
#define
SL_ZIGBEE_AF_PLUGIN_SIMPLE_METERING_SERVER_GAS_METER 1
#define
SL_ZIGBEE_AF_METERING_FNF_NEW_OTA_FIRMWARE 0x00000001
#define
SL_ZIGBEE_AF_METERING_FNF_CBKE_UPDATE_REQUEST 0x00000002
#define
SL_ZIGBEE_AF_METERING_FNF_TIME_SYNC 0x00000004
#define
SL_ZIGBEE_AF_METERING_FNF_STAY_AWAKE_REQUEST_HAN 0x00000010
#define
SL_ZIGBEE_AF_METERING_FNF_STAY_AWAKE_REQUEST_WAN 0x00000020
#define
SL_ZIGBEE_AF_METERING_FNF_PUSH_HISTORICAL_METERING_DATA_ATTRIBUTE_SET 0x000001C0
#define
SL_ZIGBEE_AF_METERING_FNF_PUSH_HISTORICAL_PREPAYMENT_DATA_ATTRIBUTE_SET 0x00000E00
#define
SL_ZIGBEE_AF_METERING_FNF_PUSH_ALL_STATIC_DATA_BASIC_CLUSTER 0x00001000
#define
SL_ZIGBEE_AF_METERING_FNF_PUSH_ALL_STATIC_DATA_METERING_CLUSTER 0x00002000
#define
SL_ZIGBEE_AF_METERING_FNF_PUSH_ALL_STATIC_DATA_PREPAYMENT_CLUSTER 0x00004000
#define
SL_ZIGBEE_AF_METERING_FNF_NETWORK_KEY_ACTIVE 0x00008000
#define
SL_ZIGBEE_AF_METERING_FNF_DISPLAY_MESSAGE 0x00010000
#define
SL_ZIGBEE_AF_METERING_FNF_CANCEL_ALL_MESSAGES 0x00020000
#define
SL_ZIGBEE_AF_METERING_FNF_CHANGE_SUPPLY 0x00040000
#define
SL_ZIGBEE_AF_METERING_FNF_LOCAL_CHANGE_SUPPLY 0x00080000
#define
SL_ZIGBEE_AF_METERING_FNF_SET_UNCONTROLLED_FLOW_THRESHOLD 0x00100000
#define
SL_ZIGBEE_AF_METERING_FNF_TUNNEL_MESSAGE_PENDING 0x00200000
#define
SL_ZIGBEE_AF_METERING_FNF_GET_SNAPSHOT 0x00400000
#define
SL_ZIGBEE_AF_METERING_FNF_GET_SAMPLED_DATA 0x00800000
#define
SL_ZIGBEE_AF_METERING_FNF_NEW_SUB_GHZ_CHANNEL_MASKS_AVAILABLE 0x01000000
#define
SL_ZIGBEE_AF_METERING_FNF_ENERGY_SCAN_PENDING 0x02000000
#define
SL_ZIGBEE_AF_METERING_FNF_CHANNEL_CHANGE_PENDING 0x04000000
#define
SL_ZIGBEE_AF_METERING_NF2_PUBLISH_PRICE 0x00000001
#define
SL_ZIGBEE_AF_METERING_NF2_PUBLISH_BLOCK_PERIOD 0x00000002
#define
SL_ZIGBEE_AF_METERING_NF2_PUBLISH_TARIFF_INFORMATION 0x00000004
#define
SL_ZIGBEE_AF_METERING_NF2_PUBLISH_CONVERSION_FACTOR 0x00000008
#define
SL_ZIGBEE_AF_METERING_NF2_PUBLISH_CALORIFIC_VALUE 0x00000010
#define
SL_ZIGBEE_AF_METERING_NF2_PUBLISH_CO2_VALUE 0x00000020
#define
SL_ZIGBEE_AF_METERING_NF2_PUBLISH_BILLING_PERIOD 0x00000040
#define
SL_ZIGBEE_AF_METERING_NF2_PUBLISH_CONSOLIDATED_BILL 0x00000080
#define
SL_ZIGBEE_AF_METERING_NF2_PUBLISH_PRICE_MATRIX 0x00000100
#define
SL_ZIGBEE_AF_METERING_NF2_PUBLISH_BLOCK_THRESHOLDS 0x00000200
#define
SL_ZIGBEE_AF_METERING_NF2_PUBLISH_CURRENCY_CONVERSION 0x00000400
#define
SL_ZIGBEE_AF_METERING_NF2_PUBLISH_CREDIT_PAYMENT_INFO 0x00001000
#define
SL_ZIGBEE_AF_METERING_NF2_PUBLISH_CPP_EVENT 0x00002000
#define
SL_ZIGBEE_AF_METERING_NF2_PUBLISH_TIER_LABELS 0x00004000
#define
SL_ZIGBEE_AF_METERING_NF2_CANCEL_TARIFF 0x00008000
#define
SL_ZIGBEE_AF_METERING_NF3_PUBLISH_CALENDAR 0x00000001
#define
SL_ZIGBEE_AF_METERING_NF3_PUBLISH_SPECIAL_DAYS 0x00000002
#define
SL_ZIGBEE_AF_METERING_NF3_PUBLISH_SEASONS 0x00000004
#define
SL_ZIGBEE_AF_METERING_NF3_PUBLISH_WEEK 0x00000008
#define
SL_ZIGBEE_AF_METERING_NF3_PUBLISH_DAY 0x00000010
#define
SL_ZIGBEE_AF_METERING_NF3_CANCEL_CALENDAR 0x00000020
#define
SL_ZIGBEE_AF_METERING_NF4_SELECT_AVAILABLE_EMERGENCY_CREDIT 0x00000001
#define
SL_ZIGBEE_AF_METERING_NF4_CHANGE_DEBT 0x00000002
#define
SL_ZIGBEE_AF_METERING_NF4_EMERGENCY_CREDIT_SETUP 0x00000004
#define
SL_ZIGBEE_AF_METERING_NF4_CONSUMER_TOP_UP 0x00000008
#define
SL_ZIGBEE_AF_METERING_NF4_CREDIT_ADJUSTMENT 0x00000010
#define
SL_ZIGBEE_AF_METERING_NF4_CHANGE_PAYMENT_MODE 0x00000020
#define
SL_ZIGBEE_AF_METERING_NF4_GET_PREPAY_SNAPSHOT 0x00000040
#define
SL_ZIGBEE_AF_METERING_NF4_GET_TOP_UP_LOG 0x00000080
#define
SL_ZIGBEE_AF_METERING_NF4_SET_LOW_CREDIT_WARNING_LEVEL 0x00000100
#define
SL_ZIGBEE_AF_METERING_NF4_GET_DEBT_REPAYMENT_LOG 0x00000200
#define
SL_ZIGBEE_AF_METERING_NF4_SET_MAXIMUM_CREDIT_LIMIT 0x00000400
#define
SL_ZIGBEE_AF_METERING_NF4_SET_OVERALL_DEBT_CAP 0x00000800
#define
SL_ZIGBEE_AF_METERING_NF5_PUBLISH_CHANGE_OF_TENANCY 0x00000001
#define
SL_ZIGBEE_AF_METERING_NF5_PUBLISH_CHANGE_OF_SUPPLIER 0x00000002
#define
SL_ZIGBEE_AF_METERING_NF5_REQUEST_NEW_PASSWORD_1_RESPONSE 0x00000004
#define
SL_ZIGBEE_AF_METERING_NF5_REQUEST_NEW_PASSWORD_2_RESPONSE 0x00000008
#define
SL_ZIGBEE_AF_METERING_NF5_REQUEST_NEW_PASSWORD_3_RESPONSE 0x00000010
#define
SL_ZIGBEE_AF_METERING_NF5_REQUEST_NEW_PASSWORD_4_RESPONSE 0x00000020
#define
SL_ZIGBEE_AF_METERING_NF5_UPDATE_SITE_ID 0x00000040
#define
SL_ZIGBEE_AF_METERING_NF5_RESET_BATTERY_COUNTER 0x00000080
#define
SL_ZIGBEE_AF_METERING_NF5_UPDATE_CIN 0x00000100
#define
SL_ZIGBEE_AF_DEVICE_MANAGEMENT_MAXIMUM_PROPOSED_PROVIDER_NAME_LENGTH (16u)

Device Management plugin types.

#define
SL_ZIGBEE_AF_DEVICE_MANAGEMENT_MAXIMUM_PROPOSED_PROVIDER_CONTACT_DETAILS_LENGTH (18u)
#define
SL_ZIGBEE_AF_DEVICE_MANAGEMENT_MAXIMUM_SITE_ID_LENGTH (32u)
#define
SL_ZIGBEE_AF_DEVICE_MANAGEMENT_MAXIMUM_CIN_LENGTH (24u)
#define
SL_ZIGBEE_AF_DEVICE_MANAGEMENT_MAXIMUM_PASSWORD_LENGTH (10u)
#define
SL_ZIGBEE_AF_REMOTE_CLUSTER_TYPE_NONE 0x0000u
#define
SL_ZIGBEE_AF_REMOTE_CLUSTER_TYPE_SERVER 0x0001u
#define
SL_ZIGBEE_AF_REMOTE_CLUSTER_TYPE_CLIENT 0x0002u
#define
SL_ZIGBEE_AF_REMOTE_CLUSTER_TYPE_INVALID 0xFFFFu
#define
SL_ZIGBEE_AF_MAX_CLUSTERS_PER_ENDPOINT 3u
#define
SL_ZIGBEE_AF_MAX_ENDPOINTS_PER_DEVICE 1u
#define
SL_ZIGBEE_AF_INVALID_CLUSTER_ID 0xFFFFu
#define
SL_ZIGBEE_AF_INVALID_ENDPOINT 0xFFu
#define
SL_ZIGBEE_AF_INVALID_ENDPOINT_INDEX 0xFFu
#define
SL_ZIGBEE_AF_INVALID_PAN_ID 0xFFFFu
#define
SL_ZIGBEE_AF_PERMIT_JOIN_FOREVER 0xFFu

Permit join times.

#define
SL_ZIGBEE_AF_PERMIT_JOIN_MAX_TIMEOUT 0xFEu
#define
SL_ZIGBEE_AF_ZDO_RESPONSE_OVERHEAD 2u

The overhead of the ZDO response. 1 byte for the sequence and 1 byte for the status code.

Enumeration Documentation#

sl_zigbee_af_security_profile_t#

sl_zigbee_af_security_profile_t
Enumerator
SL_ZIGBEE_AF_SECURITY_PROFILE_NONE
SL_ZIGBEE_AF_SECURITY_PROFILE_HA
SL_ZIGBEE_AF_SECURITY_PROFILE_HA12
SL_ZIGBEE_AF_SECURITY_PROFILE_SE_TEST
SL_ZIGBEE_AF_SECURITY_PROFILE_SE_FULL
SL_ZIGBEE_AF_SECURITY_PROFILE_Z3
SL_ZIGBEE_AF_SECURITY_PROFILE_CUSTOM

sl_zigbee_af_service_discovery_status_t#

sl_zigbee_af_service_discovery_status_t

Indicate the result of the service discovery. Unicast discoveries are completed as soon as a response is received. Broadcast discoveries wait a period of time for multiple responses to be received.

Enumerator
SL_ZIGBEE_AF_BROADCAST_SERVICE_DISCOVERY_COMPLETE
SL_ZIGBEE_AF_BROADCAST_SERVICE_DISCOVERY_RESPONSE_RECEIVED
SL_ZIGBEE_AF_UNICAST_SERVICE_DISCOVERY_TIMEOUT
SL_ZIGBEE_AF_UNICAST_SERVICE_DISCOVERY_COMPLETE_WITH_RESPONSE
SL_ZIGBEE_AF_BROADCAST_SERVICE_DISCOVERY_COMPLETE_WITH_RESPONSE
SL_ZIGBEE_AF_UNICAST_SERVICE_DISCOVERY_COMPLETE_WITH_EMPTY_RESPONSE
SL_ZIGBEE_AF_BROADCAST_SERVICE_DISCOVERY_COMPLETE_WITH_EMPTY_RESPONSE

sl_zigbee_af_event_poll_control_t#

sl_zigbee_af_event_poll_control_t

Control how the device will poll for a given active cluster-related event. When the event is scheduled, the application can pass a poll control value which will be stored along with the event. The processor is only allowed to poll according to the most restrictive value for all active event. For example, if two events are active, one with SL_ZIGBEE_AF_LONG_POLL and the other with SL_ZIGBEE_AF_SHORT_POLL, the processor will short poll until the second event is deactivated.

Enumerator
SL_ZIGBEE_AF_LONG_POLL
SL_ZIGBEE_AF_SHORT_POLL

sl_zigbee_af_event_sleep_control_t#

sl_zigbee_af_event_sleep_control_t

Control how the device will sleep for a given active cluster related event. When the event is scheduled, the scheduling code can pass a sleep control value which will be stored along with the event. The processor is only allowed to sleep according to the most restrictive sleep control value for any active event. For example, if two events are active, one with SL_ZIGBEE_AF_OK_TO_HIBERNATE and the other with SL_ZIGBEE_AF_OK_TO_NAP, the processor will only be allowed to sleep until the second event is deactivated.

Enumerator
SL_ZIGBEE_AF_OK_TO_SLEEP
SL_ZIGBEE_AF_OK_TO_HIBERNATE

Deprecated

SL_ZIGBEE_AF_OK_TO_NAP

Deprecated

SL_ZIGBEE_AF_STAY_AWAKE

sl_zigbee_af_application_task_t#

sl_zigbee_af_application_task_t

Track tasks that the Application framework cares about. These are intended to be tasks that should keep the device out of hibernation like an application level request / response. If the response does not come in as a data ACK, the application needs to stay out of hibernation to wait and poll for it.

Some tasks do not necessarily have a response. For example, a ZDO request may or may not have a response. In this case, the application framework cannot rely on the fact that a response will come in to end the wake cycle, so the Application framework must time out the wake cycle if no expected response is received or no other event can be relied upon to end the wake cycle.

Add these types of tasks to the wake timeout mask by calling sl_zigbee_af_set_wake_timeout_bitmask_cb so that they can be governed by a timeout instead of a request / response.

The current tasks bitmask is an uint32_t bitmask used to track which tasks are active at any given time. The bottom 16 bits, values 0x01 - 0x8000 are reserved for Ember's use. The top 16 bits are reserved for the customer, values 0x10000 - 0x80000000

Enumerator
SL_ZIGBEE_AF_WAITING_FOR_DATA_ACK
SL_ZIGBEE_AF_LAST_POLL_GOT_DATA
SL_ZIGBEE_AF_WAITING_FOR_SERVICE_DISCOVERY
SL_ZIGBEE_AF_WAITING_FOR_ZDO_RESPONSE
SL_ZIGBEE_AF_WAITING_FOR_ZCL_RESPONSE
SL_ZIGBEE_AF_WAITING_FOR_REGISTRATION
SL_ZIGBEE_AF_WAITING_FOR_PARTNER_LINK_KEY_EXCHANGE
SL_ZIGBEE_AF_FORCE_SHORT_POLL
SL_ZIGBEE_AF_FRAGMENTATION_IN_PROGRESS
SL_ZIGBEE_AF_FORCE_SHORT_POLL_FOR_PARENT_CONNECTIVITY
SL_ZIGBEE_AF_WAITING_FOR_TC_KEY_UPDATE

sl_zigbee_af_plugin_price_cpp_auth_t#

sl_zigbee_af_plugin_price_cpp_auth_t

Specifies CPP Authorization values.

Enumerator
SL_ZIGBEE_AF_PLUGIN_PRICE_CPP_AUTH_PENDING
SL_ZIGBEE_AF_PLUGIN_PRICE_CPP_AUTH_ACCEPTED
SL_ZIGBEE_AF_PLUGIN_PRICE_CPP_AUTH_REJECTED
SL_ZIGBEE_AF_PLUGIN_PRICE_CPP_AUTH_FORCED
SL_ZIGBEE_AF_PLUGIN_PRICE_CPP_AUTH_RESERVED

sl_zigbee_af_plugin_tunneling_client_status_t#

sl_zigbee_af_plugin_tunneling_client_status_t
Enumerator
SL_ZIGBEE_AF_PLUGIN_TUNNELING_CLIENT_SUCCESS
SL_ZIGBEE_AF_PLUGIN_TUNNELING_CLIENT_BUSY
SL_ZIGBEE_AF_PLUGIN_TUNNELING_CLIENT_NO_MORE_TUNNEL_IDS
SL_ZIGBEE_AF_PLUGIN_TUNNELING_CLIENT_PROTOCOL_NOT_SUPPORTED
SL_ZIGBEE_AF_PLUGIN_TUNNELING_CLIENT_FLOW_CONTROL_NOT_SUPPORTED
SL_ZIGBEE_AF_PLUGIN_TUNNELING_CLIENT_IEEE_ADDRESS_REQUEST_FAILED
SL_ZIGBEE_AF_PLUGIN_TUNNELING_CLIENT_IEEE_ADDRESS_NOT_FOUND
SL_ZIGBEE_AF_PLUGIN_TUNNELING_CLIENT_ADDRESS_TABLE_FULL
SL_ZIGBEE_AF_PLUGIN_TUNNELING_CLIENT_LINK_KEY_EXCHANGE_REQUEST_FAILED
SL_ZIGBEE_AF_PLUGIN_TUNNELING_CLIENT_LINK_KEY_EXCHANGE_FAILED
SL_ZIGBEE_AF_PLUGIN_TUNNELING_CLIENT_REQUEST_TUNNEL_FAILED
SL_ZIGBEE_AF_PLUGIN_TUNNELING_CLIENT_REQUEST_TUNNEL_TIMEOUT

sl_zigbee_af_zll_commissioning_status_t#

sl_zigbee_af_zll_commissioning_status_t

Status codes used by the ZLL Commissioning plugin.

Enumerator
SL_ZIGBEE_AF_ZLL_ABORTED_BY_APPLICATION
SL_ZIGBEE_AF_ZLL_CHANNEL_CHANGE_FAILED
SL_ZIGBEE_AF_ZLL_JOINING_FAILED
SL_ZIGBEE_AF_ZLL_NO_NETWORKS_FOUND
SL_ZIGBEE_AF_ZLL_PREEMPTED_BY_STACK
SL_ZIGBEE_AF_ZLL_SENDING_START_JOIN_FAILED
SL_ZIGBEE_AF_ZLL_SENDING_DEVICE_INFORMATION_REQUEST_FAILED
SL_ZIGBEE_AF_ZLL_SENDING_IDENTIFY_REQUEST_FAILED
SL_ZIGBEE_AF_ZLL_SENDING_RESET_TO_FACTORY_NEW_REQUEST_FAILED
SL_ZIGBEE_AF_ZLL_NETWORK_FORMATION_FAILED
SL_ZIGBEE_AF_ZLL_NETWORK_UPDATE_OPERATION

sl_zigbee_af_image_block_request_options_t#

sl_zigbee_af_image_block_request_options_t

The list of options possible for the image block request/response.

Enumerator
SL_ZIGBEE_AF_IMAGE_BLOCK_REQUEST_OPTIONS_NONE
SL_ZIGBEE_AF_IMAGE_BLOCK_REQUEST_MIN_BLOCK_REQUEST_SUPPORTED_BY_CLIENT
SL_ZIGBEE_AF_IMAGE_BLOCK_REQUEST_MIN_BLOCK_REQUEST_SUPPORTED_BY_SERVER
SL_ZIGBEE_AF_IMAGE_BLOCK_REQUEST_SIMULATED_FROM_PAGE_REQUEST

sl_zigbee_af_ota_storage_status_t#

sl_zigbee_af_ota_storage_status_t

Contain the success or error code of an OTA storage device operation.

Enumerator
SL_ZIGBEE_AF_OTA_STORAGE_SUCCESS
SL_ZIGBEE_AF_OTA_STORAGE_ERROR
SL_ZIGBEE_AF_OTA_STORAGE_RETURN_DATA_TOO_LONG
SL_ZIGBEE_AF_OTA_STORAGE_PARTIAL_FILE_FOUND
SL_ZIGBEE_AF_OTA_STORAGE_OPERATION_IN_PROGRESS

sl_zigbee_af_ota_download_result_t#

sl_zigbee_af_ota_download_result_t

Contain the success or error code of an OTA download operation.

Enumerator
SL_ZIGBEE_AF_OTA_DOWNLOAD_AND_VERIFY_SUCCESS
SL_ZIGBEE_AF_OTA_DOWNLOAD_TIME_OUT
SL_ZIGBEE_AF_OTA_VERIFY_FAILED
SL_ZIGBEE_AF_OTA_SERVER_ABORTED
SL_ZIGBEE_AF_OTA_CLIENT_ABORTED
SL_ZIGBEE_AF_OTA_ERASE_FAILED

sl_zigbee_af_key_establishment_notify_message_t#

sl_zigbee_af_key_establishment_notify_message_t
Enumerator
NO_APP_MESSAGE
RECEIVED_PARTNER_CERTIFICATE
GENERATING_EPHEMERAL_KEYS
GENERATING_SHARED_SECRET
KEY_GENERATION_DONE
GENERATE_SHARED_SECRET_DONE
LINK_KEY_ESTABLISHED

LINK_KEY_ESTABLISHED indicates Success, key establishment done.

NO_LOCAL_RESOURCES

Error codes: Transient failures where Key Establishment could be retried.

PARTNER_NO_RESOURCES
TIMEOUT_OCCURRED
INVALID_APP_COMMAND
MESSAGE_SEND_FAILURE
PARTNER_SENT_TERMINATE
INVALID_PARTNER_MESSAGE
PARTNER_SENT_DEFAULT_RESPONSE_ERROR
BAD_CERTIFICATE_ISSUER

Fatal Errors: These results are not worth retrying because the outcome will not change.

KEY_CONFIRM_FAILURE
BAD_KEY_ESTABLISHMENT_SUITE
KEY_TABLE_FULL
NO_ESTABLISHMENT_ALLOWED

Neither initiator nor responder is an ESP/TC so the key establishment is not allowed per the spec.

INVALID_CERTIFICATE_KEY_USAGE

sl_zigbee_af_image_verify_status_t#

sl_zigbee_af_image_verify_status_t

Indicate the state of an OTA bootload image undergoing verification. This is used both for cryptographic verification and manufacturer-specific verification.

Enumerator
SL_ZIGBEE_AF_IMAGE_GOOD
SL_ZIGBEE_AF_IMAGE_BAD
SL_ZIGBEE_AF_IMAGE_VERIFY_IN_PROGRESS

sl_zigbee_af_cbke_key_establishment_suite_t#

sl_zigbee_af_cbke_key_establishment_suite_t

CBKE Library types.

Enumerator
SL_ZIGBEE_AF_INVALID_KEY_ESTABLISHMENT_SUITE
SL_ZIGBEE_AF_CBKE_KEY_ESTABLISHMENT_SUITE_163K1
SL_ZIGBEE_AF_CBKE_KEY_ESTABLISHMENT_SUITE_283K1

sl_zigbee_af_device_management_password_type_t#

sl_zigbee_af_device_management_password_type_t
Enumerator
UNUSED_PASSWORD
SERVICE_PASSWORD
CONSUMER_PASSWORD

sl_zigbee_af_device_management_change_pending_flags_t#

sl_zigbee_af_device_management_change_pending_flags_t
Enumerator
SL_ZIGBEE_AF_DEVICE_MANAGEMENT_CHANGE_OF_TENANCY_PENDING_MASK
SL_ZIGBEE_AF_DEVICE_MANAGEMENT_CHANGE_OF_SUPPLIER_PENDING_MASK
SL_ZIGBEE_AF_DEVICE_MANAGEMENT_UPDATE_SITE_ID_PENDING_MASK
SL_ZIGBEE_AF_DEVICE_MANAGEMENT_UPDATE_CIN_PENDING_MASK
SL_ZIGBEE_AF_DEVICE_MANAGEMENT_UPDATE_SERVICE_PASSWORD_PENDING_MASK
SL_ZIGBEE_AF_DEVICE_MANAGEMENT_UPDATE_CONSUMER_PASSWORD_PENDING_MASK

sl_zigbee_af_device_discovery_status_t#

sl_zigbee_af_device_discovery_status_t
Enumerator
SL_ZIGBEE_AF_DEVICE_DISCOVERY_STATUS_NONE
SL_ZIGBEE_AF_DEVICE_DISCOVERY_STATUS_NEW
SL_ZIGBEE_AF_DEVICE_DISCOVERY_STATUS_FIND_ENDPOINTS
SL_ZIGBEE_AF_DEVICE_DISCOVERY_STATUS_FIND_CLUSTERS
SL_ZIGBEE_AF_DEVICE_DISCOVERY_STATUS_FIND_STACK_REVISION
SL_ZIGBEE_AF_DEVICE_DISCOVERY_STATUS_DONE
SL_ZIGBEE_AF_DEVICE_DISCOVERY_STATUS_FAILED

Typedef Documentation#

sl_zigbee_af_profile_id_t#

typedef uint16_t sl_zigbee_af_profile_id_t

Refer to the Zigbee application profile ID.


sl_zigbee_af_attribute_id_t#

typedef uint16_t sl_zigbee_af_attribute_id_t

Refer to the ZCL attribute ID.


sl_zigbee_af_cluster_id_t#

typedef uint16_t sl_zigbee_af_cluster_id_t

Refer to the ZCL cluster ID.


sl_zigbee_af_attribute_type_t#

typedef uint8_t sl_zigbee_af_attribute_type_t

Refer to the ZCL attribute type.


sl_zigbee_af_cluster_mask_t#

typedef uint8_t sl_zigbee_af_cluster_mask_t

User for the cluster mask.


sl_zigbee_af_attribute_mask_t#

typedef uint8_t sl_zigbee_af_attribute_mask_t

User for the attribute mask.


sl_zigbee_af_generic_cluster_function_t#

typedef void(* sl_zigbee_af_generic_cluster_function_t) (void) )(void)

Use for either of the cluster functions.

This type is used for the array of the cluster functions and should always be cast into one of the specific functions before being called.


sl_zigbee_af_difference_type_t#

typedef uint64_t sl_zigbee_af_difference_type_t

Compare two ZCL attribute values. The size of this data type depends on the platform.


sl_zigbee_af_interpan_message_type_t#

typedef uint8_t sl_zigbee_af_interpan_message_type_t

Interpan Message type: unicast, broadcast, or multicast.


sl_zigbee_af_interpan_options_t#

typedef uint16_t sl_zigbee_af_interpan_options_t

The options for sending/receiving interpan messages.


sl_zigbee_af_allowed_interpan_options_t#

typedef uint8_t sl_zigbee_af_allowed_interpan_options_t

The options for what interpan messages are allowed.


sl_zigbee_af_tc_link_key_request_policy_t#

typedef sl_zigbee_tc_link_key_request_policy_t sl_zigbee_af_tc_link_key_request_policy_t

sl_zigbee_af_app_link_key_request_policy_t#

typedef sl_zigbee_app_link_key_request_policy_t sl_zigbee_af_app_link_key_request_policy_t

sl_zigbee_af_plugin_esi_management_bitmask_t#

typedef uint8_t sl_zigbee_af_plugin_esi_management_bitmask_t

Bitmask data type for storing one bit of information for each ESI in the ESI table.


sl_zigbee_af_service_discovery_callback_t#

typedef void() sl_zigbee_af_service_discovery_callback_t(const sl_zigbee_af_service_discovery_result_t *result) (const sl_zigbee_af_service_discovery_result_t *result)

Define a callback where a code element or cluster can be informed as to the result of a service discovery they have requested. For each match, the callback is fired with all the resulting matches from that source. If the discovery was unicast to a specific device, the callback is only fired once with either MATCH_FOUND or COMPLETE (no matches found). If the discovery is broadcast, multiple callbacks may be fired with SL_ZIGBEE_AF_BROADCAST_SERVICE_DISCOVERY_RESPONSE_RECEIVED. After a few seconds, the callback is fired with SL_ZIGBEE_AF_BROADCAST_SERVICE_DISCOVERY_COMPLETE_WITH_RESPONSE or SL_ZIGBEE_AF_BROADCAST_SERVICE_DISCOVERY_COMPLETE_WITH_EMPTY_RESPONSE as the result.


sl_zigbee_af_partner_link_key_exchange_callback_t#

typedef void() sl_zigbee_af_partner_link_key_exchange_callback_t(bool success) (bool success)

Define a callback where a code element or cluster can be informed as to the result of a request to initiate a partner link key exchange. The callback will be triggered with success equal to true if the exchange completed successfully.


sl_zigbee_af_network_event_handler_t#

typedef void(* sl_zigbee_af_network_event_handler_t) (void) )(void)

Refer to the handler for network events.


sl_zigbee_af_endpoint_event_handler_t#

typedef void(* sl_zigbee_af_endpoint_event_handler_t) (uint8_t endpoint) )(uint8_t endpoint)

Refer to the handler for endpoint events.


sl_zigbee_af_tick_function_t#

typedef void(* sl_zigbee_af_tick_function_t) (uint8_t endpoint) )(uint8_t endpoint)

Refer to the tick callback for cluster.

Tick function will be called once for each tick for each endpoint in the cluster. The rate of tick is determined by the metadata of the cluster.


sl_zigbee_af_init_function_t#

typedef void(* sl_zigbee_af_init_function_t) (uint8_t endpoint) )(uint8_t endpoint)

Refer to the init callback for cluster.

Init function is called when the application starts up, once for each cluster/endpoint combination.


sl_zigbee_af_cluster_attribute_changed_callback_t#

typedef void(* sl_zigbee_af_cluster_attribute_changed_callback_t) (uint8_t endpoint, sl_zigbee_af_attribute_id_t attributeId) )(uint8_t endpoint, sl_zigbee_af_attribute_id_t attributeId)

Refer to the attribute changed callback function.

This function is called just after an attribute changes.


sl_zigbee_af_manufacturer_specific_cluster_attribute_changed_callback_t#

typedef void(* sl_zigbee_af_manufacturer_specific_cluster_attribute_changed_callback_t) (uint8_t endpoint, sl_zigbee_af_attribute_id_t attributeId, uint16_t manufacturerCode) )(uint8_t endpoint, sl_zigbee_af_attribute_id_t attributeId, uint16_t manufacturerCode)

Refer to the manufacturer-specific attribute changed callback function.

This function is called just after a manufacturer-specific attribute changes.


sl_zigbee_af_cluster_pre_attribute_changed_callback_t#

typedef sl_zigbee_af_status_t(* sl_zigbee_af_cluster_pre_attribute_changed_callback_t) (uint8_t endpoint, sl_zigbee_af_attribute_id_t attributeId, sl_zigbee_af_attribute_type_t attributeType, uint8_t size, uint8_t *value) )(uint8_t endpoint, sl_zigbee_af_attribute_id_t attributeId, sl_zigbee_af_attribute_type_t attributeType, uint8_t size, uint8_t *value)

Refer to the pre-attribute changed callback function.

This function is called before an attribute changes.


sl_zigbee_af_default_response_function_t#

typedef void(* sl_zigbee_af_default_response_function_t) (uint8_t endpoint, uint8_t commandId, sl_zigbee_af_status_t status) )(uint8_t endpoint, uint8_t commandId, sl_zigbee_af_status_t status)

Refer to the default response callback function.

This function is called when default response is received, before the global callback. Global callback is called immediately afterwards.


sl_zigbee_af_message_sent_function_t#

typedef void(* sl_zigbee_af_message_sent_function_t) (sl_zigbee_outgoing_message_type_t type, uint16_t indexOrDestination, sl_zigbee_aps_frame_t *apsFrame, uint16_t msgLen, uint8_t *message, sl_status_t status) )(sl_zigbee_outgoing_message_type_t type, uint16_t indexOrDestination, sl_zigbee_aps_frame_t *apsFrame, uint16_t msgLen, uint8_t *message, sl_status_t status)

Refer to the message sent callback function.

This function is called when a message is sent.


sl_zigbee_af_remote_cluster_type_t#

typedef uint16_t sl_zigbee_af_remote_cluster_type_t

Zigbee Internet Client/Server Remote Cluster Types.