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.

TI Sniffer missing connection events on BLE?

Other Parts Discussed in Thread: CC2540, CC2650

I'm using the TI Sniffer version 2.18.1.0 on BLE with a CC2540 Dongle.  In the screenshot below, you can see a BLE connection being created in which the connection request specifies a connection interval of 100 msec and a hop of 11 channels.  The times and channels of the following packets 155-159 are consistent with this.  However, packet 160 shows a delay of 299 msec, and packet 162 shows a 799 msec delay.  The channels of these packets are consistent with packets being missed by the sniffer.  That is, the channels are (c + (11 * n)) mod 37, where c is the previous channel and n is the number of connection events that should have occurred.

The devices being sniffed are both TI CC2650 Launchpads running TI BLE Stack 2.2.0.31.  One is running an app derived from the simple_peripheral project, the other is running an app derived from simple_central.  No changes have been made to the BLE Stack code on either device.

I'm new to BLE and this may be my misunderstanding.  Does it appear that the sniffer is just missing multiple consecutive connection events?  Thanks!

  • More information on this problem: I just used the TI Sniffer to capture a connection between the same modified simple_peripheral running on the CC2650 Launchpad and the LightBlue app running on mi iPhone 6. Despite the fact that the phone was using a smaller connection interval (30 msec) than the above trace, no connection events were missing. I'm thinking that the Sniffer is fine, but my simple_central running on the other CC2650 Launchpad is broken, perhaps because simple_central was written to run on different TI evaluation hardware.
  • Dave Beal said:
    I'm thinking that the Sniffer is fine, but my simple_central running on the other CC2650 Launchpad is broken, perhaps because simple_central was written to run on different TI evaluation hardware.

    Yup. BLE SDK 2.2 doesn't have a simple_central example for the launchpad, only for the SmartRF06 (mainly because of the missing LCD and extra buttons). You can try to port it to the LP by comparing your project settings with the one provided for the SmartRF06 (cc2650em).

  • I think this problem is fixed. The problem apparently was that the simple_central code assumes that it has an LCD display, which exists on the CC2650 Smart RF06 eval kit but not on my CC2650 Launchpad. Trying to write to the non-existent display disrupted timing enough to make the Master miss multiple consecutive connection events, which caused connection failure.

    The fix was to add "#define Display_DISABLE_ALL 1" to the top of the Drivers/Display/Display.h file in TI-RTOS.

    Thanks, Tom!