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.
GATT Client - Multiple connection issue without scan
-
- Posts: 10
- Joined: Wed Jan 02, 2019 8:40 am
GATT Client - Multiple connection issue without scan
- Attachments
-
- debug_multi_conn_log.txt
- Debug Log
- (13.75 KiB) Downloaded 714 times
Regards,
Nisarg Shah
Nisarg Shah
Re: GATT Client - Multiple connection issue without scan
First of all you need to separately register app for every peer device you want to connect to. This will give you different gattc_if values for every successful registered app. From your code snippet we can see that you are trying to open connection to all peer devices with the same gattc_if:
https://github.com/espressif/esp-idf/bl ... #L792-L821
Here you can find reference code:gl_profile_tab[PROFILE_APP_ID].gattc_if
https://github.com/espressif/esp-idf/bl ... #L792-L821
-
- Posts: 10
- Joined: Wed Jan 02, 2019 8:40 am
Re: GATT Client - Multiple connection issue without scan
Thanks for the reply.
As per your suggestion, i have kept one client app for each new connection. So when client app receives registration event of each client app, connection request has been sent for new connection.
As a result, device, for which connection has been sent in first order, is connected with all client profiles. After sometime, connected device is automatically disconnected.
Kindly refer the attached source code and log for this experiment
As per your suggestion, i have kept one client app for each new connection. So when client app receives registration event of each client app, connection request has been sent for new connection.
As a result, device, for which connection has been sent in first order, is connected with all client profiles. After sometime, connected device is automatically disconnected.
Kindly refer the attached source code and log for this experiment
- Attachments
-
- spp_client_demo.c
- (10.7 KiB) Downloaded 746 times
-
- Multiconnect_Issue_Without_Scan.txt
- (3.69 KiB) Downloaded 691 times
Regards,
Nisarg Shah
Nisarg Shah
Who is online
Users browsing this forum: No registered users and 130 guests