GATT Client - Multiple connection issue without scan
Posted: Wed May 15, 2019 9:58 am
Dear Sir/Madam,
As per our requirement, the GATT Client + GAP Central device has to do multiple connections with different peer BLE peripheral devices without scanning.
So we did an experiment using BLE client application based on the requirement.
In an experiment, we sent multiple connection requests consequently for different peer BLE peer devices (whose address have been known) without scanning.
As a result, only first device, whose connection request has been sent in first order, could be connected. Other devices could not be connected. After some time, the connected device would be disconnected.
Following is the portion of client application where multiple connection requests has been sent after registering the app:
case ESP_GATTC_REG_EVT:
esp_ble_gattc_open(gl_profile_tab[PROFILE_APP_ID].gattc_if, peer_addr1, ble_addr_type, true);
vTaskDelay(10000/portTICK_PERIOD_MS);
esp_ble_gattc_open(gl_profile_tab[PROFILE_APP_ID].gattc_if, peer_addr2, ble_addr_type, true);
vTaskDelay(10000/portTICK_PERIOD_MS);
esp_ble_gattc_open(gl_profile_tab[PROFILE_APP_ID].gattc_if, peer_addr3, ble_addr_type, true);
break;
I have also attached a debug log on L2CAP layer for this issue.
If any further information will be required to help on this issue, kindly let us know.
As per our requirement, the GATT Client + GAP Central device has to do multiple connections with different peer BLE peripheral devices without scanning.
So we did an experiment using BLE client application based on the requirement.
In an experiment, we sent multiple connection requests consequently for different peer BLE peer devices (whose address have been known) without scanning.
As a result, only first device, whose connection request has been sent in first order, could be connected. Other devices could not be connected. After some time, the connected device would be disconnected.
Following is the portion of client application where multiple connection requests has been sent after registering the app:
case ESP_GATTC_REG_EVT:
esp_ble_gattc_open(gl_profile_tab[PROFILE_APP_ID].gattc_if, peer_addr1, ble_addr_type, true);
vTaskDelay(10000/portTICK_PERIOD_MS);
esp_ble_gattc_open(gl_profile_tab[PROFILE_APP_ID].gattc_if, peer_addr2, ble_addr_type, true);
vTaskDelay(10000/portTICK_PERIOD_MS);
esp_ble_gattc_open(gl_profile_tab[PROFILE_APP_ID].gattc_if, peer_addr3, ble_addr_type, true);
break;
I have also attached a debug log on L2CAP layer for this issue.
If any further information will be required to help on this issue, kindly let us know.