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

Processing of unexpected Handle Indication messages?

I am using PCA 10040 development boards with soft device version s132_nrf52_3.0.0 to investigate Central/Peripheral communications.

A PCA 10040 acts as a Central making connections to two peripherals, one peripheral is another PCA 10040 board and the second peripheral is an Android App running on a Samsung Galaxy S7 (Android Version 7).

The central connects to a peripheral, performs service discovery, enables notifications, transfers some data and disconnects When communicating with the Android App, Handle Value Indication messages are occasionally observed. The handle value is 3 and data = 0x0100ffff, and this handle value was not discovered during the Service Discovery process.

I would like to know how this message should be handled by Central firmware?

Parents
  • Hi kc,

    You can check what is at handle id = 0x03 using nRFConnect or other BLE central tool. Most likely it's the service changed characteristic. It's used when the peripheral wants to tell the central that the attribute table has been changed, and the range is from 0x0001 to 0xffff as you see in the data.

    It's up to the central to decide what to do with that. You can start another service discovery after you receive the indication. Usually, this service changed indication is only for bonded peers that don't do service discovery on every connection.

Reply
  • Hi kc,

    You can check what is at handle id = 0x03 using nRFConnect or other BLE central tool. Most likely it's the service changed characteristic. It's used when the peripheral wants to tell the central that the attribute table has been changed, and the range is from 0x0001 to 0xffff as you see in the data.

    It's up to the central to decide what to do with that. You can start another service discovery after you receive the indication. Usually, this service changed indication is only for bonded peers that don't do service discovery on every connection.

Children
No Data
Related