By Edwin Batoctoy
I ran into a case about a month ago that baffled everyone.
It started one morning when we received an urgent call from one of our biggest customers, a company in the semiconductor industry. The customer claimed that we sent them a bad production Printed Circuit Board (PCB) for testing semiconductor chips. Since the customer was in the testing mode the project was in a very critical stage. So any problem at this stage will cause delays, which means a big loss. Because the project was critical, it drew the attention of upper management. So a meeting was arranged. During the meeting with their engineers they claimed that they identified the problem: the test boards were shorting and would not pass their incoming test. To confirm their findings we asked them to give us one or two days to do our own investigation.
We launched an extensive investigation - looked at the design files to see if there were any flaws on the PCB design - none found, 100% correct with flying colors. Next we looked the Gerber files (electronic negative films for manufacturing) - no problem found, all design parameters transferred and translated properly to the Gerber files. Next, we asked the PCB fab house to review the actual films again, along with the electronic films, to see if there was any anomaly or find out if something had been introduced during manufacturing. No problem found, passed with flying colors. Next, we asked the test QA /QC departments to review the test results (again) to see if there was a problem with the bare boards (PCB) during and after test - no problem found, passed with flying colors. We asked them again to look at the test results after assembly (all components / parts installed) - no problem found, passed with flying colors. SO by now we were all scratching our heads. We were running out of ideas as to what was causing the shorts. We held another meeting with the customer’s engineers to let them know what we found. Now, everyone was now puzzled as to why it failed the incoming test.
Then something clicked - as Mr. Holmes said: “Once you eliminate the impossible, whatever remains, no matter how improbable, must be the truth.”
We had already eliminated all the obvious and possible causes of the problem what else was left to look at? Then it hit me - what about the test files used to run the boards? What if there was something in the test file that caused the boards to fail? SO I asked the customer’s engineers to send me the files along with the test results.
The following day, I got the customer files - went through them with a fine-toothed comb. I isolated every part of the test program and concentrated on the code that was written for the specific circuit. Lo and behold! There it was - clear as the bright daylight, the cause of the headache. It turned out the person who wrote the program forgot to consider the capacitors - more specifically the bypass POLARIZED capacitors that were tied to the circuits. So I explained to the team: you see, during test mode, a polar capacitor acts differently from a non-polar capacitor. A non-polar capacitor shows up as an open in a circuit and functions as intended, but in a polarized capacitor, the voltage goes only one way. The current flows from the (+VCC) positive side of the capacitor to the negative side (-GND). Thus from ‘pos-to-neg’ direction, it’s “OPEN,” but on the opposite side ‘neg-to-pos’ it’s a “SHORT.” That was the problem. The programmer forgot to treat the negative side as a “SHORT” - meaning from the GND side the VCC is seen as part of the circuit - a direct “short.” In order to resolve this problem, the +VCC tester channels (pins) must be included to the GND side.
So if the VCC side has pins with tester channels 1, 2, 3 and 4, and the GND side has pins with tester channels 5, 6, 7 and 8, then the VCC channels MUST be included/combined with the GND channels. This way the tester will “see” or expect the GND side to have the test (pin) channels of 1, 2, 3, 4, 5, 6, 7 and 8. If any of the test (pin) channels is missing then the test fails - a “short.” If all channels are present, the test passes.
As soon as they rewrote the test code then reran the test - bam! Test PASSED with flying colors.
Proceeded with the test and avoided delays and we avoided redoing the entire project!
Lesson learned: sometimes you have to look beyond the obvious in order to get to the truth.