This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Connection parameters: nRF Connect & finding them in Wireshark

Hi,

Could someone help me about the following questions?

Q1: What are the connection parameters set by the Android app nRF Connect? Can I change them?

Q2: How can I find out about these parameters via nRF Sniffer, more specifically, the connection interval? I know that the final decision is made by the Central (Initiator) and is reported in CONNECT_REQ packet. Does this packet contain the final settings? What types of packets should I look for to understand what the final connection interval is?

Q3: Can delta time parameter in the Wireshark be used to find the connection interval? Please see the attached images. In this connection, the CONNECT_REQ showed that the connection interval is 50 ms. Although, the delta time for the Rcvd Handle Value Notification, which I assume is the packet that contains the data (I recognized some the bytes that the Peripheral sent), shows a value of 150 us and 382 us for end to start and start to start parameters, respectively. On the other hand, there are some Empty Data PDUs that show a value of ~47000 us for these parameters, which makes sense according to the connection parameters set in the CONNECT_REQ packet. Is there anything that I don't understand correctly? Can the delta time parameters be used to find out about connection interval?

The Rcvd Handle Value Notification packet: image description

The Empty Data PDU packet: image description

-Vala

Parents
  • Hi Vala,

    You can have a look at this blog, it discusses a little bit about the flow control and on how to read the connect request packet.

    Regarding the connection parameter set by nRF Connect, it actually doesn't set any parameter. Like any Android (and iOS) applications, it can't control initial connection parameter. The parameters are decided by the operating system. However the application can request a connection parameter update using this API.

    As far as I know the nRFConnect hasn't provided a way for user to call this.

    In short, the connection parameters are various and user can't change it, for now.

    You can use the delta time, start to end (start to start is not reliable) to detect the distance between packet and can find which packets are in same connection event and which are not, and can roughly get the interval by doing calculation. But it's easier to look at the connect request and the connection parameter update packet, if any.

Reply
  • Hi Vala,

    You can have a look at this blog, it discusses a little bit about the flow control and on how to read the connect request packet.

    Regarding the connection parameter set by nRF Connect, it actually doesn't set any parameter. Like any Android (and iOS) applications, it can't control initial connection parameter. The parameters are decided by the operating system. However the application can request a connection parameter update using this API.

    As far as I know the nRFConnect hasn't provided a way for user to call this.

    In short, the connection parameters are various and user can't change it, for now.

    You can use the delta time, start to end (start to start is not reliable) to detect the distance between packet and can find which packets are in same connection event and which are not, and can roughly get the interval by doing calculation. But it's easier to look at the connect request and the connection parameter update packet, if any.

Children
No Data
Related