4 Replies Latest reply on Jun 7, 2020 9:29 PM by AnjanaM_61

    Bonding with iOS and Android help

    MiCh_2098196

      Hello Cypress forums,

       

      I am having an incredibly difficult time understanding the pairing and bonding process differences between iOS and android. I am using an iPhone 6S and a Galaxy S10 for development.

       

      I would greatly appreciate it if someone could provide a second set of eyes and comb through my code to see if I am handling bluetooth management events correctly. The main issue I am having right now is getting the iPhone to pair more than once to the app we have written (I don't have access to the app)(it will pair once, after a fresh firmware upload to the device, but after that the app will not recognize the device again), but we can pair more than once using the Android equivalent of the app.

       

      I fear that I am approaching the NVRAM storing of addresses and link keys incorrectly. I am also honestly not sure if it has anything / everything to do with the DCT either (does it?).

       

      I believe my sticking point with this project is in the wiced_bt_dev_add_device_to_address_resolution_db function; I don't know if I am using the function correctly, as my result always returns 8113, which is not particularly revealing.

       

      I have attached the .c, as well as some PuTTY output. The output shows these steps:

      1. power up device

      2. pair to android

      3. unpair from android

      4. pair to android

      5. unpair from android

      6. power down device

      7. power up device

      8. pair to iphone

      9. unpair from iphone

      10. Unable to pair with the iphone again

       

      Thank you so much for looking. I am open to investigating any and all leads.

       

      Michael

       

      (Removed attached firmware for privacy reasons) Message was edited by: Michael Chin