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

NRF8001 Not Reconnecting After Bond In UART mode

Hi,

I am using the NRF8001 in UART mode and attempting to bond with my android device (Lollipop 5.0 Nexus 6).

i am using the nordic arduino sdk which is found here: github.com/.../30cd292b5e1892a9e96d9560e484e3cea51c7322

i use the following command to initially bond. And i do get an ACI_EVT_BOND_STATUS which is a success.

              if (ACI_BOND_STATUS_SUCCESS != aci_state.bonded)
          {
            lib_aci_bond(180/* in seconds */, 0x0050 /* advertising interval 50ms*/);}

Then when i disconnect, i attempt to reconnect using the following command:

 lib_aci_connect(100/* in seconds */, 0x0020 /* advertising interval 20ms*/);

This is very similar as the HID template example also found in the library (infact i used it as a base for this experiment)

I find that if i disconnect by walking out of range from my android device, i do not reconnect once i come back in range with the UART Service. Although i DO end up reconnecting with the HID Service example.

I had a similar problem with the proximity profile, I do get an alert that link was lost but i dont reconnect to the Android system. I am only able to reconnect with the HID profile. Is this something specific to the HID Service? if i was using another custom service similar to User Data Service how can i ensure that my device reconnects to my phone? I have already bonded, the bond string is stored in my eeprom and i do get a bond status event which is a success.

Any help on this will be greatly appreciated.

Related