Hello I need help with 128 bit UUID for BLE. Could you explain me how to specify my own 128 bit uuid? Whether it should be unique?
Bluetooth specification refers to ITU-T X.667. There are 3 way to create unique UUID:
- time based UUID
- name based UUID
- random-number-based UUID
I suppose the second method is useful. It implies I have UUID of 'name space identifier' and names for UUIDs that will be created from base UUID with hash function. I think company name can be used for 'name space identifier' and then I can create names for my services and attributes and then UUIDs using specification recommendations.
I use nRF51822 with softdevice. To define base UUID I have to use sd_ble_uuid_vs_add(). And then I can add my services with attributes. But their UUIDs will be obtained by defining only byte 12 and byte 13. And this does not match to name based UUIDs, because UUIDs obtained using hash function will be differ not only in 12 and 13 bytes.
Could you help me understand this please?
Best regards, Artem