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

UART app shows connected (but actually not) when peripheral bonding data is cleared

Hi,

I tested UART app(nRF Toolbox) by iPhone for scenario: erased bonding info of peripheral but iPhone, then establish connection between iPhone and peripheral.

Here are test result:

1. UART app shows connected (but actually not)  when I erased the bonding info of peripheral early.

2. We can see the logs that the connection isn't established correctly.

The connection is not established is expected.

Does the UART app keep connection is expected?

Can peripheral send notification to UART app, and disconnect the secure link? 

By the way, tn this situation, I understand user should clear bonding info in iPhone manually. 

=====

Hardware: nRF52832

SDK: 16.0.0

Code base: ble_app_hrs_pca10040 S132 

Integrate NUS service to code base.

=====

Thanks. Vick

Parents
  • Hi Vick

    The app will think it is connected until it runs into a timeout because it thinks that it's paired to the device. The nRF Toolbox app is only tested with the example projects in our SDK, so the UART app in nRF Toolbox has not been tested with an example using NUS and pairing. When modifying projects and testing towards applications I would suggest using the nRFConnect app instead of the nRF Toolbox application, as it's a lot more versatile.

    The peripheral will not be able to send data to the same app if it has deleted its bonding information, as it won't be connected anywhere and will start advertising again.

    Yes, if a peripheral device has erased its bonding information for some reason, the central device will have to "forget" the device as well in order for both devices to pair with one another again.

    Best regards,

    Simon

  • Hi Simon,

    Thanks for your reply.

    We need NUS + LESC pairing for our project, hence we are verifying different connection scenario.

    Do you mean we don't need to consider this scenario? Because user should never encounter this.

     

    On the other hand, I give a try of nRFConnect app and have some questions:

    a) When I connect to peripheral using nRFConnect by Android, the connection is established directly. There is no LESC pairing process.

    The behavior is different from UART app in nRF Toolbox.

    =>So I tried connect peripheral through Android setting, then LESC pairing process shows up.

     

    b) Also I tried erased the bonding info of peripheral. I click "connect" in nRFConnect is not working. => It make sense.

    So far are those expected? Just want to make sure my test result are correct.

    c) I have also tried the UART service RX Characteristic, and peripheral can receive the data from Phone(Android) successfully.

    I'm wondering to know does nRFConnect tool have source code like UART app for development?

    Thanks. Vick

Reply
  • Hi Simon,

    Thanks for your reply.

    We need NUS + LESC pairing for our project, hence we are verifying different connection scenario.

    Do you mean we don't need to consider this scenario? Because user should never encounter this.

     

    On the other hand, I give a try of nRFConnect app and have some questions:

    a) When I connect to peripheral using nRFConnect by Android, the connection is established directly. There is no LESC pairing process.

    The behavior is different from UART app in nRF Toolbox.

    =>So I tried connect peripheral through Android setting, then LESC pairing process shows up.

     

    b) Also I tried erased the bonding info of peripheral. I click "connect" in nRFConnect is not working. => It make sense.

    So far are those expected? Just want to make sure my test result are correct.

    c) I have also tried the UART service RX Characteristic, and peripheral can receive the data from Phone(Android) successfully.

    I'm wondering to know does nRFConnect tool have source code like UART app for development?

    Thanks. Vick

Children
No Data
Related