When producing the final iteration of a product, it is important to ensure that all units are satisfactorily tested, whilst also keeping the amount of time spent on the units to a minimum, to reduce costs. To do this there are a variety of techniques which can be used to automate, and speed up the test process.
Custom test hardware
Generally, the best way to get board testing as fast as possible is to develop a custom test jig which can be controlled automatically from a standard PC. The test jig would contain all the appropriate connectors for the board under test, such as:
- External connectivity (ethernet etc...)
- Custom input/output headers
Generic test hardware
When testing a board, there will also almost certainly be standard interfaces which must be connected to, such as Ethernet, serial & USB dongles. Using a standard PC a test rig can be constructed to automatically test these features.
When doing the final test on a fairly involved ARM9/PCI based board, we needed to ensure that the assembly had been done properly, which meant not just testing the final software, but also the underlying hardware connections. We also wanted to be able to simulate plugging/unplugging various USB/RS232 peripherals with out actually having to do this phyiscally by hand.
To perform these tasks we designed a pneumatic test jig, which could raise and lower a bed-of-nails plate, connecting to a variety of pins on the bottom of the board. These nails were then brought out to external headers, into which devices were plugged. When a board is placed on the test jig, and the lid closed, the nails automatically raise into position, connecting with the PCB. Test software on a control PC is then able to power on the board, and test which peripherals are visible, and which connections could be faulty. This is all done automatically, with little operator intervention after the boards are placed in the jig. Alignment pins ensure that the board placement is correct.
External connectivity simulators
Using the Bluewater UDIP module, we have developed a number of dedicated test adapters, which plug into the test PCs USB port, and then allow the PC to control the less standard peripherals on the board under test. Using this technique we have made simulators for:
- Tape devices
- serial ports
- analog-to-digital converters