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