Characteristic Discovery with 128bit UUID

Hi,

We are evaluating the possibility to connect our nRF52840 to another BLE device but we are facing issues with UUID Nordic handling strategy.

Quickly: 

  • We have a central nRF and two pheripheral. The first is Nordic the second is system in production and we cannot change the SW.
  • We created a custom service on the Nordic pheripheral and it works properly (characteristic discovered sendind data etc.)
  • Later we tried to discovery the service on the second pheripheral.
    Second pheripheral has:
    • SERVICE UUID acbd3540-0211-4126-8c1f-45bcb7722f9e
    • CHAR_1 UUID acbd3540-0211-4126-8c1f-45bcb7722fA0
    • CHAR_2 UUID acbd3540-0211-4126-8c1f-45bcb7722fA1
    • CHAR_3 UUID acbd3540-0211-4126-8c1f-45bcb7722fA2

As you can see the other vendor is adopting the same Nordic strategy for UUID but on 00-01 octet instead of 12-13 octet as Nordic.

We added SERVICE UUID and CHAR_1 UUID to UUID List in the SD (sd_ble_uuid_vs_add(..) ) and we provide 0x3540 to ble_db_discovery_evt_register

It connects to the pheripheal but the discovery fail.
Here the log:

ble_db_disc: Starting discovery of service with UUID 0x3540 on connection handle 0x1

nrf_ble_gq: Adding item to the request queue

nrf_ble_gq: GATTC Primary Services Discovery Request

nrf_ble_gq: SD GATT procedure (2) succeeded on connection handle: 1

nrf_ble_gq: Processing the request queue...

ble_db_disc: Service UUID 0xB03E not found

Did someone solved a similar problem or someone from Nordic can support?

Alessandro

Parents Reply Children
Related