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

BLE connection issue

BLE device(having nRF52832 chip) can not connect with mobile phone. for more information i have attach nRF Sniffer Log.

SDK: 14.2

Stack: S332_05_00_00  Multi protocol (BLE + ANT)

Mobile phone device: iPhone x(ios version 12.2), iPhone 6(ios version 12.2), iPhone 5 (ios version 10.3.3)

According to log, we can say that slave not respond to master for LL_VERSION_IND. Is there anything wrong with Master or Slave.

please give appropriate solution.

  • FWLogMultiConnectionByPhone1.pcapng

    Log8.pcapng

    Hi,

    This issue also observe in Android Galaxy S10 phone also.

    When we use SDK12 Firmware it is working OK. After Upgrading to SDK14 than we face this issue.

    SDK: 14

    Softdevice: S332 (5.0.0)

    Chip Set: nRF52832

    Please check attached sniffer log.

    Regards,

    Himansu Donga

  • Hi,

    In general there may be two reasons why the peripheral is not responding to the CONNECT_REQ:

    1. The peripheral may be using whitelist, and thereby will not allow anyone not in the whitelist to connect (if whitelist is the reason, then that filter 100% of CONNECT_REQ from other peers).

    2. There may be noise in the environment that prevent the CONNECT_REQ to be received due to interference (this may happen <5% of the cases).

    Let me know if this may explain what you see. If this doesn't explain your observation, then can you please specify where I should look in your log files (e.g. file name and frame number)?

    Best regards,
    Keneth

  • SRAC_1.pcapngSRAC_2_Android.pcapng

    Hi Kenneth,

    (iOS Log File) File Name: SRAC_1  = start from frame number 369

    (Android Log File) File Name: SRAC_2_Android = Start from frame number 521

    My issue is this board working Ok with SDK12 Firmware. We have upgrade SDK12 to SDK14 and device connection not complete.

    Device advertisement is OK, After Link  Layer protocol , services  and characteristics  discovery failed or take long time. 

    Environment: We are verifying both firmware same place.

    SDK12 Firmware: Link Layer Protocol & Service and Characteristics discovery completed within 2 to 3 second.

    SDK14 Firmware: Link Layer Protocol & Service and Characteristics discovery not completed within 7 second.

    let me known any query or suggestion.

     

    Regards,

    Himansu Donga

  • What parameters have you used for the LFCLK when init the softdevice?

    Can you try to set the LFCLK tolerance to 500ppm for test? It may be that the LFCLK is not within configured tolerance.

    Best regards,
    Kenneth

  • Can you try to set the LFCLK tolerance to 500ppm for test?

    Ans: I will try this parameter and update you.

    SDK12: 

    // Low frequency clock source to be used by the SoftDevice
    #define NRF_CLOCK_LFCLKSRC {.source = NRF_CLOCK_LF_SRC_XTAL = External Clock Source, \
    .rc_ctiv = 0, \
    .rc_temp_ctiv = 0, \
    .xtal_accuracy = NRF_CLOCK_LF_XTAL_ACCURACY_20_PPM}

    SDK14:

    nrf_clock_lf_cfg_t const clock_lf_cfg =
    {
    .source = NRF_SDH_CLOCK_LF_SRC  = External Clock Source,
    .rc_ctiv = NRF_SDH_CLOCK_LF_RC_CTIV = 0,
    .rc_temp_ctiv = NRF_SDH_CLOCK_LF_RC_TEMP_CTIV = 0,
    #ifdef S140
    .xtal_accuracy = NRF_SDH_CLOCK_LF_XTAL_ACCURACY
    #else
    .accuracy = NRF_SDH_CLOCK_LF_XTAL_ACCURACY = NRF_CLOCK_LF_XTAL_ACCURACY_20_PPM
    #endif
    };

    Regards,

    Himansu

Related