cancel
Showing results for 
Search instead for 
Did you mean: 

BLE beacon is missing when using API aci_gap_set_undirected_connectable

Hagai
Associate

I have a project where I'm using the BLE whitelist.
In order to do that I'm using the aci_gap_set_undirected_connectable API.

However, the BLE beacon does not seems to advertised, only the scan response seems to be shown by my phone.
When I tried to use the aci_gap_set_discoverable, beacon was shown as expected.

Am I missing something?
Any help will be appreciated.

 

 

The project runs on STM32WB55.
I used both ST BLE toolbox and nRF connect applications on my android phone to view the advertise data.

The code that does not advertise the beacon:

    uint8_t AdvertiseBeacon[] = {ADVERTISE_BEACON};
    uint8_t ScanResponse[] = {SCAN_RESPONSE};
    hci_le_set_advertising_data(beaconSize, (uint8_t*)&AdvertiseBeacon);
    hci_le_set_scan_response_data(sizeof(ScanResponse), ScanResponse);
    aci_gap_set_undirected_connectable(advertiseInterval_min,
        advertiseInterval_max,
        GAP_RESOLVABLE_PRIVATE_ADDR,
        NO_WHITE_LIST_USE);

 

The code that does advertise the beacon:

    uint8_t AdvertiseBeacon[] = {ADVERTISE_BEACON};
    uint8_t ScanResponse[] = {SCAN_RESPONSE};
    hci_le_set_advertising_data(beaconSize, (uint8_t*)&AdvertiseBeacon);
    hci_le_set_scan_response_data(sizeof(ScanResponse), ScanResponse);
    aci_gap_set_discoverable(ADV_IND,
        advertiseInterval_min,
        advertiseInterval_max,
        GAP_PUBLIC_ADDR,
        NO_WHITE_LIST_USE,
        0,
        0,
        0,
        NULL,
        connectionInterval_min,
        connectionInterval_max);

 

 

 

0 REPLIES 0