I am developing a board that has a couple of small SMD chips. I have successfully made a couple of working boards.
Unfortunately I found out that one of the chips in my original design is going to be phased out soon (LSM330DLC), so I'm replacing it with manufacturer's suggested part (LSM6DS3).
I ordered a test batch with this new chip and it has a couple of problems.
- On all 4 of the boards that I ordered the LSM6DS3 chip is somewhat more shiny than other chips (see attached image)
- 2 of my 4 boards have electrical short somewhere that I am not able to pinpoint visually. I tried removing the LSM6DS3 from one of the shorted boards and suddenly there is no more short. It is worth noting, that in the process of removing the chip I also accidentally removed some of the solder pads.
- The weirdest thing is the data that I receive from the motion chip (LSM6DS3). I couldn't get anything from the shorted boards. Board number 3. outputs constant max value on all accelerometer axes. Board number 4 outputs good data only on accel Y and Z axes - the X axis always shows a value near 0 no matter how i turn the sensor chip. I tried soldering leads to the hand removed part from one of the shorted boards and wired it by jumpers back to the board that I removed it from and suddenly it also started outputting good data on all 3 axes and the short was still gone.
I have tried using leaded evaluation board to develop my code and it works fine with it (I got the good data reference from it). I also triple checked my design and everything seems to be OK. I still kept the old chip (LSM330DLC) on the I2C line and on all of the 4 boards it works flawlessly.
I am now suspecting manufacturer's fault. Either they managed to burn the chips during the reflowing or they somehow used some quick test-run lower quality setting on PCB production. I'm just guessing.
So my question is: Are there any telltale signs, that a chip might be burnt or damaged during reflow? Would the shininess of chips be any good way to tell whether the chip is burnt? Any other possible problem causes?