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.

MSP430F5528 rev.E errata for "Incorrect TLV ADC gain value" ?

Other Parts Discussed in Thread: MSP430F5528

Hi,

 

I am seeing an issue with the MSP430F5528 (rev E) ADC gain value stored in the TLV. The value seems mis-programmed but I cannot find an errata for this particular case.

 

For instance, ADC29 "Incorrect temperature sensor calibration data" also affects the rev E chips but addresses just the temperature coefficients, whereas the ADC gain calibration value is a different TLV location.

 

The chip is question has the following TLV data:

     hw_rev: TLV @ 01A06h = 0x14 ('E')

     sw_rev: TLV @ 01A07h = 0x12

 

Some chips report correct values but more recently the chips do not. For instance, when the ADC reports a value I believe is correct, the gain value I find is approximately,

 

      TLV @ 01A16h = 0x800A

 

and for an "incorrectly calibrated" chip (where the ADC voltage reported is much high than that actually presented at the ADC input pin), I find something like,

 

      TLV @ 01A16h = 0xE001

 

The ADC gain value is close enough that I suspect a few bits were mis-programmed at the factory.

 

Is this a known issue and is there a work-around?

 

Thanks,

-Sean

 

 

 

  • I have seen this same issue with a 5524 rev E part.  The adc gain factor in the TLV is incorrect and very high:

          TLV @ 01A16h = 0xE000

    I'm also looking to see if this is a known issue that has been documented.

    I'm working around it now by using a gain of 1.0 if the adc gain factor is larger than seems reasonable...

  • Hello, we're experiencing the same problem too: the ADC GAIN calibration values are around 0xE000 instead of 0x8000.

    Is it possible that TI hasn't fixed it yet ?

    The ADC calibration feature is very important for us...does anyone have some solution for that ? "avoid using calibration data" is not a valid answer ;-)

  • maurizio BERTERO said:
    Is it possible that TI hasn't fixed it yet ?

    How would you fix a factory-programmed value? Be sending the chip back into the factory?

    Chances are that you got a chip from the same buggy batch.

    I don't want to accuse someone, but it is an often-observed behavior, that suppliers keep returned parts and sell them to the next one until they find someone who doesn't complain.
    I know of  a case of a cell phonw that was returned as defective by at least two different persons. My wife was workign in the call center at this time and coincidentally got two complaints within a few weeks for the same brand. Out of curiosity she looked up th eold case and discovered that in both cases the cell phone had the same serial number. So obviously the same device was sold at least twice (don't know how many other had the same case on their phone) even though it was reported defective. Nopbody even bothered to test it when it was returned.

    So it's very possible that devices from the same old buggy batch are still sold.

    Personally, I don't think this issue should be covered in the errata list at all. It is a production error, as a misprogrammed TLV structure has nothing to do with a silicon bug. As less as broken cases or ripped-off pins. Unless, of course, the memory with the TLV structure itself is buggy. But then not only the calibrations values should be broken.
    Well, documenting it in the errata sheet removes the responsibility for replacement, as it relabels the defective part into a part that works as documented. :)

    maurizio BERTERO said:
    The ADC calibration feature is very important for us...does anyone have some solution for that ? "avoid using calibration data" is not a valid answer ;-)

    You can only take it or leave it. If you don't feel confident with the calibration data, don't use it. YOu cannot use it if it seems correct and, well, what if it doesn't seem correct?

    And if you have a backup strategy, you can use it for all devices, not just the broken ones.

    A not simple but workign way is to load a calibration firmware onto each device, apply a known and precise voltage and let the firmware calculate your own calibration value. Store it in the info flash and use it instead of the one from the TLV structure. Or (if you have only a low device count) output the result and hardcode it into the firmware for each individual device. It depends on the project.
    If you have external circuitry, e.g. voltage divider, you can calibrate it in teh same process. What good is it if you know the votage on the analog input pin by 1ppm precision, when you don't know how much the external circuitry distorts the signal on the way from source to the pin? :)

    On the 1611, where there is no calibration data available, I used an external shunt regulator as reference. The TS431BCX is a really nice device with 2.495V+-0.5% output. For a few cents. And the maximum current can go up to 100mA, enough to use it as reference for the external circuitry as well.

    p.s.: the XMS versions of the MSPs (often provided as preliminary samples) usually don't have any calibration data at all.

**Attention** This is a public forum