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

Problem connecting to OTS example from nrf connect on phone

Hi, I'm having issues connecting to the ble_app_ots example application from the nrf connect phone app. I have attached a trace from wireshark, and for comparison what it looks like when connecting to the Nordic Uart Service (NUS). It looks like the response differs between OTS and NUS after the LL_FEATURE_REQ and after the master sends LL_LENGTH_REQ nothing happens for 40 seconds and then I get GATT CONN LMP TIMEOUT when looking in the log on the nrf connect app.

I would have thought that I should be able to connect and explore characteristics even if the OTS l2cap channel is not present on the nrf connect app, but maybe I'm mistaken there?

Any input on what I'm missing and that makes the behaviour differ between OTS and NUS when connecting would be much appreciated.

Kind regards

ozh

Parents
  • Hello,

    Just a note: The next time you want to send a sniffer trace, export it/save it as a .pcapng file, and attach it here. The lines that you provided here doesn't give any information.

    However, I tested the OTS example, and it is correct as you say that it doesn't properly connect. The issue is that it doesn't handle the data length update requests that the phone sends.

    I tweaked the example by adding a few things to main.c, and changing a few things in sdk_config.h. I also added nrf_ble_gatt.c and nrf_ble_gatt.h to the project. I zipped it and attached it here. The modifications I did was done in the keil project, but I believe you only need to add those two files, in order to compile. Apart from that, only main.c and sdk_config.h are changed.

    I have reported this bug internally. Thank you for the feedback!

    ble_app_ots.zip

    Best regards,

    Edvin

Reply
  • Hello,

    Just a note: The next time you want to send a sniffer trace, export it/save it as a .pcapng file, and attach it here. The lines that you provided here doesn't give any information.

    However, I tested the OTS example, and it is correct as you say that it doesn't properly connect. The issue is that it doesn't handle the data length update requests that the phone sends.

    I tweaked the example by adding a few things to main.c, and changing a few things in sdk_config.h. I also added nrf_ble_gatt.c and nrf_ble_gatt.h to the project. I zipped it and attached it here. The modifications I did was done in the keil project, but I believe you only need to add those two files, in order to compile. Apart from that, only main.c and sdk_config.h are changed.

    I have reported this bug internally. Thank you for the feedback!

    ble_app_ots.zip

    Best regards,

    Edvin

Children