2 Replies Latest reply on Nov 5, 2020 11:39 AM by PrYa_4592711

    Can wiced_bt_sdp_init_discovery_db() init search for 2 service UUIDs at the same time?

    PrYa_4592711

      Hello, This question was asked before, but the response doesn't seem right. I have the same question, posting here again since the original discussion was locked.

      Can wiced_bt_sdp_init_discovery_db() init search for 2 service UUIDs at the same time?

       

      I am using WICED SDK 6.4 for 20706.

       

      /* remote services to look up */
      wiced_bt_uuid_t  ag_sdp_uuid[] = {
        {.len = LEN_UUID_16, .uu.uuid16 = UUID_SERVCLASS_HF_HANDSFREE},
        {.len = LEN_UUID_16, .uu.uuid16 = UUID_SERVCLASS_HEADSET_HS}
      };

      wiced_bt_sdp_init_discovery_db(p_scb->p_sdp_discovery_db, 360, 2, ag_sdp_uuid, num_attr, attr_list);

      Same as asked in the previous posting, this query works on a single service id search, but not with two as above.

       

      When probed the buffer at initialization and in the completion callback is same.

      p_scb->p_sdp_discovery_db->mem_free is 252
      p_scb->p_sdp_discovery_db->num_uuid_filters is 2

       

      I even attempted to search for one at a time, second search started in the completion callback of first one.

       

      1. Search for HF_HANDSFREEE

      2. In the completion callback find the record of interest.

      3. On failing to find the record of interest, start a search for HEADSET_HS  ==== This fails here.

       

      It is getting unnecessarily complicated .


      Thank you
      Praveen