title: Can a BLE response be returned in the same connection event?
body: <p>Using a BLE 4.1 device, can one receive the response to a request (e.g. read request, read blob request) within the same interval? </p>
  
  <p>The task is to read more than 20 bytes in the same connection interval: I am developing an app that needs to read these bytes and display content depending on their value (with very low latency).  I am aware that commands can be stacked within the same connection event, but this is not applicable in this case.</p>
  
  <p>I have been perusing the 4.1 spec without success.  Volume 3, Sections 3.3.2-3.3.3 of spec spec 4.1 specify that no request shall be made before a response is returned.  If it is true that one must wait a connection interval to receive a response, then it take at least 4 connection intervals to read a long attribute (that is more than 20 bytes).</p>
  
  <p>I have found several discussions (<a href="https://punchthrough.com/blog/posts/maximizing-ble-throughput-on-ios-and-android" rel="nofollow noreferrer">1</a>, <a href="https://devzone.nordicsemi.com/blogs/32/how-different-ble-packet-types-influence-throughpu/" rel="nofollow noreferrer">2</a>) on the web implying that a response follows in the next connection event, but I have not found the section of the spec that describes this behavior.</p>
  
  <p>I would appreciate an explanation that cites official documentation, rather than a forum or other website.</p>