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

need wireshark usage examples

first of all many many thanks for nrf sniffer 2.0 and all of it's improvements (linux, live data display, easy install ... etc)

i'm sure there are still a lot details missing, but the easy install along with linux and live trace in linux support gets it to a point where i started using it

well, now i'm new to ble and it's data package transport details and maybe there are more like myself

i did some tracing and now the guessing game starts

i'm including here a pict of one of my traces and i would like to ask some experts to comment and explain the individual lines along with the details contained within ... not about the data contained as long as it's explained within the details obtainable by key double clicking the individual lines

for instance, i have no idea where a connection interval starts and ends looking at the trace

yes, i see the ms time stamps and the data sent from the peripheral, but why are there only 4 while i get overflow or no buffer avail errs in software

looking at a data package diagram in a manual and seeing a wireshark trace are for me quite different things

i hope i'm not asking for the stars in the sky

sorry for maybe such a dumb question

cheers Klaus

p.s. it looks like the pict doesn't show and needs to be downloaded

maybe you guys find a way to display a similar wireshark trace with explanations contained or point me to something containing it

wireshark-trace.jpg

Parents
  • First of all, when sharing traces you should send the entire trace file. This is saved by clicking File -> Export ... and then choosing the packets you want to export.

    To see the data contained in each packet, simply highlight one packet by clicking it, and see the Packet Details panel for more details. If you do not see this, click View -> Packet Details. This will show all data in the packet dissected and put in context of each of the different protocols being used.

    To see when a connection interval ends, its easiest to add the Nordic BLE Sniffer -> Delta Time (us end to start) as a column and keeping in mind that all packets within a connection event is sent with 150us between them, as shown below. image description

    As for your issues with overflow I do not know, how are you sending the data?

    To find the connection interval, the simplest way is to inspect the contents of the CONNECT_REQ packet (#38 in your trace). See an example below image description

    Alternatively, you can set up a filter. ALL fields you see in the Packet Details view can be used for filtering. The filter I will make to find the connection interval is:

    • The packets need to be NON-advertisement packets (I.E. from a connection.) So I add btle.access_address != 0x8e89bed6 since this will filter out any advertisement packets as they all have the access_address 0x8e89bed6.

    • I want to see only master packets (as they dictate the start of the connection interval) So I add nordic_ble.direction == 1

    • Lastly I want to see the time between each packet I now have displayed, so I add a new column using a field from the Packet Details View, namely Frame -> Time Delta from previous displayed frame. You can also a field from the sniffer Nordic BLE Sniffer -> `Delta Time (us end to start).

    Below is a trace with 30ms connection interval. 30ms connection interval trace

Reply
  • First of all, when sharing traces you should send the entire trace file. This is saved by clicking File -> Export ... and then choosing the packets you want to export.

    To see the data contained in each packet, simply highlight one packet by clicking it, and see the Packet Details panel for more details. If you do not see this, click View -> Packet Details. This will show all data in the packet dissected and put in context of each of the different protocols being used.

    To see when a connection interval ends, its easiest to add the Nordic BLE Sniffer -> Delta Time (us end to start) as a column and keeping in mind that all packets within a connection event is sent with 150us between them, as shown below. image description

    As for your issues with overflow I do not know, how are you sending the data?

    To find the connection interval, the simplest way is to inspect the contents of the CONNECT_REQ packet (#38 in your trace). See an example below image description

    Alternatively, you can set up a filter. ALL fields you see in the Packet Details view can be used for filtering. The filter I will make to find the connection interval is:

    • The packets need to be NON-advertisement packets (I.E. from a connection.) So I add btle.access_address != 0x8e89bed6 since this will filter out any advertisement packets as they all have the access_address 0x8e89bed6.

    • I want to see only master packets (as they dictate the start of the connection interval) So I add nordic_ble.direction == 1

    • Lastly I want to see the time between each packet I now have displayed, so I add a new column using a field from the Packet Details View, namely Frame -> Time Delta from previous displayed frame. You can also a field from the sniffer Nordic BLE Sniffer -> `Delta Time (us end to start).

    Below is a trace with 30ms connection interval. 30ms connection interval trace

Children
Related