for example code below if can add 5 adresses it is always reading the first device. and whitelist size is 9. when i try to add 3 addr then size again 9 but this time it is reading 2. or 3. device too.
my question is about how to add 100 or more devices. what must be the size, why
Code: Select all
esp_ble_gap_get_whitelist_size(&lngth);
the code is one of the examples ble_eddystone.
need help
thanks a lot for reading and replying
Code: Select all
static void wl_add(void){
for (int i=0;i<3;i++){
if(i==0){
esp_bd_addr_t whitelist_addr = {0x60, 0xc0, 0xbf, 0x28, 0xa4, 0x34};
esp_ble_gap_update_whitelist(true, whitelist_addr, BLE_ADDR_TYPE_PUBLIC);
}
if(i==1){
esp_bd_addr_t whitelist_addr = {0x60, 0xc0, 0xbf, 0x28, 0xa4, 0x33};
esp_ble_gap_update_whitelist(true, whitelist_addr, BLE_ADDR_TYPE_PUBLIC);
}
if(i==2){
esp_bd_addr_t whitelist_addr = {0x60, 0xc0, 0xbf, 0x28, 0xa4, 0x32};
esp_ble_gap_update_whitelist(true, whitelist_addr, BLE_ADDR_TYPE_PUBLIC);
}
if(i==3){
esp_bd_addr_t whitelist_addr = {0x60, 0xc0, 0xbf, 0x28, 0xa4, 0x31};
esp_ble_gap_update_whitelist(true, whitelist_addr, BLE_ADDR_TYPE_PUBLIC);
}
else{
esp_bd_addr_t whitelist_addr = {0x60, 0xc0, 0xbf, 0x28, 0xa4, 0x30};
esp_ble_gap_update_whitelist(true, whitelist_addr, BLE_ADDR_TYPE_PUBLIC);
}
}
uint16_t lngth;
esp_ble_gap_get_whitelist_size(&lngth);
printf("%d\n",lngth);
}