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

Service UUID order in advertisement array

Hi,

I don't know if this is a dumb question or not, but here it goes.

Since I'm new to the nRF51822, I've been playing around with the ble_app_hrs sample project. To display the HR value, I use an HRM app on an Android phone. However, I'm encountering problems in discovering the nRF51822 board if I move the HR Service UUID (BLE_UUID_HEART_RATE_SERVICE) to the last of the listed services in the advertisement array. The nRF51822 board cannot be discovered by the Android app. The board cannot be discovered also if I place another service UUID just before the HR Service UUID. It seems the board can only be discovered by the HRM app on the phone if the HR Service UUID is the first service listed in the advertisement array.

Is there a requirement that the service UUIDs be placed in a specific order in the advertisement array?

Any help is much appreciated.

Thanks,

Leo

Parents
  • The Heart Rate Profile Specification is available here.

    In the PDF in Section 3.1.1 it says: "While in a GAP Discoverable Mode for initial connection to a Collector, the Heart Rate Sensor should include the Heart Rate Service UUID defined in [4] in the Service UUIDs AD type field of the advertising data."

    The word should is used to indicate that among several possibilites one is recommended as particularly suitable.

    So, it is not mandatory, and the specification doesn't say anything about order.

    My guess is that the app only checks the first UUID that is included in the advertising packet.

Reply
  • The Heart Rate Profile Specification is available here.

    In the PDF in Section 3.1.1 it says: "While in a GAP Discoverable Mode for initial connection to a Collector, the Heart Rate Sensor should include the Heart Rate Service UUID defined in [4] in the Service UUIDs AD type field of the advertising data."

    The word should is used to indicate that among several possibilites one is recommended as particularly suitable.

    So, it is not mandatory, and the specification doesn't say anything about order.

    My guess is that the app only checks the first UUID that is included in the advertising packet.

Children
Related