Bluetooth Mesh Proxy Connections#

Bluetooth Mesh Proxy Connections.

Bluetooth mesh stack functions for GATT proxy connections

Modules#

sl_btmesh_evt_proxy_connected

sl_btmesh_evt_proxy_disconnected

sl_btmesh_evt_proxy_filter_status

Functions#

sl_status_t
sl_btmesh_proxy_connect(uint8_t connection, uint32_t *handle)
sl_status_t
sl_status_t
sl_btmesh_proxy_set_filter_type(uint32_t handle, uint16_t netkey_index, uint8_t type)
sl_status_t
sl_btmesh_proxy_allow(uint32_t handle, uint16_t netkey_index, uint16_t address)
sl_status_t
sl_btmesh_proxy_deny(uint32_t handle, uint16_t netkey_index, uint16_t address)
sl_status_t
sl_status_t
sl_btmesh_proxy_send_solicitation(uint8_t enc_netkey_index, uint16_t elem_index, uint16_t dst)

Function Documentation#

sl_btmesh_proxy_connect#

sl_status_t sl_btmesh_proxy_connect (uint8_t connection, uint32_t * handle)
Parameters
[in]connection

Connection handle

[out]handle

If a connection attempt is successfully initiated, a valid proxy handle will be returned.

Start connecting a proxy client to a proxy server. After the connection is complete, a sl_btmesh_evt_proxy_connected event will be generated. LE-connection must be opened prior to opening the proxy connection.

Returns

  • SL_STATUS_OK if successful. Error code otherwise.

Events


Definition at line 3696 of file /mnt/raid/workspaces/ws.cynwT2I6w/overlay/gsdk/protocol/bluetooth/build/native/mesh_app/inc/sl_btmesh_api.h

sl_btmesh_proxy_disconnect#

sl_status_t sl_btmesh_proxy_disconnect (uint32_t handle)
Parameters
[in]handle

Proxy handle

Disconnect. This call can be used also for a connection, which is not yet fully formed.

Returns

  • SL_STATUS_OK if successful. Error code otherwise.

Events


Definition at line 3711 of file /mnt/raid/workspaces/ws.cynwT2I6w/overlay/gsdk/protocol/bluetooth/build/native/mesh_app/inc/sl_btmesh_api.h

sl_btmesh_proxy_set_filter_type#

sl_status_t sl_btmesh_proxy_set_filter_type (uint32_t handle, uint16_t netkey_index, uint8_t type)
Parameters
[in]handle

Proxy handle

[in]netkey_index

Network key index used in encrypting the request to the proxy server

[in]type

Filter type: 0x00 to allow traffic from the given address, 0x01 to block traffic from the given address

Set up the proxy filtering type. At the proxy server side, this is a local configuration, while on the proxy client a proxy configuration PDU will be sent to the proxy server.

Returns

  • SL_STATUS_OK if successful. Error code otherwise.


Definition at line 3728 of file /mnt/raid/workspaces/ws.cynwT2I6w/overlay/gsdk/protocol/bluetooth/build/native/mesh_app/inc/sl_btmesh_api.h

sl_btmesh_proxy_allow#

sl_status_t sl_btmesh_proxy_allow (uint32_t handle, uint16_t netkey_index, uint16_t address)
Parameters
[in]handle

Proxy handle

[in]netkey_index

Network key index used in encrypting the request to the proxy server

[in]address

Destination address to allow. The address may be either a unicast address, a group address, or a virtual address.

Allow messages meant for the given address to be forwarded over the proxy connection to the proxy client. At the proxy server side, this is a local configuration, while on the proxy client a proxy configuration PDU will be sent to the proxy server.

Returns

  • SL_STATUS_OK if successful. Error code otherwise.


Definition at line 3748 of file /mnt/raid/workspaces/ws.cynwT2I6w/overlay/gsdk/protocol/bluetooth/build/native/mesh_app/inc/sl_btmesh_api.h

sl_btmesh_proxy_deny#

sl_status_t sl_btmesh_proxy_deny (uint32_t handle, uint16_t netkey_index, uint16_t address)
Parameters
[in]handle

Proxy handle

[in]netkey_index

Network key index used in encrypting the request to the proxy server

[in]address

Destination address to block. The address may be either a unicast address, a group address, or a virtual address.

Block messages meant for the given address from being forwarded over the proxy connection to the proxy client. At the proxy server side, this is a local configuration, while on the proxy client a proxy configuration PDU will be sent to the proxy server.

Returns

  • SL_STATUS_OK if successful. Error code otherwise.


Definition at line 3768 of file /mnt/raid/workspaces/ws.cynwT2I6w/overlay/gsdk/protocol/bluetooth/build/native/mesh_app/inc/sl_btmesh_api.h

sl_btmesh_proxy_optimisation_toggle#

sl_status_t sl_btmesh_proxy_optimisation_toggle (uint8_t enable)
Parameters
[in]enable

Non zero - enable, otherwise disable

In case of unicast address, if proxy identified the destination, the message will be forwarded only to that node, otherwise to all. This functionality could be enabled or disabled with this function.

Returns

  • SL_STATUS_OK if successful. Error code otherwise.


Definition at line 3783 of file /mnt/raid/workspaces/ws.cynwT2I6w/overlay/gsdk/protocol/bluetooth/build/native/mesh_app/inc/sl_btmesh_api.h

sl_btmesh_proxy_send_solicitation#

sl_status_t sl_btmesh_proxy_send_solicitation (uint8_t enc_netkey_index, uint16_t elem_index, uint16_t dst)
Parameters
[in]enc_netkey_index

Network key index used to encrypt the message

