NRF52810: external 32.768khz tolerance requirement for BLE

what is the external 32.768khz crystal tolerance range for BLE? we have a product, it easily disconnect with another one when the distance is 5m, the PPM is -120ppm, fine tune the PPM, solved the problem.  and now we have a lot of product, the all ppm is around 70ppm, is it safe? 

Parents
  • Hi,

    The sleep clock accuracy concept in BLE maps to the 32.768 oscillator accuracy on the nRF circuitry. If you had been using the internal LFRC, that would have been 500 ppm. For a crystal it is typically much less. You do need to confiture the accuracy, though. And this should cover the worst case frequency offset you can have. The only down side of specifying a slightly larger power consumption due to window widening (you can experiment with the online power profiler to see the effects it has.

    If you are using the nRF Connect SDK, set the CONFIG_CLOCK_CONTROL_NRF_K32SRC_... option that matches your reference clock. You can for instance use CONFIG_CLOCK_CONTROL_NRF_K32SRC_150PPM in this case. If you are using the nRF5 SDK, you want to adjust the NRF_SDH_CLOCK_LF_ACCURACY define in sdk_config.h. If you e this to 2, it covers everything up to 150 ppm.

    As a side note I want to mention that if you are seeing a worse clock accuracy than what is specified for the crystal(?), then that could indicate that you have not loaded the crystal correctly. See Crystal and load capacitors in the General PCB design guidelines for nRF52 series.

Reply
  • Hi,

    The sleep clock accuracy concept in BLE maps to the 32.768 oscillator accuracy on the nRF circuitry. If you had been using the internal LFRC, that would have been 500 ppm. For a crystal it is typically much less. You do need to confiture the accuracy, though. And this should cover the worst case frequency offset you can have. The only down side of specifying a slightly larger power consumption due to window widening (you can experiment with the online power profiler to see the effects it has.

    If you are using the nRF Connect SDK, set the CONFIG_CLOCK_CONTROL_NRF_K32SRC_... option that matches your reference clock. You can for instance use CONFIG_CLOCK_CONTROL_NRF_K32SRC_150PPM in this case. If you are using the nRF5 SDK, you want to adjust the NRF_SDH_CLOCK_LF_ACCURACY define in sdk_config.h. If you e this to 2, it covers everything up to 150 ppm.

    As a side note I want to mention that if you are seeing a worse clock accuracy than what is specified for the crystal(?), then that could indicate that you have not loaded the crystal correctly. See Crystal and load capacitors in the General PCB design guidelines for nRF52 series.

Children
Related