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

The nRF Toolbox cannot find services when I changed the application of PCA10028.

My android version is the Kitkat.

The nRF Toolbox cannot find services when I changed the application of PCA10028 for example from ble_app_hts to ble_app_hrs.

The message below appeared.

image description

The result of observing with the Android message is that the android recognize previous services although the PCA10028 sent the information of changed services.

After rebooting the smartphone, it will work normally.

What is the problem?

Parents
  • Hi,

    Your phone might be caching the attribute table with its characteristics and services in your peripheral. This is actually standard procedure according to the BLE specification. The next time the devices connect the phone assumes that nothing has changed. It does this to avoid wasting power by transferring the entire attribute table on each new connection. Usually it helps to either, disable and reenable BLE on your phone, close your current app, open a new Bluetooth app, and then go back to your first app, or reboot your phone. To notify the phone about a new attribute table you can also enable the Service Changed characteristic, though this should be enabled by default in the latest SDKs.

Reply
  • Hi,

    Your phone might be caching the attribute table with its characteristics and services in your peripheral. This is actually standard procedure according to the BLE specification. The next time the devices connect the phone assumes that nothing has changed. It does this to avoid wasting power by transferring the entire attribute table on each new connection. Usually it helps to either, disable and reenable BLE on your phone, close your current app, open a new Bluetooth app, and then go back to your first app, or reboot your phone. To notify the phone about a new attribute table you can also enable the Service Changed characteristic, though this should be enabled by default in the latest SDKs.

Children
Related