This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

How can I use a vendor specific UUID?

When I try to make a custom service with the S110, how do I set the service and characteristics up to use a custom 128-bit UUID instead of a 16-bit one, based on the Bluetooth SIG base?

  • Using a vendor specific UUID is basically a two-step process:

    1. Add your custom base UUID to the stack by using sd_ble_uuid_vs_add(). Store the value returned to you in the p_type parameter of this function call.
    2. Set the type of all ble_uuid_t-s that should use this base to the value returned to you from sd_ble_uuid_vs_add(). When you set this field to your custom type instead of to BLE_UUID_TYPE_BLE, the value will be used on top of the custom base UUID you specified instead of on top of the Bluetooth SIG base.

    Behind the scenes, sd_ble_uuid_vs_add() will add the base UUID to the softdevice's internal list of base UUIDs, and return the table index for this UUID in the type field. When using the type in a ble_uuid_t later, the softdevice can look up the base used in this same table by using this index.

    I've also attached a small pseudo-code snippet that shows the essentials of this scheme.


  • How do I get hold of this link? or any others....They all seem to be "Web page not found"

Reply Children
No Data