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.

CCS/MSP430F2274: Erroneous ADC values under elevated temperature operation

Part Number: MSP430F2274

Tool/software: Code Composer Studio

I am seeing an issue with the MSP430F2274 when the part is running at elevated temperatures.  During a BIT cycle, the ADC values read extreme values if the part is a hot environment.  During room temperatures, the values are within expected ranges of voltages.  When the part itself is heated to 70+C, the same ADC values jump to rail values.

This is not on all ICs, but replacing the IC fixes the issue on certain DUTs.  I have tried to change code and slow down the reading of the ADC registers, but it is very repeatable on a chip by chip basis.

As the temp is elevated to 90C, more ICs seem to fail.  Once a "good" chip is identified, it always works and never has an issue at high temps.

Very weird since the IC is rated for 125C operation, but the ADC inside seems to have an issue with reading consistent values.

  • Is it the 'I' version or 'T' version you're using? The datasheet says that the operating free-air temperature of the 'I' version is 85C and the 'T' version 105C.

    Just to confirm, is the 70C mentioned the MCU temperature you measured, or the temperature of the environment it is in?
  • It is the MSP430F2274MDATEP, the 125C rated chip.  This is when the PC Board is inside a running system and the ambient temp is around 70C. 

    I am sure the die is hotter, but the IC is not driving any heavy currents and mostly monitors the ADC inputs.

  • Hi Todd,

    As you mentioned "the ADC values read extreme values if the part is a hot environment", may I know the specific extreme values? Thanks.

    regards
    KC
  • Hello,

    It will return 0X400 or the full 1024 bits of the ADC register.

    Normally, it should be in the 0X127 range or so, but I will get also 0X00 as well.

    It is like the ADC register is not done calculating or the conversion flag gets set prematurely and I read an erroneous value.

    Thank you,

    Todd

  • Hi Todd,

    Sorry that we need more information to understand the issue.

    1. What's the failure rate you have found?
    2. What kind of signal input to adc? Just to confirm, if the signal related with temperature?
    3. Is it possible to share with us your code for adc setting?
    4. How to display the ADC value on your product? Is there a screen or send out the data via interface like USCI?

    regards
    KC
  • Hello,

    1. The failure rate is around 13% or so with a sample size of 200 pcs.  It is pretty repeatable from our testing.

    2. The signals into the ADC are all scaled down to 3V with an external 3V reference. LT6654AMPS6-3.  They measure items such as 28V input....scaled down to the 3V level.

    And also 5V and current readings.  The main ones of concern are from a LM20B that measures temperatures, but I see the out of range readings on all ADC inputs.  

    3. I am not sure I can release code since this is used in a military application.  I have worked with TI support directly on the issue and they did tell me some things to try to change the flag used to detect the ADC completion event.  That did not change the issue.  The only thing that seemed to increase the yield was slowing down the system clock from 16MHz to 8MHz.  That did bring up the yield but did not completely solve the issue.

    4. The ADC values are used in the code to set a BIT (Built-In Self Test) flag if the system thinks there are issues.  So if the 28V input sags or when the 5V switcher goes out of spec, it sets off LEDs.  However, I was able to see these failures under debug mode and putting in break points when the BIT failed.  I then looked under CCS to see the ADC register values and could see the large values in the system.  Once again, this only happens at elevated temps.  I looked at the actual switcher voltages and I do not see higher levels of noise or spikes.  

    We built a test setup where we just heat the IC itself with a small heater.  So none of the other components in our design are hot, just the MSP430.  It is very repeatable that as you heat up the MSP430 only, I was seeing the ADC values start to go to extreme values.

    Thank you,

    Todd

  • Hi Todd,

    The TLV stores calibration data for the ADC12 module on temperature 30 and 85 degree with internal reference(address start from 0x10EA), that means for each single unit we have running ADC on 85 degree during production, could you help check the ADC calibration value for 85 degree which saved on TLV then compare the failed unit with normal unit?

    The other point is you mentioned slow down the clock to 8MHz will bring up the yield, is it possible to slow more like 2M or 1M?

    regards
    KC
  • Hi Todd,

    I will temporary close this thread since you have worked with TI support directly, but welcome to input with more updates if the issue has not been solved. Thanks.

    regards
    KC
  • Hello,

    I will take a look at the TLV value and see what happens at the elevated temperature.  

    We can try the slower speed and see if it affects the end application, but my guess is that we lose the responsiveness to the program.  However, not sure.

    I will report back what I see.

    Thank you,

    Todd

  • In working with TI support, we tried a number of different items to see if we could trace the issue. However, nothing seemed to resolve the problem other than lowering the clock speed. The end statement from TI support was that the parts had manufacturing variances and that the end cause could not be determined. At this point, we literally have to screen ever part at 95C to see if they will have an issue.
  • Todd

    Re:   2. The signals into the ADC are all scaled down to 3V with an external 3V reference. LT6654AMPS6-3.  They measure items such as 28V input....scaled down to the 3V level.

    Is there any possibility that the adc inputs or reference exceeds the supply voltage during powerup or operation?

  • Hello,

    The ADC inputs are buffered through op amps before connecting to the MSP430, so they are not directly connected.  It is possible I supposed, but this phenomenon has been witnessed on multiple power supplies.

    It also happens under debug, so even if the microcontroller has been reset and powered on, when the program is running again, it is observed.  I would assume that by then the supplies and inputs are stabilized.

    This is repeatable under debugging the code.

    We have now tested 16 ICs out of 110 units that has this issue.  Once we screen the parts and put them on the final boards, the issue is never seen.

    So the issue is tracking ICs, not assembled boards.  Once we put a screened part on the board, we never see the problem again.

    Thank you for the input,

    Todd

  • Hello,

    I finally had a chance to work on this.  The TLV values did not change between when the IC worked at the lower temps and then failed at the the upper temps.  I also compared against a totally working IC and saw no real difference in values.

    It appears this is not related to the TLV data.

    Best Regards,

    Todd

  • Hi Todd,

    Sorry for reply late. But I see that you were supported offline by TI for your issue, right? I would suggest to keep the offline support for your issue to get a direct communicating with our expert to find the root cause quickly and do some test if necessary.

    I will close the thread temporarily by clicking "TI Thinks Resolved" but you don't need to click the "This resolved my issue" button since it is actually opening for offline supporting. Also, as KC and I will take two weeks Chinese New Year holiday, I'm afraid we couldn't reply you during the coming two weeks. But please feel free to reply here if you have any further question and we will reply you as soon as we come back.

**Attention** This is a public forum