This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC2650: Time spacing of BLE peripherals during a connection interval

I have a simple question (hopefully) regarding the BLE stack's spacing of peripherals. From what I've observed with a scope, whether the connection interval is 100 millisec or 10 millisec, two peripherals connected to the central seem to have their connection windows setup with a 5 millisecond spacing from eachother. Is this constant for all connection intervals and scenarios or is there some cases where this may change?

On a related note, does this mean the max peripherals under the minimum 7.5 millisecond connection interval is two?

Thanks!

  • Hello,
    What kind of intervals have you selected for your two slave devices?
    If you read section "5.1.4 Connection Parameter Limitations with Multiple Connections " in the developers guide it is stated that All connection’s connection intervals must be multiples of each other. This would imply that if you use a connection interval of 7.5 ms on the first slave device, then the second slave device must use connection interval of 15 ms or with a higher multiple of 7.5 ms.
  • Hi Eirik, 

    I think perhaps you misunderstood my question. Here is a scope capture of the central device's antenna when connected to two peripherals. Basically, I want to know how the peripheral spacing is determined internally. Is it always 5 millisecond spacing as shown? Note I am referring to the case when all peripherals have the SAME connection interval (e.g. in this case 25 ms).

    thanks!

  • Bump..I'd appreciate an answer to this, I'm sure one of the stack experts at TI knows!
    thanks!
  • Hello,

    You are correct. The spacing will be 5 ms. Our recommendation is to use a connection interval of 25 ms or higher when having multiple slaves connected to your master (central) device. In that case, like you show in the screen shot above, you have some margin of time to receive more data from the periph1. This can occur if for example you use an ATT MTU size larger than 23 bytes and you send a read request of an attribute (that is larger than 23 bytes) where then the peripheral (if it contains the GATT server) will send multiple packets within the same connection event or if you intend to send several notifications within the same connection event. If you enable overlapped processing you can in theory fill up the entire remaining time with notification packets.