Electronic – Production testing, design-for-test, test points, and other techniques

production-testing

I have been working with some board layouts that include a test point for every net on the circuit (or close to it). This lead me to a search for other topics about test points and general design-for-test procedures and guidelines around here, but I found nothing. So, my question is a bit broad and ill-defined, but here goes:

  • What manner of production testing do you commonly employ on your product designs?
  • Is there a point at which some methods become worthwhile, and where are these points? E.g. manual testing of populated board, to flying probes, to bed-of-nails, etc.
  • I read about the design and building of the BeagleBoard, which is considerably more complex than our board, but it does not appear to include any of this sort of testing at all (e.g. no bed of nails or test points, they have a software test).
  • All of our boards are microcontroller based. Are the basic functions of power, ground, and clock reliable enough in manufacturing to use the micro for a built-in self test?

Best Answer

I add test points to a majority of the boards I work on - unless the client specifies otherwise. I won't add test point for every net, but power and ground nets definitely get a test point. When we get a batch of boards back from the fab house, I grab the DMM and "Ohm out" the test points, to make sure nothing is shorted to ground.

We mostly do very low volume production at my work, so most of our testing is done manually.

We do have a higher volume product, though, that does use a bed-of-nails test fixture. In addition to power and ground nets, we have test points for other functional blocks like Ethernet, SPI, audio (speaker/mic).

If you are doing a first run prototype, you might want to have all those test points for debugging. But in later revisions, after functional blocks have been proved OK, you can remove them from the board if you want.

In the end, it really comes down to your production volume and how much risk you want to take with testing/not testing certain aspects of the board.