This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DCO guaranteed frequency

Other Parts Discussed in Thread: MSP430FR2433, MSP430FR5969, MSP430FR5948

Hi community member,

I’m comparing MSP430FR2433 and MSP430FR5969.

The MSP430FR2433 DCO shows "Typical" in all frequency ranges.
Because MIN and MAX are not listed, does TI not guarantee the oscillation frequency of MSP430FR2433 DCO?


The MSP430FR5948 is described in the data sheet as follows:
If it is MSP430FR5948, can I tell my customer that TI "guarantees" the oscillation accuracy of the internal clock?


Best regards.
Cruijff

  • Hi Cruijff

    Thank you for your mention about this difference. As you know, the DCO clock is usually used for MCLK and just running code that will not very care about the  accuracy except some special cases like UART. But we have offer the Recommended Settings for Typical Crystals and Baud Rates and list the TX and RX errors. 

    What I want to know is what's problem have faced and what's your application with MSP430?

    Best regards

    Gary

  • Hi Gary,

    Thank you for your reply!

    Questions related to:
    https://e2e.ti.com/support/microcontrollers/msp430/f/166/t/838989

    MSP430FR2433 DCO is discribed “Typical” in the data sheet.
    There was MSP430FR2433 device that could not oscillate a specific frequency (4.9152MHz) in cold environment.

    I asked if there was an MSP430 device that would guarantee the accuracy of the internal clock over the entire temperature range. (For example, MSP430FR5969)

    In addition, there was the following comment in E2E below.
    https://e2e.ti.com/support/microcontrollers/msp430/f/166/t/838989

    The DCORSEL section you highlighted above seems to be on the "edge" of 4.9MHz. It might be worth trying to set DCORSEL = 3 with DCOFTRIM = 0:
    4.9MHz seems to be more centered here and may give a more stable performance at lower temps.

    If there is an individual that cannot oscillate a specific frequency even if DCORSEL is calibrated from 0 to 7,can it be conclude that the MSP430FR2433 is a malfunction?

    Best regards.
    Cruijff

  • Hi,

    If it calibrate DCORSEL from 0 to 7, can you say that the DCO can always oscillate at the specified frequency?

    Cruijff

  • Hi Cruijff

    Have you add the DCO Software Trim in your code?

    For the source code of the trim you can refer to this demo code named Software_Trim();  http://dev.ti.com/tirex/explore/node?node=AJoQd8FdlnrwOwIVkDTcfA__IOGqZri__LATEST

  • Hi Gary,

    The sample software is below.
    6443.cs_ex1_DCO1MHzSWTrim_Modify.zip

    My customer added the DCO Software Trim.

    If it calibrate DCORSEL from 0 to 7, can you say that the DCO can always oscillate at the specified frequency?
    Can you guarantee way that it calibrate DCORSEL from 0 to 7 in software?

    Best regards.
    Cruijff

  • Hi Cruijff

    For your frequency jumping problem, that seems the FLL is can't locked at that point. You have mentioned the DCO tap always be 511, right?

    DCOFFG will be set if the DCO tap always be 511, could you help me to confirm the DCOFFG is set?

    You have mentioned that you have added the DCO Software Trim. If the DCO tap always be 511, that means the DCOFTRIM should be trimmed as 7 and can't be increase any more. Can you confirm that after the DCO Software Trim, the value of DCOFTRIM is 7?

    And there is other using case, when you trimmed the device at the temperature at about 25℃, and you put it in the -35℃ that may case the DCO tap be 511. For this case, you can set the FLLULPUC bit to generate a PUC to execute DCO Software Trim in your initialization code.

    Best regards

    Gary

  • Hi Gary,

    > DCOFFG will be set if the DCO tap always be 511, could you help me to confirm the DCOFFG is set?

    It was confirmed that DCOFFG was certainly 1 in my customer's phenomenon.

    >  For this case, you can set the FLLULPUC bit to generate a PUC to execute DCO Software Trim in your initialization code.

    Does TI recommend switching DCORSEL when running DCO Software Trim again?
    My customer's symptoms can be avoided by switching DCORSEL.
    However, switching to DCORSEL is not specified in the DCO Software Trim procedure.(User's Guide P.107 3.2.11.2 DCO Software Trim)

    My customer is looking for TI's comments.

    Best regards.
    Cruijff

  • Hi Cruijff

                   Does TI recommend switching DCORSEL when running DCO Software Trim again?

    For the DCO Software Trim is try to find a proper DCOFTRIM value between 0~7 to make sure the DCO tap near the middle value 256. It will not change the DCORSEL value.

                   My customer's symptoms can be avoided by switching DCORSEL.

    Your jumping problem can be fixed by disable the FLL(If the temperature not change the frequency will not change), But that can't guarantee frequency at a ideal range.

    If you enable the FLL, you can also choose a proper FLLD and FLLN value to make sure the DCOFTRIM  and DCO tap at a middle value. You can try it.

    Best regards

    Gary

  • Hi Gary,

    Thank you for your reply!

    Please tell me one more.

    By running DCO Software Trim, the DCO can surely oscillate a specific frequency(e.g. 4MHz,4.9152Mhz...) within the recommended temperature range(-40℃ to 85℃)?

    If there is an individual that cannot oscillate a specific frequency
    even after DCO Software Trim is executed, can it be determined that the individual is defective?

    Please tell me because I have to tell my customer.

    Best regards.
    Cruijff

  • Hi Cruijff

    By running DCO Software Trim, the DCO can surely oscillate a specific frequency(e.g. 4MHz,4.9152Mhz...) within the recommended temperature range(-40℃ to 85℃)?

    What we have test within -40℃ to 85℃ is at 16 MHz like below

    But you know when the frequency is lower the temperature effect will be smaller. What we recommend here is to run the trim code at different temperature like -20 ℃, 25℃ and 60 ℃.

    If there is an individual that cannot oscillate a specific frequency
    even after DCO Software Trim is executed, can it be determined that the individual is defective?

    Could you help us to confirm some thing about this case:

    1. the  trim code been run at the same temperature(like -38℃) when the issue happens?

    2. Have you try change different DCORSEL and FLLD and FLLN value to see if the FLL can be locked ? You have said the DCO TAP is always 511 the means the output of the DCO is slower than the expected frequency, you can reduce the expected frequency by set proper DCORSEL and FLLD and FLLN value to see if FLL can be locked .

    Best regards

    Gary

  • Hi Gary,

    1. the  trim code been run at the same temperature(like -38℃) when the issue happens?

    ->
    Yes, they reset it many times at the same temperature, but DCO = 4.9152MHz did not oscillate with DCORSEL = 2.

    2. Have you try change different DCORSEL and FLLD and FLLN value to see if the FLL can be locked ?

    ->
    When DCORSEL was intentionally changed to 3 at low temperatures, the DCO oscillated 4.9152MHz.
    DCO Software Trim does not change DCORSEL.
    Is this countermeasure correct?

    Best regards.
    Cruijff

  • Hi Cruijff

    I think there are few countermeasure for this issue:

    1. Use different DCORSEL at different temperature(If the DCORSEL=3 can make the FLL locked at 25℃ or higher, I think you can just use it and don't need make any change of the DCORSEL  and this will be recommended) You don't need change the DCORSEL frequently based on the changing temperature. (If you don't want add a temperature sensor, you can take the on chip temperature sensor for a reference ) 

    2. Change the your target DCO frequency like reduce it to 4MHz.

    Best regards

    Gary

**Attention** This is a public forum