Hello Sebastian, I Hope you're doing well, too,
In my case, I have to connect to multiple slaves which have a long advertising interval.
To the best of my understanding, the connection is performed as follows:
Connection request comes from user (by the pressing of a button, for example)
- Stop Scan
- Issue Connection Request for the designated MAC Address device
... wait that the Peripheral open the window (time to wait: 0 - Slave_Adv_Period)
- Device sends Adv, window is open -> Master initiate the connection
- Master can turn on the Scan and is ready to manage a new connection request, while it performs service discovery / pairing / any action needed on the connected slave.
What limits my application right now is the fact that i have to wait for the interval [0 - Slave_Adv_Period] when i issue a connection request, multiplied by the number of Devices i need to connect each time. This cause long 'ScanOff' periods.
Since I need to connect to multiple devices, I would be faster by being able to 'store' the request for all the devices and just initiate the connection with the one peripheral that sends an Advertise first.
When you say that the connection method is designed to work sequentially, you specifically mean that I always have to define one MAC Address to which i want to connect first and then wait for the peripheral to send a connectable advertise, before being able to open the procedure for a second one, correct?
Thank you for your help,
I really appreciate
Dan