![]() |
AIROC™ BTSDK v4.9 - Documentation | |||
> More...
Data Structures | |
| struct | wiced_bt_mesh_core_state_iv_t |
| Data for state type WICED_BT_MESH_CORE_STATE_IV. More... | |
| struct | wiced_bt_mesh_core_state_seq_t |
| Data for state type WICED_BT_MESH_CORE_STATE_TYPE_SEQ. More... | |
| struct | wiced_bt_mesh_core_state_net_key_t |
| Data for state types WICED_BT_MESH_CORE_STATE_NET_KEY_XXX. More... | |
| struct | wiced_bt_mesh_core_state_app_key_t |
| Data for state types WICED_BT_MESH_CORE_STATE_APP_KEY_XXX. More... | |
| struct | wiced_bt_mesh_core_state_model_app_t |
| Data for state types WICED_BT_MESH_CORE_STATE_APP_XXX. More... | |
| struct | wiced_bt_mesh_core_state_node_state_t |
| Data for state types WICED_BT_MESH_CORE_STATE_NODE_STATE. More... | |
| struct | wiced_bt_mesh_core_state_friendship_t |
| Data for state types WICED_BT_MESH_CORE_STATE_LPN_FRIENDSHIP and WICED_BT_MESH_CORE_STATE_FRND_FRIENDSHIP. More... | |
| struct | wiced_bt_mesh_core_state_beacon_t |
| Data for state types WICED_BT_MESH_CORE_STATE_PRIVATE_BEACON. More... | |
| struct | wiced_bt_mesh_core_state_proxy_serivce_t |
| Data for state types WICED_BT_MESH_CORE_STATE_PROXY_SERVICE_ADV. More... | |
| union | wiced_bt_mesh_core_state_t |
| struct | wiced_bt_mesh_core_init_t |
| Data for wiced_bt_mesh_core_init. More... | |
| struct | wiced_bt_mesh_core_hal_api_t |
| hal api for wiced_bt_mesh_core_set_hal_api() Application has to implement all these functions and call wiced_bt_mesh_core_set_hal_api() at the startup. More... | |
| struct | wiced_bt_mesh_core_provision_capabilities_t |
| Defines Capabilities data of the provisioning device. More... | |
| struct | wiced_bt_mesh_core_provision_start_t |
| Defines Start data sent by Provisioner to the provisioning device. More... | |
| struct | wiced_bt_mesh_core_precord_descriptor_t |
| Provisioning Records Handler Descriptor. More... | |
| struct | mesh_core_provision_cb_t |
| Mesh Core Provisioning Control Block. More... | |
| struct | wiced_bt_mesh_core_statistics_t |
| Represents statistics of messages receiving, sending and handling by network and bearers layers. More... | |
| struct | wiced_bt_mesh_core_transport_statistics_t |
| Represents statistics of messages receiving, sending and handling by transport layers. More... | |
| struct | wiced_bt_mesh_core_delay_statistics_t |
| Represents delay statistics. More... | |
Macros | |
| #define | WICED_BT_MESH_PROXY_IDENTIFICATION_TYPE_NETWORK_ID 0 |
| #define | WICED_BT_MESH_PROXY_IDENTIFICATION_TYPE_NODE_IDENTITY 1 |
| #define | WICED_BT_MESH_PROXY_IDENTIFICATION_TYPE_PRIVATE_NETWORK_ID 2 |
| #define | WICED_BT_MESH_PROXY_IDENTIFICATION_TYPE_PRIVATE_NODE_IDENTITY 3 |
| #define | WICED_BT_MESH_PROVISION_PRIV_KEY_LEN 32 |
| Size of the private key in bytes. | |
| #define | WICED_BT_MESH_KEY_LEN 16 |
| Size of the mesh keys. | |
| #define | WICED_BT_MESH_PROVISIONING_RECORD_BUFF_MAX_SIZE WICED_BT_MESH_PROVISION_PUBLIC_KEY_LEN |
| #define | WICED_BT_MESH_CORE_TRACE_FID_MESH_DISCOVERY 0x00000002 |
| #define | WICED_BT_MESH_CORE_TRACE_FID_ACESS_LAYER 0x00000004 |
| #define | WICED_BT_MESH_CORE_TRACE_FID_CORE_AES_CCM 0x00000008 |
| #define | WICED_BT_MESH_CORE_TRACE_FID_IV_UPDT 0x00000010 |
| #define | WICED_BT_MESH_CORE_TRACE_FID_KEY_REFRESH 0x00000020 |
| #define | WICED_BT_MESH_CORE_TRACE_FID_FOUNDATION 0x00000040 |
| #define | WICED_BT_MESH_CORE_TRACE_FID_FOUNDATION_CFG_MODEL 0x00000080 |
| #define | WICED_BT_MESH_CORE_TRACE_FID_FOUNDATION_CRT_MSG 0x00000100 |
| #define | WICED_BT_MESH_CORE_TRACE_FID_FOUNDATION_HEARTBEAT 0x00000200 |
| #define | WICED_BT_MESH_CORE_TRACE_FID_FOUNDATION_IDENTITY 0x00000400 |
| #define | WICED_BT_MESH_CORE_TRACE_FID_FOUNDATION_MSG_HANDLER 0x00000800 |
| #define | WICED_BT_MESH_CORE_TRACE_FID_NETWORK_LAYER 0x00001000 |
| #define | WICED_BT_MESH_CORE_TRACE_FID_LOWER_TRANSPORT_LAYER 0x00002000 |
| #define | WICED_BT_MESH_CORE_TRACE_FID_UPPER_TRANSPORT_LAYER 0x00004000 |
| #define | WICED_BT_MESH_CORE_TRACE_FID_PB_TRANSPORT 0x00008000 |
| #define | WICED_BT_MESH_CORE_TRACE_FID_PROVISIONING 0x00010000 |
| #define | WICED_BT_MESH_CORE_TRACE_FID_MESH_CORE 0x00020000 |
| #define | WICED_BT_MESH_CORE_TRACE_FID_MESH_UTIL 0x00040000 |
| #define | WICED_BT_MESH_CORE_TRACE_FID_FRIENDSHIP 0x00080000 |
| #define | WICED_BT_MESH_CORE_TRACE_FID_LOW_POWER 0x00100000 |
| #define | WICED_BT_MESH_CORE_TRACE_FID_FRIEND 0x00200000 |
| #define | WICED_BT_MESH_CORE_TRACE_FID_HEALTH 0x00400000 |
| #define | WICED_BT_MESH_CORE_TRACE_FID_MESH_EVENT 0x00800000 |
| #define | WICED_BT_MESH_CORE_TRACE_FID_ALL 0xffffffff |
| #define | WICED_BT_MESH_CORE_TRACE_DEBUG 4 |
| #define | WICED_BT_MESH_CORE_TRACE_INFO 3 |
| #define | WICED_BT_MESH_CORE_TRACE_WARNING 2 |
| #define | WICED_BT_MESH_CORE_TRACE_CRITICAL 1 |
| #define | WICED_BT_MESH_CORE_TRACE_NO 0 |
Special Commands of the Proxy Filter, Heartbeat and other | |
| #define | WICED_BT_MESH_CORE_CMD_SPECIAL_PROXY_FLT_SET_TYPE 0x00 |
| Opcodes of the Proxy Configuration Messages. More... | |
| #define | WICED_BT_MESH_CORE_CMD_SPECIAL_PROXY_FLT_ADD_ADDR 0x01 |
| Sent by a Proxy Client to add addresses to the proxy filter list. More... | |
| #define | WICED_BT_MESH_CORE_CMD_SPECIAL_PROXY_FLT_DEL_ADDR 0x02 |
| Sent by a Proxy Client to remove addresses from the proxy filter list. More... | |
| #define | WICED_BT_MESH_CORE_CMD_SPECIAL_PROXY_FLT_STATUS 0x03 |
| Acknowledgment by a Proxy Server to a Proxy Client to report the status of the proxy filter list. More... | |
| #define | WICED_BT_MESH_CORE_CMD_SPECIAL_DIRECTED_PROXY_CAPABILITIES_STATUS 0x04 |
| Sent by a Directed Proxy Server to report the status of its capabilities for a subnet. More... | |
| #define | WICED_BT_MESH_CORE_CMD_SPECIAL_DIRECTED_PROXY_CONTROL 0x05 |
| Sent by a Directed Proxy Client to set connection parameters of the Directed Proxy for a subnet. More... | |
| #define | WICED_BT_MESH_CORE_CMD_SPECIAL_HEARTBEAT 0x0a |
| Heartbeat message came from Transport layer. More... | |
Test Mode Signals. | |
| #define | WICED_BT_MESH_CORE_TEST_MODE_SIGNAL_IV_UPDATE_BEGIN 0 |
| the node shall transition to the IV Update in Progress state, ignoring the 96 hour limit. More... | |
| #define | WICED_BT_MESH_CORE_TEST_MODE_SIGNAL_IV_UPDATE_END 1 |
| the node shall transition to the Normal state, ignoring the 96 hour limit. More... | |
| #define | WICED_BT_MESH_CORE_TEST_MODE_SIGNAL_TEST 2 |
| test signal for internal use. More... | |
Provisioning Result codes | |
| #define | WICED_BT_MESH_PROVISION_RESULT_SUCCESS 0 |
| Provisioning succeeded. | |
| #define | WICED_BT_MESH_PROVISION_RESULT_TIMEOUT 1 |
| Provisioning failed due to timeout. | |
| #define | WICED_BT_MESH_PROVISION_RESULT_FAILED 2 |
| Provisioning failed. | |
Output OOB Action field values | |
| #define | WICED_BT_MESH_PROVISION_OUT_OOB_ACT_BLINK 0x00 |
| Blink. | |
| #define | WICED_BT_MESH_PROVISION_OUT_OOB_ACT_BEEP 0x01 |
| Beep. | |
| #define | WICED_BT_MESH_PROVISION_OUT_OOB_ACT_VIBRATE 0x02 |
| Vibrate. | |
| #define | WICED_BT_MESH_PROVISION_OUT_OOB_ACT_DISP_NUM 0x03 |
| Output Numeric. | |
| #define | WICED_BT_MESH_PROVISION_OUT_OOB_ACT_DISP_ALPH 0x04 |
| Output Alphanumeric. | |
| #define | WICED_BT_MESH_PROVISION_OUT_OOB_ACT_MAX 0x15 |
| Max number of supported actions. | |
Input OOB Action field values | |
| #define | WICED_BT_MESH_PROVISION_IN_OOB_ACT_PUSH 0x00 |
| Push. | |
| #define | WICED_BT_MESH_PROVISION_IN_OOB_ACT_TWIST 0x01 |
| Twist. | |
| #define | WICED_BT_MESH_PROVISION_IN_OOB_ACT_ENTER_NUM 0x02 |
| Input Number. | |
| #define | WICED_BT_MESH_PROVISION_IN_OOB_ACT_ENTER_STR 0x03 |
| Input Alphanumeric. | |
| #define | WICED_BT_MESH_PROVISION_IN_OOB_ACT_MAX 0x15 |
| Max number of supported actions. | |
Provisioning Capabilities and Start common definitions | |
| #define | WICED_BT_MESH_PROVISION_OUT_OOB_MAX_SIZE 0x08 |
| #define | WICED_BT_MESH_PROVISION_IN_OOB_MAX_SIZE 0x08 |
| #define | WICED_BT_MESH_PROVISION_STATIC_OOB_MAX_SIZE 0x10 |
Provisioning Capabilities definitions | |
| #define | WICED_BT_MESH_PROVISION_ALG_FIPS_P256_ELLIPTIC_CURVE 0x0001 |
| #define | WICED_BT_MESH_PROVISION_ALG_ECDH_P256_HMAC_SHA256_AES_CCM 0x0002 |
| #define | WICED_BT_MESH_PROVISION_CAPS_PUB_KEY_TYPE_AVAILABLE 0x01 |
| #define | WICED_BT_MESH_PROVISION_CAPS_PUB_KEY_TYPE_PROHIBITED 0xfe |
| #define | WICED_BT_MESH_PROVISION_CAPS_STATIC_OOB_TYPE_AVAILABLE 0x01 |
| #define | WICED_BT_MESH_PROVISION_CAPS_STATIC_OOB_TYPE_PROHIBITED 0xfe |
Provisioning Start definitions | |
| #define | WICED_BT_MESH_PROVISION_START_ALG_FIPS_P256 0x00 |
| #define | WICED_BT_MESH_PROVISION_START_ALG_P256_HMAC_SHA256_AES_CCM 0x01 |
| #define | WICED_BT_MESH_PROVISION_START_PUB_KEY_NO 0x00 |
| #define | WICED_BT_MESH_PROVISION_START_PUB_KEY_USED 0x01 |
| #define | WICED_BT_MESH_PROVISION_START_AUTH_METHOD_NO 0x00 |
| #define | WICED_BT_MESH_PROVISION_START_AUTH_METHOD_STATIC 0x01 |
| #define | WICED_BT_MESH_PROVISION_START_AUTH_METHOD_OUTPUT 0x02 |
| #define | WICED_BT_MESH_PROVISION_START_AUTH_METHOD_INPUT 0x03 |
Provisioning Type definitions | |
| #define | WICED_BT_MESH_PROVISION_TYPE_PROVISIONING_NODE 0 |
| #define | WICED_BT_MESH_PROVISION_TYPE_PROVISIONER 1 |
| #define | WICED_BT_MESH_PROVISION_TYPE_SELF_PROVISIONER_DEVKEY_CANDIDATE 2 |
| #define | WICED_BT_MESH_PROVISION_TYPE_SELF_PROVISIONER_NODE_ID 3 |
| #define | WICED_BT_MESH_PROVISION_TYPE_SELF_PROVISIONER_COMPOSITION 4 |
OOB callback definitions | |
| #define | WICED_BT_MESH_PROVISION_GET_OOB_TYPE_NONE 0 |
| Provisioner: OOB not used. | |
| #define | WICED_BT_MESH_PROVISION_GET_OOB_TYPE_ENTER_PUB_KEY 1 |
| Provisioner: Enter public key() | |
| #define | WICED_BT_MESH_PROVISION_GET_OOB_TYPE_ENTER_OUTPUT 2 |
| Provisioner: Enter output OOB value(size, action) displayed on provisioning node. | |
| #define | WICED_BT_MESH_PROVISION_GET_OOB_TYPE_ENTER_STATIC 3 |
| Provisioner: Enter static OOB value(size) | |
| #define | WICED_BT_MESH_PROVISION_GET_OOB_TYPE_ENTER_INPUT 4 |
| Provisioning node: Enter input OOB value(size, action) displayed on provisioner. | |
| #define | WICED_BT_MESH_PROVISION_GET_OOB_TYPE_DISPLAY_INPUT 5 |
| Provisioner: Select and display input OOB value(size, action) | |
| #define | WICED_BT_MESH_PROVISION_GET_OOB_TYPE_DISPLAY_OUTPUT 6 |
| Provisioning node: Select and display output OOB value(size, action) | |
| #define | WICED_BT_MESH_PROVISION_GET_OOB_TYPE_DISPLAY_STOP 7 |
| Provisioner and Provisioning node: Stop displaying OOB value. | |
| #define | WICED_BT_MESH_PROVISION_GET_OOB_TYPE_GET_STATIC 8 |
| Provisioning node: Requests static OOB value(size) | |
Typedefs | |
| struct { | |
| uint8_t ctl | |
| CTL field. More... | |
| uint8_t ttl | |
| TTL field. More... | |
| uint8_t dst [2] | |
| Destination address (LE) | |
| uint8_t pdu [1] | |
| TransportPDU set to between 1 and 16 inclusive octets of data. | |
| } | wiced_bt_mesh_core_hci_cmd_network_layer_transmit_t |
| struct { | |
| uint8_t ctl | |
| CTL field. More... | |
| uint8_t ttl | |
| TTL field. More... | |
| uint8_t dst_len | |
| Length of the destination address. More... | |
| uint8_t dst [16] | |
| BigEndian 2 bytes destination address or 16 bytes label UUID of the virtual address. | |
| uint8_t szmic | |
| 0 - 4 bytes TransMIC size, 1 - 8 bytes TransMIC size | |
| uint8_t pdu [1] | |
| AccessPDU set to between 1 and 380 inclusive octets of data. | |
| } | wiced_bt_mesh_core_hci_cmd_transport_layer_transmit_t |
| struct { | |
| uint8_t in_progress | |
| 1 - Transit to IV Update in Progress; 0 - Transit to Normal | |
| } | wiced_bt_mesh_core_hci_cmd_ivupdate_signal_transit_t |
| struct { | |
| uint8_t conn_id [4] | |
| connection id for provisioning. More... | |
| uint8_t addr [2] | |
| unicast address to assign to provisioning node | |
| uint8_t uuid [16] | |
| UUID of the node to provision. | |
| uint8_t identify_duration | |
| identify duration to pass to that provision start command | |
| } | wiced_bt_mesh_core_hci_cmd_provision_t |
| struct { | |
| uint8_t test_id | |
| Test ID of the faults array. | |
| uint8_t company_id [2] | |
| Company ID. | |
| uint8_t faults [1] | |
| faults array. More... | |
| } | wiced_bt_mesh_core_hci_cmd_health_set_faults_t |
| struct { | |
| uint8_t ttl | |
| TTL field. More... | |
| uint8_t app_key_idx [2] | |
| Global Index of the Application Key (LE). More... | |
| uint8_t src [2] | |
| Source address (LE) | |
| uint8_t dst [2] | |
| Destination address (LE) | |
| uint8_t pdu [1] | |
| Access PDU. | |
| } | wiced_bt_mesh_core_hci_cmd_access_pdu_t |
| struct { | |
| uint8_t add | |
| WICED_TRUE/WICED_FALSE - add/remove. | |
| uint8_t addr [2] | |
| Subscription address (LE) | |
| } | wiced_bt_mesh_core_hci_cmd_send_subs_updt_t |
| typedef wiced_bool_t(* | wiced_bt_mesh_core_received_msg_handler_t )(wiced_bt_mesh_event_t *p_event, const uint8_t *params, uint16_t params_len) |
| Received message callback. More... | |
| typedef wiced_bt_mesh_core_received_msg_handler_t(* | wiced_bt_mesh_core_get_msg_handler_callback_t )(uint16_t company_id, uint16_t opcode, uint16_t *p_model_id, uint8_t *p_rpl_flag) |
| Get message handler callback. More... | |
| typedef wiced_bool_t(* | wiced_bt_mesh_core_publication_callback_t )(uint8_t elem_idx, uint16_t company_id, uint16_t model_id, uint16_t period) |
| Publication request callback. More... | |
| typedef uint32_t(* | wiced_bt_core_nvram_access_t )(wiced_bool_t write, int inx, uint8_t *node_info, uint16_t len, wiced_result_t *p_result) |
| Application provided function to read/write information from/to NVRAM. More... | |
| typedef void(* | wiced_bt_mesh_core_scan_callback_t )(wiced_bool_t start, wiced_bool_t is_scan_type_active) |
| Start/Stop scan callback. More... | |
| typedef void(* | wiced_bt_mesh_core_proxy_send_cb_t )(uint32_t conn_id, uint32_t ref_data, const uint8_t *packet, uint32_t packet_len) |
| Definition of the callback function to send proxy messages. More... | |
| typedef uint8_t(* | wiced_bt_mesh_core_health_fault_test_cb_t )(uint8_t element, uint8_t test_id, uint16_t company_id, uint8_t fault_array_size, uint8_t *fault_array) |
| Definition of the callback function to send proxy packet. More... | |
| typedef void(* | wiced_bt_mesh_core_attention_cb_t )(uint8_t element, uint8_t time) |
| Definition of the callback function to attract human attention by LED blinks or other. More... | |
| typedef void(* | wiced_bt_mesh_core_state_changed_callback_t )(wiced_bt_mesh_core_state_type_t type, wiced_bt_mesh_core_state_t *p_state) |
| typedef wiced_bool_t(* | wiced_bt_mesh_core_adv_send_cb_t )(uint8_t instance, uint8_t transmissions, uint32_t interval, uint8_t type, uint8_t *own_bd_addr, const uint8_t *adv_data, uint8_t adv_data_len, const uint8_t *scan_rsp_data, uint8_t scan_rsp_data_len) |
| Definition of the callback function to send advert messages or stop sending it or reset all adverts. More... | |
| typedef void(* | wiced_bt_mesh_core_hal_rand_gen_num_array_t )(uint32_t *randNumberArrayPtr, uint32_t length) |
| Fills a given array with randomly generated 32-bit integers. More... | |
| typedef uint32_t(* | wiced_bt_mesh_core_hal_get_pseudo_rand_number_t )(void) |
| This functin returns a pseudo random number. More... | |
| typedef uint32_t(* | wiced_bt_mesh_core_hal_rand_gen_num_t )(void) |
| Generates and returns a random 32-bit integer. More... | |
| typedef void(* | wiced_bt_mesh_core_hal_wdog_reset_system_t )(void) |
| Execute a soft reset of the system. | |
| typedef void(* | wiced_bt_mesh_core_hal_delete_nvram_t )(uint16_t vs_id, wiced_result_t *p_status) |
| deletes data from NVRAM at specified VS id More... | |
| typedef uint16_t(* | wiced_bt_mesh_core_hal_write_nvram_t )(uint16_t vs_id, uint16_t data_length, uint8_t *p_data, wiced_result_t *p_status) |
| Writes the data to NVRAM, Application can write up to 255 bytes in one VS id section. More... | |
| typedef uint16_t(* | wiced_bt_mesh_core_hal_read_nvram_t )(uint16_t vs_id, uint16_t data_length, uint8_t *p_data, wiced_result_t *p_status) |
| Reads the data from NVRAM. More... | |
| typedef void(* | wiced_bt_mesh_core_hal_aes_encrypt_t )(uint8_t *in_data, uint8_t *out_data, uint8_t *key) |
| Calculate AES encryption by using Hardware acceleration. More... | |
| typedef void(* | wiced_bt_mesh_core_send_complete_callback_t )(wiced_bt_mesh_event_t *p_event) |
| Send message complete callback. More... | |
| struct { | |
| uint16_t extensions | |
| Bitmask indicating the provisioning extensions supported by the device. | |
| uint16_t list [WICED_BT_MESH_PROVISIONING_RECORD_ID_MAX_SIZE] | |
| Lists the Record IDs of the provisioning records stored on the device. | |
| uint16_t list_size | |
| sizes of the record data in the list | |
| } | wiced_bt_mesh_core_provisioning_list_t |
| struct { | |
| uint16_t record_id | |
| Identifies the provisioning record for which the request is made. | |
| uint16_t fragment_offset | |
| The starting offset of the requested fragment in the provisioning record data. | |
| uint16_t fragment_max_size | |
| The maximum size of the provisioning record fragment that the provisioner can receive. | |
| } | wiced_bt_mesh_core_provisioning_record_request_t |
| Provisioning Record Request PDU parameters format. More... | |
| struct { | |
| uint16_t record_id | |
| Identifies the provisioning record whose data fragment is sent in the response. | |
| uint16_t fragment_offset | |
| The starting offset of the data fragment in the provisioning record data. | |
| uint16_t total_length | |
| Total length of the provisioning record data stored on the device. | |
| } | wiced_bt_mesh_core_provisioning_record_response_t |
| struct { | |
| uint8_t status | |
| Indicates whether or not the request was handled successfully. | |
| union { | |
| wiced_bt_mesh_core_provisioning_record_request_t request | |
| wiced_bt_mesh_core_provisioning_record_response_t response | |
| } u | |
| uint8_t data [WICED_BT_MESH_PROVISIONING_RECORD_BUFF_MAX_SIZE] | |
| Provisioning record data fragment (Optional) | |
| uint16_t size | |
| Size of valid data in the record fragment. | |
| } | wiced_bt_mesh_core_provisioning_record_t |
| Provisioning Record Response PDU parameters format. More... | |
| typedef void(* | wiced_bt_mesh_core_provision_gatt_send_cb_t )(uint16_t conn_id, const uint8_t *packet, uint32_t packet_len) |
| Definition of the callback function to send provisioning packet. More... | |
| typedef void(* | wiced_bt_mesh_core_provision_started_cb_t )(uint32_t conn_id) |
| Definition of the callback function on Starts provisioning. More... | |
| typedef void(* | wiced_bt_mesh_core_provision_end_cb_t )(uint32_t conn_id, uint16_t addr, uint16_t net_key_idx, uint8_t result, const uint8_t *p_dev_key) |
| Definition of the callback function on provisioning end. More... | |
| typedef wiced_bool_t(* | wiced_bt_mesh_core_provision_get_oob_cb_t )(uint32_t conn_id, uint8_t type, uint8_t size, uint8_t action) |
| Definition of the callback function on get OOB. More... | |
| typedef wiced_bool_t(* | wiced_bt_mesh_core_provision_on_capabilities_cb_t )(uint32_t conn_id, const wiced_bt_mesh_core_provision_capabilities_t *capabilities) |
| Definition of the callback function on Capabilities. More... | |
| typedef wiced_bool_t(* | wiced_bt_mesh_core_provision_get_capabilities_cb_t )(uint32_t conn_id) |
| Definition of the callback function on get Capabilities. More... | |
| typedef uint16_t(* | wiced_bt_mesh_core_provision_records_get_cb_t )(uint16_t *buffer) |
| Definition of the callback function on get provisioning records list. More... | |
| typedef uint16_t(* | wiced_bt_mesh_core_provision_record_req_cb_t )(uint16_t record_id, uint8_t *buffer, uint16_t fragment_length, uint16_t fragment_offset, uint16_t *record_size) |
| Definition of the callback function on get fragment of the provisioning record. More... | |
| typedef const uint8_t *(* | wiced_bt_mesh_core_get_dev_key_callback_t )(uint16_t addr, uint16_t *p_net_key_idx) |
| Device Key request callback. More... | |
| typedef void(* | wiced_bt_mesh_core_lpn_sleep_callback_t )(uint32_t *p_sleep_time) |
| Callback function to receive LPN sleep event. More... | |
Enumerations | |
| enum | wiced_bt_mesh_core_state_type_t { WICED_BT_MESH_CORE_STATE_TYPE_SEQ, WICED_BT_MESH_CORE_STATE_DEFAULT_TTL, WICED_BT_MESH_CORE_STATE_NET_TRANSMIT, WICED_BT_MESH_CORE_STATE_NET_KEY_ADD, WICED_BT_MESH_CORE_STATE_NET_KEY_DELETE, WICED_BT_MESH_CORE_STATE_NET_KEY_UPDATE, WICED_BT_MESH_CORE_STATE_APP_KEY_ADD, WICED_BT_MESH_CORE_STATE_APP_KEY_DELETE, WICED_BT_MESH_CORE_STATE_APP_KEY_UPDATE, WICED_BT_MESH_CORE_STATE_MODEL_APP_BIND, WICED_BT_MESH_CORE_STATE_MODEL_APP_UNBIND, WICED_BT_MESH_CORE_STATE_IV, WICED_BT_MESH_CORE_STATE_KR, WICED_BT_MESH_CORE_STATE_NODE_STATE, WICED_BT_MESH_CORE_STATE_LPN_FRIENDSHIP, WICED_BT_MESH_CORE_STATE_LPN_SLEEP, WICED_BT_MESH_CORE_STATE_LPN_SCAN, WICED_BT_MESH_CORE_STATE_FRND_FRIENDSHIP, WICED_BT_MESH_CORE_STATE_TYPE_CLR_RPL, WICED_BT_MESH_CORE_STATE_PRIVATE_BEACON, WICED_BT_MESH_CORE_STATE_PROXY_SERVICE_ADV } |
Mesh Provisioning Record IDs | |
| enum | wiced_bt_mesh_provisioning_record_id_t { WICED_BT_MESH_PROVISIONING_RECORD_ID_CBP_BASE_URI = 0X0000, WICED_BT_MESH_PROVISIONING_RECORD_ID_DEVICE_CERTIFICATE = 0X0001, WICED_BT_MESH_PROVISIONING_RECORD_ID_INTERMEDIATE_CERTIFICATE_1 = 0X0002, WICED_BT_MESH_PROVISIONING_RECORD_ID_INTERMEDIATE_CERTIFICATE_2 = 0X0003, WICED_BT_MESH_PROVISIONING_RECORD_ID_INTERMEDIATE_CERTIFICATE_3 = 0X0004, WICED_BT_MESH_PROVISIONING_RECORD_ID_INTERMEDIATE_CERTIFICATE_4 = 0X0005, WICED_BT_MESH_PROVISIONING_RECORD_ID_INTERMEDIATE_CERTIFICATE_5 = 0X0006, WICED_BT_MESH_PROVISIONING_RECORD_ID_INTERMEDIATE_CERTIFICATE_6 = 0X0007, WICED_BT_MESH_PROVISIONING_RECORD_ID_INTERMEDIATE_CERTIFICATE_7 = 0X0008, WICED_BT_MESH_PROVISIONING_RECORD_ID_INTERMEDIATE_CERTIFICATE_8 = 0X0009, WICED_BT_MESH_PROVISIONING_RECORD_ID_INTERMEDIATE_CERTIFICATE_9 = 0X000A, WICED_BT_MESH_PROVISIONING_RECORD_ID_INTERMEDIATE_CERTIFICATE_10 = 0X000B, WICED_BT_MESH_PROVISIONING_RECORD_ID_INTERMEDIATE_CERTIFICATE_11 = 0X000C, WICED_BT_MESH_PROVISIONING_RECORD_ID_INTERMEDIATE_CERTIFICATE_12 = 0X000D, WICED_BT_MESH_PROVISIONING_RECORD_ID_INTERMEDIATE_CERTIFICATE_13 = 0X000E, WICED_BT_MESH_PROVISIONING_RECORD_ID_INTERMEDIATE_CERTIFICATE_14 = 0X000F, WICED_BT_MESH_PROVISIONING_RECORD_ID_INTERMEDIATE_CERTIFICATE_15 = 0X0010, WICED_BT_MESH_PROVISIONING_RECORD_ID_COMPLETE_LOCAL_NAME = 0X0011, WICED_BT_MESH_PROVISIONING_RECORD_ID_APPEARANCE = 0x0012, WICED_BT_MESH_PROVISIONING_RECORD_ID_MAX_SIZE = 0x0013 } |
Status codes for the Provisioning Record Response PDU | |
| enum | wiced_bt_mesh_provisioning_record_response_status_t { WICED_BT_MESH_PROVISIONING_RECORD_RESPONSE_STATUS_SUCCESS = 0x00, WICED_BT_MESH_PROVISIONING_RECORD_RESPONSE_STATUS_NOT_PRESENT = 0x01, WICED_BT_MESH_PROVISIONING_RECORD_RESPONSE_STATUS_OUT_OF_BOUNDS = 0x02 } |
Functions | |
| void | wiced_bt_mesh_core_set_hal_api (wiced_bt_mesh_core_hal_api_t *hal_api) |
| Sets hal api. More... | |
| wiced_bt_mesh_core_hal_api_t * | wiced_bt_mesh_core_get_hal_api (void) |
| Returns hal api. More... | |
| wiced_result_t | wiced_bt_mesh_core_init (wiced_bt_mesh_core_init_t *p_init) |
| Mesh Core initialization. More... | |
| void | wiced_bt_mesh_core_adv_end (uint8_t instance) |
| Advertisement stopped notification. More... | |
| void | wiced_bt_mesh_core_set_max_num_adv_instances (uint8_t max_num) |
| Set max number of advertisement instances. More... | |
| wiced_bool_t | wiced_bt_mesh_core_deinit (wiced_bt_core_nvram_access_t nvram_access_callback) |
| Mesh Core de-initialization. More... | |
| void | wiced_bt_mesh_core_start (void) |
| Mesh Core Start. More... | |
| void | wiced_bt_mesh_core_set_gatt_mtu (uint16_t gatt_mtu) |
| Sets GATT MTU for the provisioning or proxy connection. More... | |
| uint16_t | wiced_bt_mesh_core_get_local_addr (void) |
| Gets local mesh address set by provisioner. More... | |
| wiced_result_t | wiced_bt_mesh_core_send (wiced_bt_mesh_event_t *p_event, const uint8_t *params, uint16_t params_len, wiced_bt_mesh_core_send_complete_callback_t complete_callback) |
| Sends the message to the dst address. More... | |
| void | wiced_bt_mesh_core_cancel_send (wiced_bt_mesh_event_t *p_event) |
| Stop sending retransmissions. More... | |
| wiced_result_t | wiced_bt_mesh_core_adv_packet (int8_t rssi, const uint8_t *p_adv_data, const uint8_t *remote_bd_addr) |
| Handles received advertising packet. More... | |
| void | wiced_bt_mesh_core_proxy_packet (const uint8_t *p_data, uint8_t data_len) |
| Handle packet received by proxy via GATT. More... | |
| wiced_bool_t | wiced_bt_mesh_core_is_valid_network_id (uint8_t *p_network_id, uint16_t *p_net_key_idx) |
| Get Network Key Index. More... | |
| void | wiced_bt_mesh_core_connection_status (uint32_t conn_id, wiced_bool_t connected_to_proxy, uint32_t ref_data, uint16_t mtu) |
| Handles connection up and down events. More... | |
| wiced_bool_t | wiced_bt_mesh_core_check_node_identity (uint16_t addr, const uint8_t *data, uint8_t len, uint16_t *p_net_key_idx) |
| Checks if received Service Data for Mesh Proxy Service with Node Identity corresponds to that node address. More... | |
| wiced_bool_t | wiced_bt_mesh_core_check_private_node_identity (uint16_t addr, const uint8_t *data, uint8_t len, uint16_t *p_net_key_idx) |
| Checks if received Service Data for Mesh Proxy Service with Private Node Identity corresponds to that node address. More... | |
| wiced_bool_t | wiced_bt_mesh_core_check_private_network_id (const uint8_t *data, uint8_t len, uint16_t *p_net_key_idx) |
| Checks if received Service Data for Mesh Proxy Service with Private Network Identity is valid. More... | |
| wiced_bool_t | wiced_bt_mesh_core_proc_rx_cmd (uint16_t opcode, const uint8_t *p_data, uint16_t data_len) |
| The RPL updates from the Host. More... | |
| wiced_bool_t | wiced_bt_mesh_core_test_mode_signal (uint16_t opcode, const uint8_t *p_data, uint16_t data_len) |
| The signals for different test modes. More... | |
| void | wiced_bt_mesh_core_calc_uri_hash (const uint8_t *uri, uint8_t len, uint8_t *hash) |
| void | wiced_bt_mesh_core_set_node_identity (uint8_t type, uint8_t action) |
| Sets node identity state as a result of user interaction. More... | |
| wiced_bool_t | wiced_bt_mesh_core_health_set_faults (uint8_t element_idx, uint8_t test_id, uint16_t company_id, uint8_t faults_number, uint8_t *fault_array) |
| Indicates the fault happened. More... | |
| wiced_bool_t | wiced_bt_mesh_core_provision_server_init (uint8_t *priv_key, wiced_bt_mesh_core_provision_started_cb_t started_cb, wiced_bt_mesh_core_provision_end_cb_t end_cb, wiced_bt_mesh_core_provision_get_capabilities_cb_t get_capabilities_cb, wiced_bt_mesh_core_provision_get_oob_cb_t get_oob_cb, wiced_bt_mesh_core_provision_gatt_send_cb_t gatt_send_cb, wiced_bt_mesh_core_provision_records_get_cb_t get_precords_cb, wiced_bt_mesh_core_provision_record_req_cb_t request_precord_cb) |
| Initializes provisioning layer for the node(server side). More... | |
| wiced_bool_t | wiced_bt_mesh_core_provision_set_oob (uint8_t *value, uint8_t value_len) |
| Sets OOB in response on wiced_bt_mesh_provision_get_oob_cb. More... | |
| wiced_bool_t | wiced_bt_mesh_core_provision_set_capabilities (uint32_t conn_id, const wiced_bt_mesh_core_provision_capabilities_t *capabilities) |
| Sets Capabilities of the provisioning device. More... | |
| void | wiced_bt_mesh_core_provision_gatt_packet (uint8_t is_notification, uint32_t conn_id, const uint8_t *packet, uint8_t packet_len) |
| Processes received PB_GATT packets. More... | |
| wiced_bool_t | wiced_bt_mesh_core_provision_local (uint16_t addr, uint8_t *dev_key, uint8_t *network_key, uint16_t net_key_idx, uint32_t iv_idx, uint8_t key_refresh, uint8_t iv_update) |
| Provision Local Device. More... | |
| wiced_bool_t | wiced_bt_mesh_core_set_seq (uint16_t addr, uint32_t seq, wiced_bool_t prev_iv_idx) |
| Set Sequence Number (SEQ) own or for RPL(Replay Protection List). More... | |
| wiced_bool_t | wiced_bt_mesh_core_del_seq (uint16_t addr) |
| Removes node from RPL(Replay Protection List). More... | |
| uint16_t | wiced_bt_mesh_get_node_config_size (wiced_bt_mesh_core_config_t *config) |
| Calculates size of the memory for configuration. More... | |
| void | wiced_bt_mesh_core_stop_advert (void) |
| Stops proxy server advertisement and network secure beacon if they are running. More... | |
| void | wiced_bt_mesh_core_statistics_get (wiced_bt_mesh_core_statistics_t *p_data) |
| Requests collected statistics for network layer. More... | |
| void | wiced_bt_mesh_core_transport_statistics_get (wiced_bt_mesh_core_transport_statistics_t *p_data) |
| Requests collected statistics for transport layer. More... | |
| void | wiced_bt_mesh_core_statistics_reset (void) |
| Resets statistics of the network layer. More... | |
| void | wiced_bt_mesh_core_transport_statistics_reset (void) |
| Resets statistics of the transport layers. More... | |
| void | wiced_bt_mesh_core_execute_delayed_nvram_writes (void) |
| wiced_bool_t | wiced_bt_mesh_core_get_network_id (uint16_t net_key_idx, uint8_t *network_id) |
| Fills buffer net_id with 8 bytes Network ID for net_key_idx. More... | |
| uint16_t | wiced_bt_mesh_core_crypt (wiced_bool_t encrypt, const uint8_t *p_in_data, uint16_t in_data_len, uint8_t *p_out_buf, uint16_t out_buf_len) |
| Encrypt or decrypts and authenticates data. More... | |
| wiced_bool_t | wiced_bt_mesh_set_raw_scan_response_data (uint8_t num_elem, wiced_bt_ble_advert_elem_t *p_data) |
| Set scan response raw data. More... | |
| void | wiced_bt_mesh_core_set_dev_key_callback (wiced_bt_mesh_core_get_dev_key_callback_t callback) |
| Sets Device Key request callback. More... | |
| uint16_t | wiced_bt_mesh_core_lpn_get_friend_addr (void) |
| Gets friend address of the LPN. More... | |
| void | wiced_bt_mesh_core_lpn_set_sleep_callback (wiced_bt_mesh_core_lpn_sleep_callback_t callback) |
| Set callback function to receive LPN sleep event. More... | |
| uint32_t | wiced_bt_mesh_core_lpn_set_poll_timeout (uint32_t timeout) |
| Set a smaller poll timeout. More... | |
| void | wiced_bt_mesh_core_lpn_restore_poll_timeout (uint32_t timeout) |
| Restore original poll timeout. More... | |
| void | wiced_bt_mesh_core_shutdown (void) |
| Stops all advertisements and timers. More... | |
| wiced_bool_t | wiced_bt_mesh_core_del_last_element (void) |
| Deletes last element from NVRAM config. More... | |
| wiced_bool_t | wiced_bt_mesh_core_needs_composition_refresh (void) |
| Detects if Node Composition Refresh Procedure is needed. More... | |
| void | wiced_bt_mesh_core_reset (void) |
| Resets node to unprovisioned state without restarting. More... | |
| const uint8_t * | wiced_bt_mesh_core_get_app_key (uint16_t appkey_global_idx, wiced_bool_t newKeyAtKeyRefresh) |
| Returns pointer to the specific application key. More... | |
| void | wiced_bt_mesh_core_set_test_events_report (uint16_t node_addr) |
| Set test events report node address. More... | |
| void | wiced_bt_mesh_core_set_beacon (uint8_t type, uint8_t onoff) |
| Sets beacon state as a result of user interaction. More... | |
| void | wiced_bt_mesh_core_set_trace_level (uint32_t fids_mask, uint8_t level) |
| Sets trace level for modules of mesh_core_lib. More... | |
| void | wiced_bt_mesh_core_set_adv_bdaddr (wiced_bt_device_address_t bda) |
| void | wiced_bt_mesh_core_delay_statistics_get (wiced_bt_mesh_core_delay_statistics_t *p_data) |
| Gets delay statistics. More... | |
| void | wiced_bt_mesh_core_delay_statistics_reset (void) |
| Resets delay statistics. More... | |
| void | wiced_bt_mesh_set_inter_segment_delay (uint8_t delay_ms) |
| Sets intersegment delay. More... | |
| wiced_bool_t | wiced_bt_mesh_core_generate_kdk (uint8_t net_key_idx, uint8_t *p_kdk) |
| Generate key derivation key. More... | |
Variables | |
| uint8_t | wiced_bt_mesh_core_net_key_max_num |
| uint8_t | wiced_bt_mesh_core_app_key_max_num |
| uint8_t | wiced_bt_mesh_core_net_cache_size |
| uint8_t | wiced_bt_mesh_core_proxy_out_flt_addr_max_num |
| uint16_t | wiced_bt_mesh_core_nvm_idx_node_data |
| uint16_t | wiced_bt_mesh_core_nvm_idx_virt_addr |
| uint16_t | wiced_bt_mesh_core_nvm_idx_frnd_state |
| uint16_t | wiced_bt_mesh_core_nvm_idx_net_key_begin |
| uint16_t | wiced_bt_mesh_core_nvm_idx_app_key_begin |
| uint16_t | wiced_bt_mesh_core_nvm_idx_health_state |
| uint16_t | wiced_bt_mesh_core_nvm_idx_cfg_data |
| uint16_t | wiced_bt_mesh_core_nvm_idx_fw_distributor |
| uint16_t | wiced_bt_mesh_core_nvm_idx_df_config |
| uint8_t | wiced_bt_mesh_core_adv_tx_power |
| uint32_t | wiced_bt_mesh_core_write_config_delay |
| wiced_bool_t | wiced_bt_core_short_trans_mic |
| If the value of that variable is WICED_TRUE then the transport layer always use 32-bit TransMIC. More... | |
| wiced_bool_t | wiced_bt_core_iv_update_test_mode |
| WICED_TRUE value activates IV Update test mode - only removes the 96-hour limit; all other behavior of the device is unchanged. More... | |
| wiced_bool_t | wiced_bt_core_boost_cpu_on_crypt_op |
| On WICED_TRUE CPU is boost for cpypto operations Default value is WICED_TRUE. | |
| uint16_t | wiced_bt_mesh_core_unprovisioned_beacon_interval |
| Advertising interval of the unprovisioned beacon in units 0.5 sec. More... | |
| uint16_t | wiced_bt_mesh_core_provisioning_srv_adv_interval |
| Advertising interval in MS of the provisioning service in units 0.5 sec. More... | |
| uint16_t | wiced_bt_mesh_core_provisioning_url_adv_interval |
| Advertising interval in MS of the provisioning URL in units 0.5 sec. More... | |
| uint16_t | wiced_bt_mesh_core_delay_relay_min |
| Minimum and maximum delay in milliseconds of the message being relayed. More... | |
| uint16_t | wiced_bt_mesh_core_delay_relay_max |
| uint16_t | wiced_bt_mesh_core_delay_answer_unicast_min |
| Minimum and maximum delay in milliseconds of the answer on the message with unicast DST. More... | |
| uint16_t | wiced_bt_mesh_core_delay_answer_unicast_max |
| uint16_t | wiced_bt_mesh_core_delay_answer_group_min |
| Minimum and maximum delay in milliseconds of the answer on the message with group DST. More... | |
| uint16_t | wiced_bt_mesh_core_delay_answer_group_max |
| uint16_t | wiced_bt_core_lower_transport_ack_timeout_ms |
| Lower Transport Layer ACK timeout. More... | |
| uint16_t | wiced_bt_mesh_core_proxy_adv_interval |
| Proxy service adv interval: * 0.625 ms. More... | |
| uint16_t | mesh_core_report_events_node_addr |
| Report core events from a node for test purpose. | |
| uint8_t | wiced_bt_mesh_core_msg_tx_delay |
| uint8_t | wiced_bt_mesh_core_msg_rx_delay |
>
Definitions for interface between Bluetooth Mesh Models and Mesh Core
| void wiced_bt_mesh_core_delay_statistics_get | ( | wiced_bt_mesh_core_delay_statistics_t * | p_data | ) |
Gets delay statistics.
| [out] | p_data | pointer where to copy delay statistics |
| void wiced_bt_mesh_core_delay_statistics_reset | ( | void | ) |
Resets delay statistics.
| None |
| wiced_bool_t wiced_bt_mesh_core_generate_kdk | ( | uint8_t | net_key_idx, |
| uint8_t * | p_kdk | ||
| ) |
Generate key derivation key.
| [in] | net_key_idx | Global net key index |
| [in] | p_kdk | Buffer for output key 16 bytes length - key derivation key |
| void wiced_bt_mesh_set_inter_segment_delay | ( | uint8_t | delay_ms | ) |
Sets intersegment delay.
| [in] | delay_ms | Intersegment delay in milliseconds |
| uint8_t addr[2] |
unicast address to assign to provisioning node
Subscription address (LE)
| uint8_t app_key_idx[2] |
Global Index of the Application Key (LE).
0xffff - device Key
| uint8_t conn_id[4] |
connection id for provisioning.
Better to use some random value.
| uint8_t ctl |
CTL field.
can be 0 or 1
| uint8_t dst[2] |
Destination address (LE)
BigEndian 2 bytes destination address or 16 bytes label UUID of the virtual address.
| uint8_t dst_len |
Length of the destination address.
It can be 2 or 16 for virtual address
| uint8_t faults[1] |
faults array.
can be empty or contain up to 16 fault codes
| uint16_t fragment_offset |
The starting offset of the requested fragment in the provisioning record data.
The starting offset of the data fragment in the provisioning record data.
| uint8_t pdu[1] |
TransportPDU set to between 1 and 16 inclusive octets of data.
Access PDU.
AccessPDU set to between 1 and 380 inclusive octets of data.
| uint16_t record_id |
Identifies the provisioning record for which the request is made.
Identifies the provisioning record whose data fragment is sent in the response.
| uint8_t ttl |
TTL field.
can be between 0 and 0x7f