
#include "zb_version.h"#include "zb_channel_page.h"#include "zboss_api_core.h"#include "zboss_api_buf.h"#include "zboss_api_internal.h"#include "zboss_api_nwk.h"#include "zboss_api_af.h"#include "zboss_api_zdo.h"#include "zboss_api_aps.h"#include "zb_ha.h"#include "zb_diag.h"#include "zb_lite.h"Data Structures | |
| struct | zb_secur_ic_get_list_req_s |
| Request for zb_secur_ic_get_list_req. More... | |
| struct | zb_secur_ic_get_list_resp_s |
| Response for zb_secur_ic_get_list_req. More... | |
| struct | zb_secur_ic_entry_s |
| IC entry type zb_secur_ic_get_list_req. More... | |
| struct | zb_secur_ic_get_by_idx_req_s |
| Request for zb_secur_ic_get_by_idx_req. More... | |
| struct | zb_secur_ic_get_by_idx_resp_s |
| Response for zb_secur_ic_get_by_idx_req. More... | |
| struct | zb_secur_ic_remove_req_s |
| Request for zb_secur_ic_remove_req. More... | |
| struct | zb_secur_ic_remove_resp_s |
| Response for zb_secur_ic_remove_req. More... | |
| struct | zb_secur_ic_remove_all_req_s |
| Request for zb_secur_ic_remove_all_req. More... | |
| struct | zb_secur_ic_remove_all_resp_s |
| Response for zb_secur_ic_remove_all_req. More... | |
| struct | zb_nvram_failure_report_s |
| Structure that contains report about any NVRAM failure. Pointer to this structure will be set as additional info in error_app_handler with error code ERROR_CODE(ERROR_CATEGORY_NVRAM, ZB_ERROR_NVRAM_WRITE_VALIDATION_FAILURE). Upon receiving of this error, user can decide what to do: More... | |
Typedefs | |
| typedef zb_uint8_t | zb_ic_types_t |
| Type for IC types. More... | |
| typedef void(* | zb_secur_ic_add_cb_t) (zb_ret_t status) |
| typedef struct zb_secur_ic_get_list_req_s | zb_secur_ic_get_list_req_t |
| Request for zb_secur_ic_get_list_req. More... | |
| typedef struct zb_secur_ic_get_list_resp_s | zb_secur_ic_get_list_resp_t |
| Response for zb_secur_ic_get_list_req. More... | |
| typedef struct zb_secur_ic_entry_s | zb_secur_ic_entry_t |
| IC entry type zb_secur_ic_get_list_req. More... | |
| typedef struct zb_secur_ic_get_by_idx_req_s | zb_secur_ic_get_by_idx_req_t |
| Request for zb_secur_ic_get_by_idx_req. More... | |
| typedef struct zb_secur_ic_get_by_idx_resp_s | zb_secur_ic_get_by_idx_resp_t |
| Response for zb_secur_ic_get_by_idx_req. More... | |
| typedef struct zb_secur_ic_remove_req_s | zb_secur_ic_remove_req_t |
| Request for zb_secur_ic_remove_req. More... | |
| typedef struct zb_secur_ic_remove_resp_s | zb_secur_ic_remove_resp_t |
| Response for zb_secur_ic_remove_req. More... | |
| typedef struct zb_secur_ic_remove_all_req_s | zb_secur_ic_remove_all_req_t |
| Request for zb_secur_ic_remove_all_req. More... | |
| typedef struct zb_secur_ic_remove_all_resp_s | zb_secur_ic_remove_all_resp_t |
| Response for zb_secur_ic_remove_all_req. More... | |
| typedef void(* | zb_set_manufacturer_code_cb_t) (zb_ret_t status) |
| typedef zb_uint8_t | nwk_requested_timeout_t |
| Type for End Device (ED) timeout request. More... | |
| typedef zb_uint8_t | nwk_keepalive_supported_method_t |
| Type for ZC/ZR supported keepalive methods. More... | |
| typedef zb_bool_t(* | zb_signal_handler_t) (zb_uint8_t param) |
| ZBOSS signal handler function. More... | |
| typedef enum zb_nvram_dataset_types_e | zb_nvram_dataset_types_t |
| typedef struct zb_nvram_failure_report_s | zb_nvram_failure_report_t |
| Structure that contains report about any NVRAM failure. Pointer to this structure will be set as additional info in error_app_handler with error code ERROR_CODE(ERROR_CATEGORY_NVRAM, ZB_ERROR_NVRAM_WRITE_VALIDATION_FAILURE). Upon receiving of this error, user can decide what to do: More... | |
| typedef void(* | zb_nvram_read_app_data_t) (zb_uint8_t page, zb_uint32_t pos, zb_uint16_t payload_length) |
| typedef zb_ret_t(* | zb_nvram_write_app_data_t) (zb_uint8_t page, zb_uint32_t pos) |
| typedef zb_uint16_t(* | zb_nvram_get_app_data_size_t) (void) |
Enumerations | |
| enum | zb_nvram_dataset_types_e { ZB_NVRAM_RESERVED = 0, ZB_NVRAM_COMMON_DATA = 1, ZB_NVRAM_HA_DATA = 2, ZB_NVRAM_ZCL_REPORTING_DATA = 3, ZB_NVRAM_APS_SECURE_DATA_GAP = 4, ZB_NVRAM_APS_BINDING_DATA_GAP = 5, ZB_NVRAM_HA_POLL_CONTROL_DATA = 6, ZB_NVRAM_APS_SECURE_DATA = 7, ZB_NVRAM_DATASET_GRPW_DATA = 8, ZB_NVRAM_APP_DATA1 = 9, ZB_NVRAM_APP_DATA2 = 10, ZB_NVRAM_ADDR_MAP = 11, ZB_NVRAM_NEIGHBOUR_TBL = 12, ZB_NVRAM_INSTALLCODES = 13, ZB_NVRAM_IB_COUNTERS = 14, ZB_NVRAM_APS_BINDING_DATA = 15, ZB_NVRAM_DATASET_GP_PRPOXYT = 16, ZB_NVRAM_DATASET_GP_SINKT = 17, ZB_NVRAM_DATASET_GP_CLUSTER = 18, ZB_NVRAM_APS_GROUPS_DATA = 19, ZB_NVRAM_DATASET_SE_CERTDB = 20, ZB_NVRAM_ZCL_WWAH_DATA = 21, ZB_NVRAM_DATASET_GP_APP_TBL = 22, ZB_NVRAM_APP_DATA3 = 27, ZB_NVRAM_APP_DATA4 = 28, ZB_NVRAM_KE_WHITELIST = 29, ZB_NVRAM_DATASET_ZB_DIRECT = 30, ZB_NVRAM_ZDO_DIAGNOSTICS_DATA = 31, ZB_NVRAM_DATASET_NUMBER, ZB_NVRAM_DATA_SET_TYPE_PAGE_HDR = 0xFFFFU } |
The Key Negotiation Protocols Bitmask Table I.5.1-4-54 | |
The Key Negotiation Protocols Bitmask Table I.5.1-4-54 (merged with Zigbee Direct 6.5.2.1. Zigbee Direct Key Negotiation Method TLV) /* The application can also change key negotiation methods and PSK secrets. * For example, we disable ZB_TLV_KEY_ECDHE_KEY_REQUEST_ZB_30. * It means that ZC will not accept r23+ devices without DLK support */ /* That call is just for a demo here. That method is already enabled by * zboss_use_r23_behavior() call. */ Note: These values were members of zb_tlv_key_negotiation_methods_t | |
| #define | ZB_TLV_KEY_ECDHE_KEY_REQUEST_ZB_30 0x00U /*<! Static Key Update Request */ |
| #define | ZB_TLV_DIRECT_KEY_ECDHE_RESERVED_MIN 0x00U /*<! 0 is reserved in zigbee direct */ |
| #define | ZB_TLV_KEY_ECDHE_CURVE_25519_HASH_AESMMO128 0x01U /*<! DLK with curve 25519 and hash AESMMO128 */ |
| #define | ZB_TLV_KEY_ECDHE_CURVE_25519_HASH_SHA256 0x02U /*<! DLK with curve 25519 and hash SHA256 */ |
| #define | ZB_TLV_KEY_ECDHE_RESERVED_MAX 0x03U /*<! 3-15 is reserved in r23 */ |
| #define | ZB_TLV_KEY_ECDHE_CURVE_P256_HASH_SHA256 0x03U /*<! ZB Direct only: curve P256, hash SHA256 */ |
| #define | ZB_TLV_DIRECT_KEY_ECDHE_RESERVED_MAX 0x04U /*<! reserved value for Direct */ |
| typedef zb_uint8_t | zb_tlv_key_negotiation_methods_t |
bitmask for support_secrets, value for selected secret | |
/* Rewrite supported PSK secrets bit mask. Just to demonstrate the API */ { zb_uint8_t supported_secrets_mask = 0; ZB_TLV_PSK_SECRET_ENABLE(supported_secrets_mask, ZB_TLV_PSK_SECRET_AUTH_TOKEN); ZB_TLV_PSK_SECRET_ENABLE(supported_secrets_mask, ZB_TLV_PSK_SECRET_INSTALL_CODE); ZB_TLV_PSK_SECRET_ENABLE(supported_secrets_mask, ZB_TLV_PSK_SECRET_PAKE_PASSCODE); zb_set_supported_psk_secrets(supported_secrets_mask); } Note: These values were members of zb_tlv_psk_secrets_t | |
| #define | ZB_TLV_PSK_SECRET_AUTH_TOKEN 0x00U |
| #define | ZB_TLV_PSK_SECRET_INSTALL_CODE 0x01U |
| #define | ZB_TLV_PSK_SECRET_PAKE_PASSCODE 0x02U |
| #define | ZB_TLV_PSK_SECRET_BASIC_ACCESS_KEY 0x03U |
| #define | ZB_TLV_PSK_SECRET_ADMINISTRATIVE_ACCESS_KEY 0x04U |
| #define | ZB_TLV_PSK_SECRET_RESERVED_MAX 0x05U /* 6-7 is reserved */ |
| #define | ZB_TLV_PSK_SECRET_WELL_KNOWN_KEY 0xFFU |
| typedef zb_uint8_t | zb_tlv_psk_secrets_t |
| void zb_compatibility_workaround_enabled | ( | zb_bool_t | val | ) |
Device will avoid TLVs in ZDO frames to ZC until it is sure that the coordinator has r23+ revision. The reason is that some legacy devices drop frames with TLVs instead of ignoring TLVs.
| zb_bool_t zb_control4_network_permitted | ( | void | ) |
Return if joining Control4 Network is allowed
| void zb_permit_control4_network | ( | void | ) |
Permit joining Control4 Network
| void zb_set_mac_transaction_persistence_time | ( | zb_uint16_t | ms | ) |
Set the 'macTransactionPersistenceTime' attribute in the MAC PIB.
| ms | - value in milliseconds |
| void zb_tc_set_use_installcode | ( | zb_uint8_t | use_ic | ) |
Set using of install codes by TC
| use_ic | - enable/disable install code usage |