GAP#

GAP.

Enumerations

enum

sl_bt_gap_address_type_t { sl_bt_gap_public_address = 0x0, sl_bt_gap_static_address = 0x1, sl_bt_gap_random_resolvable_address = 0x2, sl_bt_gap_random_nonresolvable_address = 0x3 }

Device Address Types.

enum

sl_bt_gap_phy_type_t { sl_bt_gap_1m_phy = 0x1, sl_bt_gap_2m_phy = 0x2, sl_bt_gap_coded_phy = 0x4, sl_bt_gap_any_phys = 0xff }

PHY Types.

enum

sl_bt_gap_phy_and_coding_type_t { sl_bt_gap_1m_phy_uncoded = 0x1, sl_bt_gap_2m_phy_uncoded = 0x2, sl_bt_gap_coded_phy_125k = 0x4, sl_bt_gap_coded_phy_500k = 0x8 }

PHY Types with Coding Schemes.

Functions

sl_status_t

sl_bt_gap_set_privacy_mode (uint8_t privacy, uint8_t interval)

sl_status_t

sl_bt_gap_set_data_channel_classification (size_t channel_map_len, const uint8_t *channel_map)

sl_status_t

sl_bt_gap_enable_whitelisting (uint8_t enable)

Detailed Description#

GAP.

The commands and events in this class are related to the Generic Access Profile (GAP) in Bluetooth.

Enumeration Type Documentation#

sl_bt_gap_address_type_t#

enum sl_bt_gap_address_type_t

Device Address Types.

Enumerator

sl_bt_gap_public_address

(0x0) Public device address

sl_bt_gap_static_address

(0x1) Static device address

sl_bt_gap_random_resolvable_address

(0x2) Private resolvable random address

sl_bt_gap_random_nonresolvable_address

(0x3) Private non-resolvable random address


sl_bt_gap_phy_type_t#

enum sl_bt_gap_phy_type_t

PHY Types.

Enumerator

sl_bt_gap_1m_phy

(0x1) 1M PHY

sl_bt_gap_2m_phy

(0x2) 2M PHY

sl_bt_gap_coded_phy

(0x4) Coded PHY, 125k (S=8) or 500k (S=2)

sl_bt_gap_any_phys

(0xff) Any PHYs the device supports


sl_bt_gap_phy_and_coding_type_t#

enum sl_bt_gap_phy_and_coding_type_t

PHY Types with Coding Schemes.

Enumerator

sl_bt_gap_1m_phy_uncoded

(0x1) 1M PHY

sl_bt_gap_2m_phy_uncoded

(0x2) 2M PHY

sl_bt_gap_coded_phy_125k

(0x4) 125k Coded PHY (S=8)

sl_bt_gap_coded_phy_500k

(0x8) 500k Coded PHY (S=2)


Function Documentation#

sl_bt_gap_set_privacy_mode()#

sl_status_t sl_bt_gap_set_privacy_mode

(

uint8_t

privacy,

uint8_t

interval

)

Enable or disable the privacy feature on all GAP roles. New privacy mode will take effect for advertising next time advertising is enabled, for scanning next time scanning is enabled, and for initiating on the next open connection command. When privacy is enabled and the device is advertising or scanning, the stack will maintain a periodic timer with the specified time interval as a timeout value. At each timeout, the stack will generate a new private resolvable address and use it in advertising data packets and scanning requests.

By default, privacy feature is disabled.

Parameters

[in]

privacy

Values:

  • 0: Disable privacy

  • 1: Enable privacy

[in]

interval

The minimum time interval between a private address change. This parameter is ignored if this command is issued to disable privacy mode. Values:

  • 0: Use default interval, 15 minutes

  • others: The time interval in minutes

Returns

SL_STATUS_OK if successful. Error code otherwise.

sl_bt_gap_set_data_channel_classification()#

sl_status_t sl_bt_gap_set_data_channel_classification

(

size_t

channel_map_len,

const uint8_t *

channel_map

)

Specify a channel classification for data channels. This classification persists until overwritten with a subsequent command or until the system is reset.

Parameters

[in]

channel_map_len

Array length

[in]

channel_map

This parameter is 5 bytes and contains 37 1-bit fields. The nth field (in the range 0 to 36) contains the value for the link layer channel index n.

  • 0: Channel n is bad.

  • 1: Channel n is unknown.

The rest of most significant bits are reserved for future use and must be set to 0. At least two channels shall be marked as unknown.

Returns

SL_STATUS_OK if successful. Error code otherwise.


sl_bt_gap_enable_whitelisting()#

sl_status_t sl_bt_gap_enable_whitelisting ( uint8_t enable )

Enable or disable whitelisting. The setting will be effective the next time that scanning is enabled. To add devices to the whitelist, either bond with the device or add it manually with sl_bt_sm_add_to_whitelist.

Parameters

[in]

enable

1 enable, 0 disable whitelisting.

Returns

SL_STATUS_OK if successful. Error code otherwise.