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

nRF52840 BLE doesn't work but no errors

Hello,

Problem: BLE doesn't work on a OurBoard with nRF52840 (Schema1).

1) BLE example is working DevBoard (can see BLE server by scanner). On the OurBoard the examle is running without any errors, but BLE server is not visible by scanners.

Example:nRF5_SDK_15.3.0_59ac345/examples/ble_peripheral/ble_app_hrs.

2) We also run from internal clock instead of external, the same result (on DevBoard - working, on OurBoard - not working).

3) All another peripheral is working on OurBoard.

4) This same problem on 4 pieces of OurBoard

Please suggest what can be and what should check?

Thanks.

Parents Reply
  • Maybe the 32kHz crystal has an issue, so worth trying not using the 32kHz crystal to test that possibility. Add something like this at the start of sdk_config.h:

    // add "_NO_32_KHZ_CRYSTAL" to project preprocessor (or just comment out)
    //#if defined(_NO_32_KHZ_CRYSTAL)
    #define NRFX_CLOCK_CONFIG_LF_SRC         0
    #define CLOCK_CONFIG_LF_SRC              0
    #define NRF_SDH_CLOCK_LF_SRC             0
    #define NRF_SDH_CLOCK_LF_RC_CTIV        16
    #define NRF_SDH_CLOCK_LF_RC_TEMP_CTIV    2
    #define NRF_SDH_CLOCK_LF_ACCURACY        1 // <1=> NRF_CLOCK_LF_ACCURACY_500_PPM
    //#endif

    In bsp_init use this:

       APP_ERROR_CHECK(nrf_drv_clock_init());
       nrf_drv_clock_lfclk_request(NULL);

    This works on my boards which don't have reliable 32kHz crystals

Children
Related