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

Error 0x104 in function on_primary_srv_discovery_rsp

Hello,

We have an application on Iphone running with our custom service :

uuid : 0000fdF9-0000-1000-8000-00805f9b34fb

and our characteristics :

char-handle 0x16 => 0x1c

I use the nrf52 dev kit with the hrs_c example to connect to the smartphone.

I have disable the BAS service.

I change the UUID with ours 0xfdf9 but it fails when discovering in function on_primary_srv_discovery_rsp with a gatt_status egal to 0x10a.

I have try to another well know uuid like 1800 or 180f on the same smartphone, it works.

What's wrong ? does i have to use sd_ble_uuid_vs_add for the service 0xfdf9 ? for characteristics ?

Any help are welcome.

Thanks

Parents
  • Hello,

    Yes, you need to add the vendor specific 128-bit base UUID with sd_ble_uuid_vs_add(). You can use the ble_app_uart_c example as reference. 

     

  • I try but it doesn't change anything.

    In ble_nus_c_init, i use

    NUS_BASE_UUID = {0xFB, 0x34, 0x9B, 0x5F, 0x80, 0x00, 0x00, 0x80, 0x00, 0x10, 0x00, 0x00, 0xf9, 0xfd, 0x00, 0x00}

    BLE_UUID_NUS_SERVICE 0xfdf9

    sd_ble_uuid_vs_add returns 0x01 in uuid_type, so it's already in database ? if yes, does i have to add it ?

    that make sense beacause i use SIG BASE UUID

    I have 4 characteristics :

    00a0fdf9-0000-1000-8000-00805F9B34FB

    00b0fdf9-0000-1000-8000-00805F9B34FB

    00c0fdf9-0000-1000-8000-00805F9B34FB

    00d0fdf9-0000-1000-8000-00805F9B34FB

    Do i have to add them with sd_ble_uuid_vs_add ? If yes, where in ble_nus_c_init ?

    Does I have to keep uuid_type ? any modification to tell the discovery module that base uuid of characteristics is different from uuid base service ?

    Thanks

Reply
  • I try but it doesn't change anything.

    In ble_nus_c_init, i use

    NUS_BASE_UUID = {0xFB, 0x34, 0x9B, 0x5F, 0x80, 0x00, 0x00, 0x80, 0x00, 0x10, 0x00, 0x00, 0xf9, 0xfd, 0x00, 0x00}

    BLE_UUID_NUS_SERVICE 0xfdf9

    sd_ble_uuid_vs_add returns 0x01 in uuid_type, so it's already in database ? if yes, does i have to add it ?

    that make sense beacause i use SIG BASE UUID

    I have 4 characteristics :

    00a0fdf9-0000-1000-8000-00805F9B34FB

    00b0fdf9-0000-1000-8000-00805F9B34FB

    00c0fdf9-0000-1000-8000-00805F9B34FB

    00d0fdf9-0000-1000-8000-00805F9B34FB

    Do i have to add them with sd_ble_uuid_vs_add ? If yes, where in ble_nus_c_init ?

    Does I have to keep uuid_type ? any modification to tell the discovery module that base uuid of characteristics is different from uuid base service ?

    Thanks

Children
Related