5 Replies Latest reply on Nov 10, 2019 10:14 PM by AnjanaM_61

    CYW20819 questions

    MiBi_4539931

      Hi,

       

      I am investigating porting my nrf chip based application to Cypress. I have few questions I could not find answers for or I have unclear information:

      1. Is write/notification reliable command? In other words: is there a chance that wiced_bt_gatt_send_write will return success but wont send my data and stack will silently drop it?
      2. Does it support legacy pairing - can LTK be set by central to any value?
      3. Can I use wiced_bt_gatt_send_write for both client and server?
      4. Can both advertise and scan while in a connection?
      5. Just to confirm - it supports simultaneous 3 central and 3 peripheral connections?

       

      Michał

        • 1. Re: CYW20819 questions
          AnjanaM_61

          Hi Michał,

           

          1. Is write/notification reliable command? In other words: is there a chance that wiced_bt_gatt_send_write will return success but wont send my data and stack will silently drop it? A) Yes, its reliable. There is two types of write - write with response & without response. Write with response will ensure the data is received by the peer. This is handled in the BT stack. So there is no chance of silently dropping the data. Similarly for notification also there is no chance of dropping data , because stack will resend the packets if any packet loss happens. If you want to double confirm the data is received by the peer, you can use indication property instead of notification. Indication property will send ACK back after receiving the data from peer. 

           

              2. Does it support legacy pairing - can LTK be set by central to any value? A) 20819 supports pairing as per BLE spec. All this will be handled by BT stack

           

              3. Can I use wiced_bt_gatt_send_write for both client and server? A) Generally a client will send write request / command to server. A server can send data to client by means of notify / indication

           

              4. Can both advertise and scan while in a connection? A) Yes

           

              5. Just to confirm - it supports simultaneous 3 central and 3 peripheral connections? A) yes it should be possible

           

          Note: You may go through our WICED ACADEMY lab manuals for more details:

          CypressAcademy_WBT101_Files/Labmanual at master · cypresssemiconductorco/CypressAcademy_WBT101_Files · GitHub

          CYW20819 Resources

           

          Thanks & Regards,
          Anjana

          2 of 2 people found this helpful
          • 2. Re: CYW20819 questions
            MiBi_4539931

            Thank you for the answers and for the documentation.

             

            I need to clarify question 2. Currently with nordic chip I am able to pick random LTK that is pre-shared by both devices. Then I can start encrypting the connection using that known key. Is it possible to do something similiar with Wiced SDK ? I cannot find matching API functions.

             

            Michał

            • 3. Re: CYW20819 questions
              AnjanaM_61

              Hi Michał,

               

              There is no API as such to get the keys. However as part of stack events  (BTM_PAIRED_DEVICE_LINK_KEYS_UPDATE_EVT / BTM_PAIRED_DEVICE_LINK_KEYS_REQUEST_EVT  ) , you can get it from wiced_bt_device_link_keys_t parameter.

              Please check the wiced_bt_device_link_keys_t details in wiced_bt_dev.h file in Modus SDK

               

              As I suggested before, please go through our WICED ACADEMY lab manuals for more details:

              CypressAcademy_WBT101_Files/Labmanual at master · cypresssemiconductorco/CypressAcademy_WBT101_Files · GitHub

              CYW20819 Resources

               

              Thanks,

              Anjana

              • 4. Re: CYW20819 questions
                MiBi_4539931

                Thank you again. I wend through WICED ACADEMY lab manuals and did not find needed information, that is why I am asking here However I found that documentation very useful !

                 

                I am not searching for API to get keys, rather to set them. But I guess that is not possible as well ?

                 

                Michał

                • 5. Re: CYW20819 questions
                  AnjanaM_61

                  Hi Michał,

                   

                  No, there is no APIs to set the LTK. Its internally handled/set  by stack.

                   

                  Regards,

                  Anjana