[in]elem_index

Solicitation source element index. Proxy client may use the primary address of any of the secondary addresses as a solicitation source

[in]dst

Solicitation destination address. Solicitation does not have a subscribe mechanism, the address can be the primary or any of the secondary addresses. In addition, 0xFFFC (All Proxies) is permitted

Send Solicitation PDU to activate a Private Proxy on a node that support On-Demand Private Proxy.

Returns

  • SL_STATUS_OK if successful. Error code otherwise.


Definition at line 3801 of file /mnt/raid/workspaces/ws.cynwT2I6w/overlay/gsdk/protocol/bluetooth/build/native/mesh_app/inc/sl_btmesh_api.h

Macro Definition Documentation#

sl_btmesh_cmd_proxy_connect_id#

#define sl_btmesh_cmd_proxy_connect_id
Value:
0x00180028

Definition at line 3594 of file /mnt/raid/workspaces/ws.cynwT2I6w/overlay/gsdk/protocol/bluetooth/build/native/mesh_app/inc/sl_btmesh_api.h

sl_btmesh_cmd_proxy_disconnect_id#

#define sl_btmesh_cmd_proxy_disconnect_id
Value:
0x01180028

Definition at line 3595 of file /mnt/raid/workspaces/ws.cynwT2I6w/overlay/gsdk/protocol/bluetooth/build/native/mesh_app/inc/sl_btmesh_api.h

sl_btmesh_cmd_proxy_set_filter_type_id#

#define sl_btmesh_cmd_proxy_set_filter_type_id
Value:
0x02180028

Definition at line 3596 of file /mnt/raid/workspaces/ws.cynwT2I6w/overlay/gsdk/protocol/bluetooth/build/native/mesh_app/inc/sl_btmesh_api.h

sl_btmesh_cmd_proxy_allow_id#

#define sl_btmesh_cmd_proxy_allow_id
Value:
0x03180028

Definition at line 3597 of file /mnt/raid/workspaces/ws.cynwT2I6w/overlay/gsdk/protocol/bluetooth/build/native/mesh_app/inc/sl_btmesh_api.h

sl_btmesh_cmd_proxy_deny_id#

#define sl_btmesh_cmd_proxy_deny_id
Value:
0x04180028

Definition at line 3598 of file /mnt/raid/workspaces/ws.cynwT2I6w/overlay/gsdk/protocol/bluetooth/build/native/mesh_app/inc/sl_btmesh_api.h

sl_btmesh_cmd_proxy_optimisation_toggle_id#

#define sl_btmesh_cmd_proxy_optimisation_toggle_id
Value:
0x05180028

Definition at line 3599 of file /mnt/raid/workspaces/ws.cynwT2I6w/overlay/gsdk/protocol/bluetooth/build/native/mesh_app/inc/sl_btmesh_api.h

sl_btmesh_cmd_proxy_send_solicitation_id#

#define sl_btmesh_cmd_proxy_send_solicitation_id
Value:
0x06180028

Definition at line 3600 of file /mnt/raid/workspaces/ws.cynwT2I6w/overlay/gsdk/protocol/bluetooth/build/native/mesh_app/inc/sl_btmesh_api.h

sl_btmesh_rsp_proxy_connect_id#

#define sl_btmesh_rsp_proxy_connect_id
Value:
0x00180028

Definition at line 3601 of file /mnt/raid/workspaces/ws.cynwT2I6w/overlay/gsdk/protocol/bluetooth/build/native/mesh_app/inc/sl_btmesh_api.h

sl_btmesh_rsp_proxy_disconnect_id#

#define sl_btmesh_rsp_proxy_disconnect_id
Value:
0x01180028

Definition at line 3602 of file /mnt/raid/workspaces/ws.cynwT2I6w/overlay/gsdk/protocol/bluetooth/build/native/mesh_app/inc/sl_btmesh_api.h

sl_btmesh_rsp_proxy_set_filter_type_id#

#define sl_btmesh_rsp_proxy_set_filter_type_id
Value:
0x02180028

Definition at line 3603 of file /mnt/raid/workspaces/ws.cynwT2I6w/overlay/gsdk/protocol/bluetooth/build/native/mesh_app/inc/sl_btmesh_api.h

sl_btmesh_rsp_proxy_allow_id#

#define sl_btmesh_rsp_proxy_allow_id
Value:
0x03180028

Definition at line 3604 of file /mnt/raid/workspaces/ws.cynwT2I6w/overlay/gsdk/protocol/bluetooth/build/native/mesh_app/inc/sl_btmesh_api.h

sl_btmesh_rsp_proxy_deny_id#

#define sl_btmesh_rsp_proxy_deny_id
Value:
0x04180028

Definition at line 3605 of file /mnt/raid/workspaces/ws.cynwT2I6w/overlay/gsdk/protocol/bluetooth/build/native/mesh_app/inc/sl_btmesh_api.h

sl_btmesh_rsp_proxy_optimisation_toggle_id#

#define sl_btmesh_rsp_proxy_optimisation_toggle_id
Value:
0x05180028

Definition at line 3606 of file /mnt/raid/workspaces/ws.cynwT2I6w/overlay/gsdk/protocol/bluetooth/build/native/mesh_app/inc/sl_btmesh_api.h

sl_btmesh_rsp_proxy_send_solicitation_id#

#define sl_btmesh_rsp_proxy_send_solicitation_id
Value:
0x06180028

Definition at line 3607 of file /mnt/raid/workspaces/ws.cynwT2I6w/overlay/gsdk/protocol/bluetooth/build/native/mesh_app/inc/sl_btmesh_api.h