Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

PSoC™ 4

Anonymous
Not applicable

Hi,

I am using an RTC component in my progect,and I want to know if there is any way to compensate for the crystal frequency error from its nominal frequency of 32.768 kHz.

thanks first.

0 Likes
1 Solution
Anonymous
Not applicable

Drift rate is usually in ppm (parts per million)

This excel sheet might be useful: https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&uact=8&ved=0ahUKEwiQhbax-4nY...

Not sure about the accuracy of it however....

Here's an online one that is similar: Real-Time Clock Calculator - Maxim

I would suspect the driftrate value is the PPM drift of the clock as compared with an "accurate" clock to determine the constant drift rate you need to compensate for.

View solution in original post

6 Replies
Anonymous
Not applicable

The official document says:most 32.768-kHz crystals have a frequency tolerance of ±20 parts per million (ppm) at +25 °C.

a crystal with 20- ppm error in nominal frequency can drift the clock accuracy by 52 seconds in a month.

But now the drift is about 10 seconds only after 2 or 3 days.What could be the reason of it? Is there any solution?

0 Likes
KoM_2154881
Level 3
First like received First like given
Level 3

I am noticing the same issue as well. The drift in my case is approximately 2 seconds every 14 hours.

I applied the RTC patch and I am following the RTC example app. I am not sure what is the cause of this.

I would like to know if there is any explanation about this.

0 Likes
KoM_2154881
Level 3
First like received First like given
Level 3

Forgot to mention that I am using BCM20737S.

0 Likes
Anonymous
Not applicable

Possible reasons I can think of: Power supply fluctuations, different temperature than 25 °C, humidity?

(And there could always be a software/firmware issue somewhere )

0 Likes
KoM_2154881
Level 3
First like received First like given
Level 3

Temperature is certainly a suspect here. Everything else seems to be setup correctly.

Does anyone know how to correctly use "void bleapputils_changeLPOSource(UINT8 pmu_clkSrc, BOOLEAN selSlaveLPOSrc, UINT16 driftRate);"?

What is the rule for determining the driftRate value in this function?

0 Likes
Anonymous
Not applicable

Drift rate is usually in ppm (parts per million)

This excel sheet might be useful: https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&uact=8&ved=0ahUKEwiQhbax-4nY...

Not sure about the accuracy of it however....

Here's an online one that is similar: Real-Time Clock Calculator - Maxim

I would suspect the driftrate value is the PPM drift of the clock as compared with an "accurate" clock to determine the constant drift rate you need to compensate for.