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

Sniffing Central and Peripheral Blinky app

Hi all,

I am using as base the Experimental ble_app_blinky_central and ble_app_blinky examples.

I noticed using a sniffer that the Central is asking to the peripheral for a handle outside the GATT server table. The Last handle available for the GATT server is 0x10, the Central is asking for 0x11(it does not exist) and I am getting INVALID_HANDLE(0x01)

all works okay, but why the Cental ask for that handle?

Thanks

Update 02/21/17:

Device : nRF52

Softdevice: $132

SDK : 12.2

Sniffer Capute: I was not able to capture the connection between the Peripheral and the Central using the Nordic Sniffer (maybe my mistake)

So I used a TI sniffer and I got the following caputre...

image description

The Peripheral Blinky app and Central unmodified. When exist a connection the central always ask for a handle 0x0011 (does not exist) the last handle available for that example is 0x0010.

why the central ask for that handle after the discovery event?

Thanks

Parents
  • Hi Arepa,

    It's normal. When the server respond to Find Information Request, there is no way the server tell this is the last attribute and the client should not discovery more. It can only tell that by waiting for the client request the attribute handle that is outside of the attribute table then no handle should be returned and it can return Invalid Handle. The client detect that and will stop the Discovering process.

    It's described at section 3.4.3.1 Vol 3 Part F Bluetooth Core Spec v4.2

    Regarding the sniffer, you may want to downgrade Jlink firmware on the dongle to version 5.10d. Have a look here.

    Segger Jlink v5.10m

  • Hi Hung,

    It makes sense, but I was a little worried because the central ask 2 times for the same handle.

    I read the Core Spec section you posted and it talks about:

    *Starting Handle parameter greater than the Ending Handle parameter an Error Response shall be sent with the «Invalid Handle» error code
    

    Is it the same that ask for a non exist handle? sorry if it is a fool question :)

    Could this affect the BLE compliant?

    I am able to use the Nordic Sniffer downgrading the Jlink firmware the issue I have is the sniffer only capture the peripheral advertising data not the connection event. I tried different times because it could be done in a different channel (not the channel I was sniffing) but I did not have luck capturing it

    Thanks

Reply
  • Hi Hung,

    It makes sense, but I was a little worried because the central ask 2 times for the same handle.

    I read the Core Spec section you posted and it talks about:

    *Starting Handle parameter greater than the Ending Handle parameter an Error Response shall be sent with the «Invalid Handle» error code
    

    Is it the same that ask for a non exist handle? sorry if it is a fool question :)

    Could this affect the BLE compliant?

    I am able to use the Nordic Sniffer downgrading the Jlink firmware the issue I have is the sniffer only capture the peripheral advertising data not the connection event. I tried different times because it could be done in a different channel (not the channel I was sniffing) but I did not have luck capturing it

    Thanks

Children
No Data
Related