My project requires measuring resistance between the balls of the BGA on a PCB using Arduino UNO. I looked on the net and all I found was a resistance measuring circuit for resistors. How would I find resistance of the BGA using Arduino. My project is drop testing of BGA packages
There is no way to do this with an Arduino, because you have to get a contact on both sides of the BGA.
The only way I know how to do do this is to X-ray the package at an oblique angle after the drop test to try and spot any cracks.
Explain more on what exactly you are trying to do.
For measuring resistance it doesn't matter whether you have a component that's meant to be used to provide a specific electrical resistance (such parts are usually called "resistor"), or something else. It's all a matter of "apply voltage, measure current".
Of course with microchips applying voltage in the wrong polarity, or pushing too much current through, may damage them.
If it doesn't work after dropping it, it's broken!
There are multimeter chips that you can buy.
Whether you use the Arduino or some other chip, the ground should be isolated. The negative or black lead on a multimeter might connected to an internal ground on the board, but it's isolated from outside world and the black lead is never labeled "ground". That's easy to do as long as the meter has its own separate power supply or if it's battery powered.
Multimeters are also protected against over-voltage, reverse voltage, and that includes the resistance settings, which are supposed to be done un-powered, with only a tiny amount of power coming from the meter.
Normally resistance measurements are done at very-low voltage & low current (so nothing is damaged). With the Arduino, you'd probably need to add an amplifier.
I'm not an expert but look into In-circuit testing.
A good board is "characterized" by applying & measuring voltages and measuring resistances (unpowered), and some of that may be calculated. It's usually part of the routine production process and it's done on a big-expensive machine , usually with a custom bed-of-nails fixture, and of course there is programming involved.
The in-circuit machine has built-in ability to measure voltage & resistance, and maybe capacitance.
That's usually followed by a functional test. Or, frequently there is a functional test with no in-circuit testing.
...I've never worked in critical high-reliability manufacturing so I don't really know what additional testing is done on life-support equipment or stuff that's going into space.
The first question is: do you have values from the factory to match to? Without that you are wasting your time even thinking about it.
As others have mentioned, the voltages you might use to test will likely kill the BGA. Do you know the voltages used with many BGA devices is less than 2 volts? Using 3.3 or 5.0 volts will kill the device. Using your DVM to measure resistance will likely put 9 volts on the BGA internals.
It's not quite as easy as that. On a BGA devise a lot of the signals are ground, so many may crack and the device will appear to function, because all the grounds are common.
The only to tell it is working sufficiently well enough, is to do emissions and susceptibility test again and compare them with the results got before the drop test. Then put them in a soak reliability test and see if the dropped units have a shorter lifetime than the other none dropped units.
Welcome! Is this a school project. What standard are you testing to? What does the manufacturer show in there specifications?
I see I misread the project. I thought you were measuring the resistance between balls on a BGA device. Now I see you are measuring resistance on a BGA mounted on a circuit board.
My late company made many boards with BGA devices.
Can you explain how you will get to the BGA device to measure the resistance between balls when the device is mounted on your circuit board?
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.