Tool/software:
Dear Support Team,
We have been using MSP430G2553 in our products for a couple of years and yesterday we encountered a problem with the integrated temperature sensor. One of our devices reported plainly wrong temperature (ca. 18 degrees centigrades) while two other reported ca. 28 degrees (roughly the ambient temparature). All three MCUs are from the same lot (marking 18K C4GP, this is TSSOP-28 version) and from the same shipment from Mouser.
The TLV checksum is verified at startup by our application. The XOR checksum might not be particularly strong, but two accidental writes of INFO A Flash keeping the same checksum are unlikely, particularly that INFO A remains locked all the time, even if we do write to INFO segments B to D and main memory while setting up our application. The MCU is powered from a 3.3 V LDO with Power Good output connected to RST, so it should run safely at 12 MHz MCLK without the risk of undervoltaged CPU going wild.
The ADC10 seems to work properly in general: conversions for internal VCC/2 and an external voltage input give reasonable results. The ADC10 is clocked from SMCLK/6 = 2 MHz and the sampling time is 64 cycles (32 us > 30 us minimum time). It uses the internal 2.5 V reference.
I have checked the calibration constants in the malfunctioning and one of the good chips and there are much different:
Good chip: CAL_ADC_25T30 = 0x1BB, CAL_ADC_25T85 = 0x20D (difference 82)
@10c0
ce 8e fe 16 ff ff ff ff ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff ff ff 10 10 00 80 00 00
fa 7e e4 02 70 03 4e 7f bb 01 0d 02 fe 08 ff ff
ff ff ff ff ff ff 01 08 83 8f 8e 8e 7f 8d 38 87
Malfunctioning chip: CAL_ADC_25T30 = 0x1C8, CAL_ADC_25T85 = 0x20A (difference 66)
@10c0
e4 8e fe 16 ff ff ff ff ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff ff ff 10 10 00 80 00 00
9e 7f eb 02 70 03 f5 7f c8 01 0a 02 fe 08 ff ff
ff ff ff ff ff ff 01 08 81 8f 85 8e 7a 8d be 86
I know that one should expect differences, but there should also be a significant difference in the corresponding ADC reading in both chips in similar temperatures, which is not true (around 0x1B4 vs. 0x1B6, which gives about 25 and 15 degrees by linear interpolation in somewhat colder ambient today). We do not expect great accuracy, but 10 degrees of error looks too much.
Please also note that the temperature sensor constants for 1.5 V reference are much more similar for both chips, if that matters at all.
Is this possible that the factory calibration constant are partially invalid for one chip?
Best regards,
Michal