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.

MSP430FR6972 internal temperature sensor

Other Parts Discussed in Thread: MSP430FR6972

Hello all,

I have used MSP430FR6972 internal temperature sensor for two years. We have not come across any problem during this period.

A few weeks ago, we made some changes on design and produced a new pcb. Now, internal temperature sensor values can be read correctly if board is supplied by FET430UIF but sensor doesn't work if board is supplied by an external battery. If we supply the pcb with battery, adc values are read as 255 (8bit) at every measurement. 

What may be the problem? 

Thanks.

  • Hi Olcay, 

    My initial though is that there is some issue with VCC. Have you ensured that the battery is providing the appropriate voltage? Can you also provide your code for ADC setup and what reference you're using?

    What changes did you make to the pcb as well?

    Best regards, 
    Caleb Overbay

  • Hi Olcay,

    In addition to what Caleb suggested, can you provide what voltage your battery is giving the system? Also, what reference are you using for the ADC? Internal or external Vref?
  • Hi Caleb and Jace,

    Sorry for late reply, i was busy with some stuff.
    Here is the code for ADC setup;

    while(REFCTL0 & REFGENBUSY);
    REFCTL0 |= REFVSEL_1 + REFON;

    ADC12CTL0 &= ~ADC12ENC;
    ADC12CTL0 = ADC12SHT0_8 + ADC12ON;
    ADC12CTL1 = ADC12SHP;
    ADC12CTL3 = ADC12TCMAP; // Enable internal temperature sensor
    ADC12MCTL0 = ADC12VRSEL_1 + ADC12INCH_30; // ADC input ch A30 => temp sense


    while(!(REFCTL0 & REFGENRDY));
    ADC12CTL0 |= ADC12ENC | ADC12SC;

    As you can see, i use internal ref (1.2V). Our battery is 3.6V and TPS78330 is used for 3V regulation.
    Compare to previous one, we change some pin configurations. As i stated before, if we supply pcb from debugger, internal temperature sensor works as expected.
  • Hi Olcay, 

    Nothing looks out of the ordinary with your ADC setup code. However, you mentioned you were using the 1.2V reference but REFVSEL_1 sets the reference to 2V. 

    Have you probed VCC when the part is being supplied by the battery alone and compared that to VCC when the part is being supplied through the debugger? I'd like to see if the battery/LDO is actually supplying the voltage expected. 

    Finally, when you say the sensor doesn't work, what is the failure you are seeing? Are you getting incorrect values? Can you provide what values you are seeing?

    Best regards, 

    Caleb Overbay

  • Hi Caleb,

    Sorry, I was trying 2V calibration values :
    #define CALADC12_20V_30C *((unsigned int *)0x1A1E)
    #define CALADC12_20V_85C *((unsigned int *)0x1A20)
    that's why REFVSEL_1 was set as 2V.

    I probed many times, VCC is 3V. Furthermore, all ADC functions work normal except for internal temp sensor. We use ADC for battery monitoring and measuring external temperature sensor too.

    I am getting 255 (8bit digital value) at every measurement if part is supplied with battery.
  • Hi Olcay,

    Is it possible for you to have the FET430UIF connected but not supplying power and instead supply power externally with the battery? This way we can see if it's something to do with the part being in debug mode vs free running.

    Also, could you provide schematics of the changes that were made or a more in-depth description?

    Best regards,
    Caleb Overbay
  • Hi Caleb,

    I can provide schematics via private message.
  • Hi Olcay,

    I've sent you a friend request. Once you accept, you'll be able to send me private messages on E2E.

    Best regards,
    Caleb Overbay
  • Hi Olcay,

    I've eceived your schematic and after first inspection, I don't see anything that could be causing the issue schematically. I'll continue to take a closer look at it and let you know if I see anything suspicious.

    When you have the FET430UIF powering the board, I'm assuming you're in debug mode. Could this be an issue that occurs during free-running mode but not during debug mode? Again, is it possible for you to have the FET430UIF connected but not supplying power and instead supply power externally with the battery? This way we can see if it's something to do with the part being in debug mode vs free running or if it is a power issue.

    Best regards,
    Caleb Overbay
  • Hi Olcay,

    Have you made any progress on this issue?

    Best regards,
    Caleb Overbay
  • Hi Caleb,

    Sorry for the delay. I was looking other issues.

    Could this be an issue that occurs during free-running mode but not during debug mode?

    I tried while free-running mode and the result is same, sensor values can be read correctly.

    Again, is it possible for you to have the FET430UIF connected but not supplying power and instead supply power externally with the battery?

    I haven't tried it yet because i couldn't find a chance. I will let you know after implementing the scenario.

  • Hi Olcay,

    Did you have a chance to try what you described in your previous post?

    Best regards,
    Caleb Overbay

**Attention** This is a public forum