LE Extended ADV Data Exported Functions

group LE_ADV_DATA_Exported_Functions

Functions

bool ble_adv_data_add(void **pp_handle, uint16_t adv_data_len, uint8_t *p_adv_data, uint16_t scan_resp_len, uint8_t *p_scan_resp)

Interface of enable ADV for APP user.

Example usage

void *p_le_xxxx_adv_handle = NULL;
static uint8_t xxxx_adv_data[] =
{
    0x02,
    GAP_ADTYPE_POWER_LEVEL,
    0x00,
};
static uint8_t xxxx_scan_rsp_data[] =
{
    0x03,
    GAP_ADTYPE_APPEARANCE,
    LO_WORD(GAP_GATT_APPEARANCE_UNKNOWN),
    HI_WORD(GAP_GATT_APPEARANCE_UNKNOWN),
};
bool le_xxxx_adv_start()
{
    if (p_le_xxxx_adv_handle != NULL)
    {
        APP_PRINT_WARN0("le_xxxx_adv_start: already started");
        return true;
    }
    if (ble_adv_data_add(&p_le_xxxx_adv_handle, sizeof(xxxx_adv_data),(uint8_t *)xxxx_adv_data,
                        sizeof(xxxx_scan_rsp_data), (uint8_t *)xxxx_scan_rsp_data))
    {
        return true;
    }
    return false;
}
Parameters:
  • pp_handle -- [in] When add ADV data success, manager return a handle for deleting.

  • adv_data_len -- [in] ADV data length.

  • p_adv_data -- [in] Pointer to ADV data.

  • scan_resp_len -- [in] Scan rsp data length.

  • p_scan_resp -- [in] Pointer to scan rsp data.

Return values:
  • true -- Success.

  • false -- Failed.

Returns:

Operation result.

bool ble_adv_data_del(void *p_handle)

Interface of disable ADV for APP user.

Example usage

void *p_le_xxxx_adv_handle = NULL;
bool le_xxxx_adv_stop(void)
{
    if (p_le_xxxx_adv_handle == NULL)
    {
        APP_PRINT_WARN0("le_xxxx_adv_stop: already stopped");
        return true;
    }

    if (ble_adv_data_del(p_le_xxxx_adv_handle))
    {
        p_le_xxxx_adv_handle = NULL;
        return true;
    }
    return false;
}
Parameters:

p_handle -- [in] ADV set handle which get from add operation.

Return values:
  • true -- Success.

  • false -- Failed.

Returns:

Operation result.

bool ble_adv_data_enable(void)

Interface of enable ADV data manager.

Example usage

void app_ble_device_handle_power_on(void)
{
    ......
    ble_adv_data_enable();
    ......
}
Return values:
  • true -- Success.

  • false -- Failed.

Returns:

Operation result.

bool ble_adv_data_disable(void)

Interface to disable ADV data manager.

Example usage

void app_ble_device_handle_power_off(void)
{
    ......
    ble_adv_data_disable();
    ......
}
Return values:
  • true -- Success.

  • false -- Failed.

Returns:

Operation result.